@libp2p/webtransport 3.1.10-97ab31c0c → 3.1.10-9c67c5b3d

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.min.js CHANGED
@@ -12,7 +12,7 @@
12
12
  `,r};Qc.decode=function(e){for(var t=[],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(e),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Oi.util.decode64(o[3])};if(t.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 d=c[l];if(!/\s/.test(d[0]))break;u+=d,f=l}if(o=u.match(n),o){for(var g={name:o[1],values:[]},h=o[2].split(","),p=0;p<h.length;++p)g.values.push(Gp(h[p]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=h[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:h[0],parameters:h[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:h[0],type:h[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(t.length===0)throw new Error("Invalid PEM formatted message.");return t};function Ki(e){for(var t=e.name+": ",r=[],n=function(c,f){return" "+f},i=0;i<e.values.length;++i)r.push(e.values[i].replace(/^(\S+\r\n)/,n));t+=r.join(",")+`\r
13
13
  `;for(var o=0,s=-1,i=0;i<t.length;++i,++o)if(o>65&&s!==-1){var a=t[s];a===","?(++s,t=t.substr(0,s)+`\r
14
14
  `+t.substr(s)):t=t.substr(0,s)+`\r
15
- `+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function Gp(e){return e.replace(/^\s+/,"")}});var sf=dt((fv,of)=>{var Ae=pt();wr();Lt();var ef=of.exports=Ae.sha256=Ae.sha256||{};Ae.md.sha256=Ae.md.algorithms.sha256=ef;ef.create=function(){rf||$p();var e=null,t=Ae.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 t=Ae.util.createBuffer(),e={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=Ae.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 t.putBytes(i),tf(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ae.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Ms.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:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};tf(l,r,i);var d=Ae.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var Ms=null,rf=!1,nf=null;function $p(){Ms=String.fromCharCode(128),Ms+=Ae.util.fillString(String.fromCharCode(0),64),nf=[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],rf=!0}function tf(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v=r.length();v>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)n=t[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[f]=n+t[f-7]+i+t[f-16]|0;for(u=e.h0,l=e.h1,d=e.h2,g=e.h3,h=e.h4,p=e.h5,y=e.h6,m=e.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=m+s+a+nf[f]+t[f],i=o+c,m=y,y=p,p=h,h=g+n>>>0,g=d,d=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+g|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+m|0,v-=64}}});var cf=dt((uv,af)=>{var Ce=pt();Lt();var Mi=null;Ce.util.isNodejs&&!Ce.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Mi=Ui());var Wp=af.exports=Ce.prng=Ce.prng||{};Wp.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(f,u){if(!u)return t.generateSync(f);var l=t.plugin.cipher,d=t.plugin.increment,g=t.plugin.formatKey,h=t.plugin.formatSeed,p=Ce.util.createBuffer();t.key=null,y();function y(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(t.generated>1048575&&(t.key=null),t.key===null)return Ce.util.nextTick(function(){o(y)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=g(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Ce.util.setImmediate(y)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,g=t.plugin.formatSeed;t.key=null;for(var h=Ce.util.createBuffer();h.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(u(t.key,l(t.seed))),t.seed=g(u(t.key,t.seed))}return h.getBytes(f)};function o(f){if(t.pools[0].messageLength>=32)return a(),f();var u=32-t.pools[0].messageLength<<5;t.seedFile(u,function(l,d){if(l)return f(l);t.collect(d),a(),f()})}function s(){if(t.pools[0].messageLength>=32)return a();var f=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(f)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var f=t.plugin.md.create();f.update(t.keyBytes);for(var u=1,l=0;l<32;++l)t.reseeds%u===0&&(f.update(t.pools[l].digest().getBytes()),t.pools[l].start()),u=u<<1;t.keyBytes=f.digest().getBytes(),f.start(),f.update(t.keyBytes);var d=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(f){var u=null,l=Ce.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(S){return d.getRandomValues(S)});var g=Ce.util.createBuffer();if(u)for(;g.length()<f;){var h=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(g.length()<f)for(var m,v,x,A=Math.floor(Math.random()*65536);g.length()<f;){v=16807*(A&65535),m=16807*(A>>16),v+=(m&32767)<<16,v+=m>>15,v=(v&2147483647)+(v>>31),A=v&4294967295;for(var y=0;y<3;++y)x=A>>>(y<<3),x^=Math.floor(Math.random()*256),g.putByte(x&255)}return g.getBytes(f)}return Mi?(t.seedFile=function(f,u){Mi.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Mi.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,d){function g(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(g,h){f.postMessage({forge:{prng:{err:g,bytes:h}}})})};f.addEventListener("message",u)}},t}});var Un=dt((lv,Fs)=>{var Kt=pt();Os();sf();cf();Lt();(function(){if(Kt.random&&Kt.random.getBytes){Fs.exports=Kt.random;return}(function(e){var t={},r=new Array(4),n=Kt.util.createBuffer();t.formatKey=function(l){var d=Kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Kt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return Kt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Kt.md.sha256;function i(){var l=Kt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=Kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Kt.options.usePureJavaScript||!Kt.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}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Kt.random)Kt.random=o;else for(var u in o)Kt.random[u]=o[u];Kt.random.createInstance=i,Fs.exports=Kt.random})(typeof jQuery<"u"?jQuery:null)})()});var hf=dt((hv,lf)=>{var Jt=pt();Lt();var Vs=[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],ff=[1,2,3,5],Yp=function(e,t){return e<<t&65535|(e&65535)>>16-t},Zp=function(e,t){return(e&65535)>>t|e<<16-t&65535};lf.exports=Jt.rc2=Jt.rc2||{};Jt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Jt.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(Vs[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Vs[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Vs[r.at(a+1)^r.at(a+o)]);return r};var uf=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Jt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=Yp(h[f],ff[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=Zp(h[f],ff[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){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<h.length;m++)for(var v=0;v<h[m][0];v++)h[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(h,p){h&&typeof h=="string"&&(h=Jt.util.createBuffer(h)),n=!1,i=Jt.util.createBuffer(),o=p||new Jt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(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(h)p=h(8,o,!r);else{var m=o.length(),v=o.at(m-1);v>m?p=!1:o.truncate(v)}return p}},g};Jt.rc2.startEncrypting=function(e,t,r){var n=Jt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createEncryptionCipher=function(e,t){return uf(e,t,!0)};Jt.rc2.startDecrypting=function(e,t,r){var n=Jt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createDecryptionCipher=function(e,t){return uf(e,t,!1)}});var qi=dt((dv,vf)=>{var qs=pt();vf.exports=qs.jsbn=qs.jsbn||{};var Ge,Xp=0xdeadbeefcafe,df=(Xp&16777215)==15715070;function D(e,t,r){this.data=[],e!=null&&(typeof e=="number"?this.fromNumber(e,t,r):t==null&&typeof e!="string"?this.fromString(e,256):this.fromString(e,t))}qs.jsbn.BigInteger=D;function st(){return new D(null)}function Qp(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Jp(e,t,r,n,i,o){for(var s=t&32767,a=t>>15;--o>=0;){var c=this.data[e]&32767,f=this.data[e++]>>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 pf(e,t,r,n,i,o){for(var s=t&16383,a=t>>14;--o>=0;){var c=this.data[e]&16383,f=this.data[e++]>>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=pf,Ge=28):df&&navigator.appName=="Microsoft Internet Explorer"?(D.prototype.am=Jp,Ge=30):df&&navigator.appName!="Netscape"?(D.prototype.am=Qp,Ge=26):(D.prototype.am=pf,Ge=28);D.prototype.DB=Ge;D.prototype.DM=(1<<Ge)-1;D.prototype.DV=1<<Ge;var Hs=52;D.prototype.FV=Math.pow(2,Hs);D.prototype.F1=Hs-Ge;D.prototype.F2=2*Ge-Hs;var jp="0123456789abcdefghijklmnopqrstuvwxyz",Fi=new Array,tn,se;tn="0".charCodeAt(0);for(se=0;se<=9;++se)Fi[tn++]=se;tn="a".charCodeAt(0);for(se=10;se<36;++se)Fi[tn++]=se;tn="A".charCodeAt(0);for(se=10;se<36;++se)Fi[tn++]=se;function yf(e){return jp.charAt(e)}function gf(e,t){var r=Fi[e.charCodeAt(t)];return r??-1}function ty(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function ey(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0}function fr(e){var t=st();return t.fromInt(e),t}function ry(e,t){var r;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(e,t);return}this.t=0,this.s=0;for(var n=e.length,i=!1,o=0;--n>=0;){var s=r==8?e[n]&255:gf(e,n);if(s<0){e.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&&e[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 ny(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function iy(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<<t)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=yf(n));s>=0;)a<t?(n=(this.data[s]&(1<<a)-1)<<t-a,n|=this.data[--s]>>(a+=this.DB-t)):(n=this.data[s]>>(a-=t)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=yf(n));return i?o:"0"}function oy(){var e=st();return D.ZERO.subTo(this,e),e}function sy(){return this.s<0?this.negate():this}function ay(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this.data[r]-e.data[r])!=0)return t;return 0}function Vi(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function cy(){return this.t<=0?0:this.DB*(this.t-1)+Vi(this.data[this.t-1]^this.s&this.DM)}function fy(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s}function uy(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function ly(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function hy(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function dy(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function py(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&D.ZERO.subTo(t,t)}function yy(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e.data[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t.data[r],e,2*r,0,1);(e.data[r+t.t]+=t.am(r+1,2*t.data[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()}function gy(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=st());var o=st(),s=this.s,a=e.s,c=this.DB-Vi(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),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,m=t??st();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 v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,m),r.subTo(m,r);r.data[p]<--v;)r.subTo(m,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&D.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&D.ZERO.subTo(r,r)}}}function my(e){var t=st();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(D.ZERO)>0&&e.subTo(t,t),t}function Er(e){this.m=e}function xy(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function by(e){return e}function vy(e){e.divRemTo(this.m,null,e)}function wy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function Ey(e,t){e.squareTo(t),this.reduce(t)}Er.prototype.convert=xy;Er.prototype.revert=by;Er.prototype.reduce=vy;Er.prototype.mulTo=wy;Er.prototype.sqrTo=Ey;function Sy(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function Sr(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function By(e){var t=st();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(D.ZERO)>0&&this.m.subTo(t,t),t}function Ay(e){var t=st();return e.copyTo(t),this.reduce(t),t}function Cy(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=e.data[t]&32767,n=r*this.mpl+((r*this.mph+(e.data[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function Iy(e,t){e.squareTo(t),this.reduce(t)}function Ty(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Sr.prototype.convert=By;Sr.prototype.revert=Ay;Sr.prototype.reduce=Cy;Sr.prototype.mulTo=Ty;Sr.prototype.sqrTo=Iy;function _y(){return(this.t>0?this.data[0]&1:this.s)==0}function Ly(e,t){if(e>4294967295||e<1)return D.ONE;var r=st(),n=st(),i=t.convert(this),o=Vi(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function Ry(e,t){var r;return e<256||t.isEven()?r=new Er(t):r=new Sr(t),this.exp(e,r)}D.prototype.copyTo=ty;D.prototype.fromInt=ey;D.prototype.fromString=ry;D.prototype.clamp=ny;D.prototype.dlShiftTo=fy;D.prototype.drShiftTo=uy;D.prototype.lShiftTo=ly;D.prototype.rShiftTo=hy;D.prototype.subTo=dy;D.prototype.multiplyTo=py;D.prototype.squareTo=yy;D.prototype.divRemTo=gy;D.prototype.invDigit=Sy;D.prototype.isEven=_y;D.prototype.exp=Ly;D.prototype.toString=iy;D.prototype.negate=oy;D.prototype.abs=sy;D.prototype.compareTo=ay;D.prototype.bitLength=cy;D.prototype.mod=my;D.prototype.modPowInt=Ry;D.ZERO=fr(0);D.ONE=fr(1);function Ny(){var e=st();return this.copyTo(e),e}function Dy(){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 Py(){return this.t==0?this.s:this.data[0]<<24>>24}function ky(){return this.t==0?this.s:this.data[0]<<16>>16}function Uy(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Ky(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Oy(e){if(e==null&&(e=10),this.signum()==0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=fr(r),i=st(),o=st(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function My(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,o=0,s=0,a=0;a<e.length;++a){var c=gf(e,a);if(c<0){e.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=t*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(t,o)),this.dAddOffset(s,0)),i&&D.ZERO.subTo(this,this)}function Fy(e,t,r){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(D.ONE.shiftLeft(e-1),zs,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(D.ONE.shiftLeft(e-1),this);else{var n=new Array,i=e&7;n.length=(e>>3)+1,t.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function Vy(){var e=this.t,t=new Array;t[0]=this.s;var r=this.DB-e*this.DB%8,n,i=0;if(e-- >0)for(r<this.DB&&(n=this.data[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<<this.DB-r);e>=0;)r<8?(n=(this.data[e]&(1<<r)-1)<<8-r,n|=this.data[--e]>>(r+=this.DB-8)):(n=this.data[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function qy(e){return this.compareTo(e)==0}function Hy(e){return this.compareTo(e)<0?this:e}function zy(e){return this.compareTo(e)>0?this:e}function Gy(e,t,r){var n,i,o=Math.min(e.t,this.t);for(n=0;n<o;++n)r.data[n]=t(this.data[n],e.data[n]);if(e.t<this.t){for(i=e.s&this.DM,n=o;n<this.t;++n)r.data[n]=t(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<e.t;++n)r.data[n]=t(i,e.data[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()}function $y(e,t){return e&t}function Wy(e){var t=st();return this.bitwiseTo(e,$y,t),t}function zs(e,t){return e|t}function Yy(e){var t=st();return this.bitwiseTo(e,zs,t),t}function mf(e,t){return e^t}function Zy(e){var t=st();return this.bitwiseTo(e,mf,t),t}function xf(e,t){return e&~t}function Xy(e){var t=st();return this.bitwiseTo(e,xf,t),t}function Qy(){for(var e=st(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function Jy(e){var t=st();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function jy(e){var t=st();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function t1(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function e1(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+t1(this.data[e]);return this.s<0?this.t*this.DB:-1}function r1(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function n1(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=r1(this.data[r]^t);return e}function i1(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function o1(e,t){var r=D.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function s1(e){return this.changeBit(e,zs)}function a1(e){return this.changeBit(e,xf)}function c1(e){return this.changeBit(e,mf)}function f1(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]+e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()}function u1(e){var t=st();return this.addTo(e,t),t}function l1(e){var t=st();return this.subTo(e,t),t}function h1(e){var t=st();return this.multiplyTo(e,t),t}function d1(e){var t=st();return this.divRemTo(e,t,null),t}function p1(e){var t=st();return this.divRemTo(e,null,t),t}function y1(e){var t=st(),r=st();return this.divRemTo(e,t,r),new Array(t,r)}function g1(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function m1(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function Kn(){}function bf(e){return e}function x1(e,t,r){e.multiplyTo(t,r)}function b1(e,t){e.squareTo(t)}Kn.prototype.convert=bf;Kn.prototype.revert=bf;Kn.prototype.mulTo=x1;Kn.prototype.sqrTo=b1;function v1(e){return this.exp(e,new Kn)}function w1(e,t,r){var n=Math.min(this.t+e.t,t);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,e.data[n],r,n,0,this.t);for(i=Math.min(e.t,t);n<i;++n)this.am(0,e.data[n],r,n,0,t-n);r.clamp()}function E1(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function en(e){this.r2=st(),this.q3=st(),D.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function S1(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=st();return e.copyTo(t),this.reduce(t),t}function B1(e){return e}function A1(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function C1(e,t){e.squareTo(t),this.reduce(t)}function I1(e,t,r){e.multiplyTo(t,r),this.reduce(r)}en.prototype.convert=S1;en.prototype.revert=B1;en.prototype.reduce=A1;en.prototype.mulTo=I1;en.prototype.sqrTo=C1;function T1(e,t){var r=e.bitLength(),n,i=fr(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 Er(t):t.isEven()?o=new en(t):o=new Sr(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=st();for(o.sqrTo(s[1],u);a<=f;)s[a]=st(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=st(),p;for(r=Vi(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&f:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[d].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function _1(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function L1(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t==0)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r}function R1(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return D.ZERO;for(var r=e.clone(),n=this.clone(),i=fr(1),o=fr(0),s=fr(0),a=fr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(D.ONE)!=0)return D.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var be=[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],N1=(1<<26)/be[be.length-1];function D1(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=be[be.length-1]){for(t=0;t<be.length;++t)if(r.data[0]==be[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<be.length;){for(var n=be[t],i=t+1;i<be.length&&n<N1;)n*=be[i++];for(n=r.modInt(n);t<i;)if(n%be[t++]==0)return!1}return r.millerRabin(e)}function P1(e){var t=this.subtract(D.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=k1(),o,s=0;s<e;++s){do o=new D(this.bitLength(),i);while(o.compareTo(D.ONE)<=0||o.compareTo(t)>=0);var a=o.modPow(n,this);if(a.compareTo(D.ONE)!=0&&a.compareTo(t)!=0){for(var c=1;c++<r&&a.compareTo(t)!=0;)if(a=a.modPowInt(2,this),a.compareTo(D.ONE)==0)return!1;if(a.compareTo(t)!=0)return!1}}return!0}function k1(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}D.prototype.chunkSize=Uy;D.prototype.toRadix=Oy;D.prototype.fromRadix=My;D.prototype.fromNumber=Fy;D.prototype.bitwiseTo=Gy;D.prototype.changeBit=o1;D.prototype.addTo=f1;D.prototype.dMultiply=g1;D.prototype.dAddOffset=m1;D.prototype.multiplyLowerTo=w1;D.prototype.multiplyUpperTo=E1;D.prototype.modInt=L1;D.prototype.millerRabin=P1;D.prototype.clone=Ny;D.prototype.intValue=Dy;D.prototype.byteValue=Py;D.prototype.shortValue=ky;D.prototype.signum=Ky;D.prototype.toByteArray=Vy;D.prototype.equals=qy;D.prototype.min=Hy;D.prototype.max=zy;D.prototype.and=Wy;D.prototype.or=Yy;D.prototype.xor=Zy;D.prototype.andNot=Xy;D.prototype.not=Qy;D.prototype.shiftLeft=Jy;D.prototype.shiftRight=jy;D.prototype.getLowestSetBit=e1;D.prototype.bitCount=n1;D.prototype.testBit=i1;D.prototype.setBit=s1;D.prototype.clearBit=a1;D.prototype.flipBit=c1;D.prototype.add=u1;D.prototype.subtract=l1;D.prototype.multiply=h1;D.prototype.divide=d1;D.prototype.remainder=p1;D.prototype.divideAndRemainder=y1;D.prototype.modPow=T1;D.prototype.modInverse=R1;D.prototype.pow=v1;D.prototype.gcd=_1;D.prototype.isProbablePrime=D1});var Af=dt((pv,Bf)=>{var Ie=pt();wr();Lt();var Ef=Bf.exports=Ie.sha1=Ie.sha1||{};Ie.md.sha1=Ie.md.algorithms.sha1=Ef;Ef.create=function(){Sf||U1();var e=null,t=Ie.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 t=Ie.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ie.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 t.putBytes(i),wf(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ie.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Gs.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:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};wf(l,r,i);var d=Ie.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var Gs=null,Sf=!1;function U1(){Gs=String.fromCharCode(128),Gs+=Ie.util.fillString(String.fromCharCode(0),64),Sf=!0}function wf(e,t,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,u=0;u<16;++u)n=r.getInt32(),t[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=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[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=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[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=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[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=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[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=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[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;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,l-=64}}});var Tf=dt((yv,If)=>{var Te=pt();Lt();Un();Af();var Cf=If.exports=Te.pkcs1=Te.pkcs1||{};Cf.encode_rsa_oaep=function(e,t,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=Te.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=t.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",d=c-t.length,g=0;g<d;g++)l+="\0";var h=u.getBytes()+l+""+t;if(!i)i=Te.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=Hi(i,a-o.digestLength-1,s),y=Te.util.xorBytes(h,p,h.length),m=Hi(y,o.digestLength,s),v=Te.util.xorBytes(i,m,i.length);return"\0"+v+y};Cf.decode_rsa_oaep=function(e,t,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(e.n.bitLength()/8);if(t.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}if(i===void 0?i=Te.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=t.charAt(0),f=t.substring(1,i.digestLength+1),u=t.substring(1+i.digestLength),l=Hi(u,i.digestLength,o),d=Te.util.xorBytes(f,l,f.length),g=Hi(d,s-i.digestLength-1,o),h=Te.util.xorBytes(u,g,u.length),p=h.substring(0,i.digestLength),y=c!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==p.charAt(m);for(var v=1,x=i.digestLength,A=i.digestLength;A<h.length;A++){var S=h.charCodeAt(A),B=S&1^1,R=v?65534:0;y|=S&R,v=v&B,x+=v}if(y||h.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(x+1)};function Hi(e,t,r){r||(r=Te.md.sha1.create());for(var n="",i=Math.ceil(t/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(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var _f=dt((gv,$s)=>{var ur=pt();Lt();qi();Un();(function(){if(ur.prime){$s.exports=ur.prime;return}var e=$s.exports=ur.prime=ur.prime||{},t=ur.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,g){typeof d=="function"&&(g=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||ur.random,y={nextBytes:function(m){for(var v=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=v.charCodeAt(x)}};if(h.name==="PRIMEINC")return o(l,y,h.options,g);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,g,h){return"workers"in g?c(l,d,g,h):s(l,d,g,h)}function s(l,d,g,h){var p=f(l,d),y=0,m=u(p.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var v=10;"maxBlockTime"in g&&(v=g.maxBlockTime),a(p,l,d,y,m,v,h)}function a(l,d,g,h,p,y,m){var v=+new Date;do{if(l.bitLength()>d&&(l=f(d,g)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-v<y);ur.util.setImmediate(function(){a(l,d,g,h,p,y,m)})}function c(l,d,g,h){if(typeof Worker>"u")return s(l,d,g,h);var p=f(l,d),y=g.workers,m=g.workLoad||100,v=m*30/8,x=g.workerScript||"forge/prime.worker.js";if(y===-1)return ur.util.estimateCores(function(S,B){S&&(B=2),y=B-1,A()});A();function A(){y=Math.max(1,y);for(var S=[],B=0;B<y;++B)S[B]=new Worker(x);for(var R=y,B=0;B<y;++B)S[B].addEventListener("message",O);var _=!1;function O(M){if(!_){--R;var U=M.data;if(U.found){for(var H=0;H<S.length;++H)S[H].terminate();return _=!0,h(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:m}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),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 Gi=dt((mv,Uf)=>{var $=pt();kn();qi();_i();Tf();_f();Un();Lt();typeof ot>"u"&&(ot=$.jsbn.BigInteger);var ot,Ws=$.util.isNodejs?Ui():null,E=$.asn1,ae=$.util;$.pki=$.pki||{};Uf.exports=$.pki.rsa=$.rsa=$.rsa||{};var Q=$.pki,K1=[6,4,2,4,2,4,6,2],O1={name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},M1={name:"RSAPrivateKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},F1={name:"RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},V1=$.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},q1={name:"DigestInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:E.Class.UNIVERSAL,type:E.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},H1=function(e){var t;if(e.algorithm in Q.oids)t=Q.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=E.oidToDer(t).getBytes(),i=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]),o=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]);o.value.push(E.create(E.Class.UNIVERSAL,E.Type.OID,!1,n)),o.value.push(E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,""));var s=E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),E.toDer(i).getBytes()},Pf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(ot.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(ot.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new ot($.util.bytesToHex($.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(ot.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=kf(e,t,r)):(i=$.util.createBuffer(),i.putBytes(e));for(var s=new ot(i.toHex(),16),a=Pf(s,t,n),c=a.toString(16),f=$.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new ot($.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Pf(s,t,r),c=a.toString(16),f=$.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),n!==!1?zi(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||$.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:e,rng:i,eInt:t||65537,e:new ot(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>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(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new ot(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new ot(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(ot.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(G1(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(K1[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(ot.ONE),e.q1=e.q.subtract(ot.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(ot.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!$.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(Lf("generateKeyPair"))return Ws.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,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(Rf("generateKey")&&Rf("exportKey"))return ae.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Df(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ae.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(Nf("generateKey")&&Nf("exportKey")){var i=ae.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Df(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=ae.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(Lf("generateKeyPairSync")){var o=Ws.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,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(e,t,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;z1(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(e,t){var r={n:e,e:t};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 kf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return $.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=zi(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,q1,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===$.oids.md2||h===$.oids.md5||h===$.oids.sha1||h===$.oids.sha224||h===$.oids.sha256||h===$.oids.sha384||h===$.oids.sha512||h===$.oids["sha512-224"]||h===$.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===$.oids.md2||h===$.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=zi(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(e,t,r,n,i,o,s,a){var c={n:e,e:t,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 d=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:zi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return $.pkcs1.decode_rsa_oaep(h,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(d,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:H1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(d,c,l)},c};Q.wrapRsaPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,E.toDer(e).getBytes())])};Q.privateKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,O1,t,r)&&(e=E.fromDer($.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,M1,t,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=$.util.createBuffer(t.privateKeyModulus).toHex(),o=$.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=$.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=$.util.createBuffer(t.privateKeyPrime1).toHex(),c=$.util.createBuffer(t.privateKeyPrime2).toHex(),f=$.util.createBuffer(t.privateKeyExponent1).toHex(),u=$.util.createBuffer(t.privateKeyExponent2).toHex(),l=$.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new ot(i,16),new ot(o,16),new ot(s,16),new ot(a,16),new ot(c,16),new ot(f,16),new ot(u,16),new ot(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,V1,t,r)){var n=E.derToOid(t.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}e=t.rsaPublicKey}if(r=[],!E.validate(e,F1,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=$.util.createBuffer(t.publicKeyModulus).toHex(),s=$.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new ot(o,16),new ot(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.e))])};function kf(e,t,r){var n=$.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.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=$.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(e),n}function zi(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=$.util.createBuffer(e),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 z1(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){$.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)!==0){e.p=null,i();return}if(e.q.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(ot.ONE),e.q1=e.q.subtract(ot.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(ot.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function _e(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=$.util.hexToBytes(t);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 G1(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function Lf(e){return $.util.isNodejs&&typeof Ws[e]=="function"}function Rf(e){return typeof ae.globalScope<"u"&&typeof ae.globalScope.crypto=="object"&&typeof ae.globalScope.crypto.subtle=="object"&&typeof ae.globalScope.crypto.subtle[e]=="function"}function Nf(e){return typeof ae.globalScope<"u"&&typeof ae.globalScope.msCrypto=="object"&&typeof ae.globalScope.msCrypto.subtle=="object"&&typeof ae.globalScope.msCrypto.subtle[e]=="function"}function Df(e){for(var t=$.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var qf=dt((xv,Vf)=>{var q=pt();Os();kn();Gc();wr();_i();Xc();jc();Un();hf();Gi();Lt();typeof Kf>"u"&&(Kf=q.jsbn.BigInteger);var Kf,I=q.asn1,tt=q.pki=q.pki||{};Vf.exports=tt.pbe=q.pbe=q.pbe||{};var Br=tt.oids,$1={name:"EncryptedPrivateKeyInfo",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},W1={name:"PBES2Algorithms",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},Y1={name:"pkcs-12PbeParams",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,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=q.random.getBytesSync(r.saltSize),i=r.count,o=I.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=Br["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Br["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Br["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Br.desCBC,l=q.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),h=Ff(g),p=q.pkcs5.pbkdf2(t,n,i,s,h),y=q.random.getBytesSync(f),m=l(p);m.start(y),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes();var v=Z1(n,o,s,g);a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br.pkcs5PBES2).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br.pkcs5PBKDF2).getBytes()),v]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(u).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var x=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,x,1,i,s),y=tt.pbe.generatePkcs12Key(t,x,2,i,s),m=q.des.createEncryptionCipher(p);m.start(y),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,n),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var A=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return A};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!I.validate(e,$1,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=I.derToOid(n.encryptionOid),a=tt.pbe.getCipher(s,n.encryptionParams,t),c=q.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};tt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(e).getBytes()};return q.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=q.pem.decode(e)[0];if(t.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=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return I.fromDer(t.body)};tt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=tt.wrapRsaPrivateKey(tt.privateKeyToAsn1(e));return n=tt.encryptPrivateKeyInfo(n,t,r),tt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=q.random.getBytesSync(8),a=q.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=q.pbe.opensslDeriveBytes(t,o.substr(0,8),s),u=a(f);u.start(o),u.update(I.toDer(tt.privateKeyToAsn1(e))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:q.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return q.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=q.pem.decode(e)[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=q.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=q.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=q.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=q.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=q.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return q.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return q.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return q.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=q.util.hexToBytes(n.dekInfo.parameters),c=q.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(q.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=tt.decryptPrivateKeyInfo(I.fromDer(r),t):r=I.fromDer(r),r!==null&&(r=tt.privateKeyFromAsn1(r)),r};tt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in q.md))throw new Error('"sha1" hash algorithm unavailable.');o=q.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new q.util.ByteBuffer,l=new q.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),g=t.length(),h=new q.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new q.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var m=f*Math.ceil(d/f),v=new q.util.ByteBuffer;for(a=0;a<m;a++)v.putByte(l.at(a%d));var x=y;x.putBuffer(v);for(var A=Math.ceil(i/c),S=1;S<=A;S++){var B=new q.util.ByteBuffer;B.putBytes(h.bytes()),B.putBytes(x.bytes());for(var R=0;R<n;R++)o.start(),o.update(B.getBytes()),B=o.digest();var _=new q.util.ByteBuffer;for(a=0;a<f;a++)_.putByte(B.at(a%c));var O=Math.ceil(g/f)+Math.ceil(d/f),M=new q.util.ByteBuffer;for(s=0;s<O;s++){var U=new q.util.ByteBuffer(x.getBytes(f)),H=511;for(a=_.length()-1;a>=0;a--)H=H>>8,H+=_.at(a)+U.at(a),U.setAt(a,H&255);M.putBuffer(U)}x=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!I.validate(t,W1,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(e=I.derToOid(n.kdfOid),e!==tt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=I.derToOid(n.encOid),e!==tt.oids["aes128-CBC"]&&e!==tt.oids["aes192-CBC"]&&e!==tt.oids["aes256-CBC"]&&e!==tt.oids["des-EDE3-CBC"]&&e!==tt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=q.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=q.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=q.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=q.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=q.des.createDecryptionCipher;break;case"desCBC":c=8,f=q.des.createDecryptionCipher;break}var u=Mf(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,g=f(l);return g.start(d),g};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!I.validate(t,Y1,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=q.util.createBuffer(n.salt),a=q.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(e){case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=q.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var m=q.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=e,o}var l=Mf(n.prfOid),d=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,g)};tt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in q.md))throw new Error('"md5" hash algorithm unavailable.');n=q.md.md5.create()}t===null&&(t="");for(var i=[Of(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(Of(n,i[s-1]+e+t));return i.join("").substr(0,r)};function Of(e,t){return e.start().update(t).digest().getBytes()}function Mf(e){var t;if(!e)t="hmacWithSHA1";else if(t=tt.oids[I.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Ff(t)}function Ff(e){var t=q.md;switch(e){case"hmacWithSHA224":t=q.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function Z1(e,t,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,e),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,q.util.hexToBytes(r.toString(16))),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(tt.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var uu=dt((Uw,fu)=>{var vt=pt();wr();Lt();var qn=fu.exports=vt.sha512=vt.sha512||{};vt.md.sha512=vt.md.algorithms.sha512=qn;var au=vt.sha384=vt.sha512.sha384=vt.sha512.sha384||{};au.create=function(){return qn.create("SHA-384")};vt.md.sha384=vt.md.algorithms.sha384=au;vt.sha512.sha256=vt.sha512.sha256||{create:function(){return qn.create("SHA-512/256")}};vt.md["sha512/256"]=vt.md.algorithms["sha512/256"]=vt.sha512.sha256;vt.sha512.sha224=vt.sha512.sha224||{create:function(){return qn.create("SHA-512/224")}};vt.md["sha512/224"]=vt.md.algorithms["sha512/224"]=vt.sha512.sha224;qn.create=function(e){if(cu||lg(),typeof e>"u"&&(e="SHA-512"),!(e in Rr))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=Rr[e],r=null,n=vt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.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=vt.util.createBuffer(),r=new Array(t.length);for(var f=0;f<t.length;++f)r[f]=t[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=vt.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),su(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=vt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(ua.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);su(p,i,c);var y=vt.util.createBuffer(),m;e==="SHA-512"?m=p.length:e==="SHA-384"?m=p.length-2:m=p.length-4;for(var h=0;h<m;++h)y.putInt32(p[h][0]),(h!==m-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var ua=null,cu=!1,la=null,Rr=null;function lg(){ua=String.fromCharCode(128),ua+=vt.util.fillString(String.fromCharCode(0),128),la=[[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]],Rr={},Rr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Rr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Rr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Rr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],cu=!0}function su(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v,x,A,S,B,R,_,O,M,U,H,z,Z,C,N,T,L,w,k,K,V=r.length();V>=128;){for(C=0;C<16;++C)t[C][0]=r.getInt32()>>>0,t[C][1]=r.getInt32()>>>0;for(;C<80;++C)L=t[C-2],N=L[0],T=L[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,k=t[C-15],N=k[0],T=k[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[C-7],K=t[C-16],T=i+w[1]+s+K[1],t[C][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[C][1]=T>>>0;for(p=e[0][0],y=e[0][1],m=e[1][0],v=e[1][1],x=e[2][0],A=e[2][1],S=e[3][0],B=e[3][1],R=e[4][0],_=e[4][1],O=e[5][0],M=e[5][1],U=e[6][0],H=e[6][1],z=e[7][0],Z=e[7][1],C=0;C<80;++C)f=((R>>>14|_<<18)^(R>>>18|_<<14)^(_>>>9|R<<23))>>>0,u=((R<<18|_>>>14)^(R<<14|_>>>18)^(_<<23|R>>>9))>>>0,l=(U^R&(O^U))>>>0,d=(H^_&(M^H))>>>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,h=(y&v|A&(y^v))>>>0,T=Z+u+d+la[C][1]+t[C][1],n=z+f+l+la[C][0]+t[C][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=U,Z=H,U=O,H=M,O=R,M=_,T=B+i,R=S+n+(T/4294967296>>>0)>>>0,_=T>>>0,S=x,B=A,x=m,A=v,m=p,v=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=e[0][1]+y,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+m+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+A,e[2][0]=e[2][0]+x+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+_,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+U+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,V-=128}}});var qu=dt((s4,Vu)=>{var ln=1e3,hn=ln*60,dn=hn*60,kr=dn*24,Fg=kr*7,Vg=kr*365.25;Vu.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return qg(e);if(r==="number"&&isFinite(e))return t.long?zg(e):Hg(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function qg(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Vg;case"weeks":case"week":case"w":return r*Fg;case"days":case"day":case"d":return r*kr;case"hours":case"hour":case"hrs":case"hr":case"h":return r*dn;case"minutes":case"minute":case"mins":case"min":case"m":return r*hn;case"seconds":case"second":case"secs":case"sec":case"s":return r*ln;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function Hg(e){var t=Math.abs(e);return t>=kr?Math.round(e/kr)+"d":t>=dn?Math.round(e/dn)+"h":t>=hn?Math.round(e/hn)+"m":t>=ln?Math.round(e/ln)+"s":e+"ms"}function zg(e){var t=Math.abs(e);return t>=kr?ji(e,t,kr,"day"):t>=dn?ji(e,t,dn,"hour"):t>=hn?ji(e,t,hn,"minute"):t>=ln?ji(e,t,ln,"second"):e+" ms"}function ji(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}});var zu=dt((a4,Hu)=>{function Gg(e){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=qu(),r.destroy=f,Object.keys(e).forEach(u=>{r[u]=e[u]}),r.names=[],r.skips=[],r.formatters={};function t(u){let l=0;for(let d=0;d<u.length;d++)l=(l<<5)-l+u.charCodeAt(d),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=t;function r(u){let l,d=null,g,h;function p(...y){if(!p.enabled)return;let m=p,v=Number(new Date),x=v-(l||v);m.diff=x,m.prev=l,m.curr=v,l=v,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let A=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(B,R)=>{if(B==="%%")return"%";A++;let _=r.formatters[R];if(typeof _=="function"){let O=y[A];B=_.call(m,O),y.splice(A,1),A--}return B}),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:()=>d!==null?d:(g!==r.namespaces&&(g=r.namespaces,h=r.enabled(u)),h),set:y=>{d=y}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let d=r(this.namespace+(typeof l>"u"?":":l)+u);return d.log=this.log,d}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,d=(typeof u=="string"?u:"").split(/[\s,]+/),g=d.length;for(l=0;l<g;l++)d[l]&&(u=d[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,d;for(l=0,d=r.skips.length;l<d;l++)if(r.skips[l].test(u))return!1;for(l=0,d=r.names.length;l<d;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}Hu.exports=Gg});var Gu=dt((ne,to)=>{ne.formatArgs=Wg;ne.save=Yg;ne.load=Zg;ne.useColors=$g;ne.storage=Xg();ne.destroy=(()=>{let e=!1;return()=>{e||(e=!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`."))}})();ne.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 $g(){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 Wg(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+to.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}ne.log=console.debug||console.log||(()=>{});function Yg(e){try{e?ne.storage.setItem("debug",e):ne.storage.removeItem("debug")}catch{}}function Zg(){let e;try{e=ne.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function Xg(){try{return localStorage}catch{}}to.exports=zu()(ne);var{formatters:Qg}=to.exports;Qg.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Tm={};Nt(Tm,{webTransport:()=>Im});function Xe(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function ke(e=0){return globalThis.Buffer?.alloc!=null?Xe(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function Vt(e=0){return globalThis.Buffer?.allocUnsafe!=null?Xe(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Fl=Math.pow(2,7),Vl=Math.pow(2,14),ql=Math.pow(2,21),bo=Math.pow(2,28),vo=Math.pow(2,35),wo=Math.pow(2,42),Eo=Math.pow(2,49),ct=128,Gt=127;function Xt(e){if(e<Fl)return 1;if(e<Vl)return 2;if(e<ql)return 3;if(e<bo)return 4;if(e<vo)return 5;if(e<wo)return 6;if(e<Eo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Hl(e,t,r=0){switch(Xt(e)){case 8:t[r++]=e&255|ct,e/=128;case 7:t[r++]=e&255|ct,e/=128;case 6:t[r++]=e&255|ct,e/=128;case 5:t[r++]=e&255|ct,e/=128;case 4:t[r++]=e&255|ct,e>>>=7;case 3:t[r++]=e&255|ct,e>>>=7;case 2:t[r++]=e&255|ct,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function zl(e,t,r=0){switch(Xt(e)){case 8:t.set(r++,e&255|ct),e/=128;case 7:t.set(r++,e&255|ct),e/=128;case 6:t.set(r++,e&255|ct),e/=128;case 5:t.set(r++,e&255|ct),e/=128;case 4:t.set(r++,e&255|ct),e>>>=7;case 3:t.set(r++,e&255|ct),e>>>=7;case 2:t.set(r++,e&255|ct),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function Gl(e,t){let r=e[t],n=0;if(n+=r&Gt,r<ct||(r=e[t+1],n+=(r&Gt)<<7,r<ct)||(r=e[t+2],n+=(r&Gt)<<14,r<ct)||(r=e[t+3],n+=(r&Gt)<<21,r<ct)||(r=e[t+4],n+=(r&Gt)*bo,r<ct)||(r=e[t+5],n+=(r&Gt)*vo,r<ct)||(r=e[t+6],n+=(r&Gt)*wo,r<ct)||(r=e[t+7],n+=(r&Gt)*Eo,r<ct))return n;throw new RangeError("Could not decode varint")}function $l(e,t){let r=e.get(t),n=0;if(n+=r&Gt,r<ct||(r=e.get(t+1),n+=(r&Gt)<<7,r<ct)||(r=e.get(t+2),n+=(r&Gt)<<14,r<ct)||(r=e.get(t+3),n+=(r&Gt)<<21,r<ct)||(r=e.get(t+4),n+=(r&Gt)*bo,r<ct)||(r=e.get(t+5),n+=(r&Gt)*vo,r<ct)||(r=e.get(t+6),n+=(r&Gt)*wo,r<ct)||(r=e.get(t+7),n+=(r&Gt)*Eo,r<ct))return n;throw new RangeError("Could not decode varint")}function Qe(e,t,r=0){return t==null&&(t=Vt(Xt(e))),t instanceof Uint8Array?Hl(e,t,r):zl(e,t,r)}function le(e,t=0){return e instanceof Uint8Array?Gl(e,t):$l(e,t)}function ft(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Vt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Xe(r)}function Ct(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var o0=Symbol.for("@achingbrain/uint8arraylist");function i0(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function ei(e){return!!e?.[o0]}var Qt=class e{constructor(...t){Object.defineProperty(this,o0,{value:!0}),this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ei(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(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(ei(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(t){let r=i0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=i0(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(ei(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return ft(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:ft(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=n,o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===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,t>=c)continue;let f=t>=a&&t<c,u=r>a&&r<=c;if(f&&u){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-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-t}}indexOf(t,r=0){if(!ei(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.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 d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=Vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=ke(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=ke(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=ke(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=Vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=ke(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=ke(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=ke(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=ke(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=ke(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Ct(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function ri(e){return e[Symbol.asyncIterator]!=null}var ni=e=>{let t=Xt(e),r=Vt(t);return Qe(e,r),ni.bytes=t,r};ni.bytes=0;function xn(e,t){t=t??{};let r=t.lengthEncoder??ni;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ri(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}xn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??ni;return new Qt(r(e.byteLength),e)};var Ur=Wt(c0(),1);var Yl=8,Zl=1024*1024*4,dr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(dr||(dr={}));var So=e=>{let t=le(e);return So.bytes=Xt(t),t};So.bytes=0;function bn(e,t){let r=new Qt,n=dr.LENGTH,i=-1,o=t?.lengthDecoder??So,s=t?.maxLengthLength??Yl,a=t?.maxDataLength??Zl;function*c(){for(;r.byteLength>0;){if(n===dr.LENGTH)try{if(i=o(r),i<0)throw(0,Ur.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Ur.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),t?.onLength!=null&&t.onLength(i),n=dr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Ur.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===dr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(f),yield f,n=dr.LENGTH}}}return ri(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Ur.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Ur.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}bn.fromReader=(e,t)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await e.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 bn(n,{...t??{},onLength:o=>{r=o}})};function Kr(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var ii=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Or=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new ii(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let r=this.head;this.head=r.next=new ii(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var Bo=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Mr(e={}){return Ql(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}},e)}function Ql(e,t){t=t??{};let r=t.onEnd,n=new Or,i,o,s,a=Kr(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,m)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(x){m(x)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Kr()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Or,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.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})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Or,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let v,x;m!=null&&(v=new Promise((A,S)=>{x=()=>{S(new Bo)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,v])}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 oi=class extends Error{code;constructor(t,r){super(t),this.code=r}},Ao=class extends oi{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function f0(e){let t=Mr();e.sink(t).catch(o=>{t.end(o)}),e.sink=async o=>{for await(let s of o)t.push(s);t.end()};let r=e.source;e.source[Symbol.iterator]!=null?r=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(r=e.source[Symbol.asyncIterator]());let n=new Qt;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new Ao("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 Qt:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new oi("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?t.push(o):t.push(o.subarray()),await t.onEmpty(s)},unwrap:()=>{let o=e.source;return e.source=async function*(){yield*n,yield*o}(),e}}}var si=class extends Error{code;constructor(t,r){super(t),this.code=r}},u0=e=>le(e);u0.bytes=0;function Co(e,t){let r=f0(e);return{read:async i=>{let o=-1,s=new Qt,a=t?.lengthDecoder??u0;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(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new si("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new si("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(xn.single(i,t),o)},writeV:async(i,o)=>{let s=new Qt(...i.map(a=>xn.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function Io(){let e=Kr(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function l0(){let e=Io(),t=Io();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}function Jl(e){return e[Symbol.asyncIterator]!=null}function jl(...e){let t=[];for(let r of e)Jl(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=Mr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var h0=jl;function d0(e,...t){if(e==null)throw new Error("Empty pipeline");if(To(e)){let n=e;e=()=>n.source}else if(y0(e)||p0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&To(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++)To(r[n])&&(r[n]=eh(r[n]));return th(...r)}var th=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},p0=e=>e?.[Symbol.asyncIterator]!=null,y0=e=>e?.[Symbol.iterator]!=null,To=e=>e==null?!1:e.sink!=null&&e.source!=null,eh=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=Mr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(p0(o))i=async function*(){yield*o,n.end()};else if(y0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return h0(n,i())}return e.source};var g0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var rh=e=>e instanceof Uint8Array;var Ue=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),m0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),nh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!nh)throw new Error("Non little-endian hardware is not supported");function ai(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ci(e){if(typeof e=="string")e=ai(e);else if(rh(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var ih=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function x0(e,t){if(t!==void 0&&(typeof t!="object"||!ih(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function pr(e,t){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function b0(e,t){if(e.length!==t.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<e.length;n++)r&&(r=e[n]===t[n]);return r}var _o=(e,t)=>(Object.assign(t,e),t);function Lo(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,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;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}function fi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Ro(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Fr(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function No(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function v0(e,t){Fr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var qt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Do=class{constructor(t){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,t=ci(t),pr(t,32);let r=qt(t,0),n=qt(t,2),i=qt(t,4),o=qt(t,6),s=qt(t,8),a=qt(t,10),c=qt(t,12),f=qt(t,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]=qt(t,16+2*u)}process(t,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],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],m=qt(t,r+0),v=qt(t,r+2),x=qt(t,r+4),A=qt(t,r+6),S=qt(t,r+8),B=qt(t,r+10),R=qt(t,r+12),_=qt(t,r+14),O=o[0]+(m&8191),M=o[1]+((m>>>13|v<<3)&8191),U=o[2]+((v>>>10|x<<6)&8191),H=o[3]+((x>>>7|A<<9)&8191),z=o[4]+((A>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),C=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|_<<8)&8191),L=o[9]+(_>>>5|i),w=0,k=w+O*a+M*(5*y)+U*(5*p)+H*(5*h)+z*(5*g);w=k>>>13,k&=8191,k+=Z*(5*d)+C*(5*l)+N*(5*u)+T*(5*f)+L*(5*c),w+=k>>>13,k&=8191;let K=w+O*c+M*a+U*(5*y)+H*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+C*(5*d)+N*(5*l)+T*(5*u)+L*(5*f),w+=K>>>13,K&=8191;let V=w+O*f+M*c+U*a+H*(5*y)+z*(5*p);w=V>>>13,V&=8191,V+=Z*(5*h)+C*(5*g)+N*(5*d)+T*(5*l)+L*(5*u),w+=V>>>13,V&=8191;let W=w+O*u+M*f+U*c+H*a+z*(5*y);w=W>>>13,W&=8191,W+=Z*(5*p)+C*(5*h)+N*(5*g)+T*(5*d)+L*(5*l),w+=W>>>13,W&=8191;let Y=w+O*l+M*u+U*f+H*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+C*(5*p)+N*(5*h)+T*(5*g)+L*(5*d),w+=Y>>>13,Y&=8191;let et=w+O*d+M*l+U*u+H*f+z*c;w=et>>>13,et&=8191,et+=Z*a+C*(5*y)+N*(5*p)+T*(5*h)+L*(5*g),w+=et>>>13,et&=8191;let X=w+O*g+M*d+U*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+C*a+N*(5*y)+T*(5*p)+L*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+U*d+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+C*c+N*a+T*(5*y)+L*(5*p),w+=J>>>13,J&=8191;let yt=w+O*p+M*h+U*g+H*d+z*l;w=yt>>>13,yt&=8191,yt+=Z*u+C*f+N*c+T*a+L*(5*y),w+=yt>>>13,yt&=8191;let ht=w+O*y+M*p+U*h+H*g+z*d;w=ht>>>13,ht&=8191,ht+=Z*l+C*u+N*f+T*c+L*a,w+=ht>>>13,ht&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=V,o[3]=W,o[4]=Y,o[5]=et,o[6]=X,o[7]=J,o[8]=yt,o[9]=ht}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[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++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){No(this);let{buffer:r,blockLen:n}=this;t=ci(t);let i=t.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(t,o);continue}r.set(t.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(t){No(this),v0(t,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++)t[o++]=n[s]>>>0,t[o++]=n[s]>>>8;return t}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}};function oh(e){let t=(n,i)=>e(i).update(ci(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var w0=oh(e=>new Do(e));var sh=ai("expand 16-byte k"),ah=ai("expand 32-byte k"),ch=Ue(sh),fh=Ue(ah);function G(e,t){return e<<t|e>>>32-t}function Po(e){return e.byteOffset%4===0}var ui=64,uh=16,S0=2**32-1,E0=new Uint32Array;function lh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(ui),u=Ue(f),l=Po(i)&&Po(o),d=l?Ue(i):E0,g=l?Ue(o):E0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=S0)throw new Error("arx: counter overflow");let p=Math.min(ui,c-h);if(l&&p===ui){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let m=0,v;m<uh;m++)v=y+m,g[v]=d[v]^u[m];h+=ui;continue}for(let y=0,m;y<p;y++)m=h+y,o[m]=i[m]^f[y];h+=p}}function ko(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=x0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return fi(i),fi(s),Ro(o),Ro(r),(a,c,f,u,l=0)=>{Fr(a),Fr(c),Fr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Fr(u),fi(l),l<0||l>=S0)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let g=[],h=a.length,p,y;if(h===32)p=a.slice(),g.push(p),y=fh;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=ch,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);Po(c)||(c=c.slice(),g.push(c));let m=Ue(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,m,Ue(c.subarray(0,16)),m),c=c.subarray(16)}let v=16-i;if(v!==c.length)throw new Error(`arx: nonce must be ${v} or 16 bytes`);if(v!==12){let A=new Uint8Array(12);A.set(c,o?0:12-c.length),c=A,g.push(c)}let x=Ue(c);for(lh(e,y,m,x,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function C0(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],f=e[3],u=t[0],l=t[1],d=t[2],g=t[3],h=t[4],p=t[5],y=t[6],m=t[7],v=i,x=r[0],A=r[1],S=r[2],B=s,R=a,_=c,O=f,M=u,U=l,H=d,z=g,Z=h,C=p,N=y,T=m,L=v,w=x,k=A,K=S;for(let W=0;W<o;W+=2)B=B+M|0,L=G(L^B,16),Z=Z+L|0,M=G(M^Z,12),B=B+M|0,L=G(L^B,8),Z=Z+L|0,M=G(M^Z,7),R=R+U|0,w=G(w^R,16),C=C+w|0,U=G(U^C,12),R=R+U|0,w=G(w^R,8),C=C+w|0,U=G(U^C,7),_=_+H|0,k=G(k^_,16),N=N+k|0,H=G(H^N,12),_=_+H|0,k=G(k^_,8),N=N+k|0,H=G(H^N,7),O=O+z|0,K=G(K^O,16),T=T+K|0,z=G(z^T,12),O=O+z|0,K=G(K^O,8),T=T+K|0,z=G(z^T,7),B=B+U|0,K=G(K^B,16),N=N+K|0,U=G(U^N,12),B=B+U|0,K=G(K^B,8),N=N+K|0,U=G(U^N,7),R=R+H|0,L=G(L^R,16),T=T+L|0,H=G(H^T,12),R=R+H|0,L=G(L^R,8),T=T+L|0,H=G(H^T,7),_=_+z|0,w=G(w^_,16),Z=Z+w|0,z=G(z^Z,12),_=_+z|0,w=G(w^_,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,k=G(k^O,16),C=C+k|0,M=G(M^C,12),O=O+M|0,k=G(k^O,8),C=C+k|0,M=G(M^C,7);let V=0;n[V++]=s+B|0,n[V++]=a+R|0,n[V++]=c+_|0,n[V++]=f+O|0,n[V++]=u+M|0,n[V++]=l+U|0,n[V++]=d+H|0,n[V++]=g+z|0,n[V++]=h+Z|0,n[V++]=p+C|0,n[V++]=y+N|0,n[V++]=m+T|0,n[V++]=v+L|0,n[V++]=x+w|0,n[V++]=A+k|0,n[V++]=S+K|0}function hh(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],f=t[1],u=t[2],l=t[3],d=t[4],g=t[5],h=t[6],p=t[7],y=r[0],m=r[1],v=r[2],x=r[3];for(let S=0;S<20;S+=2)i=i+c|0,y=G(y^i,16),d=d+y|0,c=G(c^d,12),i=i+c|0,y=G(y^i,8),d=d+y|0,c=G(c^d,7),o=o+f|0,m=G(m^o,16),g=g+m|0,f=G(f^g,12),o=o+f|0,m=G(m^o,8),g=g+m|0,f=G(f^g,7),s=s+u|0,v=G(v^s,16),h=h+v|0,u=G(u^h,12),s=s+u|0,v=G(v^s,8),h=h+v|0,u=G(u^h,7),a=a+l|0,x=G(x^a,16),p=p+x|0,l=G(l^p,12),a=a+l|0,x=G(x^a,8),p=p+x|0,l=G(l^p,7),i=i+f|0,x=G(x^i,16),h=h+x|0,f=G(f^h,12),i=i+f|0,x=G(x^i,8),h=h+x|0,f=G(f^h,7),o=o+u|0,y=G(y^o,16),p=p+y|0,u=G(u^p,12),o=o+u|0,y=G(y^o,8),p=p+y|0,u=G(u^p,7),s=s+l|0,m=G(m^s,16),d=d+m|0,l=G(l^d,12),s=s+l|0,m=G(m^s,8),d=d+m|0,l=G(l^d,7),a=a+c|0,v=G(v^a,16),g=g+v|0,c=G(c^g,12),a=a+c|0,v=G(v^a,8),g=g+v|0,c=G(c^g,7);let A=0;n[A++]=i,n[A++]=o,n[A++]=s,n[A++]=a,n[A++]=y,n[A++]=m,n[A++]=v,n[A++]=x}var dh=ko(C0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),ph=ko(C0,{counterRight:!1,counterLength:8,extendNonceFn:hh,allowShortKeys:!1});var yh=new Uint8Array(16),B0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(yh.subarray(r))},gh=new Uint8Array(32);function A0(e,t,r,n,i){let o=e(t,r,gh),s=w0.create(o);i&&B0(s,i),B0(s,n);let a=new Uint8Array(16),c=m0(a);Lo(c,0,BigInt(i?i.length:0),!0),Lo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var I0=e=>(t,r,n)=>(pr(t,32),pr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?pr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=A0(e,t,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?pr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=A0(e,t,r,f,n);if(!b0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),Uo=_o({blockSize:64,nonceLength:12,tagLength:16},I0(dh)),Rx=_o({blockSize:64,nonceLength:24,tagLength:16},I0(ph));function li(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Ko(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function vn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");li(e.outputLen),li(e.blockLen)}function Vr(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function T0(e,t){Ko(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var hi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var _0=e=>e instanceof Uint8Array;var di=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),he=(e,t)=>e<<32-t|e>>>t,mh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!mh)throw new Error("Non little-endian hardware is not supported");function Oo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Je(e){if(typeof e=="string"&&(e=Oo(e)),!_0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function pi(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!_0(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var qr=class{clone(){return this._cloneInto()}},Ux={}.toString;function yi(e){let t=n=>e().update(Je(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function yr(e=32){if(hi&&typeof hi.getRandomValues=="function")return hi.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function xh(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,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;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}var Hr=class extends qr{constructor(t,r,n,i){super(),this.blockLen=t,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(t),this.view=di(this.buffer)}update(t){Vr(this);let{view:r,buffer:n,blockLen:i}=this;t=Je(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=di(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Vr(this),T0(t,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;xh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=di(t),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:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var gi=BigInt(4294967295),Mo=BigInt(32);function L0(e,t=!1){return t?{h:Number(e&gi),l:Number(e>>Mo&gi)}:{h:Number(e>>Mo&gi)|0,l:Number(e&gi)|0}}function bh(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=L0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var vh=(e,t)=>BigInt(e>>>0)<<Mo|BigInt(t>>>0),wh=(e,t,r)=>e>>>r,Eh=(e,t,r)=>e<<32-r|t>>>r,Sh=(e,t,r)=>e>>>r|t<<32-r,Bh=(e,t,r)=>e<<32-r|t>>>r,Ah=(e,t,r)=>e<<64-r|t>>>r-32,Ch=(e,t,r)=>e>>>r-32|t<<64-r,Ih=(e,t)=>t,Th=(e,t)=>e,_h=(e,t,r)=>e<<r|t>>>32-r,Lh=(e,t,r)=>t<<r|e>>>32-r,Rh=(e,t,r)=>t<<r-32|e>>>64-r,Nh=(e,t,r)=>e<<r-32|t>>>64-r;function Dh(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Ph=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),kh=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Uh=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Kh=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,Oh=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Mh=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var Fh={fromBig:L0,split:bh,toBig:vh,shrSH:wh,shrSL:Eh,rotrSH:Sh,rotrSL:Bh,rotrBH:Ah,rotrBL:Ch,rotr32H:Ih,rotr32L:Th,rotlSH:_h,rotlSL:Lh,rotlBH:Rh,rotlBL:Nh,add:Dh,add3L:Ph,add3H:kh,add4L:Uh,add4H:Kh,add5H:Mh,add5L:Oh},j=Fh;var[Vh,qh]=(()=>j.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(e=>BigInt(e))))(),je=new Uint32Array(80),tr=new Uint32Array(80),Fo=class extends Hr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:g,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y]}set(t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y){this.Ah=t|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=d|0,this.Gh=g|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let x=0;x<16;x++,r+=4)je[x]=t.getUint32(r),tr[x]=t.getUint32(r+=4);for(let x=16;x<80;x++){let A=je[x-15]|0,S=tr[x-15]|0,B=j.rotrSH(A,S,1)^j.rotrSH(A,S,8)^j.shrSH(A,S,7),R=j.rotrSL(A,S,1)^j.rotrSL(A,S,8)^j.shrSL(A,S,7),_=je[x-2]|0,O=tr[x-2]|0,M=j.rotrSH(_,O,19)^j.rotrBH(_,O,61)^j.shrSH(_,O,6),U=j.rotrSL(_,O,19)^j.rotrBL(_,O,61)^j.shrSL(_,O,6),H=j.add4L(R,U,tr[x-7],tr[x-16]),z=j.add4H(H,B,M,je[x-7],je[x-16]);je[x]=z|0,tr[x]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:g,Fl:h,Gh:p,Gl:y,Hh:m,Hl:v}=this;for(let x=0;x<80;x++){let A=j.rotrSH(l,d,14)^j.rotrSH(l,d,18)^j.rotrBH(l,d,41),S=j.rotrSL(l,d,14)^j.rotrSL(l,d,18)^j.rotrBL(l,d,41),B=l&g^~l&p,R=d&h^~d&y,_=j.add5L(v,S,R,qh[x],tr[x]),O=j.add5H(_,m,A,B,Vh[x],je[x]),M=_|0,U=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),H=j.rotrSL(n,i,28)^j.rotrBL(n,i,34)^j.rotrBL(n,i,39),z=n&o^n&a^o&a,Z=i&s^i&c^s&c;m=p|0,v=y|0,p=g|0,y=h|0,g=l|0,h=d|0,{h:l,l:d}=j.add(f|0,u|0,O|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let C=j.add3L(M,H,Z);n=j.add3H(C,O,U,z),i=C|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:m,l:v}=j.add(this.Hh|0,this.Hl|0,m|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v)}roundClean(){je.fill(0),tr.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 Vo=yi(()=>new Fo);var bi={};Nt(bi,{bitGet:()=>Zh,bitLen:()=>Yh,bitMask:()=>wn,bitSet:()=>Xh,bytesToHex:()=>Ke,bytesToNumberBE:()=>Oe,bytesToNumberLE:()=>de,concatBytes:()=>Fe,createHmacDrbg:()=>zo,ensureBytes:()=>mt,equalBytes:()=>$h,hexToBytes:()=>gr,hexToNumber:()=>Ho,numberToBytesBE:()=>er,numberToBytesLE:()=>Me,numberToHexUnpadded:()=>D0,numberToVarBytesBE:()=>Gh,utf8ToBytes:()=>Wh,validateObject:()=>oe});var N0=BigInt(0),mi=BigInt(1),Hh=BigInt(2),xi=e=>e instanceof Uint8Array,zh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Ke(e){if(!xi(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=zh[e[r]];return t}function D0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Ho(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}function gr(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let r=new Uint8Array(t/2);for(let n=0;n<r.length;n++){let i=n*2,o=e.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 Oe(e){return Ho(Ke(e))}function de(e){if(!xi(e))throw new Error("Uint8Array expected");return Ho(Ke(Uint8Array.from(e).reverse()))}function er(e,t){return gr(e.toString(16).padStart(t*2,"0"))}function Me(e,t){return er(e,t).reverse()}function Gh(e){return gr(D0(e))}function mt(e,t,r){let n;if(typeof t=="string")try{n=gr(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(xi(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function Fe(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!xi(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function $h(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function Wh(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Yh(e){let t;for(t=0;e>N0;e>>=mi,t+=1);return t}function Zh(e,t){return e>>BigInt(t)&mi}var Xh=(e,t,r)=>e|(r?mi:N0)<<BigInt(t),wn=e=>(Hh<<BigInt(e-1))-mi,qo=e=>new Uint8Array(e),R0=e=>Uint8Array.from(e);function zo(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=qo(e),i=qo(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=qo())=>{i=a(R0([0]),l),n=a(),l.length!==0&&(i=a(R0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let g=n.slice();d.push(g),l+=n.length}return Fe(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var Qh={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function oe(e,t,r={}){let n=(i,o,s)=>{let a=Qh[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Dt=BigInt(0),wt=BigInt(1),mr=BigInt(2),Jh=BigInt(3),Go=BigInt(4),P0=BigInt(5),k0=BigInt(8),jh=BigInt(9),td=BigInt(16);function at(e,t){let r=e%t;return r>=Dt?r:t+r}function $o(e,t,r){if(r<=Dt||t<Dt)throw new Error("Expected power/modulo > 0");if(r===wt)return Dt;let n=wt;for(;t>Dt;)t&wt&&(n=n*e%r),e=e*e%r,t>>=wt;return n}function xt(e,t,r){let n=e;for(;t-- >Dt;)n*=n,n%=r;return n}function vi(e,t){if(e===Dt||t<=Dt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=at(e,t),n=t,i=Dt,o=wt,s=wt,a=Dt;for(;r!==Dt;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==wt)throw new Error("invert: does not exist");return at(i,t)}function ed(e){let t=(e-wt)/mr,r,n,i;for(r=e-wt,n=0;r%mr===Dt;r/=mr,n++);for(i=mr;i<e&&$o(i,t,e)!==e-wt;i++);if(n===1){let s=(e+wt)/Go;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+wt)/mr;return function(a,c){if(a.pow(c,t)===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),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,wt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function rd(e){if(e%Go===Jh){let t=(e+wt)/Go;return function(n,i){let o=n.pow(i,t);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(e%k0===P0){let t=(e-P0)/k0;return function(n,i){let o=n.mul(i,mr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,mr),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 e%td,ed(e)}var U0=(e,t)=>(at(e,t)&wt)===wt,nd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Wo(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=nd.reduce((n,i)=>(n[i]="function",n),t);return oe(e,r)}function id(e,t,r){if(r<Dt)throw new Error("Expected power > 0");if(r===Dt)return e.ONE;if(r===wt)return t;let n=e.ONE,i=t;for(;r>Dt;)r&wt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=wt;return n}function od(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function Yo(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function wi(e,t,r=!1,n={}){if(e<=Dt)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=Yo(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=rd(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:wn(i),ZERO:Dt,ONE:wt,create:c=>at(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Dt<=c&&c<e},is0:c=>c===Dt,isOdd:c=>(c&wt)===wt,neg:c=>at(-c,e),eql:(c,f)=>c===f,sqr:c=>at(c*c,e),add:(c,f)=>at(c+f,e),sub:(c,f)=>at(c-f,e),mul:(c,f)=>at(c*f,e),pow:(c,f)=>id(a,c,f),div:(c,f)=>at(c*vi(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>vi(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>od(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Me(c,o):er(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?de(c):Oe(c)}});return Object.freeze(a)}function K0(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");let r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function O0(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function Zo(e){let t=O0(e);return t+Math.ceil(t/2)}function M0(e,t,r=!1){let n=e.length,i=O0(t),o=Zo(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Oe(e):de(e),a=at(s,t-wt)+wt;return r?Me(a,i):er(a,i)}var ad=BigInt(0),Xo=BigInt(1);function Ei(e,t){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(t/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=e.ZERO,a=i;for(;o>ad;)o&Xo&&(s=s.add(a)),a=a.double(),o>>=Xo;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 d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),d=2**i,g=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=g,y>c&&(y-=d,s+=Xo);let m=p,v=p+Math.abs(y)-1,x=h%2!==0,A=y<0;y===0?u=u.add(r(x,o[m])):f=f.add(r(A,o[v]))}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 En(e){return Wo(e.Fp),oe(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Yo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var pe=BigInt(0),ee=BigInt(1),Si=BigInt(2),cd=BigInt(8),fd={zip215:!0};function ud(e){let t=En(e);return oe(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function Bi(e){let t=ud(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=Si<<BigInt(a*8)-ee,u=r.create,l=t.uvRatio||((L,w)=>{try{return{isValid:!0,value:r.sqrt(L*r.inv(w))}}catch{return{isValid:!1,value:pe}}}),d=t.adjustScalarBytes||(L=>L),g=t.domain||((L,w,k)=>{if(w.length||k)throw new Error("Contexts/pre-hash are not supported");return L}),h=L=>typeof L=="bigint"&&pe<L,p=(L,w)=>h(L)&&h(w)&&L<w,y=L=>L===pe||p(L,f);function m(L,w){if(p(L,w))return L;throw new Error(`Expected valid scalar < ${w}, got ${typeof L} ${L}`)}function v(L){return L===pe?L:m(L,n)}let x=new Map;function A(L){if(!(L instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,k,K,V){if(this.ex=w,this.ey=k,this.ez=K,this.et=V,!y(w))throw new Error("x required");if(!y(k))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(V))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:k,y:K}=w||{};if(!y(k)||!y(K))throw new Error("invalid affine point");return new S(k,K,ee,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,V)=>K.toAffine(k[V])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,x.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:V,ez:W,et:Y}=this,et=u(K*K),X=u(V*V),J=u(W*W),yt=u(J*J),ht=u(et*w),Mt=u(J*u(ht+X)),Ft=u(yt+u(k*u(et*X)));if(Mt!==Ft)throw new Error("bad point: equation left != right (1)");let Rt=u(K*V),zt=u(W*Y);if(Rt!==zt)throw new Error("bad point: equation left != right (2)")}equals(w){A(w);let{ex:k,ey:K,ez:V}=this,{ex:W,ey:Y,ez:et}=w,X=u(k*et),J=u(W*V),yt=u(K*et),ht=u(Y*V);return X===J&&yt===ht}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:k,ey:K,ez:V}=this,W=u(k*k),Y=u(K*K),et=u(Si*u(V*V)),X=u(w*W),J=k+K,yt=u(u(J*J)-W-Y),ht=X+Y,Mt=ht-et,Ft=X-Y,Rt=u(yt*Mt),zt=u(ht*Ft),Pe=u(yt*Ft),hr=u(Mt*ht);return new S(Rt,zt,hr,Pe)}add(w){A(w);let{a:k,d:K}=t,{ex:V,ey:W,ez:Y,et}=this,{ex:X,ey:J,ez:yt,et:ht}=w;if(k===BigInt(-1)){let Xa=u((W-V)*(J+X)),Qa=u((W+V)*(J-X)),xo=u(Qa-Xa);if(xo===pe)return this.double();let Ja=u(Y*Si*ht),ja=u(et*Si*yt),t0=ja+Ja,e0=Qa+Xa,r0=ja-Ja,Ll=u(t0*xo),Rl=u(e0*r0),Nl=u(t0*r0),Dl=u(xo*e0);return new S(Ll,Rl,Dl,Nl)}let Mt=u(V*X),Ft=u(W*J),Rt=u(et*K*ht),zt=u(Y*yt),Pe=u((V+W)*(X+J)-Mt-Ft),hr=zt-Rt,gn=zt+Rt,Za=u(Ft-k*Mt),Cl=u(Pe*hr),Il=u(gn*Za),Tl=u(Pe*Za),_l=u(hr*gn);return new S(Cl,Il,_l,Tl)}subtract(w){return this.add(w.negate())}wNAF(w){return _.wNAFCached(this,x,w,S.normalizeZ)}multiply(w){let{p:k,f:K}=this.wNAF(m(w,n));return S.normalizeZ([k,K])[0]}multiplyUnsafe(w){let k=v(w);return k===pe?R:this.equals(R)||k===ee?this:this.equals(B)?this.wNAF(k).p:_.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:V}=this,W=this.is0();w==null&&(w=W?cd:r.inv(V));let Y=u(k*w),et=u(K*w),X=u(V*w);if(W)return{x:pe,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:et}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,k=!1){let{d:K,a:V}=t,W=r.BYTES;w=mt("pointHex",w,W);let Y=w.slice(),et=w[W-1];Y[W-1]=et&-129;let X=de(Y);X===pe||(k?m(X,f):m(X,r.ORDER));let J=u(X*X),yt=u(J-ee),ht=u(K*J-V),{isValid:Mt,value:Ft}=l(yt,ht);if(!Mt)throw new Error("Point.fromHex: invalid y coordinate");let Rt=(Ft&ee)===ee,zt=(et&128)!==0;if(!k&&Ft===pe&&zt)throw new Error("Point.fromHex: x=0 and x_0=1");return zt!==Rt&&(Ft=u(-Ft)),S.fromAffine({x:Ft,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=Me(k,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Ke(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(pe,ee,ee,pe);let{BASE:B,ZERO:R}=S,_=Ei(S,a*8);function O(L){return at(L,n)}function M(L){return O(de(L))}function U(L){let w=a;L=mt("private key",L,w);let k=mt("hashed private key",o(L),2*w),K=d(k.slice(0,w)),V=k.slice(w,2*w),W=M(K),Y=B.multiply(W),et=Y.toRawBytes();return{head:K,prefix:V,scalar:W,point:Y,pointBytes:et}}function H(L){return U(L).pointBytes}function z(L=new Uint8Array,...w){let k=Fe(...w);return M(o(g(k,mt("context",L),!!i)))}function Z(L,w,k={}){L=mt("message",L),i&&(L=i(L));let{prefix:K,scalar:V,pointBytes:W}=U(w),Y=z(k.context,K,L),et=B.multiply(Y).toRawBytes(),X=z(k.context,et,W,L),J=O(Y+X*V);v(J);let yt=Fe(et,Me(J,r.BYTES));return mt("result",yt,a*2)}let C=fd;function N(L,w,k,K=C){let{context:V,zip215:W}=K,Y=r.BYTES;L=mt("signature",L,2*Y),w=mt("message",w),i&&(w=i(w));let et=de(L.slice(Y,2*Y)),X,J,yt;try{X=S.fromHex(k,W),J=S.fromHex(L.slice(0,Y),W),yt=B.multiplyUnsafe(et)}catch{return!1}if(!W&&X.isSmallOrder())return!1;let ht=z(V,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(ht)).subtract(yt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(L=8,w=S.BASE){return w._setWindowSize(L),w.multiply(BigInt(3)),w}}}}var Sn=BigInt(0),Qo=BigInt(1);function ld(e){return oe(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function F0(e){let t=ld(e),{P:r}=t,n=x=>at(x,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(x=>x),c=t.powPminus2||(x=>$o(x,r-BigInt(2),r));function f(x,A,S){let B=n(x*(A-S));return A=n(A-B),S=n(S+B),[A,S]}function u(x){if(typeof x=="bigint"&&Sn<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(x,A){let S=u(x),B=u(A),R=S,_=Qo,O=Sn,M=S,U=Qo,H=Sn,z;for(let C=BigInt(i-1);C>=Sn;C--){let N=B>>C&Qo;H^=N,z=f(H,_,M),_=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1],H=N;let T=_+O,L=n(T*T),w=_-O,k=n(w*w),K=L-k,V=M+U,W=M-U,Y=n(W*T),et=n(V*w),X=Y+et,J=Y-et;M=n(X*X),U=n(R*n(J*J)),_=n(L*k),O=n(K*(L+n(l*K)))}z=f(H,_,M),_=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1];let Z=c(O);return n(_*Z)}function g(x){return Me(n(x),o)}function h(x){let A=mt("u coordinate",x,o);return s===o&&(A[s-1]&=127),de(A)}function p(x){let A=mt("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return de(a(A))}function y(x,A){let S=h(A),B=p(x),R=d(S,B);if(R===Sn)throw new Error("Invalid private or public key received");return g(R)}let m=g(t.Gu);function v(x){return y(x,m)}return{scalarMult:y,scalarMultBase:v,getSharedSecret:(x,A)=>y(x,A),getPublicKey:x=>v(x),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:m}}var Bn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),V0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),c2=BigInt(0),hd=BigInt(1),Jo=BigInt(2),dd=BigInt(5),q0=BigInt(10),pd=BigInt(20),yd=BigInt(40),H0=BigInt(80);function z0(e){let t=Bn,n=e*e%t*e%t,i=xt(n,Jo,t)*n%t,o=xt(i,hd,t)*e%t,s=xt(o,dd,t)*o%t,a=xt(s,q0,t)*s%t,c=xt(a,pd,t)*a%t,f=xt(c,yd,t)*c%t,u=xt(f,H0,t)*f%t,l=xt(u,H0,t)*f%t,d=xt(l,q0,t)*s%t;return{pow_p_5_8:xt(d,Jo,t)*e%t,b2:n}}function G0(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function gd(e,t){let r=Bn,n=at(t*t*t,r),i=at(n*n*t,r),o=z0(e*i).pow_p_5_8,s=at(e*n*o,r),a=at(t*s*s,r),c=s,f=at(s*V0,r),u=a===e,l=a===at(-e,r),d=a===at(-e*V0,r);return u&&(s=c),(l||d)&&(s=f),U0(s,r)&&(s=at(-s,r)),{isValid:u||l,value:s}}var Ve=wi(Bn,void 0,!0),jo={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ve,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Vo,randomBytes:yr,adjustScalarBytes:G0,uvRatio:gd},zr=Bi(jo);function $0(e,t,r){if(t.length>255)throw new Error("Context is too big");return pi(Oo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var f2=Bi({...jo,domain:$0}),u2=Bi({...jo,domain:$0,prehash:Vo}),An=(()=>F0({P:Bn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=Bn,{pow_p_5_8:r,b2:n}=z0(e);return at(xt(r,BigInt(3),t)*n,t)},adjustScalarBytes:G0,randomBytes:yr}))();var md=(Ve.ORDER+BigInt(3))/BigInt(8),l2=Ve.pow(Jo,md),h2=Ve.sqrt(Ve.neg(Ve.ONE)),d2=(Ve.ORDER-BigInt(5))/BigInt(8),p2=BigInt(486662);var y2=K0(Ve,Ve.neg(BigInt(486664)));var g2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),m2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),x2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),b2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var v2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ai=class extends qr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,vn(t);let n=Je(r);if(this.iHash=t.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?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return Vr(this),this.iHash.update(t),this}digestInto(t){Vr(this),Ko(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Gr=(e,t,r)=>new Ai(e,t).update(r).digest();Gr.create=(e,t)=>new Ai(e,t);function Y0(e,t,r){return vn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),Gr(e,Je(r),Je(t))}var ts=new Uint8Array([0]),W0=new Uint8Array;function Z0(e,t,r,n=32){if(vn(e),li(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=W0);let o=new Uint8Array(i*e.outputLen),s=Gr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)ts[0]=f+1,a.update(f===0?W0:c).update(r).update(ts).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),ts.fill(0),o.slice(0,n)}var xd=(e,t,r)=>e&t^~e&r,bd=(e,t,r)=>e&t^e&r^t&r,vd=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]),rr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),nr=new Uint32Array(64),es=class extends Hr{constructor(){super(64,32,8,!1),this.A=rr[0]|0,this.B=rr[1]|0,this.C=rr[2]|0,this.D=rr[3]|0,this.E=rr[4]|0,this.F=rr[5]|0,this.G=rr[6]|0,this.H=rr[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|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(t,r){for(let l=0;l<16;l++,r+=4)nr[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=nr[l-15],g=nr[l-2],h=he(d,7)^he(d,18)^d>>>3,p=he(g,17)^he(g,19)^g>>>10;nr[l]=p+nr[l-7]+h+nr[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 d=he(a,6)^he(a,11)^he(a,25),g=u+d+xd(a,c,f)+vd[l]+nr[l]|0,p=(he(n,2)^he(n,13)^he(n,22))+bd(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(){nr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var $r=yi(()=>new es);var rs={hashSHA256(e){return $r(e)},getHKDF(e,t){let r=Y0($r,t,e),i=Z0($r,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 e=An.utils.randomPrivateKey();return{publicKey:An.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:An.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return An.getSharedSecret(e,t)},chaCha20Poly1305Encrypt(e,t,r,n){return Uo(n,t,r).encrypt(e)},chaCha20Poly1305Decrypt(e,t,r,n,i){return Uo(n,t,r).decrypt(e,i)}};var X0=rs;var as={};Nt(as,{base10:()=>Cd});function wd(e,t){if(e.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<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,m=0,v=h.length;m!==v&&h[m]===0;)m++,p++;for(var x=(v-m)*u+1>>>0,A=new Uint8Array(x);m!==v;){for(var S=h[m],B=0,R=x-1;(S!==0||B<y)&&R!==-1;R--,B++)S+=256*A[R]>>>0,A[R]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");y=B,m++}for(var _=x-y;_!==x&&A[_]===0;)_++;for(var O=c.repeat(p);_<x;++_)O+=e.charAt(A[_]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,m=0;h[p]===c;)y++,p++;for(var v=(h.length-p)*f+1>>>0,x=new Uint8Array(v);h[p];){var A=r[h.charCodeAt(p)];if(A===255)return;for(var S=0,B=v-1;(A!==0||S<m)&&B!==-1;B--,S++)A+=a*x[B]>>>0,x[B]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");m=S,p++}if(h[p]!==" "){for(var R=v-m;R!==v&&x[R]===0;)R++;for(var _=new Uint8Array(y+(v-R)),O=y;R!==v;)_[O++]=x[R++];return _}}}function g(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:g}}var Ed=wd,Sd=Ed,Q0=Sd;var V2=new Uint8Array(0);var J0=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},qe=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var j0=e=>new TextEncoder().encode(e),tc=e=>new TextDecoder().decode(e);var ns=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},is=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return rc(this,t)}},os=class{constructor(t){this.decoders=t}or(t){return rc(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},rc=(e,t)=>new os({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),ss=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ns(t,r,n),this.decoder=new is(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},Wr=({name:e,prefix:t,encode:r,decode:n})=>new ss(e,t,r,n),ir=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Q0(r,t);return Wr({prefix:e,name:t,encode:n,decode:o=>qe(i(o))})},Bd=(e,t,r,n)=>{let i={};for(let u=0;u<t.length;++u)i[t[u]]=u;let o=e.length;for(;e[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[e[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},Ad=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},It=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>Wr({prefix:t,name:e,encode(i){return Ad(i,n,r)},decode(i){return Bd(i,n,r,e)}});var Cd=ir({prefix:"9",name:"base10",alphabet:"0123456789"});var cs={};Nt(cs,{base16:()=>Id,base16upper:()=>Td});var Id=It({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Td=It({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var fs={};Nt(fs,{base2:()=>_d});var _d=It({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var us={};Nt(us,{base256emoji:()=>Pd});var nc=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}"),Ld=nc.reduce((e,t,r)=>(e[r]=t,e),[]),Rd=nc.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function Nd(e){return e.reduce((t,r)=>(t+=Ld[r],t),"")}function Dd(e){let t=[];for(let r of e){let n=Rd[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var Pd=Wr({prefix:"\u{1F680}",name:"base256emoji",encode:Nd,decode:Dd});var ls={};Nt(ls,{base32:()=>ye,base32hex:()=>Od,base32hexpad:()=>Fd,base32hexpadupper:()=>Vd,base32hexupper:()=>Md,base32pad:()=>Ud,base32padupper:()=>Kd,base32upper:()=>kd,base32z:()=>qd});var ye=It({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),kd=It({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Ud=It({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Kd=It({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Od=It({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Md=It({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Fd=It({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Vd=It({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),qd=It({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var hs={};Nt(hs,{base36:()=>Hd,base36upper:()=>zd});var Hd=ir({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),zd=ir({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ds={};Nt(ds,{base58btc:()=>Bt,base58flickr:()=>Gd});var Bt=ir({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Gd=ir({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ys={};Nt(ys,{base64:()=>Yr,base64pad:()=>$d,base64url:()=>ps,base64urlpad:()=>Wd});var Yr=It({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),$d=It({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ps=It({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Wd=It({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var gs={};Nt(gs,{base8:()=>Yd});var Yd=It({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ms={};Nt(ms,{identity:()=>Zd});var Zd=Wr({prefix:"\0",name:"identity",encode:e=>tc(e),decode:e=>j0(e)});var rb=new TextEncoder,nb=new TextDecoder;var vs={};Nt(vs,{identity:()=>sr});var Ee={};Nt(Ee,{Digest:()=>xr,create:()=>ge,decode:()=>or,equals:()=>bs});var Jd=sc,ic=128,jd=127,tp=~jd,ep=Math.pow(2,31);function sc(e,t,r){t=t||[],r=r||0;for(var n=r;e>=ep;)t[r++]=e&255|ic,e/=128;for(;e&tp;)t[r++]=e&255|ic,e>>>=7;return t[r]=e|0,sc.bytes=r-n+1,t}var rp=xs,np=128,oc=127;function xs(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw xs.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&oc)<<i:(s&oc)*Math.pow(2,i),i+=7}while(s>=np);return xs.bytes=o-n,r}var ip=Math.pow(2,7),op=Math.pow(2,14),sp=Math.pow(2,21),ap=Math.pow(2,28),cp=Math.pow(2,35),fp=Math.pow(2,42),up=Math.pow(2,49),lp=Math.pow(2,56),hp=Math.pow(2,63),dp=function(e){return e<ip?1:e<op?2:e<sp?3:e<ap?4:e<cp?5:e<fp?6:e<up?7:e<lp?8:e<hp?9:10},pp={encode:Jd,decode:rp,encodingLength:dp},yp=pp,Cn=yp;var In=(e,t=0)=>[Cn.decode(e,t),Cn.decode.bytes],Zr=(e,t,r=0)=>(Cn.encode(e,t,r),t),Xr=e=>Cn.encodingLength(e);var ge=(e,t)=>{let r=t.byteLength,n=Xr(e),i=n+Xr(r),o=new Uint8Array(i+r);return Zr(e,o,0),Zr(r,o,n),o.set(t,i),new xr(e,r,t,o)},or=e=>{let t=qe(e),[r,n]=In(t),[i,o]=In(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new xr(r,i,s,t)},bs=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&J0(e.bytes,r.bytes)}},xr=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var ac=0,gp="identity",cc=qe,mp=e=>ge(ac,cc(e)),sr={code:ac,name:gp,encode:cc,digest:mp};var Ss={};Nt(Ss,{sha256:()=>Ht,sha512:()=>xp});var Es=({name:e,code:t,encode:r})=>new ws(e,t,r),ws=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?ge(this.code,r):r.then(n=>ge(this.code,n))}else throw Error("Unknown type, must be binary type")}};var uc=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Ht=Es({name:"sha2-256",code:18,encode:uc("SHA-256")}),xp=Es({name:"sha2-512",code:19,encode:uc("SHA-512")});var lc=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return vp(r,Bs(e),t||Bt.encoder);default:return wp(r,Bs(e),t||ye.encoder)}};var hc=new WeakMap,Bs=e=>{let t=hc.get(e);if(t==null){let r=new Map;return hc.set(e,r),r}return t},me=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==Tn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Ep)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.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:t,digest:r}=this.multihash,n=ge(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&bs(t.multihash,n.multihash)}toString(t){return lc(this,t)}toJSON(){return{"/":lc(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s||dc(n,i,o.bytes))}else if(r[Sp]===!0){let{version:n,multihash:i,code:o}=r,s=or(i);return e.create(n,o,s)}else return null}static create(t,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(t){case 0:{if(r!==Tn)throw new Error(`Version 0 CID must use dag-pb (code: ${Tn}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=dc(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Tn,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=qe(t.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 xr(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=In(t.subarray(r));return r+=d,l},i=n(),o=Tn;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(t,r){let[n,i]=bp(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Bs(o).set(n,t),o}},bp=(e,t)=>{switch(e[0]){case"Q":{let r=t||Bt;return[Bt.prefix,r.decode(`${Bt.prefix}${e}`)]}case Bt.prefix:{let r=t||Bt;return[Bt.prefix,r.decode(e)]}case ye.prefix:{let r=t||ye;return[ye.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},vp=(e,t,r)=>{let{prefix:n}=r;if(n!==Bt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},wp=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},Tn=112,Ep=18,dc=(e,t,r)=>{let n=Xr(e),i=n+Xr(t),o=new Uint8Array(i+r.byteLength);return Zr(e,o,0),Zr(t,o,n),o.set(r,i),o},Sp=Symbol.for("@ipld/js-cid/CID");var Se={...ms,...fs,...gs,...as,...cs,...ls,...hs,...ds,...ys,...us},bb={...Ss,...vs};function yc(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var pc=yc("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),As=yc("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Vt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),Bp={utf8:pc,"utf-8":pc,hex:Se.base16,latin1:As,ascii:As,binary:As,...Se},Ii=Bp;function At(e,t="utf8"){let r=Ii[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Xe(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function nt(e,t="utf8"){let r=Ii[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}var Ap=e=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(e):new Uint8Array(e),Qr=e=>{let t=Ap(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Qr.bytes=2;var _n=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};_n.bytes=2;function gc(e){return ft([e.ne,e.ciphertext],e.ne.length+e.ciphertext.length)}function mc(e){return ft([e.ne,e.ns,e.ciphertext],e.ne.length+e.ns.length+e.ciphertext.length)}function xc(e){return ft([e.ns,e.ciphertext],e.ns.length+e.ciphertext.length)}function bc(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:new Uint8Array(0)}}function vc(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.subarray(0,32),ns:e.subarray(32,80),ciphertext:e.subarray(80,e.length)}}function wc(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var Sc=16;function Bc(e,t){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=e.encrypt(n.subarray(i,o),e.session);t?.encryptedPackets.increment(),yield ft([Qr(s.byteLength),s],2+s.byteLength)}}}function Ac(e,t){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-Sc<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-Sc),{plaintext:c,valid:f}=e.decrypt(s,e.session,a);if(!f)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var rt=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},Rn=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},br=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var P8=Wt(kn(),1),k8=Wt(qf(),1);var Pg=Wt(pt(),1);var fa={};Nt(fa,{Ed25519PrivateKey:()=>Lr,Ed25519PublicKey:()=>Vn,generateKeyPair:()=>ag,generateKeyPairFromSeed:()=>nu,unmarshalEd25519PrivateKey:()=>og,unmarshalEd25519PublicKey:()=>sg});var rn=32,$e=64,$i=32;async function Hf(){let e=zr.utils.randomPrivateKey(),t=zr.getPublicKey(e);return{privateKey:Wf(e,t),publicKey:t}}async function zf(e){if(e.length!==$i)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=zr.getPublicKey(t);return{privateKey:Wf(t,r),publicKey:r}}async function Gf(e,t){let r=e.subarray(0,$i);return zr.sign(t,r)}async function $f(e,t,r){return zr.verify(t,r,e)}function Wf(e,t){let r=new Uint8Array($e);for(let n=0;n<$i;n++)r[n]=e[n],r[$i+n]=t[n];return r}var jt={get(e=globalThis){let t=e.crypto;if(t==null||t.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 t}};var Ys={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Zs(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=jt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=At(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",Ys,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",Ys,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,y,l);return ft([g,p.iv,new Uint8Array(m)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=At(d));let m;if(d.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",Ys,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(y,m,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function nn(e,t){let n=await Zs().encrypt(e,t);return Yr.encode(n)}var Xs=new Float32Array([-0]),lr=new Uint8Array(Xs.buffer);function Zf(e,t,r){Xs[0]=e,t[r]=lr[0],t[r+1]=lr[1],t[r+2]=lr[2],t[r+3]=lr[3]}function Xf(e,t){return lr[0]=e[t],lr[1]=e[t+1],lr[2]=e[t+2],lr[3]=e[t+3],Xs[0]}var Qs=new Float64Array([-0]),$t=new Uint8Array(Qs.buffer);function Qf(e,t,r){Qs[0]=e,t[r]=$t[0],t[r+1]=$t[1],t[r+2]=$t[2],t[r+3]=$t[3],t[r+4]=$t[4],t[r+5]=$t[5],t[r+6]=$t[6],t[r+7]=$t[7]}function Jf(e,t){return $t[0]=e[t],$t[1]=e[t+1],$t[2]=e[t+2],$t[3]=e[t+3],$t[4]=e[t+4],$t[5]=e[t+5],$t[6]=e[t+6],$t[7]=e[t+7],Qs[0]}var Q1=BigInt(Number.MAX_SAFE_INTEGER),J1=BigInt(Number.MIN_SAFE_INTEGER),te=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Ar;if(t<Q1&&t>J1)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,i=t-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>jf&&(i=0n,++n>jf&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Ar;let r=t<0;r&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new e(n,i)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):Ar}},Ar=new te(0,0);Ar.toBigInt=function(){return 0n};Ar.zzEncode=Ar.zzDecode=function(){return this};Ar.length=function(){return 1};var jf=4294967296n;function tu(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function eu(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Js(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function ve(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Wi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var js=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,ve(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ve(this,4);return Wi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ve(this,4);return Wi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ve(this,4);let t=Xf(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw ve(this,4);let t=Jf(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw ve(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return eu(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw ve(this,t);this.pos+=t}else do if(this.pos>=this.len)throw ve(this);while(this.buf[this.pos++]&128);return this}skipType(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}readLongVarint(){let t=new te(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*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;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw ve(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw ve(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ve(this,8);let t=Wi(this.buf,this.pos+=4),r=Wi(this.buf,this.pos+=4);return new te(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function ta(e){return new js(e instanceof Uint8Array?e:e.subarray())}function Cr(e,t){let r=ta(e);return t.decode(r)}function ea(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Vt(s);i+s>t&&(n=Vt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Ir=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function ra(){}var ia=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},j1=ea();function tg(e){return globalThis.Buffer!=null?Vt(e):j1(e)}var Fn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ir(ra,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Ir(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new oa((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(On,10,te.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=te.fromBigInt(t);return this._push(On,r.length(),r)}uint64Number(t){let r=te.fromNumber(t);return this._push(On,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=te.fromBigInt(t).zzEncode();return this._push(On,r.length(),r)}sint64Number(t){let r=te.fromNumber(t).zzEncode();return this._push(On,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(na,1,t?1:0)}fixed32(t){return this._push(Mn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=te.fromBigInt(t);return this._push(Mn,4,r.lo)._push(Mn,4,r.hi)}fixed64Number(t){let r=te.fromNumber(t);return this._push(Mn,4,r.lo)._push(Mn,4,r.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Zf,4,t)}double(t){return this._push(Qf,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(na,1,0):this.uint32(r)._push(rg,r,t)}string(t){let r=tu(t);return r!==0?this.uint32(r)._push(Js,r,t):this._push(na,1,0)}fork(){return this.states=new ia(this),this.head=this.tail=new Ir(ra,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ir(ra,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=tg(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function na(e,t,r){t[r]=e&255}function eg(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var oa=class extends Ir{next;constructor(t,r){super(eg,t,r),this.next=void 0}};function On(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function Mn(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function rg(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Fn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(ng,t,e),this},Fn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(ig,t,e),this});function ng(e,t,r){t.set(e,r)}function ig(e,t,r){e.length<40?Js(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(At(e),r)}function sa(){return new Fn}function Tr(e,t){let r=sa();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var on;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(on||(on={}));function Yi(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function aa(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Yi("enum",on.VARINT,r,n)}function _r(e,t){return Yi("message",on.LENGTH_DELIMITED,e,t)}var St;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(St||(St={}));var ca;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(ca||(ca={}));(function(e){e.codec=()=>aa(ca)})(St||(St={}));var Le;(function(e){let t;e.codec=()=>(t==null&&(t=_r((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.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=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Cr(r,e.codec())})(Le||(Le={}));var Re;(function(e){let t;e.codec=()=>(t==null&&(t=_r((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.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=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Cr(r,e.codec())})(Re||(Re={}));var Vn=class{_key;constructor(t){this._key=sn(t,rn)}async verify(t,r){return $f(this._key,r,t)}marshal(){return this._key}get bytes(){return Le.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},Lr=class{_key;_publicKey;constructor(t,r){this._key=sn(t,$e),this._publicKey=sn(r,rn)}async sign(t){return Gf(this._key,t)}get public(){return new Vn(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=sr.digest(this.public.bytes);return Bt.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return nn(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function og(e){if(e.length>$e){e=sn(e,$e+rn);let n=e.subarray(0,$e),i=e.subarray($e,e.length);return new Lr(n,i)}e=sn(e,$e);let t=e.subarray(0,$e),r=e.subarray(rn);return new Lr(t,r)}function sg(e){return e=sn(e,rn),new Vn(e)}async function ag(){let{privateKey:e,publicKey:t}=await Hf();return new Lr(e,t)}async function nu(e){let{privateKey:t,publicKey:r}=await zf(e);return new Lr(t,r)}function sn(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new rt(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var cw=Wt(Lt(),1),fw=Wt(qi(),1),iu=Wt(pt(),1);function we(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=ft([new Uint8Array(t-r.length),r])}return nt(r,"base64url")}function re(e){let t=ou(e);return new iu.default.jsbn.BigInteger(nt(t,"base16"),16)}function ou(e,t){let r=At(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=ft([new Uint8Array(t-r.length),r])}return r}var cg={"P-256":256,"P-384":384,"P-521":521},fg=Object.keys(cg),vw=fg.join(" / ");var pa={};Nt(pa,{MAX_KEY_SIZE:()=>Gn,RsaPrivateKey:()=>an,RsaPublicKey:()=>zn,fromJwk:()=>vg,generateKeyPair:()=>wg,unmarshalRsaPrivateKey:()=>xg,unmarshalRsaPublicKey:()=>bg});var Hn=Wt(pt(),1);var i8=Wt(uu(),1);function Xi(e){if(isNaN(e)||e<=0)throw new rt("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return yr(e)}var Fw=Wt(Gi(),1),ha=Wt(pt(),1);function lu(e,t){return t.map(r=>re(e[r]))}function hu(e){return ha.default.pki.setRsaPrivateKey(...lu(e,["n","e","d","p","q","dp","dq","qi"]))}function du(e){return ha.default.pki.setRsaPublicKey(...lu(e,["n","e"]))}var Nr={};Nt(Nr,{jwkToPkcs1:()=>dg,jwkToPkix:()=>yg,pkcs1ToJwk:()=>hg,pkixToJwk:()=>pg});var Hw=Wt(kn(),1),zw=Wt(Gi(),1);var We=Wt(pt(),1);function hg(e){let t=We.default.asn1.fromDer(nt(e,"ascii")),r=We.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:we(r.n),e:we(r.e),d:we(r.d),p:we(r.p),q:we(r.q),dp:we(r.dP),dq:we(r.dQ),qi:we(r.qInv),alg:"RS256"}}function dg(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new rt("JWK was missing components","ERR_INVALID_PARAMETERS");let t=We.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return At(We.default.asn1.toDer(t).getBytes(),"ascii")}function pg(e){let t=We.default.asn1.fromDer(nt(e,"ascii")),r=We.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:we(r.n),e:we(r.e)}}function yg(e){if(e.n==null||e.e==null)throw new rt("JWK was missing components","ERR_INVALID_PARAMETERS");let t=We.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return At(We.default.asn1.toDer(t).getBytes(),"ascii")}async function pu(e){let t=await jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await mu(t);return{privateKey:r[0],publicKey:r[1]}}async function da(e){let r=[await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await gg(e)],n=await mu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function yu(e,t){let r=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(n,0,n.byteLength)}async function gu(e,t,r){let n=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r)}async function mu(e){if(e.privateKey==null||e.publicKey==null)throw new rt("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([jt.get().subtle.exportKey("jwk",e.privateKey),jt.get().subtle.exportKey("jwk",e.publicKey)])}async function gg(e){return jt.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function xu(e,t,r,n){let i=t?du(e):hu(e),o=nt(Uint8Array.from(r),"ascii"),s=n(o,i);return At(s,"ascii")}function bu(e,t){return xu(e,!0,t,(r,n)=>n.encrypt(r))}function vu(e,t){return xu(e,!1,t,(r,n)=>n.decrypt(r))}function Qi(e){if(e.kty!=="RSA")throw new rt("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new rt("invalid key modulus","ERR_INVALID_KEY_MODULUS");return At(e.n,"base64url").length*8}var Gn=8192,zn=class{_key;constructor(t){this._key=t}async verify(t,r){return gu(this._key,r,t)}marshal(){return Nr.jwkToPkix(this._key)}get bytes(){return Le.encode({Type:St.RSA,Data:this.marshal()}).subarray()}encrypt(t){return bu(this._key,t)}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},an=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return Xi(16)}async sign(t){return yu(this._key,t)}get public(){if(this._publicKey==null)throw new rt("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new zn(this._publicKey)}decrypt(t){return vu(this._key,t)}marshal(){return Nr.jwkToPkcs1(this._key)}get bytes(){return Re.encode({Type:St.RSA,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=await this.public.hash();return nt(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Hn.default.util.ByteBuffer(this.marshal()),i=Hn.default.asn1.fromDer(n),o=Hn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Hn.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return nn(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function xg(e){let t=Nr.pkcs1ToJwk(e);if(Qi(t)>Gn)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await da(t);return new an(r.privateKey,r.publicKey)}function bg(e){let t=Nr.pkixToJwk(e);if(Qi(t)>Gn)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new zn(t)}async function vg(e){if(Qi(e)>Gn)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await da(e);return new an(t.privateKey,t.publicKey)}async function wg(e){if(e>Gn)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await pu(e);return new an(t.privateKey,t.publicKey)}var xa={};Nt(xa,{Secp256k1PrivateKey:()=>Wn,Secp256k1PublicKey:()=>$n,generateKeyPair:()=>Dg,unmarshalSecp256k1PrivateKey:()=>Rg,unmarshalSecp256k1PublicKey:()=>Ng});function Eg(e){let t=En(e);oe(t,{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}=t;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({...t})}var{bytesToNumberBE:Sg,hexToBytes:Bg}=bi,Dr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Dr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:Sg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Dr,r=typeof e=="string"?Bg(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Dr._parseInt(r.subarray(2)),{d:s,l:a}=Dr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=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=t(r(e.s)),i=t(r(e.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}`}},Ye=BigInt(0),ce=BigInt(1),u8=BigInt(2),wu=BigInt(3),l8=BigInt(4);function Ag(e){let t=Eg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let m=p.toAffine();return Fe(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=t.fromBytes||(h=>{let p=h.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(h){let{a:p,b:y}=t,m=r.sqr(h),v=r.mul(m,h);return r.add(r.add(v,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Ye<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:m,n:v}=t;if(p&&typeof h!="bigint"){if(h instanceof Uint8Array&&(h=Ke(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let x;try{x=typeof h=="bigint"?h:Oe(mt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return m&&(x=at(x,v)),a(x),x}let f=new Map;function u(h){if(!(h 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 v=x=>r.eql(x,r.ZERO);return v(y)&&v(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,v)=>m.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(mt("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(t.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),v=o(p);if(!r.eql(m,v))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:v}=this,{px:x,py:A,pz:S}=p,B=r.eql(r.mul(y,S),r.mul(x,v)),R=r.eql(r.mul(m,S),r.mul(A,v));return B&&R}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,m=r.mul(y,wu),{px:v,py:x,pz:A}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,_=r.mul(v,v),O=r.mul(x,x),M=r.mul(A,A),U=r.mul(v,x);return U=r.add(U,U),R=r.mul(v,A),R=r.add(R,R),S=r.mul(p,R),B=r.mul(m,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(U,S),R=r.mul(m,R),M=r.mul(p,M),U=r.sub(_,M),U=r.mul(p,U),U=r.add(U,R),R=r.add(_,_),_=r.add(R,_),_=r.add(_,M),_=r.mul(_,U),B=r.add(B,_),M=r.mul(x,A),M=r.add(M,M),_=r.mul(M,U),S=r.sub(S,_),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:m,pz:v}=this,{px:x,py:A,pz:S}=p,B=r.ZERO,R=r.ZERO,_=r.ZERO,O=t.a,M=r.mul(t.b,wu),U=r.mul(y,x),H=r.mul(m,A),z=r.mul(v,S),Z=r.add(y,m),C=r.add(x,A);Z=r.mul(Z,C),C=r.add(U,H),Z=r.sub(Z,C),C=r.add(y,v);let N=r.add(x,S);return C=r.mul(C,N),N=r.add(U,z),C=r.sub(C,N),N=r.add(m,v),B=r.add(A,S),N=r.mul(N,B),B=r.add(H,z),N=r.sub(N,B),_=r.mul(O,C),B=r.mul(M,z),_=r.add(B,_),B=r.sub(H,_),_=r.add(H,_),R=r.mul(B,_),H=r.add(U,U),H=r.add(H,U),z=r.mul(O,z),C=r.mul(M,C),H=r.add(H,z),z=r.sub(U,z),z=r.mul(O,z),C=r.add(C,z),U=r.mul(H,C),R=r.add(R,U),U=r.mul(N,C),B=r.mul(Z,B),B=r.sub(B,U),U=r.mul(Z,H),_=r.mul(N,_),_=r.add(_,U),new l(B,R,_)}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(v=>v.pz));return y.map((v,x)=>v.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Ye)return y;if(a(p),p===ce)return this;let{endo:m}=t;if(!m)return g.unsafeLadder(this,p);let{k1neg:v,k1:x,k2neg:A,k2:S}=m.splitScalar(p),B=y,R=y,_=this;for(;x>Ye||S>Ye;)x&ce&&(B=B.add(_)),S&ce&&(R=R.add(_)),_=_.double(),x>>=ce,S>>=ce;return v&&(B=B.negate()),A&&(R=R.negate()),R=new l(r.mul(R.px,m.beta),R.py,R.pz),B.add(R)}multiply(p){a(p);let y=p,m,v,{endo:x}=t;if(x){let{k1neg:A,k1:S,k2neg:B,k2:R}=x.splitScalar(y),{p:_,f:O}=this.wNAF(S),{p:M,f:U}=this.wNAF(R);_=g.constTimeNegate(A,_),M=g.constTimeNegate(B,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),m=_.add(M),v=O.add(U)}else{let{p:A,f:S}=this.wNAF(y);m=A,v=S}return l.normalizeZ([m,v])[0]}multiplyAndAddUnsafe(p,y,m){let v=l.BASE,x=(S,B)=>B===Ye||B===ce||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),A=x(this,y).add(x(p,m));return A.is0()?void 0:A}toAffine(p){let{px:y,py:m,pz:v}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(v));let A=r.mul(y,p),S=r.mul(m,p),B=r.mul(v,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return{x:A,y:S}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===ce)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}=t;return p===ce?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ke(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=Ei(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Cg(e){let t=En(e);return oe(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Eu(e){let t=Cg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return Ye<C&&C<r.ORDER}function a(C){return at(C,n)}function c(C){return vi(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=Ag({...t,toBytes(C,N,T){let L=N.toAffine(),w=r.toBytes(L.x),k=Fe;return T?k(Uint8Array.from([N.hasEvenY()?2:3]),w):k(Uint8Array.from([4]),w,r.toBytes(L.y))},fromBytes(C){let N=C.length,T=C[0],L=C.subarray(1);if(N===i&&(T===2||T===3)){let w=Oe(L);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),V=(K&ce)===ce;return(T&1)===1!==V&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(L.subarray(0,r.BYTES)),k=r.fromBytes(L.subarray(r.BYTES,2*r.BYTES));return{x:w,y:k}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=C=>Ke(er(C,t.nByteLength));function h(C){let N=n>>ce;return C>N}function p(C){return h(C)?a(-C):C}let y=(C,N,T)=>Oe(C.slice(N,T));class m{constructor(N,T,L){this.r=N,this.s=T,this.recovery=L,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=mt("compactSignature",N,T*2),new m(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:L}=Dr.toSig(mt("DER",N));return new m(T,L)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new m(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:L,recovery:w}=this,k=R(mt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let V=w&1?"03":"02",W=f.fromHex(V+g(K)),Y=c(K),et=a(-k*Y),X=a(L*Y),J=f.BASE.multiplyAndAddUnsafe(W,et,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return gr(this.toDERHex())}toDERHex(){return Dr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return gr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=Zo(t.n);return M0(t.randomBytes(C),t.n)},precompute(C=8,N=f.BASE){return N._setWindowSize(C),N.multiply(BigInt(3)),N}};function x(C,N=!0){return f.fromPrivateKey(C).toRawBytes(N)}function A(C){let N=C instanceof Uint8Array,T=typeof C=="string",L=(N||T)&&C.length;return N?L===i||L===o:T?L===2*i||L===2*o:C instanceof f}function S(C,N,T=!0){if(A(C))throw new Error("first arg must be private key");if(!A(N))throw new Error("second arg must be public key");return f.fromHex(N).multiply(u(C)).toRawBytes(T)}let B=t.bits2int||function(C){let N=Oe(C),T=C.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(C){return a(B(C))},_=wn(t.nBitLength);function O(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Ye<=C&&C<_))throw new Error(`bigint expected < 2^${t.nBitLength}`);return er(C,t.nByteLength)}function M(C,N,T=U){if(["recovered","canonical"].some(ht=>ht in T))throw new Error("sign() legacy options not supported");let{hash:L,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:V}=T;k==null&&(k=!0),C=mt("msgHash",C),K&&(C=mt("prehashed msgHash",L(C)));let W=R(C),Y=u(N),et=[O(Y),O(W)];if(V!=null){let ht=V===!0?w(r.BYTES):V;et.push(mt("extraEntropy",ht))}let X=Fe(...et),J=W;function yt(ht){let Mt=B(ht);if(!d(Mt))return;let Ft=c(Mt),Rt=f.BASE.multiply(Mt).toAffine(),zt=a(Rt.x);if(zt===Ye)return;let Pe=a(Ft*a(J+zt*Y));if(Pe===Ye)return;let hr=(Rt.x===zt?0:2)|Number(Rt.y&ce),gn=Pe;return k&&h(Pe)&&(gn=p(Pe),hr^=1),new m(zt,gn,hr)}return{seed:X,k2sig:yt}}let U={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(C,N,T=U){let{seed:L,k2sig:w}=M(C,N,T),k=t;return zo(k.hash.outputLen,k.nByteLength,k.hmac)(L,w)}f.BASE._setWindowSize(8);function Z(C,N,T,L=H){let w=C;if(N=mt("msgHash",N),T=mt("publicKey",T),"strict"in L)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=L,V,W;try{if(typeof w=="string"||w instanceof Uint8Array)try{V=m.fromDER(w)}catch(Rt){if(!(Rt instanceof Dr.Err))throw Rt;V=m.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Rt,s:zt}=w;V=new m(Rt,zt)}else throw new Error("PARSE");W=f.fromHex(T)}catch(Rt){if(Rt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&V.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:et}=V,X=R(N),J=c(et),yt=a(X*J),ht=a(Y*J),Mt=f.BASE.multiplyAndAddUnsafe(W,yt,ht)?.toAffine();return Mt?a(Mt.x)===Y:!1}return{CURVE:t,getPublicKey:x,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:m,utils:v}}function Ig(e){return{hash:e,hmac:(t,...r)=>Gr(e,t,pi(...r)),randomBytes:yr}}function Su(e,t){let r=n=>Eu({...e,...Ig(n)});return Object.freeze({...r(t),create:r})}var Cu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Bu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Tg=BigInt(1),ya=BigInt(2),Au=(e,t)=>(e+t/ya)/t;function _g(e){let t=Cu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=xt(u,r,t)*u%t,d=xt(l,r,t)*u%t,g=xt(d,ya,t)*f%t,h=xt(g,i,t)*g%t,p=xt(h,o,t)*h%t,y=xt(p,a,t)*p%t,m=xt(y,c,t)*y%t,v=xt(m,a,t)*p%t,x=xt(v,r,t)*u%t,A=xt(x,s,t)*h%t,S=xt(A,n,t)*f%t,B=xt(S,ya,t);if(!ga.eql(ga.sqr(B),e))throw new Error("Cannot find square root");return B}var ga=wi(Cu,void 0,void 0,{sqrt:_g}),Ze=Su({a:BigInt(0),b:BigInt(7),Fp:ga,n:Bu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Bu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Tg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Au(o*e,t),c=Au(-n*e,t),f=at(e-a*r-c*i,t),u=at(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},$r),v8=BigInt(0);var w8=Ze.ProjectivePoint;function Iu(){return Ze.utils.randomPrivateKey()}async function Tu(e,t){let{digest:r}=await Ht.digest(t);try{return Ze.sign(r,e).toDERRawBytes()}catch(n){throw new rt(String(n),"ERR_INVALID_INPUT")}}async function _u(e,t,r){try{let{digest:n}=await Ht.digest(r);return Ze.verify(t,n,e)}catch(n){throw new rt(String(n),"ERR_INVALID_INPUT")}}function Lu(e){return Ze.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Ru(e){try{Ze.getPublicKey(e,!0)}catch(t){throw new rt(String(t),"ERR_INVALID_PRIVATE_KEY")}}function ma(e){try{Ze.ProjectivePoint.fromHex(e)}catch(t){throw new rt(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Nu(e){try{return Ze.getPublicKey(e,!0)}catch(t){throw new rt(String(t),"ERR_INVALID_PRIVATE_KEY")}}var $n=class{_key;constructor(t){ma(t),this._key=t}async verify(t,r){return _u(this._key,r,t)}marshal(){return Lu(this._key)}get bytes(){return Le.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},Wn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Nu(t),Ru(this._key),ma(this._publicKey)}async sign(t){return Tu(this._key,t)}get public(){return new $n(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=await this.public.hash();return nt(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return nn(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Rg(e){return new Wn(e)}function Ng(e){return new $n(e)}async function Dg(){let e=Iu();return new Wn(e)}var Pr={rsa:pa,ed25519:fa,secp256k1:xa};function Du(e){let t=Object.keys(Pr).join(" / ");return new rt(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Pu(e){let t=Le.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Pr.rsa.unmarshalRsaPublicKey(r);case St.Ed25519:return Pr.ed25519.unmarshalEd25519PublicKey(r);case St.Secp256k1:return Pr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Du(t.Type??"unknown")}}async function ku(e){let t=Re.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Pr.rsa.unmarshalRsaPrivateKey(r);case St.Ed25519:return Pr.ed25519.unmarshalEd25519PrivateKey(r);case St.Secp256k1:return Pr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Du(t.Type??"RSA")}}var Uu=Symbol.for("@libp2p/peer-id");var kg=Symbol.for("nodejs.util.inspect.custom"),Ku=Object.values(Se).map(e=>e.decoder).reduce((e,t)=>e.or(t),Se.identity.decoder),Ou=114,ba=36,va=37,Yn=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Uu]=!0;toString(){return this.string==null&&(this.string=Bt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return me.createV1(Ou,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Ct(this.multihash.bytes,t);if(typeof t=="string")return wa(t).equals(this);if(t?.multihash?.bytes!=null)return Ct(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[kg](){return`PeerId(${this.toString()})`}},cn=class extends Yn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},fn=class extends Yn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},un=class extends Yn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function wa(e,t){if(t=t??Ku,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=or(Bt.decode(`z${e}`));return e.startsWith("12D")?new fn({multihash:r}):e.startsWith("16U")?new un({multihash:r}):new cn({multihash:r})}return Ug(Ku.decode(e))}function Ug(e){try{let t=or(e);if(t.code===sr.code){if(t.digest.length===ba)return new fn({multihash:t});if(t.digest.length===va)return new un({multihash:t})}if(t.code===Ht.code)return new cn({multihash:t})}catch{return Kg(me.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Kg(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Ou)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Ht.code)return new cn({multihash:e.multihash});if(t.code===sr.code){if(t.digest.length===ba)return new fn({multihash:e.multihash});if(t.digest.length===va)return new un({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Ea(e,t){return e.length===ba?new fn({multihash:ge(sr.code,e),privateKey:t}):e.length===va?new un({multihash:ge(sr.code,e),privateKey:t}):new cn({multihash:await Ht.digest(e),publicKey:e,privateKey:t})}var Ji;(function(e){let t;e.codec=()=>(t==null&&(t=_r((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})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Cr(r,e.codec())})(Ji||(Ji={}));var Zn;(function(e){let t;e.codec=()=>(t==null&&(t=_r((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),Ji.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=Ji.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Cr(r,e.codec())})(Zn||(Zn={}));async function Mu(e,t,r){let n=await Mg(e,Fu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Og(e.publicKey,n,r)}function Og(e,t,r){return Zn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Mg(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await ku(e.privateKey)).sign(t)}async function Sa(e){return Ea(e.identityKey)}function Ba(e){return Zn.decode(e)}function Fu(e){let t=At("noise-libp2p-static-key:");return ft([t,e],t.length+e.length)}async function Aa(e,t,r){let n=await Ea(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Fu(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await Pu(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Xn(e){return!(!(e instanceof Uint8Array)||e.length!==32)}var ie=Wt(Gu(),1);ie.default.formatters.b=e=>e==null?"undefined":Bt.baseEncode(e);ie.default.formatters.t=e=>e==null?"undefined":ye.baseEncode(e);ie.default.formatters.m=e=>e==null?"undefined":Yr.baseEncode(e);ie.default.formatters.p=e=>e==null?"undefined":e.toString();ie.default.formatters.c=e=>e==null?"undefined":e.toString();ie.default.formatters.k=e=>e==null?"undefined":e.toString();ie.default.formatters.a=e=>e==null?"undefined":e.toString();function Jg(e){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=e,t.destroy=()=>!0,t.extend=()=>t,t}function $u(e){let t=Jg(`${e}:trace`);return ie.default.enabled(`${e}:trace`)&&ie.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(t=(0,ie.default)(`${e}:trace`)),Object.assign((0,ie.default)(e),{error:(0,ie.default)(`${e}:error`),trace:t})}var Ot=$u("libp2p:noise");var fe;g0?fe=Ot:fe=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function Wu(e){fe(`LOCAL_STATIC_PUBLIC_KEY ${nt(e.publicKey,"hex")}`),fe(`LOCAL_STATIC_PRIVATE_KEY ${nt(e.privateKey,"hex")}`)}function Ca(e){e?(fe(`LOCAL_PUBLIC_EPHEMERAL_KEY ${nt(e.publicKey,"hex")}`),fe(`LOCAL_PRIVATE_EPHEMERAL_KEY ${nt(e.privateKey,"hex")}`)):fe("Missing local ephemeral keys.")}function Yu(e){fe(`REMOTE_STATIC_PUBLIC_KEY ${nt(e,"hex")}`)}function Ia(e){fe(`REMOTE_EPHEMERAL_PUBLIC_KEY ${nt(e,"hex")}`)}function Zu(e){e.cs1&&e.cs2?(fe(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${nt(e.cs1.k,"hex")}`),fe(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${nt(e.cs2.k,"hex")}`)):fe("Missing cipher state.")}var jg="Cipherstate has reached maximum n, a new handshake must be performed",eo=class{n;bytes;view;constructor(t=0){this.n=t,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!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(jg)}};var ro=class{crypto;constructor(t){this.crypto=t}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(t){let r=this.createEmptyKey();return Ct(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Ot.error(i),new Uint8Array(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(ft([t,r],t.length+r.length))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new eo}}initializeSymmetric(t){let r=At(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=new Uint8Array(32);return r.set(t),r}else return this.getHash(t,new Uint8Array(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,new Uint8Array(0),r.ciphertext)}};var no=class extends ro{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=new Uint8Array(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Xn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Xn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);i&&Xn(n)&&(t.rs=n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(t,r){let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);if(i&&Xn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=new Uint8Array(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};var io=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(t,r,n,i,o,s,a,c){this.isInitiator=t,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new no(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Wu(this.session.hs.s),this.isInitiator){Ot.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(gc(t)),Ot.trace("Stage 0 - Initiator finished sending first message."),Ca(this.session.hs.e)}else{Ot.trace("Stage 0 - Responder waiting to receive first message...");let t=bc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new br("xx handshake stage 0 validation fail");Ot.trace("Stage 0 - Responder received first message."),Ia(this.session.hs.re)}}async exchange(){if(this.isInitiator){Ot.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=vc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new br("xx handshake stage 1 validation fail");Ot.trace("Stage 1 - Initiator received the message."),Ia(this.session.hs.re),Yu(this.session.hs.rs),Ot.trace("Initiator going to check remote's signature...");try{let i=Ba(r);this.remotePeer=this.remotePeer||await Sa(i),await Aa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Rn(`Error occurred while verifying signed payload: ${o.message}`)}Ot.trace("All good with the signature!")}else{Ot.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(mc(t)),Ot.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Ca(this.session.hs.e)}}async finish(){if(this.isInitiator){Ot.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(xc(t)),Ot.trace("Stage 2 - Initiator sent message with signed payload.")}else{Ot.trace("Stage 2 - Responder waiting for third handshake message...");let t=wc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new br("xx handshake stage 2 validation fail");Ot.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Ba(r);this.remotePeer=this.remotePeer||await Sa(i),await Aa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Rn(`Error occurred while verifying signed payload: ${o.message}`)}}Zu(this.session)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new br("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function Xu(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var oo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(t={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=t;this.crypto=i??X0,this.extensions=n,this.metrics=s?Xu(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(t,r,n){let i=Co(r,{lengthEncoder:Qr,lengthDecoder:_n,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=Co(r,{lengthEncoder:Qr,lengthDecoder:_n,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await Mu(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new io(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(t,r){let[n,i]=l0(),o=t.unwrap();return await d0(n,Bc(r,this.metrics),o,s=>bn(s,{lengthDecoder:_n}),Ac(r,this.metrics),n),i}};function Qu(e={}){return()=>new oo(e)}var ju=Symbol.for("@libp2p/transport");var Ju;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Ju||(Ju={}));var so=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();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(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,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 d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(o*=t,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 t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=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]=t(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]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var tl=45,tm=15,pn=new so;function Ta(e){if(!(e.length>tm))return pn.new(e).parseWith(()=>pn.readIPv4Addr())}function _a(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>tl))return pn.new(e).parseWith(()=>pn.readIPv6Addr())}function ao(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>tl))return pn.new(e).parseWith(()=>pn.readIPAddr())}var aE=parseInt("0xFFFF",16),cE=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function co(e){return!!Ta(e)}function fo(e){return!!_a(e)}function uo(e){return!!ao(e)}var nl=co,om=fo,La=function(e){let t=0;if(e=e.toString().trim(),nl(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(om(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=nl(r[n]),s;o&&(s=La(r[n]),r[n]=nt(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,nt(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(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},il=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var yn={},Ra={},am=[[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"]];am.forEach(e=>{let t=cm(...e);Ra[t.code]=t,yn[t.name]=t});function cm(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function lt(e){if(typeof e=="number"){if(Ra[e]!=null)return Ra[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(yn[e]!=null)return yn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var GE=lt("ip4"),$E=lt("ip6"),WE=lt("ipcidr");function Da(e,t){switch(lt(e).code){case 4:case 41:return um(t);case 42:return al(t);case 6:case 273:case 33:case 132:return fl(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return al(t);case 421:return pm(t);case 444:return cl(t);case 445:return cl(t);case 466:return dm(t);default:return nt(t,"base16")}}function Pa(e,t){switch(lt(e).code){case 4:return ol(t);case 41:return ol(t);case 42:return sl(t);case 6:case 273:case 33:case 132:return ka(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return sl(t);case 421:return lm(t);case 444:return ym(t);case 445:return gm(t);case 466:return hm(t);default:return At(t,"base16")}}var Na=Object.values(Se).map(e=>e.decoder),fm=function(){let e=Na[0].or(Na[1]);return Na.slice(2).forEach(t=>e=e.or(t)),e}();function ol(e){if(!uo(e))throw new Error("invalid ip address");return La(e)}function um(e){let t=il(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!uo(t))throw new Error("invalid ip address");return t}function ka(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function fl(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function sl(e){let t=At(e),r=Uint8Array.from(Qe(t.length));return ft([r,t],r.length+t.length)}function al(e){let t=le(e);if(e=e.slice(Xt(t)),e.length!==t)throw new Error("inconsistent lengths");return nt(e)}function lm(e){let t;e[0]==="Q"||e[0]==="1"?t=or(Bt.decode(`z${e}`)).bytes:t=me.parse(e).multihash.bytes;let r=Uint8Array.from(Qe(t.length));return ft([r,t],r.length+t.length)}function hm(e){let t=fm.decode(e),r=Uint8Array.from(Qe(t.length));return ft([r,t],r.length+t.length)}function dm(e){let t=le(e),r=e.slice(Xt(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+nt(r,"base64url")}function pm(e){let t=le(e),r=e.slice(Xt(t));if(r.length!==t)throw new Error("inconsistent lengths");return nt(r,"base58btc")}function ym(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=ye.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ka(n);return ft([r,i],r.length+i.length)}function gm(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=ye.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ka(n);return ft([r,i],r.length+i.length)}function cl(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=nt(t,"base32"),i=fl(r);return`${n}:${i}`}function ul(e){e=Ua(e);let t=[],r=[],n=null,i=e.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=lt(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw hl("invalid address: "+e);if(a.path===!0){n=Ua(i.slice(o).join("/")),t.push([a.code,Pa(a.code,n)]),r.push([a.code,n]);break}let c=Pa(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Da(a.code,c)])}return{string:ll(r),bytes:Oa(t),tuples:t,stringTuples:r,path:n}}function Ka(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=le(e,i),s=Xt(o),a=lt(o),c=mm(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let f=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw hl("Invalid address Uint8Array: "+nt(e,"base16"));t.push([o,f]);let u=Da(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:ll(r),tuples:t,stringTuples:r,path:n}}function ll(e){let t=[];return e.map(r=>{let n=lt(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Ua(t.join("/"))}function Oa(e){return ft(e.map(t=>{let r=lt(t[0]),n=Uint8Array.from(Qe(r.code));return t.length>1&&t[1]!=null&&(n=ft([n,t[1]])),n}))}function mm(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=le(t instanceof Uint8Array?t:Uint8Array.from(t));return r+Xt(r)}}function Ua(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function hl(e){return new Error("Error parsing address: "+e)}var xm=Symbol.for("nodejs.util.inspect.custom"),Fa=Symbol.for("@multiformats/js-multiaddr/multiaddr"),bm=[lt("dns").code,lt("dns4").code,lt("dns6").code,lt("dnsaddr").code],Ma=class e{bytes;#e;#t;#r;#n;[Fa]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Ka(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=ul(t)}else if(pl(t))r=Ka(t.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 t,r,n,i,o="",s=lt("tcp"),a=lt("udp"),c=lt("ip4"),f=lt("ip6"),u=lt("dns6"),l=lt("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),bm.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=lt(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=lt(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==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:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},lt(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>lt(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Oa(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===yn.p2p.code&&t.push([n,i]),n===yn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?nt(Bt.decode(`z${n}`),"base58btc"):nt(me.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Ct(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=dl.get(r.name);if(n==null)throw new rt(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[xm](){return`Multiaddr(${this.#e})`}};var dl=new Map;function pl(e){return!!e?.[Fa]}var vm=e=>e.toString().split("/").slice(1),Qn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Tt=e=>({match:t=>Qn(r=>r===e).match(t),pattern:e}),po=()=>({match:e=>Qn(t=>typeof t=="string").match(e),pattern:"{string}"}),yl=()=>({match:e=>Qn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ue=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{Bt.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),lo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{ps.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Ne=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),De=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),_t=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Pt(...e){function t(i){let o=vm(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var qa=_t(Tt("dns4"),po()),Ha=_t(Tt("dns6"),po()),za=_t(Tt("dnsaddr"),po()),gl=_t(Tt("dns"),po()),S3=Pt(qa),B3=Pt(Ha),A3=Pt(za),C3=Pt(De(gl,za,qa,Ha)),ml=_t(Tt("ip4"),Qn(co)),xl=_t(Tt("ip6"),Qn(fo)),bl=De(ml,xl),Jn=De(bl,gl,qa,Ha,za),I3=Pt(Jn),T3=Pt(ml),_3=Pt(xl),L3=Pt(bl),yo=_t(Jn,Tt("tcp"),yl()),jn=_t(Jn,Tt("udp"),yl()),wm=De(yo,jn),R3=Pt(yo),N3=Pt(jn),Ga=_t(jn,Tt("quic")),go=_t(jn,Tt("quic-v1")),Em=De(Ga,go),D3=Pt(Ga),P3=Pt(go),Va=De(Jn,yo,jn,Ga,go),vl=De(_t(Va,Tt("ws"),Ne(ue()))),k3=Pt(vl),wl=De(_t(Va,Tt("wss"),Ne(ue())),_t(Va,Tt("tls"),Tt("ws"),Ne(ue()))),U3=Pt(wl),El=_t(wm,Tt("webrtc-direct"),lo(),Ne(lo()),Ne(ue())),K3=Pt(El),Sl=_t(go,Tt("webtransport"),lo(),lo(),Ne(ue())),mo=Pt(Sl),ho=De(vl,wl,_t(yo,Ne(ue())),_t(Em,Ne(ue())),_t(Jn,Ne(ue())),El,Sl,ue()),O3=Pt(ho),Sm=_t(ho,Tt("p2p-circuit"),ue()),M3=Pt(Sm),Bm=De(_t(ho,Tt("p2p-circuit"),Tt("webrtc"),ue()),_t(ho,Tt("webrtc"),Ne(ue())),Tt("webrtc")),F3=Pt(Bm);async function $a(e,t,r,n,i,o){let s=o.forComponent("libp2p:webtransport:stream"),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Qt(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}}};return g}function Wa(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function Bl(e,t){return t.filter(n=>!!e.find(i=>Ct(n,i))).length===t.length}var Am=Object.values(Se).map(e=>e.decoder).reduce((e,t)=>e.or(t));function Cm(e){return Ee.decode(Am.decode(e))}function Al(e){if(!mo.matches(e))throw new rt("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===lt("certhash").code).map(([s,a])=>Cm(a??"")),n=t.filter(([s,a])=>s===lt("p2p").code).map(([s,a])=>wa(a??""))[0],i=e.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var Ya=class{log;components;config;metrics;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webtransport"),this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[ju]=!0;async dial(t,r){r?.signal?.throwIfAborted(),this.log("dialing %s",t);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}=Al(t);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=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},...Wa()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.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 d of l)await s.write(d)}},f=Qu()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{this.log.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{this.log.error(`Failed to close authentication stream reader: ${l.message}`)}),!Bl(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(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await $a(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await $a(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...Wa()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(mo.exactMatch)}};function Im(e={}){return t=>new Ya(t,e)}return Ml(Tm);})();
15
+ `+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function Gp(e){return e.replace(/^\s+/,"")}});var sf=dt((fv,of)=>{var Ae=pt();wr();Lt();var ef=of.exports=Ae.sha256=Ae.sha256||{};Ae.md.sha256=Ae.md.algorithms.sha256=ef;ef.create=function(){rf||$p();var e=null,t=Ae.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 t=Ae.util.createBuffer(),e={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=Ae.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 t.putBytes(i),tf(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ae.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Ms.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:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};tf(l,r,i);var d=Ae.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var Ms=null,rf=!1,nf=null;function $p(){Ms=String.fromCharCode(128),Ms+=Ae.util.fillString(String.fromCharCode(0),64),nf=[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],rf=!0}function tf(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v=r.length();v>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)n=t[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[f]=n+t[f-7]+i+t[f-16]|0;for(u=e.h0,l=e.h1,d=e.h2,g=e.h3,h=e.h4,p=e.h5,y=e.h6,m=e.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=m+s+a+nf[f]+t[f],i=o+c,m=y,y=p,p=h,h=g+n>>>0,g=d,d=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+g|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+m|0,v-=64}}});var cf=dt((uv,af)=>{var Ce=pt();Lt();var Mi=null;Ce.util.isNodejs&&!Ce.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Mi=Ui());var Wp=af.exports=Ce.prng=Ce.prng||{};Wp.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(f,u){if(!u)return t.generateSync(f);var l=t.plugin.cipher,d=t.plugin.increment,g=t.plugin.formatKey,h=t.plugin.formatSeed,p=Ce.util.createBuffer();t.key=null,y();function y(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(t.generated>1048575&&(t.key=null),t.key===null)return Ce.util.nextTick(function(){o(y)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=g(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Ce.util.setImmediate(y)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,g=t.plugin.formatSeed;t.key=null;for(var h=Ce.util.createBuffer();h.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(u(t.key,l(t.seed))),t.seed=g(u(t.key,t.seed))}return h.getBytes(f)};function o(f){if(t.pools[0].messageLength>=32)return a(),f();var u=32-t.pools[0].messageLength<<5;t.seedFile(u,function(l,d){if(l)return f(l);t.collect(d),a(),f()})}function s(){if(t.pools[0].messageLength>=32)return a();var f=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(f)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var f=t.plugin.md.create();f.update(t.keyBytes);for(var u=1,l=0;l<32;++l)t.reseeds%u===0&&(f.update(t.pools[l].digest().getBytes()),t.pools[l].start()),u=u<<1;t.keyBytes=f.digest().getBytes(),f.start(),f.update(t.keyBytes);var d=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(f){var u=null,l=Ce.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(S){return d.getRandomValues(S)});var g=Ce.util.createBuffer();if(u)for(;g.length()<f;){var h=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(g.length()<f)for(var m,v,x,A=Math.floor(Math.random()*65536);g.length()<f;){v=16807*(A&65535),m=16807*(A>>16),v+=(m&32767)<<16,v+=m>>15,v=(v&2147483647)+(v>>31),A=v&4294967295;for(var y=0;y<3;++y)x=A>>>(y<<3),x^=Math.floor(Math.random()*256),g.putByte(x&255)}return g.getBytes(f)}return Mi?(t.seedFile=function(f,u){Mi.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Mi.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,d){function g(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(g,h){f.postMessage({forge:{prng:{err:g,bytes:h}}})})};f.addEventListener("message",u)}},t}});var Un=dt((lv,Fs)=>{var Kt=pt();Os();sf();cf();Lt();(function(){if(Kt.random&&Kt.random.getBytes){Fs.exports=Kt.random;return}(function(e){var t={},r=new Array(4),n=Kt.util.createBuffer();t.formatKey=function(l){var d=Kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Kt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return Kt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Kt.md.sha256;function i(){var l=Kt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=Kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Kt.options.usePureJavaScript||!Kt.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}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Kt.random)Kt.random=o;else for(var u in o)Kt.random[u]=o[u];Kt.random.createInstance=i,Fs.exports=Kt.random})(typeof jQuery<"u"?jQuery:null)})()});var hf=dt((hv,lf)=>{var Jt=pt();Lt();var Vs=[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],ff=[1,2,3,5],Yp=function(e,t){return e<<t&65535|(e&65535)>>16-t},Zp=function(e,t){return(e&65535)>>t|e<<16-t&65535};lf.exports=Jt.rc2=Jt.rc2||{};Jt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Jt.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(Vs[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Vs[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Vs[r.at(a+1)^r.at(a+o)]);return r};var uf=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Jt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=Yp(h[f],ff[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=Zp(h[f],ff[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){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<h.length;m++)for(var v=0;v<h[m][0];v++)h[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(h,p){h&&typeof h=="string"&&(h=Jt.util.createBuffer(h)),n=!1,i=Jt.util.createBuffer(),o=p||new Jt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(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(h)p=h(8,o,!r);else{var m=o.length(),v=o.at(m-1);v>m?p=!1:o.truncate(v)}return p}},g};Jt.rc2.startEncrypting=function(e,t,r){var n=Jt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createEncryptionCipher=function(e,t){return uf(e,t,!0)};Jt.rc2.startDecrypting=function(e,t,r){var n=Jt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createDecryptionCipher=function(e,t){return uf(e,t,!1)}});var qi=dt((dv,vf)=>{var qs=pt();vf.exports=qs.jsbn=qs.jsbn||{};var Ge,Xp=0xdeadbeefcafe,df=(Xp&16777215)==15715070;function D(e,t,r){this.data=[],e!=null&&(typeof e=="number"?this.fromNumber(e,t,r):t==null&&typeof e!="string"?this.fromString(e,256):this.fromString(e,t))}qs.jsbn.BigInteger=D;function st(){return new D(null)}function Qp(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Jp(e,t,r,n,i,o){for(var s=t&32767,a=t>>15;--o>=0;){var c=this.data[e]&32767,f=this.data[e++]>>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 pf(e,t,r,n,i,o){for(var s=t&16383,a=t>>14;--o>=0;){var c=this.data[e]&16383,f=this.data[e++]>>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=pf,Ge=28):df&&navigator.appName=="Microsoft Internet Explorer"?(D.prototype.am=Jp,Ge=30):df&&navigator.appName!="Netscape"?(D.prototype.am=Qp,Ge=26):(D.prototype.am=pf,Ge=28);D.prototype.DB=Ge;D.prototype.DM=(1<<Ge)-1;D.prototype.DV=1<<Ge;var Hs=52;D.prototype.FV=Math.pow(2,Hs);D.prototype.F1=Hs-Ge;D.prototype.F2=2*Ge-Hs;var jp="0123456789abcdefghijklmnopqrstuvwxyz",Fi=new Array,tn,se;tn="0".charCodeAt(0);for(se=0;se<=9;++se)Fi[tn++]=se;tn="a".charCodeAt(0);for(se=10;se<36;++se)Fi[tn++]=se;tn="A".charCodeAt(0);for(se=10;se<36;++se)Fi[tn++]=se;function yf(e){return jp.charAt(e)}function gf(e,t){var r=Fi[e.charCodeAt(t)];return r??-1}function ty(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function ey(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0}function fr(e){var t=st();return t.fromInt(e),t}function ry(e,t){var r;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(e,t);return}this.t=0,this.s=0;for(var n=e.length,i=!1,o=0;--n>=0;){var s=r==8?e[n]&255:gf(e,n);if(s<0){e.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&&e[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 ny(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function iy(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<<t)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=yf(n));s>=0;)a<t?(n=(this.data[s]&(1<<a)-1)<<t-a,n|=this.data[--s]>>(a+=this.DB-t)):(n=this.data[s]>>(a-=t)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=yf(n));return i?o:"0"}function oy(){var e=st();return D.ZERO.subTo(this,e),e}function sy(){return this.s<0?this.negate():this}function ay(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this.data[r]-e.data[r])!=0)return t;return 0}function Vi(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function cy(){return this.t<=0?0:this.DB*(this.t-1)+Vi(this.data[this.t-1]^this.s&this.DM)}function fy(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s}function uy(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function ly(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function hy(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function dy(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function py(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&D.ZERO.subTo(t,t)}function yy(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e.data[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t.data[r],e,2*r,0,1);(e.data[r+t.t]+=t.am(r+1,2*t.data[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()}function gy(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=st());var o=st(),s=this.s,a=e.s,c=this.DB-Vi(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),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,m=t??st();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 v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,m),r.subTo(m,r);r.data[p]<--v;)r.subTo(m,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&D.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&D.ZERO.subTo(r,r)}}}function my(e){var t=st();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(D.ZERO)>0&&e.subTo(t,t),t}function Er(e){this.m=e}function xy(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function by(e){return e}function vy(e){e.divRemTo(this.m,null,e)}function wy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function Ey(e,t){e.squareTo(t),this.reduce(t)}Er.prototype.convert=xy;Er.prototype.revert=by;Er.prototype.reduce=vy;Er.prototype.mulTo=wy;Er.prototype.sqrTo=Ey;function Sy(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function Sr(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function By(e){var t=st();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(D.ZERO)>0&&this.m.subTo(t,t),t}function Ay(e){var t=st();return e.copyTo(t),this.reduce(t),t}function Cy(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=e.data[t]&32767,n=r*this.mpl+((r*this.mph+(e.data[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function Iy(e,t){e.squareTo(t),this.reduce(t)}function Ty(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Sr.prototype.convert=By;Sr.prototype.revert=Ay;Sr.prototype.reduce=Cy;Sr.prototype.mulTo=Ty;Sr.prototype.sqrTo=Iy;function _y(){return(this.t>0?this.data[0]&1:this.s)==0}function Ly(e,t){if(e>4294967295||e<1)return D.ONE;var r=st(),n=st(),i=t.convert(this),o=Vi(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function Ry(e,t){var r;return e<256||t.isEven()?r=new Er(t):r=new Sr(t),this.exp(e,r)}D.prototype.copyTo=ty;D.prototype.fromInt=ey;D.prototype.fromString=ry;D.prototype.clamp=ny;D.prototype.dlShiftTo=fy;D.prototype.drShiftTo=uy;D.prototype.lShiftTo=ly;D.prototype.rShiftTo=hy;D.prototype.subTo=dy;D.prototype.multiplyTo=py;D.prototype.squareTo=yy;D.prototype.divRemTo=gy;D.prototype.invDigit=Sy;D.prototype.isEven=_y;D.prototype.exp=Ly;D.prototype.toString=iy;D.prototype.negate=oy;D.prototype.abs=sy;D.prototype.compareTo=ay;D.prototype.bitLength=cy;D.prototype.mod=my;D.prototype.modPowInt=Ry;D.ZERO=fr(0);D.ONE=fr(1);function Ny(){var e=st();return this.copyTo(e),e}function Dy(){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 Py(){return this.t==0?this.s:this.data[0]<<24>>24}function ky(){return this.t==0?this.s:this.data[0]<<16>>16}function Uy(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Ky(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Oy(e){if(e==null&&(e=10),this.signum()==0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=fr(r),i=st(),o=st(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function My(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,o=0,s=0,a=0;a<e.length;++a){var c=gf(e,a);if(c<0){e.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=t*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(t,o)),this.dAddOffset(s,0)),i&&D.ZERO.subTo(this,this)}function Fy(e,t,r){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(D.ONE.shiftLeft(e-1),zs,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(D.ONE.shiftLeft(e-1),this);else{var n=new Array,i=e&7;n.length=(e>>3)+1,t.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function Vy(){var e=this.t,t=new Array;t[0]=this.s;var r=this.DB-e*this.DB%8,n,i=0;if(e-- >0)for(r<this.DB&&(n=this.data[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<<this.DB-r);e>=0;)r<8?(n=(this.data[e]&(1<<r)-1)<<8-r,n|=this.data[--e]>>(r+=this.DB-8)):(n=this.data[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function qy(e){return this.compareTo(e)==0}function Hy(e){return this.compareTo(e)<0?this:e}function zy(e){return this.compareTo(e)>0?this:e}function Gy(e,t,r){var n,i,o=Math.min(e.t,this.t);for(n=0;n<o;++n)r.data[n]=t(this.data[n],e.data[n]);if(e.t<this.t){for(i=e.s&this.DM,n=o;n<this.t;++n)r.data[n]=t(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<e.t;++n)r.data[n]=t(i,e.data[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()}function $y(e,t){return e&t}function Wy(e){var t=st();return this.bitwiseTo(e,$y,t),t}function zs(e,t){return e|t}function Yy(e){var t=st();return this.bitwiseTo(e,zs,t),t}function mf(e,t){return e^t}function Zy(e){var t=st();return this.bitwiseTo(e,mf,t),t}function xf(e,t){return e&~t}function Xy(e){var t=st();return this.bitwiseTo(e,xf,t),t}function Qy(){for(var e=st(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function Jy(e){var t=st();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function jy(e){var t=st();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function t1(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function e1(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+t1(this.data[e]);return this.s<0?this.t*this.DB:-1}function r1(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function n1(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=r1(this.data[r]^t);return e}function i1(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function o1(e,t){var r=D.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function s1(e){return this.changeBit(e,zs)}function a1(e){return this.changeBit(e,xf)}function c1(e){return this.changeBit(e,mf)}function f1(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]+e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()}function u1(e){var t=st();return this.addTo(e,t),t}function l1(e){var t=st();return this.subTo(e,t),t}function h1(e){var t=st();return this.multiplyTo(e,t),t}function d1(e){var t=st();return this.divRemTo(e,t,null),t}function p1(e){var t=st();return this.divRemTo(e,null,t),t}function y1(e){var t=st(),r=st();return this.divRemTo(e,t,r),new Array(t,r)}function g1(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function m1(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function Kn(){}function bf(e){return e}function x1(e,t,r){e.multiplyTo(t,r)}function b1(e,t){e.squareTo(t)}Kn.prototype.convert=bf;Kn.prototype.revert=bf;Kn.prototype.mulTo=x1;Kn.prototype.sqrTo=b1;function v1(e){return this.exp(e,new Kn)}function w1(e,t,r){var n=Math.min(this.t+e.t,t);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,e.data[n],r,n,0,this.t);for(i=Math.min(e.t,t);n<i;++n)this.am(0,e.data[n],r,n,0,t-n);r.clamp()}function E1(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function en(e){this.r2=st(),this.q3=st(),D.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function S1(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=st();return e.copyTo(t),this.reduce(t),t}function B1(e){return e}function A1(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function C1(e,t){e.squareTo(t),this.reduce(t)}function I1(e,t,r){e.multiplyTo(t,r),this.reduce(r)}en.prototype.convert=S1;en.prototype.revert=B1;en.prototype.reduce=A1;en.prototype.mulTo=I1;en.prototype.sqrTo=C1;function T1(e,t){var r=e.bitLength(),n,i=fr(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 Er(t):t.isEven()?o=new en(t):o=new Sr(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=st();for(o.sqrTo(s[1],u);a<=f;)s[a]=st(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=st(),p;for(r=Vi(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&f:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[d].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function _1(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function L1(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t==0)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r}function R1(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return D.ZERO;for(var r=e.clone(),n=this.clone(),i=fr(1),o=fr(0),s=fr(0),a=fr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(D.ONE)!=0)return D.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var be=[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],N1=(1<<26)/be[be.length-1];function D1(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=be[be.length-1]){for(t=0;t<be.length;++t)if(r.data[0]==be[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<be.length;){for(var n=be[t],i=t+1;i<be.length&&n<N1;)n*=be[i++];for(n=r.modInt(n);t<i;)if(n%be[t++]==0)return!1}return r.millerRabin(e)}function P1(e){var t=this.subtract(D.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=k1(),o,s=0;s<e;++s){do o=new D(this.bitLength(),i);while(o.compareTo(D.ONE)<=0||o.compareTo(t)>=0);var a=o.modPow(n,this);if(a.compareTo(D.ONE)!=0&&a.compareTo(t)!=0){for(var c=1;c++<r&&a.compareTo(t)!=0;)if(a=a.modPowInt(2,this),a.compareTo(D.ONE)==0)return!1;if(a.compareTo(t)!=0)return!1}}return!0}function k1(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}D.prototype.chunkSize=Uy;D.prototype.toRadix=Oy;D.prototype.fromRadix=My;D.prototype.fromNumber=Fy;D.prototype.bitwiseTo=Gy;D.prototype.changeBit=o1;D.prototype.addTo=f1;D.prototype.dMultiply=g1;D.prototype.dAddOffset=m1;D.prototype.multiplyLowerTo=w1;D.prototype.multiplyUpperTo=E1;D.prototype.modInt=L1;D.prototype.millerRabin=P1;D.prototype.clone=Ny;D.prototype.intValue=Dy;D.prototype.byteValue=Py;D.prototype.shortValue=ky;D.prototype.signum=Ky;D.prototype.toByteArray=Vy;D.prototype.equals=qy;D.prototype.min=Hy;D.prototype.max=zy;D.prototype.and=Wy;D.prototype.or=Yy;D.prototype.xor=Zy;D.prototype.andNot=Xy;D.prototype.not=Qy;D.prototype.shiftLeft=Jy;D.prototype.shiftRight=jy;D.prototype.getLowestSetBit=e1;D.prototype.bitCount=n1;D.prototype.testBit=i1;D.prototype.setBit=s1;D.prototype.clearBit=a1;D.prototype.flipBit=c1;D.prototype.add=u1;D.prototype.subtract=l1;D.prototype.multiply=h1;D.prototype.divide=d1;D.prototype.remainder=p1;D.prototype.divideAndRemainder=y1;D.prototype.modPow=T1;D.prototype.modInverse=R1;D.prototype.pow=v1;D.prototype.gcd=_1;D.prototype.isProbablePrime=D1});var Af=dt((pv,Bf)=>{var Ie=pt();wr();Lt();var Ef=Bf.exports=Ie.sha1=Ie.sha1||{};Ie.md.sha1=Ie.md.algorithms.sha1=Ef;Ef.create=function(){Sf||U1();var e=null,t=Ie.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 t=Ie.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ie.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 t.putBytes(i),wf(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ie.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Gs.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:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};wf(l,r,i);var d=Ie.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var Gs=null,Sf=!1;function U1(){Gs=String.fromCharCode(128),Gs+=Ie.util.fillString(String.fromCharCode(0),64),Sf=!0}function wf(e,t,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,u=0;u<16;++u)n=r.getInt32(),t[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=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[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=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[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=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[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=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[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=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[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;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,l-=64}}});var Tf=dt((yv,If)=>{var Te=pt();Lt();Un();Af();var Cf=If.exports=Te.pkcs1=Te.pkcs1||{};Cf.encode_rsa_oaep=function(e,t,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=Te.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=t.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",d=c-t.length,g=0;g<d;g++)l+="\0";var h=u.getBytes()+l+""+t;if(!i)i=Te.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=Hi(i,a-o.digestLength-1,s),y=Te.util.xorBytes(h,p,h.length),m=Hi(y,o.digestLength,s),v=Te.util.xorBytes(i,m,i.length);return"\0"+v+y};Cf.decode_rsa_oaep=function(e,t,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(e.n.bitLength()/8);if(t.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}if(i===void 0?i=Te.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=t.charAt(0),f=t.substring(1,i.digestLength+1),u=t.substring(1+i.digestLength),l=Hi(u,i.digestLength,o),d=Te.util.xorBytes(f,l,f.length),g=Hi(d,s-i.digestLength-1,o),h=Te.util.xorBytes(u,g,u.length),p=h.substring(0,i.digestLength),y=c!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==p.charAt(m);for(var v=1,x=i.digestLength,A=i.digestLength;A<h.length;A++){var S=h.charCodeAt(A),B=S&1^1,R=v?65534:0;y|=S&R,v=v&B,x+=v}if(y||h.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(x+1)};function Hi(e,t,r){r||(r=Te.md.sha1.create());for(var n="",i=Math.ceil(t/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(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var _f=dt((gv,$s)=>{var ur=pt();Lt();qi();Un();(function(){if(ur.prime){$s.exports=ur.prime;return}var e=$s.exports=ur.prime=ur.prime||{},t=ur.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,g){typeof d=="function"&&(g=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||ur.random,y={nextBytes:function(m){for(var v=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=v.charCodeAt(x)}};if(h.name==="PRIMEINC")return o(l,y,h.options,g);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,g,h){return"workers"in g?c(l,d,g,h):s(l,d,g,h)}function s(l,d,g,h){var p=f(l,d),y=0,m=u(p.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var v=10;"maxBlockTime"in g&&(v=g.maxBlockTime),a(p,l,d,y,m,v,h)}function a(l,d,g,h,p,y,m){var v=+new Date;do{if(l.bitLength()>d&&(l=f(d,g)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-v<y);ur.util.setImmediate(function(){a(l,d,g,h,p,y,m)})}function c(l,d,g,h){if(typeof Worker>"u")return s(l,d,g,h);var p=f(l,d),y=g.workers,m=g.workLoad||100,v=m*30/8,x=g.workerScript||"forge/prime.worker.js";if(y===-1)return ur.util.estimateCores(function(S,B){S&&(B=2),y=B-1,A()});A();function A(){y=Math.max(1,y);for(var S=[],B=0;B<y;++B)S[B]=new Worker(x);for(var R=y,B=0;B<y;++B)S[B].addEventListener("message",O);var _=!1;function O(M){if(!_){--R;var U=M.data;if(U.found){for(var H=0;H<S.length;++H)S[H].terminate();return _=!0,h(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:m}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),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 Gi=dt((mv,Uf)=>{var $=pt();kn();qi();_i();Tf();_f();Un();Lt();typeof ot>"u"&&(ot=$.jsbn.BigInteger);var ot,Ws=$.util.isNodejs?Ui():null,E=$.asn1,ae=$.util;$.pki=$.pki||{};Uf.exports=$.pki.rsa=$.rsa=$.rsa||{};var Q=$.pki,K1=[6,4,2,4,2,4,6,2],O1={name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},M1={name:"RSAPrivateKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},F1={name:"RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},V1=$.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},q1={name:"DigestInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:E.Class.UNIVERSAL,type:E.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},H1=function(e){var t;if(e.algorithm in Q.oids)t=Q.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=E.oidToDer(t).getBytes(),i=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]),o=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]);o.value.push(E.create(E.Class.UNIVERSAL,E.Type.OID,!1,n)),o.value.push(E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,""));var s=E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),E.toDer(i).getBytes()},Pf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(ot.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(ot.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new ot($.util.bytesToHex($.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(ot.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=kf(e,t,r)):(i=$.util.createBuffer(),i.putBytes(e));for(var s=new ot(i.toHex(),16),a=Pf(s,t,n),c=a.toString(16),f=$.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new ot($.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Pf(s,t,r),c=a.toString(16),f=$.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),n!==!1?zi(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||$.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:e,rng:i,eInt:t||65537,e:new ot(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>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(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new ot(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new ot(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(ot.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(G1(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(K1[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(ot.ONE),e.q1=e.q.subtract(ot.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(ot.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!$.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(Lf("generateKeyPair"))return Ws.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,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(Rf("generateKey")&&Rf("exportKey"))return ae.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Df(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ae.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(Nf("generateKey")&&Nf("exportKey")){var i=ae.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Df(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=ae.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(Lf("generateKeyPairSync")){var o=Ws.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,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(e,t,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;z1(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(e,t){var r={n:e,e:t};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 kf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return $.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=zi(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,q1,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===$.oids.md2||h===$.oids.md5||h===$.oids.sha1||h===$.oids.sha224||h===$.oids.sha256||h===$.oids.sha384||h===$.oids.sha512||h===$.oids["sha512-224"]||h===$.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===$.oids.md2||h===$.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=zi(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(e,t,r,n,i,o,s,a){var c={n:e,e:t,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 d=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:zi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return $.pkcs1.decode_rsa_oaep(h,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(d,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:H1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(d,c,l)},c};Q.wrapRsaPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,E.toDer(e).getBytes())])};Q.privateKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,O1,t,r)&&(e=E.fromDer($.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,M1,t,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=$.util.createBuffer(t.privateKeyModulus).toHex(),o=$.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=$.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=$.util.createBuffer(t.privateKeyPrime1).toHex(),c=$.util.createBuffer(t.privateKeyPrime2).toHex(),f=$.util.createBuffer(t.privateKeyExponent1).toHex(),u=$.util.createBuffer(t.privateKeyExponent2).toHex(),l=$.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new ot(i,16),new ot(o,16),new ot(s,16),new ot(a,16),new ot(c,16),new ot(f,16),new ot(u,16),new ot(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,V1,t,r)){var n=E.derToOid(t.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}e=t.rsaPublicKey}if(r=[],!E.validate(e,F1,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=$.util.createBuffer(t.publicKeyModulus).toHex(),s=$.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new ot(o,16),new ot(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,_e(e.e))])};function kf(e,t,r){var n=$.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.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=$.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(e),n}function zi(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=$.util.createBuffer(e),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 z1(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){$.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)!==0){e.p=null,i();return}if(e.q.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(ot.ONE),e.q1=e.q.subtract(ot.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(ot.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function _e(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=$.util.hexToBytes(t);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 G1(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function Lf(e){return $.util.isNodejs&&typeof Ws[e]=="function"}function Rf(e){return typeof ae.globalScope<"u"&&typeof ae.globalScope.crypto=="object"&&typeof ae.globalScope.crypto.subtle=="object"&&typeof ae.globalScope.crypto.subtle[e]=="function"}function Nf(e){return typeof ae.globalScope<"u"&&typeof ae.globalScope.msCrypto=="object"&&typeof ae.globalScope.msCrypto.subtle=="object"&&typeof ae.globalScope.msCrypto.subtle[e]=="function"}function Df(e){for(var t=$.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var qf=dt((xv,Vf)=>{var q=pt();Os();kn();Gc();wr();_i();Xc();jc();Un();hf();Gi();Lt();typeof Kf>"u"&&(Kf=q.jsbn.BigInteger);var Kf,I=q.asn1,tt=q.pki=q.pki||{};Vf.exports=tt.pbe=q.pbe=q.pbe||{};var Br=tt.oids,$1={name:"EncryptedPrivateKeyInfo",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},W1={name:"PBES2Algorithms",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},Y1={name:"pkcs-12PbeParams",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,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=q.random.getBytesSync(r.saltSize),i=r.count,o=I.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=Br["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Br["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Br["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Br.desCBC,l=q.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),h=Ff(g),p=q.pkcs5.pbkdf2(t,n,i,s,h),y=q.random.getBytesSync(f),m=l(p);m.start(y),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes();var v=Z1(n,o,s,g);a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br.pkcs5PBES2).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br.pkcs5PBKDF2).getBytes()),v]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(u).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var x=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,x,1,i,s),y=tt.pbe.generatePkcs12Key(t,x,2,i,s),m=q.des.createEncryptionCipher(p);m.start(y),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,n),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var A=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return A};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!I.validate(e,$1,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=I.derToOid(n.encryptionOid),a=tt.pbe.getCipher(s,n.encryptionParams,t),c=q.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};tt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(e).getBytes()};return q.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=q.pem.decode(e)[0];if(t.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=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return I.fromDer(t.body)};tt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=tt.wrapRsaPrivateKey(tt.privateKeyToAsn1(e));return n=tt.encryptPrivateKeyInfo(n,t,r),tt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=q.random.getBytesSync(8),a=q.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=q.pbe.opensslDeriveBytes(t,o.substr(0,8),s),u=a(f);u.start(o),u.update(I.toDer(tt.privateKeyToAsn1(e))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:q.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return q.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=q.pem.decode(e)[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=q.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=q.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=q.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=q.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=q.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return q.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return q.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return q.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=q.util.hexToBytes(n.dekInfo.parameters),c=q.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(q.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=tt.decryptPrivateKeyInfo(I.fromDer(r),t):r=I.fromDer(r),r!==null&&(r=tt.privateKeyFromAsn1(r)),r};tt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in q.md))throw new Error('"sha1" hash algorithm unavailable.');o=q.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new q.util.ByteBuffer,l=new q.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),g=t.length(),h=new q.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new q.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var m=f*Math.ceil(d/f),v=new q.util.ByteBuffer;for(a=0;a<m;a++)v.putByte(l.at(a%d));var x=y;x.putBuffer(v);for(var A=Math.ceil(i/c),S=1;S<=A;S++){var B=new q.util.ByteBuffer;B.putBytes(h.bytes()),B.putBytes(x.bytes());for(var R=0;R<n;R++)o.start(),o.update(B.getBytes()),B=o.digest();var _=new q.util.ByteBuffer;for(a=0;a<f;a++)_.putByte(B.at(a%c));var O=Math.ceil(g/f)+Math.ceil(d/f),M=new q.util.ByteBuffer;for(s=0;s<O;s++){var U=new q.util.ByteBuffer(x.getBytes(f)),H=511;for(a=_.length()-1;a>=0;a--)H=H>>8,H+=_.at(a)+U.at(a),U.setAt(a,H&255);M.putBuffer(U)}x=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!I.validate(t,W1,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(e=I.derToOid(n.kdfOid),e!==tt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=I.derToOid(n.encOid),e!==tt.oids["aes128-CBC"]&&e!==tt.oids["aes192-CBC"]&&e!==tt.oids["aes256-CBC"]&&e!==tt.oids["des-EDE3-CBC"]&&e!==tt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=q.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=q.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=q.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=q.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=q.des.createDecryptionCipher;break;case"desCBC":c=8,f=q.des.createDecryptionCipher;break}var u=Mf(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,g=f(l);return g.start(d),g};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!I.validate(t,Y1,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=q.util.createBuffer(n.salt),a=q.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(e){case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=q.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var m=q.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=e,o}var l=Mf(n.prfOid),d=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,g)};tt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in q.md))throw new Error('"md5" hash algorithm unavailable.');n=q.md.md5.create()}t===null&&(t="");for(var i=[Of(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(Of(n,i[s-1]+e+t));return i.join("").substr(0,r)};function Of(e,t){return e.start().update(t).digest().getBytes()}function Mf(e){var t;if(!e)t="hmacWithSHA1";else if(t=tt.oids[I.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Ff(t)}function Ff(e){var t=q.md;switch(e){case"hmacWithSHA224":t=q.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function Z1(e,t,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,e),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,q.util.hexToBytes(r.toString(16))),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(tt.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var uu=dt((Uw,fu)=>{var vt=pt();wr();Lt();var qn=fu.exports=vt.sha512=vt.sha512||{};vt.md.sha512=vt.md.algorithms.sha512=qn;var au=vt.sha384=vt.sha512.sha384=vt.sha512.sha384||{};au.create=function(){return qn.create("SHA-384")};vt.md.sha384=vt.md.algorithms.sha384=au;vt.sha512.sha256=vt.sha512.sha256||{create:function(){return qn.create("SHA-512/256")}};vt.md["sha512/256"]=vt.md.algorithms["sha512/256"]=vt.sha512.sha256;vt.sha512.sha224=vt.sha512.sha224||{create:function(){return qn.create("SHA-512/224")}};vt.md["sha512/224"]=vt.md.algorithms["sha512/224"]=vt.sha512.sha224;qn.create=function(e){if(cu||lg(),typeof e>"u"&&(e="SHA-512"),!(e in Rr))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=Rr[e],r=null,n=vt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.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=vt.util.createBuffer(),r=new Array(t.length);for(var f=0;f<t.length;++f)r[f]=t[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=vt.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),su(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=vt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(ua.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);su(p,i,c);var y=vt.util.createBuffer(),m;e==="SHA-512"?m=p.length:e==="SHA-384"?m=p.length-2:m=p.length-4;for(var h=0;h<m;++h)y.putInt32(p[h][0]),(h!==m-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var ua=null,cu=!1,la=null,Rr=null;function lg(){ua=String.fromCharCode(128),ua+=vt.util.fillString(String.fromCharCode(0),128),la=[[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]],Rr={},Rr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Rr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Rr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Rr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],cu=!0}function su(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v,x,A,S,B,R,_,O,M,U,H,z,Z,C,N,T,L,w,k,K,V=r.length();V>=128;){for(C=0;C<16;++C)t[C][0]=r.getInt32()>>>0,t[C][1]=r.getInt32()>>>0;for(;C<80;++C)L=t[C-2],N=L[0],T=L[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,k=t[C-15],N=k[0],T=k[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[C-7],K=t[C-16],T=i+w[1]+s+K[1],t[C][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[C][1]=T>>>0;for(p=e[0][0],y=e[0][1],m=e[1][0],v=e[1][1],x=e[2][0],A=e[2][1],S=e[3][0],B=e[3][1],R=e[4][0],_=e[4][1],O=e[5][0],M=e[5][1],U=e[6][0],H=e[6][1],z=e[7][0],Z=e[7][1],C=0;C<80;++C)f=((R>>>14|_<<18)^(R>>>18|_<<14)^(_>>>9|R<<23))>>>0,u=((R<<18|_>>>14)^(R<<14|_>>>18)^(_<<23|R>>>9))>>>0,l=(U^R&(O^U))>>>0,d=(H^_&(M^H))>>>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,h=(y&v|A&(y^v))>>>0,T=Z+u+d+la[C][1]+t[C][1],n=z+f+l+la[C][0]+t[C][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=U,Z=H,U=O,H=M,O=R,M=_,T=B+i,R=S+n+(T/4294967296>>>0)>>>0,_=T>>>0,S=x,B=A,x=m,A=v,m=p,v=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=e[0][1]+y,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+m+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+A,e[2][0]=e[2][0]+x+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+_,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+U+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,V-=128}}});var qu=dt((s4,Vu)=>{var ln=1e3,hn=ln*60,dn=hn*60,kr=dn*24,Fg=kr*7,Vg=kr*365.25;Vu.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return qg(e);if(r==="number"&&isFinite(e))return t.long?zg(e):Hg(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function qg(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Vg;case"weeks":case"week":case"w":return r*Fg;case"days":case"day":case"d":return r*kr;case"hours":case"hour":case"hrs":case"hr":case"h":return r*dn;case"minutes":case"minute":case"mins":case"min":case"m":return r*hn;case"seconds":case"second":case"secs":case"sec":case"s":return r*ln;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function Hg(e){var t=Math.abs(e);return t>=kr?Math.round(e/kr)+"d":t>=dn?Math.round(e/dn)+"h":t>=hn?Math.round(e/hn)+"m":t>=ln?Math.round(e/ln)+"s":e+"ms"}function zg(e){var t=Math.abs(e);return t>=kr?ji(e,t,kr,"day"):t>=dn?ji(e,t,dn,"hour"):t>=hn?ji(e,t,hn,"minute"):t>=ln?ji(e,t,ln,"second"):e+" ms"}function ji(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}});var zu=dt((a4,Hu)=>{function Gg(e){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=qu(),r.destroy=f,Object.keys(e).forEach(u=>{r[u]=e[u]}),r.names=[],r.skips=[],r.formatters={};function t(u){let l=0;for(let d=0;d<u.length;d++)l=(l<<5)-l+u.charCodeAt(d),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=t;function r(u){let l,d=null,g,h;function p(...y){if(!p.enabled)return;let m=p,v=Number(new Date),x=v-(l||v);m.diff=x,m.prev=l,m.curr=v,l=v,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let A=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(B,R)=>{if(B==="%%")return"%";A++;let _=r.formatters[R];if(typeof _=="function"){let O=y[A];B=_.call(m,O),y.splice(A,1),A--}return B}),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:()=>d!==null?d:(g!==r.namespaces&&(g=r.namespaces,h=r.enabled(u)),h),set:y=>{d=y}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let d=r(this.namespace+(typeof l>"u"?":":l)+u);return d.log=this.log,d}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,d=(typeof u=="string"?u:"").split(/[\s,]+/),g=d.length;for(l=0;l<g;l++)d[l]&&(u=d[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,d;for(l=0,d=r.skips.length;l<d;l++)if(r.skips[l].test(u))return!1;for(l=0,d=r.names.length;l<d;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}Hu.exports=Gg});var Gu=dt((ne,to)=>{ne.formatArgs=Wg;ne.save=Yg;ne.load=Zg;ne.useColors=$g;ne.storage=Xg();ne.destroy=(()=>{let e=!1;return()=>{e||(e=!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`."))}})();ne.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 $g(){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 Wg(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+to.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}ne.log=console.debug||console.log||(()=>{});function Yg(e){try{e?ne.storage.setItem("debug",e):ne.storage.removeItem("debug")}catch{}}function Zg(){let e;try{e=ne.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function Xg(){try{return localStorage}catch{}}to.exports=zu()(ne);var{formatters:Qg}=to.exports;Qg.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Tm={};Nt(Tm,{webTransport:()=>Im});function Xe(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function ke(e=0){return globalThis.Buffer?.alloc!=null?Xe(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function Vt(e=0){return globalThis.Buffer?.allocUnsafe!=null?Xe(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Fl=Math.pow(2,7),Vl=Math.pow(2,14),ql=Math.pow(2,21),bo=Math.pow(2,28),vo=Math.pow(2,35),wo=Math.pow(2,42),Eo=Math.pow(2,49),ct=128,Gt=127;function Xt(e){if(e<Fl)return 1;if(e<Vl)return 2;if(e<ql)return 3;if(e<bo)return 4;if(e<vo)return 5;if(e<wo)return 6;if(e<Eo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Hl(e,t,r=0){switch(Xt(e)){case 8:t[r++]=e&255|ct,e/=128;case 7:t[r++]=e&255|ct,e/=128;case 6:t[r++]=e&255|ct,e/=128;case 5:t[r++]=e&255|ct,e/=128;case 4:t[r++]=e&255|ct,e>>>=7;case 3:t[r++]=e&255|ct,e>>>=7;case 2:t[r++]=e&255|ct,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function zl(e,t,r=0){switch(Xt(e)){case 8:t.set(r++,e&255|ct),e/=128;case 7:t.set(r++,e&255|ct),e/=128;case 6:t.set(r++,e&255|ct),e/=128;case 5:t.set(r++,e&255|ct),e/=128;case 4:t.set(r++,e&255|ct),e>>>=7;case 3:t.set(r++,e&255|ct),e>>>=7;case 2:t.set(r++,e&255|ct),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function Gl(e,t){let r=e[t],n=0;if(n+=r&Gt,r<ct||(r=e[t+1],n+=(r&Gt)<<7,r<ct)||(r=e[t+2],n+=(r&Gt)<<14,r<ct)||(r=e[t+3],n+=(r&Gt)<<21,r<ct)||(r=e[t+4],n+=(r&Gt)*bo,r<ct)||(r=e[t+5],n+=(r&Gt)*vo,r<ct)||(r=e[t+6],n+=(r&Gt)*wo,r<ct)||(r=e[t+7],n+=(r&Gt)*Eo,r<ct))return n;throw new RangeError("Could not decode varint")}function $l(e,t){let r=e.get(t),n=0;if(n+=r&Gt,r<ct||(r=e.get(t+1),n+=(r&Gt)<<7,r<ct)||(r=e.get(t+2),n+=(r&Gt)<<14,r<ct)||(r=e.get(t+3),n+=(r&Gt)<<21,r<ct)||(r=e.get(t+4),n+=(r&Gt)*bo,r<ct)||(r=e.get(t+5),n+=(r&Gt)*vo,r<ct)||(r=e.get(t+6),n+=(r&Gt)*wo,r<ct)||(r=e.get(t+7),n+=(r&Gt)*Eo,r<ct))return n;throw new RangeError("Could not decode varint")}function Qe(e,t,r=0){return t==null&&(t=Vt(Xt(e))),t instanceof Uint8Array?Hl(e,t,r):zl(e,t,r)}function le(e,t=0){return e instanceof Uint8Array?Gl(e,t):$l(e,t)}function ft(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Vt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Xe(r)}function Ct(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var o0=Symbol.for("@achingbrain/uint8arraylist");function i0(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function ei(e){return!!e?.[o0]}var Qt=class e{constructor(...t){Object.defineProperty(this,o0,{value:!0}),this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ei(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(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(ei(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(t){let r=i0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=i0(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(ei(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return ft(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:ft(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=n,o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===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,t>=c)continue;let f=t>=a&&t<c,u=r>a&&r<=c;if(f&&u){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-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-t}}indexOf(t,r=0){if(!ei(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.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 d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=Vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=ke(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=ke(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=ke(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=Vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=ke(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=ke(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=ke(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=ke(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=ke(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Ct(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function ri(e){return e[Symbol.asyncIterator]!=null}var ni=e=>{let t=Xt(e),r=Vt(t);return Qe(e,r),ni.bytes=t,r};ni.bytes=0;function xn(e,t){t=t??{};let r=t.lengthEncoder??ni;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ri(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}xn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??ni;return new Qt(r(e.byteLength),e)};var Ur=Wt(c0(),1);var Yl=8,Zl=1024*1024*4,dr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(dr||(dr={}));var So=e=>{let t=le(e);return So.bytes=Xt(t),t};So.bytes=0;function bn(e,t){let r=new Qt,n=dr.LENGTH,i=-1,o=t?.lengthDecoder??So,s=t?.maxLengthLength??Yl,a=t?.maxDataLength??Zl;function*c(){for(;r.byteLength>0;){if(n===dr.LENGTH)try{if(i=o(r),i<0)throw(0,Ur.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Ur.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),t?.onLength!=null&&t.onLength(i),n=dr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Ur.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===dr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(f),yield f,n=dr.LENGTH}}}return ri(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Ur.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Ur.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}bn.fromReader=(e,t)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await e.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 bn(n,{...t??{},onLength:o=>{r=o}})};function Kr(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var ii=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Or=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new ii(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let r=this.head;this.head=r.next=new ii(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var Bo=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Mr(e={}){return Ql(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}},e)}function Ql(e,t){t=t??{};let r=t.onEnd,n=new Or,i,o,s,a=Kr(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,m)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(x){m(x)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Kr()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Or,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.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})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Or,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let v,x;m!=null&&(v=new Promise((A,S)=>{x=()=>{S(new Bo)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,v])}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},onEmpty:y=>p.onEmpty(y)},i}var oi=class extends Error{code;constructor(t,r){super(t),this.code=r}},Ao=class extends oi{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function f0(e){let t=Mr();e.sink(t).catch(o=>{t.end(o)}),e.sink=async o=>{for await(let s of o)t.push(s);t.end()};let r=e.source;e.source[Symbol.iterator]!=null?r=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(r=e.source[Symbol.asyncIterator]());let n=new Qt;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new Ao("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 Qt:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new oi("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?t.push(o):t.push(o.subarray()),await t.onEmpty(s)},unwrap:()=>{let o=e.source;return e.source=async function*(){yield*n,yield*o}(),e}}}var si=class extends Error{code;constructor(t,r){super(t),this.code=r}},u0=e=>le(e);u0.bytes=0;function Co(e,t){let r=f0(e);return{read:async i=>{let o=-1,s=new Qt,a=t?.lengthDecoder??u0;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(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new si("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new si("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(xn.single(i,t),o)},writeV:async(i,o)=>{let s=new Qt(...i.map(a=>xn.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function Io(){let e=Kr(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function l0(){let e=Io(),t=Io();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}function Jl(e){return e[Symbol.asyncIterator]!=null}function jl(...e){let t=[];for(let r of e)Jl(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=Mr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var h0=jl;function d0(e,...t){if(e==null)throw new Error("Empty pipeline");if(To(e)){let n=e;e=()=>n.source}else if(y0(e)||p0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&To(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++)To(r[n])&&(r[n]=eh(r[n]));return th(...r)}var th=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},p0=e=>e?.[Symbol.asyncIterator]!=null,y0=e=>e?.[Symbol.iterator]!=null,To=e=>e==null?!1:e.sink!=null&&e.source!=null,eh=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=Mr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(p0(o))i=async function*(){yield*o,n.end()};else if(y0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return h0(n,i())}return e.source};var g0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var rh=e=>e instanceof Uint8Array;var Ue=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),m0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),nh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!nh)throw new Error("Non little-endian hardware is not supported");function ai(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ci(e){if(typeof e=="string")e=ai(e);else if(rh(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var ih=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function x0(e,t){if(t!==void 0&&(typeof t!="object"||!ih(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function pr(e,t){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function b0(e,t){if(e.length!==t.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<e.length;n++)r&&(r=e[n]===t[n]);return r}var _o=(e,t)=>(Object.assign(t,e),t);function Lo(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,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;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}function fi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Ro(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Fr(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function No(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function v0(e,t){Fr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var qt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Do=class{constructor(t){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,t=ci(t),pr(t,32);let r=qt(t,0),n=qt(t,2),i=qt(t,4),o=qt(t,6),s=qt(t,8),a=qt(t,10),c=qt(t,12),f=qt(t,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]=qt(t,16+2*u)}process(t,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],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],m=qt(t,r+0),v=qt(t,r+2),x=qt(t,r+4),A=qt(t,r+6),S=qt(t,r+8),B=qt(t,r+10),R=qt(t,r+12),_=qt(t,r+14),O=o[0]+(m&8191),M=o[1]+((m>>>13|v<<3)&8191),U=o[2]+((v>>>10|x<<6)&8191),H=o[3]+((x>>>7|A<<9)&8191),z=o[4]+((A>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),C=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|_<<8)&8191),L=o[9]+(_>>>5|i),w=0,k=w+O*a+M*(5*y)+U*(5*p)+H*(5*h)+z*(5*g);w=k>>>13,k&=8191,k+=Z*(5*d)+C*(5*l)+N*(5*u)+T*(5*f)+L*(5*c),w+=k>>>13,k&=8191;let K=w+O*c+M*a+U*(5*y)+H*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+C*(5*d)+N*(5*l)+T*(5*u)+L*(5*f),w+=K>>>13,K&=8191;let V=w+O*f+M*c+U*a+H*(5*y)+z*(5*p);w=V>>>13,V&=8191,V+=Z*(5*h)+C*(5*g)+N*(5*d)+T*(5*l)+L*(5*u),w+=V>>>13,V&=8191;let W=w+O*u+M*f+U*c+H*a+z*(5*y);w=W>>>13,W&=8191,W+=Z*(5*p)+C*(5*h)+N*(5*g)+T*(5*d)+L*(5*l),w+=W>>>13,W&=8191;let Y=w+O*l+M*u+U*f+H*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+C*(5*p)+N*(5*h)+T*(5*g)+L*(5*d),w+=Y>>>13,Y&=8191;let et=w+O*d+M*l+U*u+H*f+z*c;w=et>>>13,et&=8191,et+=Z*a+C*(5*y)+N*(5*p)+T*(5*h)+L*(5*g),w+=et>>>13,et&=8191;let X=w+O*g+M*d+U*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+C*a+N*(5*y)+T*(5*p)+L*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+U*d+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+C*c+N*a+T*(5*y)+L*(5*p),w+=J>>>13,J&=8191;let yt=w+O*p+M*h+U*g+H*d+z*l;w=yt>>>13,yt&=8191,yt+=Z*u+C*f+N*c+T*a+L*(5*y),w+=yt>>>13,yt&=8191;let ht=w+O*y+M*p+U*h+H*g+z*d;w=ht>>>13,ht&=8191,ht+=Z*l+C*u+N*f+T*c+L*a,w+=ht>>>13,ht&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=V,o[3]=W,o[4]=Y,o[5]=et,o[6]=X,o[7]=J,o[8]=yt,o[9]=ht}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[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++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){No(this);let{buffer:r,blockLen:n}=this;t=ci(t);let i=t.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(t,o);continue}r.set(t.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(t){No(this),v0(t,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++)t[o++]=n[s]>>>0,t[o++]=n[s]>>>8;return t}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}};function oh(e){let t=(n,i)=>e(i).update(ci(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var w0=oh(e=>new Do(e));var sh=ai("expand 16-byte k"),ah=ai("expand 32-byte k"),ch=Ue(sh),fh=Ue(ah);function G(e,t){return e<<t|e>>>32-t}function Po(e){return e.byteOffset%4===0}var ui=64,uh=16,S0=2**32-1,E0=new Uint32Array;function lh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(ui),u=Ue(f),l=Po(i)&&Po(o),d=l?Ue(i):E0,g=l?Ue(o):E0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=S0)throw new Error("arx: counter overflow");let p=Math.min(ui,c-h);if(l&&p===ui){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let m=0,v;m<uh;m++)v=y+m,g[v]=d[v]^u[m];h+=ui;continue}for(let y=0,m;y<p;y++)m=h+y,o[m]=i[m]^f[y];h+=p}}function ko(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=x0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return fi(i),fi(s),Ro(o),Ro(r),(a,c,f,u,l=0)=>{Fr(a),Fr(c),Fr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Fr(u),fi(l),l<0||l>=S0)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let g=[],h=a.length,p,y;if(h===32)p=a.slice(),g.push(p),y=fh;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=ch,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);Po(c)||(c=c.slice(),g.push(c));let m=Ue(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,m,Ue(c.subarray(0,16)),m),c=c.subarray(16)}let v=16-i;if(v!==c.length)throw new Error(`arx: nonce must be ${v} or 16 bytes`);if(v!==12){let A=new Uint8Array(12);A.set(c,o?0:12-c.length),c=A,g.push(c)}let x=Ue(c);for(lh(e,y,m,x,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function C0(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],f=e[3],u=t[0],l=t[1],d=t[2],g=t[3],h=t[4],p=t[5],y=t[6],m=t[7],v=i,x=r[0],A=r[1],S=r[2],B=s,R=a,_=c,O=f,M=u,U=l,H=d,z=g,Z=h,C=p,N=y,T=m,L=v,w=x,k=A,K=S;for(let W=0;W<o;W+=2)B=B+M|0,L=G(L^B,16),Z=Z+L|0,M=G(M^Z,12),B=B+M|0,L=G(L^B,8),Z=Z+L|0,M=G(M^Z,7),R=R+U|0,w=G(w^R,16),C=C+w|0,U=G(U^C,12),R=R+U|0,w=G(w^R,8),C=C+w|0,U=G(U^C,7),_=_+H|0,k=G(k^_,16),N=N+k|0,H=G(H^N,12),_=_+H|0,k=G(k^_,8),N=N+k|0,H=G(H^N,7),O=O+z|0,K=G(K^O,16),T=T+K|0,z=G(z^T,12),O=O+z|0,K=G(K^O,8),T=T+K|0,z=G(z^T,7),B=B+U|0,K=G(K^B,16),N=N+K|0,U=G(U^N,12),B=B+U|0,K=G(K^B,8),N=N+K|0,U=G(U^N,7),R=R+H|0,L=G(L^R,16),T=T+L|0,H=G(H^T,12),R=R+H|0,L=G(L^R,8),T=T+L|0,H=G(H^T,7),_=_+z|0,w=G(w^_,16),Z=Z+w|0,z=G(z^Z,12),_=_+z|0,w=G(w^_,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,k=G(k^O,16),C=C+k|0,M=G(M^C,12),O=O+M|0,k=G(k^O,8),C=C+k|0,M=G(M^C,7);let V=0;n[V++]=s+B|0,n[V++]=a+R|0,n[V++]=c+_|0,n[V++]=f+O|0,n[V++]=u+M|0,n[V++]=l+U|0,n[V++]=d+H|0,n[V++]=g+z|0,n[V++]=h+Z|0,n[V++]=p+C|0,n[V++]=y+N|0,n[V++]=m+T|0,n[V++]=v+L|0,n[V++]=x+w|0,n[V++]=A+k|0,n[V++]=S+K|0}function hh(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],f=t[1],u=t[2],l=t[3],d=t[4],g=t[5],h=t[6],p=t[7],y=r[0],m=r[1],v=r[2],x=r[3];for(let S=0;S<20;S+=2)i=i+c|0,y=G(y^i,16),d=d+y|0,c=G(c^d,12),i=i+c|0,y=G(y^i,8),d=d+y|0,c=G(c^d,7),o=o+f|0,m=G(m^o,16),g=g+m|0,f=G(f^g,12),o=o+f|0,m=G(m^o,8),g=g+m|0,f=G(f^g,7),s=s+u|0,v=G(v^s,16),h=h+v|0,u=G(u^h,12),s=s+u|0,v=G(v^s,8),h=h+v|0,u=G(u^h,7),a=a+l|0,x=G(x^a,16),p=p+x|0,l=G(l^p,12),a=a+l|0,x=G(x^a,8),p=p+x|0,l=G(l^p,7),i=i+f|0,x=G(x^i,16),h=h+x|0,f=G(f^h,12),i=i+f|0,x=G(x^i,8),h=h+x|0,f=G(f^h,7),o=o+u|0,y=G(y^o,16),p=p+y|0,u=G(u^p,12),o=o+u|0,y=G(y^o,8),p=p+y|0,u=G(u^p,7),s=s+l|0,m=G(m^s,16),d=d+m|0,l=G(l^d,12),s=s+l|0,m=G(m^s,8),d=d+m|0,l=G(l^d,7),a=a+c|0,v=G(v^a,16),g=g+v|0,c=G(c^g,12),a=a+c|0,v=G(v^a,8),g=g+v|0,c=G(c^g,7);let A=0;n[A++]=i,n[A++]=o,n[A++]=s,n[A++]=a,n[A++]=y,n[A++]=m,n[A++]=v,n[A++]=x}var dh=ko(C0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),ph=ko(C0,{counterRight:!1,counterLength:8,extendNonceFn:hh,allowShortKeys:!1});var yh=new Uint8Array(16),B0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(yh.subarray(r))},gh=new Uint8Array(32);function A0(e,t,r,n,i){let o=e(t,r,gh),s=w0.create(o);i&&B0(s,i),B0(s,n);let a=new Uint8Array(16),c=m0(a);Lo(c,0,BigInt(i?i.length:0),!0),Lo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var I0=e=>(t,r,n)=>(pr(t,32),pr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?pr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=A0(e,t,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?pr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=A0(e,t,r,f,n);if(!b0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),Uo=_o({blockSize:64,nonceLength:12,tagLength:16},I0(dh)),Rx=_o({blockSize:64,nonceLength:24,tagLength:16},I0(ph));function li(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Ko(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function vn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");li(e.outputLen),li(e.blockLen)}function Vr(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function T0(e,t){Ko(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var hi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var _0=e=>e instanceof Uint8Array;var di=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),he=(e,t)=>e<<32-t|e>>>t,mh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!mh)throw new Error("Non little-endian hardware is not supported");function Oo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Je(e){if(typeof e=="string"&&(e=Oo(e)),!_0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function pi(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!_0(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var qr=class{clone(){return this._cloneInto()}},Ux={}.toString;function yi(e){let t=n=>e().update(Je(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function yr(e=32){if(hi&&typeof hi.getRandomValues=="function")return hi.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function xh(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,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;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}var Hr=class extends qr{constructor(t,r,n,i){super(),this.blockLen=t,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(t),this.view=di(this.buffer)}update(t){Vr(this);let{view:r,buffer:n,blockLen:i}=this;t=Je(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=di(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Vr(this),T0(t,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;xh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=di(t),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:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var gi=BigInt(4294967295),Mo=BigInt(32);function L0(e,t=!1){return t?{h:Number(e&gi),l:Number(e>>Mo&gi)}:{h:Number(e>>Mo&gi)|0,l:Number(e&gi)|0}}function bh(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=L0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var vh=(e,t)=>BigInt(e>>>0)<<Mo|BigInt(t>>>0),wh=(e,t,r)=>e>>>r,Eh=(e,t,r)=>e<<32-r|t>>>r,Sh=(e,t,r)=>e>>>r|t<<32-r,Bh=(e,t,r)=>e<<32-r|t>>>r,Ah=(e,t,r)=>e<<64-r|t>>>r-32,Ch=(e,t,r)=>e>>>r-32|t<<64-r,Ih=(e,t)=>t,Th=(e,t)=>e,_h=(e,t,r)=>e<<r|t>>>32-r,Lh=(e,t,r)=>t<<r|e>>>32-r,Rh=(e,t,r)=>t<<r-32|e>>>64-r,Nh=(e,t,r)=>e<<r-32|t>>>64-r;function Dh(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Ph=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),kh=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Uh=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Kh=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,Oh=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Mh=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var Fh={fromBig:L0,split:bh,toBig:vh,shrSH:wh,shrSL:Eh,rotrSH:Sh,rotrSL:Bh,rotrBH:Ah,rotrBL:Ch,rotr32H:Ih,rotr32L:Th,rotlSH:_h,rotlSL:Lh,rotlBH:Rh,rotlBL:Nh,add:Dh,add3L:Ph,add3H:kh,add4L:Uh,add4H:Kh,add5H:Mh,add5L:Oh},j=Fh;var[Vh,qh]=(()=>j.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(e=>BigInt(e))))(),je=new Uint32Array(80),tr=new Uint32Array(80),Fo=class extends Hr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:g,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y]}set(t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y){this.Ah=t|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=d|0,this.Gh=g|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let x=0;x<16;x++,r+=4)je[x]=t.getUint32(r),tr[x]=t.getUint32(r+=4);for(let x=16;x<80;x++){let A=je[x-15]|0,S=tr[x-15]|0,B=j.rotrSH(A,S,1)^j.rotrSH(A,S,8)^j.shrSH(A,S,7),R=j.rotrSL(A,S,1)^j.rotrSL(A,S,8)^j.shrSL(A,S,7),_=je[x-2]|0,O=tr[x-2]|0,M=j.rotrSH(_,O,19)^j.rotrBH(_,O,61)^j.shrSH(_,O,6),U=j.rotrSL(_,O,19)^j.rotrBL(_,O,61)^j.shrSL(_,O,6),H=j.add4L(R,U,tr[x-7],tr[x-16]),z=j.add4H(H,B,M,je[x-7],je[x-16]);je[x]=z|0,tr[x]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:g,Fl:h,Gh:p,Gl:y,Hh:m,Hl:v}=this;for(let x=0;x<80;x++){let A=j.rotrSH(l,d,14)^j.rotrSH(l,d,18)^j.rotrBH(l,d,41),S=j.rotrSL(l,d,14)^j.rotrSL(l,d,18)^j.rotrBL(l,d,41),B=l&g^~l&p,R=d&h^~d&y,_=j.add5L(v,S,R,qh[x],tr[x]),O=j.add5H(_,m,A,B,Vh[x],je[x]),M=_|0,U=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),H=j.rotrSL(n,i,28)^j.rotrBL(n,i,34)^j.rotrBL(n,i,39),z=n&o^n&a^o&a,Z=i&s^i&c^s&c;m=p|0,v=y|0,p=g|0,y=h|0,g=l|0,h=d|0,{h:l,l:d}=j.add(f|0,u|0,O|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let C=j.add3L(M,H,Z);n=j.add3H(C,O,U,z),i=C|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:m,l:v}=j.add(this.Hh|0,this.Hl|0,m|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v)}roundClean(){je.fill(0),tr.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 Vo=yi(()=>new Fo);var bi={};Nt(bi,{bitGet:()=>Zh,bitLen:()=>Yh,bitMask:()=>wn,bitSet:()=>Xh,bytesToHex:()=>Ke,bytesToNumberBE:()=>Oe,bytesToNumberLE:()=>de,concatBytes:()=>Fe,createHmacDrbg:()=>zo,ensureBytes:()=>mt,equalBytes:()=>$h,hexToBytes:()=>gr,hexToNumber:()=>Ho,numberToBytesBE:()=>er,numberToBytesLE:()=>Me,numberToHexUnpadded:()=>D0,numberToVarBytesBE:()=>Gh,utf8ToBytes:()=>Wh,validateObject:()=>oe});var N0=BigInt(0),mi=BigInt(1),Hh=BigInt(2),xi=e=>e instanceof Uint8Array,zh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Ke(e){if(!xi(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=zh[e[r]];return t}function D0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Ho(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}function gr(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let r=new Uint8Array(t/2);for(let n=0;n<r.length;n++){let i=n*2,o=e.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 Oe(e){return Ho(Ke(e))}function de(e){if(!xi(e))throw new Error("Uint8Array expected");return Ho(Ke(Uint8Array.from(e).reverse()))}function er(e,t){return gr(e.toString(16).padStart(t*2,"0"))}function Me(e,t){return er(e,t).reverse()}function Gh(e){return gr(D0(e))}function mt(e,t,r){let n;if(typeof t=="string")try{n=gr(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(xi(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function Fe(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!xi(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function $h(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function Wh(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Yh(e){let t;for(t=0;e>N0;e>>=mi,t+=1);return t}function Zh(e,t){return e>>BigInt(t)&mi}var Xh=(e,t,r)=>e|(r?mi:N0)<<BigInt(t),wn=e=>(Hh<<BigInt(e-1))-mi,qo=e=>new Uint8Array(e),R0=e=>Uint8Array.from(e);function zo(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=qo(e),i=qo(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=qo())=>{i=a(R0([0]),l),n=a(),l.length!==0&&(i=a(R0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let g=n.slice();d.push(g),l+=n.length}return Fe(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var Qh={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function oe(e,t,r={}){let n=(i,o,s)=>{let a=Qh[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Dt=BigInt(0),wt=BigInt(1),mr=BigInt(2),Jh=BigInt(3),Go=BigInt(4),P0=BigInt(5),k0=BigInt(8),jh=BigInt(9),td=BigInt(16);function at(e,t){let r=e%t;return r>=Dt?r:t+r}function $o(e,t,r){if(r<=Dt||t<Dt)throw new Error("Expected power/modulo > 0");if(r===wt)return Dt;let n=wt;for(;t>Dt;)t&wt&&(n=n*e%r),e=e*e%r,t>>=wt;return n}function xt(e,t,r){let n=e;for(;t-- >Dt;)n*=n,n%=r;return n}function vi(e,t){if(e===Dt||t<=Dt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=at(e,t),n=t,i=Dt,o=wt,s=wt,a=Dt;for(;r!==Dt;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==wt)throw new Error("invert: does not exist");return at(i,t)}function ed(e){let t=(e-wt)/mr,r,n,i;for(r=e-wt,n=0;r%mr===Dt;r/=mr,n++);for(i=mr;i<e&&$o(i,t,e)!==e-wt;i++);if(n===1){let s=(e+wt)/Go;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+wt)/mr;return function(a,c){if(a.pow(c,t)===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),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,wt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function rd(e){if(e%Go===Jh){let t=(e+wt)/Go;return function(n,i){let o=n.pow(i,t);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(e%k0===P0){let t=(e-P0)/k0;return function(n,i){let o=n.mul(i,mr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,mr),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 e%td,ed(e)}var U0=(e,t)=>(at(e,t)&wt)===wt,nd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Wo(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=nd.reduce((n,i)=>(n[i]="function",n),t);return oe(e,r)}function id(e,t,r){if(r<Dt)throw new Error("Expected power > 0");if(r===Dt)return e.ONE;if(r===wt)return t;let n=e.ONE,i=t;for(;r>Dt;)r&wt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=wt;return n}function od(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function Yo(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function wi(e,t,r=!1,n={}){if(e<=Dt)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=Yo(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=rd(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:wn(i),ZERO:Dt,ONE:wt,create:c=>at(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Dt<=c&&c<e},is0:c=>c===Dt,isOdd:c=>(c&wt)===wt,neg:c=>at(-c,e),eql:(c,f)=>c===f,sqr:c=>at(c*c,e),add:(c,f)=>at(c+f,e),sub:(c,f)=>at(c-f,e),mul:(c,f)=>at(c*f,e),pow:(c,f)=>id(a,c,f),div:(c,f)=>at(c*vi(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>vi(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>od(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Me(c,o):er(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?de(c):Oe(c)}});return Object.freeze(a)}function K0(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");let r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function O0(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function Zo(e){let t=O0(e);return t+Math.ceil(t/2)}function M0(e,t,r=!1){let n=e.length,i=O0(t),o=Zo(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Oe(e):de(e),a=at(s,t-wt)+wt;return r?Me(a,i):er(a,i)}var ad=BigInt(0),Xo=BigInt(1);function Ei(e,t){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(t/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=e.ZERO,a=i;for(;o>ad;)o&Xo&&(s=s.add(a)),a=a.double(),o>>=Xo;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 d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),d=2**i,g=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=g,y>c&&(y-=d,s+=Xo);let m=p,v=p+Math.abs(y)-1,x=h%2!==0,A=y<0;y===0?u=u.add(r(x,o[m])):f=f.add(r(A,o[v]))}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 En(e){return Wo(e.Fp),oe(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Yo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var pe=BigInt(0),ee=BigInt(1),Si=BigInt(2),cd=BigInt(8),fd={zip215:!0};function ud(e){let t=En(e);return oe(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function Bi(e){let t=ud(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=Si<<BigInt(a*8)-ee,u=r.create,l=t.uvRatio||((L,w)=>{try{return{isValid:!0,value:r.sqrt(L*r.inv(w))}}catch{return{isValid:!1,value:pe}}}),d=t.adjustScalarBytes||(L=>L),g=t.domain||((L,w,k)=>{if(w.length||k)throw new Error("Contexts/pre-hash are not supported");return L}),h=L=>typeof L=="bigint"&&pe<L,p=(L,w)=>h(L)&&h(w)&&L<w,y=L=>L===pe||p(L,f);function m(L,w){if(p(L,w))return L;throw new Error(`Expected valid scalar < ${w}, got ${typeof L} ${L}`)}function v(L){return L===pe?L:m(L,n)}let x=new Map;function A(L){if(!(L instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,k,K,V){if(this.ex=w,this.ey=k,this.ez=K,this.et=V,!y(w))throw new Error("x required");if(!y(k))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(V))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:k,y:K}=w||{};if(!y(k)||!y(K))throw new Error("invalid affine point");return new S(k,K,ee,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,V)=>K.toAffine(k[V])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,x.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:V,ez:W,et:Y}=this,et=u(K*K),X=u(V*V),J=u(W*W),yt=u(J*J),ht=u(et*w),Mt=u(J*u(ht+X)),Ft=u(yt+u(k*u(et*X)));if(Mt!==Ft)throw new Error("bad point: equation left != right (1)");let Rt=u(K*V),zt=u(W*Y);if(Rt!==zt)throw new Error("bad point: equation left != right (2)")}equals(w){A(w);let{ex:k,ey:K,ez:V}=this,{ex:W,ey:Y,ez:et}=w,X=u(k*et),J=u(W*V),yt=u(K*et),ht=u(Y*V);return X===J&&yt===ht}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:k,ey:K,ez:V}=this,W=u(k*k),Y=u(K*K),et=u(Si*u(V*V)),X=u(w*W),J=k+K,yt=u(u(J*J)-W-Y),ht=X+Y,Mt=ht-et,Ft=X-Y,Rt=u(yt*Mt),zt=u(ht*Ft),Pe=u(yt*Ft),hr=u(Mt*ht);return new S(Rt,zt,hr,Pe)}add(w){A(w);let{a:k,d:K}=t,{ex:V,ey:W,ez:Y,et}=this,{ex:X,ey:J,ez:yt,et:ht}=w;if(k===BigInt(-1)){let Xa=u((W-V)*(J+X)),Qa=u((W+V)*(J-X)),xo=u(Qa-Xa);if(xo===pe)return this.double();let Ja=u(Y*Si*ht),ja=u(et*Si*yt),t0=ja+Ja,e0=Qa+Xa,r0=ja-Ja,Ll=u(t0*xo),Rl=u(e0*r0),Nl=u(t0*r0),Dl=u(xo*e0);return new S(Ll,Rl,Dl,Nl)}let Mt=u(V*X),Ft=u(W*J),Rt=u(et*K*ht),zt=u(Y*yt),Pe=u((V+W)*(X+J)-Mt-Ft),hr=zt-Rt,gn=zt+Rt,Za=u(Ft-k*Mt),Cl=u(Pe*hr),Il=u(gn*Za),Tl=u(Pe*Za),_l=u(hr*gn);return new S(Cl,Il,_l,Tl)}subtract(w){return this.add(w.negate())}wNAF(w){return _.wNAFCached(this,x,w,S.normalizeZ)}multiply(w){let{p:k,f:K}=this.wNAF(m(w,n));return S.normalizeZ([k,K])[0]}multiplyUnsafe(w){let k=v(w);return k===pe?R:this.equals(R)||k===ee?this:this.equals(B)?this.wNAF(k).p:_.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:V}=this,W=this.is0();w==null&&(w=W?cd:r.inv(V));let Y=u(k*w),et=u(K*w),X=u(V*w);if(W)return{x:pe,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:et}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,k=!1){let{d:K,a:V}=t,W=r.BYTES;w=mt("pointHex",w,W);let Y=w.slice(),et=w[W-1];Y[W-1]=et&-129;let X=de(Y);X===pe||(k?m(X,f):m(X,r.ORDER));let J=u(X*X),yt=u(J-ee),ht=u(K*J-V),{isValid:Mt,value:Ft}=l(yt,ht);if(!Mt)throw new Error("Point.fromHex: invalid y coordinate");let Rt=(Ft&ee)===ee,zt=(et&128)!==0;if(!k&&Ft===pe&&zt)throw new Error("Point.fromHex: x=0 and x_0=1");return zt!==Rt&&(Ft=u(-Ft)),S.fromAffine({x:Ft,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=Me(k,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Ke(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(pe,ee,ee,pe);let{BASE:B,ZERO:R}=S,_=Ei(S,a*8);function O(L){return at(L,n)}function M(L){return O(de(L))}function U(L){let w=a;L=mt("private key",L,w);let k=mt("hashed private key",o(L),2*w),K=d(k.slice(0,w)),V=k.slice(w,2*w),W=M(K),Y=B.multiply(W),et=Y.toRawBytes();return{head:K,prefix:V,scalar:W,point:Y,pointBytes:et}}function H(L){return U(L).pointBytes}function z(L=new Uint8Array,...w){let k=Fe(...w);return M(o(g(k,mt("context",L),!!i)))}function Z(L,w,k={}){L=mt("message",L),i&&(L=i(L));let{prefix:K,scalar:V,pointBytes:W}=U(w),Y=z(k.context,K,L),et=B.multiply(Y).toRawBytes(),X=z(k.context,et,W,L),J=O(Y+X*V);v(J);let yt=Fe(et,Me(J,r.BYTES));return mt("result",yt,a*2)}let C=fd;function N(L,w,k,K=C){let{context:V,zip215:W}=K,Y=r.BYTES;L=mt("signature",L,2*Y),w=mt("message",w),i&&(w=i(w));let et=de(L.slice(Y,2*Y)),X,J,yt;try{X=S.fromHex(k,W),J=S.fromHex(L.slice(0,Y),W),yt=B.multiplyUnsafe(et)}catch{return!1}if(!W&&X.isSmallOrder())return!1;let ht=z(V,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(ht)).subtract(yt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(L=8,w=S.BASE){return w._setWindowSize(L),w.multiply(BigInt(3)),w}}}}var Sn=BigInt(0),Qo=BigInt(1);function ld(e){return oe(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function F0(e){let t=ld(e),{P:r}=t,n=x=>at(x,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(x=>x),c=t.powPminus2||(x=>$o(x,r-BigInt(2),r));function f(x,A,S){let B=n(x*(A-S));return A=n(A-B),S=n(S+B),[A,S]}function u(x){if(typeof x=="bigint"&&Sn<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(x,A){let S=u(x),B=u(A),R=S,_=Qo,O=Sn,M=S,U=Qo,H=Sn,z;for(let C=BigInt(i-1);C>=Sn;C--){let N=B>>C&Qo;H^=N,z=f(H,_,M),_=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1],H=N;let T=_+O,L=n(T*T),w=_-O,k=n(w*w),K=L-k,V=M+U,W=M-U,Y=n(W*T),et=n(V*w),X=Y+et,J=Y-et;M=n(X*X),U=n(R*n(J*J)),_=n(L*k),O=n(K*(L+n(l*K)))}z=f(H,_,M),_=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1];let Z=c(O);return n(_*Z)}function g(x){return Me(n(x),o)}function h(x){let A=mt("u coordinate",x,o);return s===o&&(A[s-1]&=127),de(A)}function p(x){let A=mt("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return de(a(A))}function y(x,A){let S=h(A),B=p(x),R=d(S,B);if(R===Sn)throw new Error("Invalid private or public key received");return g(R)}let m=g(t.Gu);function v(x){return y(x,m)}return{scalarMult:y,scalarMultBase:v,getSharedSecret:(x,A)=>y(x,A),getPublicKey:x=>v(x),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:m}}var Bn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),V0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),c2=BigInt(0),hd=BigInt(1),Jo=BigInt(2),dd=BigInt(5),q0=BigInt(10),pd=BigInt(20),yd=BigInt(40),H0=BigInt(80);function z0(e){let t=Bn,n=e*e%t*e%t,i=xt(n,Jo,t)*n%t,o=xt(i,hd,t)*e%t,s=xt(o,dd,t)*o%t,a=xt(s,q0,t)*s%t,c=xt(a,pd,t)*a%t,f=xt(c,yd,t)*c%t,u=xt(f,H0,t)*f%t,l=xt(u,H0,t)*f%t,d=xt(l,q0,t)*s%t;return{pow_p_5_8:xt(d,Jo,t)*e%t,b2:n}}function G0(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function gd(e,t){let r=Bn,n=at(t*t*t,r),i=at(n*n*t,r),o=z0(e*i).pow_p_5_8,s=at(e*n*o,r),a=at(t*s*s,r),c=s,f=at(s*V0,r),u=a===e,l=a===at(-e,r),d=a===at(-e*V0,r);return u&&(s=c),(l||d)&&(s=f),U0(s,r)&&(s=at(-s,r)),{isValid:u||l,value:s}}var Ve=wi(Bn,void 0,!0),jo={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ve,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Vo,randomBytes:yr,adjustScalarBytes:G0,uvRatio:gd},zr=Bi(jo);function $0(e,t,r){if(t.length>255)throw new Error("Context is too big");return pi(Oo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var f2=Bi({...jo,domain:$0}),u2=Bi({...jo,domain:$0,prehash:Vo}),An=(()=>F0({P:Bn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=Bn,{pow_p_5_8:r,b2:n}=z0(e);return at(xt(r,BigInt(3),t)*n,t)},adjustScalarBytes:G0,randomBytes:yr}))();var md=(Ve.ORDER+BigInt(3))/BigInt(8),l2=Ve.pow(Jo,md),h2=Ve.sqrt(Ve.neg(Ve.ONE)),d2=(Ve.ORDER-BigInt(5))/BigInt(8),p2=BigInt(486662);var y2=K0(Ve,Ve.neg(BigInt(486664)));var g2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),m2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),x2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),b2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var v2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ai=class extends qr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,vn(t);let n=Je(r);if(this.iHash=t.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?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return Vr(this),this.iHash.update(t),this}digestInto(t){Vr(this),Ko(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Gr=(e,t,r)=>new Ai(e,t).update(r).digest();Gr.create=(e,t)=>new Ai(e,t);function Y0(e,t,r){return vn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),Gr(e,Je(r),Je(t))}var ts=new Uint8Array([0]),W0=new Uint8Array;function Z0(e,t,r,n=32){if(vn(e),li(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=W0);let o=new Uint8Array(i*e.outputLen),s=Gr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)ts[0]=f+1,a.update(f===0?W0:c).update(r).update(ts).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),ts.fill(0),o.slice(0,n)}var xd=(e,t,r)=>e&t^~e&r,bd=(e,t,r)=>e&t^e&r^t&r,vd=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]),rr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),nr=new Uint32Array(64),es=class extends Hr{constructor(){super(64,32,8,!1),this.A=rr[0]|0,this.B=rr[1]|0,this.C=rr[2]|0,this.D=rr[3]|0,this.E=rr[4]|0,this.F=rr[5]|0,this.G=rr[6]|0,this.H=rr[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|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(t,r){for(let l=0;l<16;l++,r+=4)nr[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=nr[l-15],g=nr[l-2],h=he(d,7)^he(d,18)^d>>>3,p=he(g,17)^he(g,19)^g>>>10;nr[l]=p+nr[l-7]+h+nr[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 d=he(a,6)^he(a,11)^he(a,25),g=u+d+xd(a,c,f)+vd[l]+nr[l]|0,p=(he(n,2)^he(n,13)^he(n,22))+bd(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(){nr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var $r=yi(()=>new es);var rs={hashSHA256(e){return $r(e)},getHKDF(e,t){let r=Y0($r,t,e),i=Z0($r,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 e=An.utils.randomPrivateKey();return{publicKey:An.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:An.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return An.getSharedSecret(e,t)},chaCha20Poly1305Encrypt(e,t,r,n){return Uo(n,t,r).encrypt(e)},chaCha20Poly1305Decrypt(e,t,r,n,i){return Uo(n,t,r).decrypt(e,i)}};var X0=rs;var as={};Nt(as,{base10:()=>Cd});function wd(e,t){if(e.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<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,m=0,v=h.length;m!==v&&h[m]===0;)m++,p++;for(var x=(v-m)*u+1>>>0,A=new Uint8Array(x);m!==v;){for(var S=h[m],B=0,R=x-1;(S!==0||B<y)&&R!==-1;R--,B++)S+=256*A[R]>>>0,A[R]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");y=B,m++}for(var _=x-y;_!==x&&A[_]===0;)_++;for(var O=c.repeat(p);_<x;++_)O+=e.charAt(A[_]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,m=0;h[p]===c;)y++,p++;for(var v=(h.length-p)*f+1>>>0,x=new Uint8Array(v);h[p];){var A=r[h.charCodeAt(p)];if(A===255)return;for(var S=0,B=v-1;(A!==0||S<m)&&B!==-1;B--,S++)A+=a*x[B]>>>0,x[B]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");m=S,p++}if(h[p]!==" "){for(var R=v-m;R!==v&&x[R]===0;)R++;for(var _=new Uint8Array(y+(v-R)),O=y;R!==v;)_[O++]=x[R++];return _}}}function g(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:g}}var Ed=wd,Sd=Ed,Q0=Sd;var V2=new Uint8Array(0);var J0=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},qe=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var j0=e=>new TextEncoder().encode(e),tc=e=>new TextDecoder().decode(e);var ns=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},is=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return rc(this,t)}},os=class{constructor(t){this.decoders=t}or(t){return rc(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},rc=(e,t)=>new os({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),ss=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ns(t,r,n),this.decoder=new is(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},Wr=({name:e,prefix:t,encode:r,decode:n})=>new ss(e,t,r,n),ir=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Q0(r,t);return Wr({prefix:e,name:t,encode:n,decode:o=>qe(i(o))})},Bd=(e,t,r,n)=>{let i={};for(let u=0;u<t.length;++u)i[t[u]]=u;let o=e.length;for(;e[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[e[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},Ad=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},It=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>Wr({prefix:t,name:e,encode(i){return Ad(i,n,r)},decode(i){return Bd(i,n,r,e)}});var Cd=ir({prefix:"9",name:"base10",alphabet:"0123456789"});var cs={};Nt(cs,{base16:()=>Id,base16upper:()=>Td});var Id=It({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Td=It({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var fs={};Nt(fs,{base2:()=>_d});var _d=It({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var us={};Nt(us,{base256emoji:()=>Pd});var nc=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}"),Ld=nc.reduce((e,t,r)=>(e[r]=t,e),[]),Rd=nc.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function Nd(e){return e.reduce((t,r)=>(t+=Ld[r],t),"")}function Dd(e){let t=[];for(let r of e){let n=Rd[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var Pd=Wr({prefix:"\u{1F680}",name:"base256emoji",encode:Nd,decode:Dd});var ls={};Nt(ls,{base32:()=>ye,base32hex:()=>Od,base32hexpad:()=>Fd,base32hexpadupper:()=>Vd,base32hexupper:()=>Md,base32pad:()=>Ud,base32padupper:()=>Kd,base32upper:()=>kd,base32z:()=>qd});var ye=It({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),kd=It({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Ud=It({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Kd=It({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Od=It({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Md=It({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Fd=It({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Vd=It({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),qd=It({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var hs={};Nt(hs,{base36:()=>Hd,base36upper:()=>zd});var Hd=ir({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),zd=ir({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ds={};Nt(ds,{base58btc:()=>Bt,base58flickr:()=>Gd});var Bt=ir({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Gd=ir({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ys={};Nt(ys,{base64:()=>Yr,base64pad:()=>$d,base64url:()=>ps,base64urlpad:()=>Wd});var Yr=It({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),$d=It({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ps=It({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Wd=It({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var gs={};Nt(gs,{base8:()=>Yd});var Yd=It({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ms={};Nt(ms,{identity:()=>Zd});var Zd=Wr({prefix:"\0",name:"identity",encode:e=>tc(e),decode:e=>j0(e)});var rb=new TextEncoder,nb=new TextDecoder;var vs={};Nt(vs,{identity:()=>sr});var Ee={};Nt(Ee,{Digest:()=>xr,create:()=>ge,decode:()=>or,equals:()=>bs});var Jd=sc,ic=128,jd=127,tp=~jd,ep=Math.pow(2,31);function sc(e,t,r){t=t||[],r=r||0;for(var n=r;e>=ep;)t[r++]=e&255|ic,e/=128;for(;e&tp;)t[r++]=e&255|ic,e>>>=7;return t[r]=e|0,sc.bytes=r-n+1,t}var rp=xs,np=128,oc=127;function xs(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw xs.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&oc)<<i:(s&oc)*Math.pow(2,i),i+=7}while(s>=np);return xs.bytes=o-n,r}var ip=Math.pow(2,7),op=Math.pow(2,14),sp=Math.pow(2,21),ap=Math.pow(2,28),cp=Math.pow(2,35),fp=Math.pow(2,42),up=Math.pow(2,49),lp=Math.pow(2,56),hp=Math.pow(2,63),dp=function(e){return e<ip?1:e<op?2:e<sp?3:e<ap?4:e<cp?5:e<fp?6:e<up?7:e<lp?8:e<hp?9:10},pp={encode:Jd,decode:rp,encodingLength:dp},yp=pp,Cn=yp;var In=(e,t=0)=>[Cn.decode(e,t),Cn.decode.bytes],Zr=(e,t,r=0)=>(Cn.encode(e,t,r),t),Xr=e=>Cn.encodingLength(e);var ge=(e,t)=>{let r=t.byteLength,n=Xr(e),i=n+Xr(r),o=new Uint8Array(i+r);return Zr(e,o,0),Zr(r,o,n),o.set(t,i),new xr(e,r,t,o)},or=e=>{let t=qe(e),[r,n]=In(t),[i,o]=In(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new xr(r,i,s,t)},bs=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&J0(e.bytes,r.bytes)}},xr=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var ac=0,gp="identity",cc=qe,mp=e=>ge(ac,cc(e)),sr={code:ac,name:gp,encode:cc,digest:mp};var Ss={};Nt(Ss,{sha256:()=>Ht,sha512:()=>xp});var Es=({name:e,code:t,encode:r})=>new ws(e,t,r),ws=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?ge(this.code,r):r.then(n=>ge(this.code,n))}else throw Error("Unknown type, must be binary type")}};var uc=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Ht=Es({name:"sha2-256",code:18,encode:uc("SHA-256")}),xp=Es({name:"sha2-512",code:19,encode:uc("SHA-512")});var lc=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return vp(r,Bs(e),t||Bt.encoder);default:return wp(r,Bs(e),t||ye.encoder)}};var hc=new WeakMap,Bs=e=>{let t=hc.get(e);if(t==null){let r=new Map;return hc.set(e,r),r}return t},me=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==Tn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Ep)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.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:t,digest:r}=this.multihash,n=ge(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&bs(t.multihash,n.multihash)}toString(t){return lc(this,t)}toJSON(){return{"/":lc(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s||dc(n,i,o.bytes))}else if(r[Sp]===!0){let{version:n,multihash:i,code:o}=r,s=or(i);return e.create(n,o,s)}else return null}static create(t,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(t){case 0:{if(r!==Tn)throw new Error(`Version 0 CID must use dag-pb (code: ${Tn}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=dc(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Tn,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=qe(t.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 xr(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=In(t.subarray(r));return r+=d,l},i=n(),o=Tn;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(t,r){let[n,i]=bp(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Bs(o).set(n,t),o}},bp=(e,t)=>{switch(e[0]){case"Q":{let r=t||Bt;return[Bt.prefix,r.decode(`${Bt.prefix}${e}`)]}case Bt.prefix:{let r=t||Bt;return[Bt.prefix,r.decode(e)]}case ye.prefix:{let r=t||ye;return[ye.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},vp=(e,t,r)=>{let{prefix:n}=r;if(n!==Bt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},wp=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},Tn=112,Ep=18,dc=(e,t,r)=>{let n=Xr(e),i=n+Xr(t),o=new Uint8Array(i+r.byteLength);return Zr(e,o,0),Zr(t,o,n),o.set(r,i),o},Sp=Symbol.for("@ipld/js-cid/CID");var Se={...ms,...fs,...gs,...as,...cs,...ls,...hs,...ds,...ys,...us},bb={...Ss,...vs};function yc(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var pc=yc("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),As=yc("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Vt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),Bp={utf8:pc,"utf-8":pc,hex:Se.base16,latin1:As,ascii:As,binary:As,...Se},Ii=Bp;function At(e,t="utf8"){let r=Ii[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Xe(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function nt(e,t="utf8"){let r=Ii[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}var Ap=e=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(e):new Uint8Array(e),Qr=e=>{let t=Ap(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Qr.bytes=2;var _n=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};_n.bytes=2;function gc(e){return ft([e.ne,e.ciphertext],e.ne.length+e.ciphertext.length)}function mc(e){return ft([e.ne,e.ns,e.ciphertext],e.ne.length+e.ns.length+e.ciphertext.length)}function xc(e){return ft([e.ns,e.ciphertext],e.ns.length+e.ciphertext.length)}function bc(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:new Uint8Array(0)}}function vc(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.subarray(0,32),ns:e.subarray(32,80),ciphertext:e.subarray(80,e.length)}}function wc(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var Sc=16;function Bc(e,t){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=e.encrypt(n.subarray(i,o),e.session);t?.encryptedPackets.increment(),yield ft([Qr(s.byteLength),s],2+s.byteLength)}}}function Ac(e,t){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-Sc<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-Sc),{plaintext:c,valid:f}=e.decrypt(s,e.session,a);if(!f)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var rt=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},Rn=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},br=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var P8=Wt(kn(),1),k8=Wt(qf(),1);var Pg=Wt(pt(),1);var fa={};Nt(fa,{Ed25519PrivateKey:()=>Lr,Ed25519PublicKey:()=>Vn,generateKeyPair:()=>ag,generateKeyPairFromSeed:()=>nu,unmarshalEd25519PrivateKey:()=>og,unmarshalEd25519PublicKey:()=>sg});var rn=32,$e=64,$i=32;async function Hf(){let e=zr.utils.randomPrivateKey(),t=zr.getPublicKey(e);return{privateKey:Wf(e,t),publicKey:t}}async function zf(e){if(e.length!==$i)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=zr.getPublicKey(t);return{privateKey:Wf(t,r),publicKey:r}}async function Gf(e,t){let r=e.subarray(0,$i);return zr.sign(t,r)}async function $f(e,t,r){return zr.verify(t,r,e)}function Wf(e,t){let r=new Uint8Array($e);for(let n=0;n<$i;n++)r[n]=e[n],r[$i+n]=t[n];return r}var jt={get(e=globalThis){let t=e.crypto;if(t==null||t.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 t}};var Ys={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Zs(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=jt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=At(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",Ys,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",Ys,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,y,l);return ft([g,p.iv,new Uint8Array(m)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=At(d));let m;if(d.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",Ys,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(y,m,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function nn(e,t){let n=await Zs().encrypt(e,t);return Yr.encode(n)}var Xs=new Float32Array([-0]),lr=new Uint8Array(Xs.buffer);function Zf(e,t,r){Xs[0]=e,t[r]=lr[0],t[r+1]=lr[1],t[r+2]=lr[2],t[r+3]=lr[3]}function Xf(e,t){return lr[0]=e[t],lr[1]=e[t+1],lr[2]=e[t+2],lr[3]=e[t+3],Xs[0]}var Qs=new Float64Array([-0]),$t=new Uint8Array(Qs.buffer);function Qf(e,t,r){Qs[0]=e,t[r]=$t[0],t[r+1]=$t[1],t[r+2]=$t[2],t[r+3]=$t[3],t[r+4]=$t[4],t[r+5]=$t[5],t[r+6]=$t[6],t[r+7]=$t[7]}function Jf(e,t){return $t[0]=e[t],$t[1]=e[t+1],$t[2]=e[t+2],$t[3]=e[t+3],$t[4]=e[t+4],$t[5]=e[t+5],$t[6]=e[t+6],$t[7]=e[t+7],Qs[0]}var Q1=BigInt(Number.MAX_SAFE_INTEGER),J1=BigInt(Number.MIN_SAFE_INTEGER),te=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Ar;if(t<Q1&&t>J1)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,i=t-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>jf&&(i=0n,++n>jf&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Ar;let r=t<0;r&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new e(n,i)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):Ar}},Ar=new te(0,0);Ar.toBigInt=function(){return 0n};Ar.zzEncode=Ar.zzDecode=function(){return this};Ar.length=function(){return 1};var jf=4294967296n;function tu(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function eu(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Js(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function ve(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Wi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var js=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,ve(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ve(this,4);return Wi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ve(this,4);return Wi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ve(this,4);let t=Xf(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw ve(this,4);let t=Jf(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw ve(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return eu(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw ve(this,t);this.pos+=t}else do if(this.pos>=this.len)throw ve(this);while(this.buf[this.pos++]&128);return this}skipType(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}readLongVarint(){let t=new te(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*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;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw ve(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw ve(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ve(this,8);let t=Wi(this.buf,this.pos+=4),r=Wi(this.buf,this.pos+=4);return new te(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function ta(e){return new js(e instanceof Uint8Array?e:e.subarray())}function Cr(e,t){let r=ta(e);return t.decode(r)}function ea(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Vt(s);i+s>t&&(n=Vt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Ir=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function ra(){}var ia=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},j1=ea();function tg(e){return globalThis.Buffer!=null?Vt(e):j1(e)}var Fn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ir(ra,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Ir(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new oa((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(On,10,te.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=te.fromBigInt(t);return this._push(On,r.length(),r)}uint64Number(t){let r=te.fromNumber(t);return this._push(On,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=te.fromBigInt(t).zzEncode();return this._push(On,r.length(),r)}sint64Number(t){let r=te.fromNumber(t).zzEncode();return this._push(On,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(na,1,t?1:0)}fixed32(t){return this._push(Mn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=te.fromBigInt(t);return this._push(Mn,4,r.lo)._push(Mn,4,r.hi)}fixed64Number(t){let r=te.fromNumber(t);return this._push(Mn,4,r.lo)._push(Mn,4,r.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Zf,4,t)}double(t){return this._push(Qf,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(na,1,0):this.uint32(r)._push(rg,r,t)}string(t){let r=tu(t);return r!==0?this.uint32(r)._push(Js,r,t):this._push(na,1,0)}fork(){return this.states=new ia(this),this.head=this.tail=new Ir(ra,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ir(ra,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=tg(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function na(e,t,r){t[r]=e&255}function eg(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var oa=class extends Ir{next;constructor(t,r){super(eg,t,r),this.next=void 0}};function On(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function Mn(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function rg(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Fn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(ng,t,e),this},Fn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(ig,t,e),this});function ng(e,t,r){t.set(e,r)}function ig(e,t,r){e.length<40?Js(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(At(e),r)}function sa(){return new Fn}function Tr(e,t){let r=sa();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var on;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(on||(on={}));function Yi(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function aa(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Yi("enum",on.VARINT,r,n)}function _r(e,t){return Yi("message",on.LENGTH_DELIMITED,e,t)}var St;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(St||(St={}));var ca;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(ca||(ca={}));(function(e){e.codec=()=>aa(ca)})(St||(St={}));var Le;(function(e){let t;e.codec=()=>(t==null&&(t=_r((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.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=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Cr(r,e.codec())})(Le||(Le={}));var Re;(function(e){let t;e.codec=()=>(t==null&&(t=_r((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.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=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Cr(r,e.codec())})(Re||(Re={}));var Vn=class{_key;constructor(t){this._key=sn(t,rn)}async verify(t,r){return $f(this._key,r,t)}marshal(){return this._key}get bytes(){return Le.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},Lr=class{_key;_publicKey;constructor(t,r){this._key=sn(t,$e),this._publicKey=sn(r,rn)}async sign(t){return Gf(this._key,t)}get public(){return new Vn(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=sr.digest(this.public.bytes);return Bt.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return nn(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function og(e){if(e.length>$e){e=sn(e,$e+rn);let n=e.subarray(0,$e),i=e.subarray($e,e.length);return new Lr(n,i)}e=sn(e,$e);let t=e.subarray(0,$e),r=e.subarray(rn);return new Lr(t,r)}function sg(e){return e=sn(e,rn),new Vn(e)}async function ag(){let{privateKey:e,publicKey:t}=await Hf();return new Lr(e,t)}async function nu(e){let{privateKey:t,publicKey:r}=await zf(e);return new Lr(t,r)}function sn(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new rt(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var cw=Wt(Lt(),1),fw=Wt(qi(),1),iu=Wt(pt(),1);function we(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=ft([new Uint8Array(t-r.length),r])}return nt(r,"base64url")}function re(e){let t=ou(e);return new iu.default.jsbn.BigInteger(nt(t,"base16"),16)}function ou(e,t){let r=At(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=ft([new Uint8Array(t-r.length),r])}return r}var cg={"P-256":256,"P-384":384,"P-521":521},fg=Object.keys(cg),vw=fg.join(" / ");var pa={};Nt(pa,{MAX_KEY_SIZE:()=>Gn,RsaPrivateKey:()=>an,RsaPublicKey:()=>zn,fromJwk:()=>vg,generateKeyPair:()=>wg,unmarshalRsaPrivateKey:()=>xg,unmarshalRsaPublicKey:()=>bg});var Hn=Wt(pt(),1);var i8=Wt(uu(),1);function Xi(e){if(isNaN(e)||e<=0)throw new rt("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return yr(e)}var Fw=Wt(Gi(),1),ha=Wt(pt(),1);function lu(e,t){return t.map(r=>re(e[r]))}function hu(e){return ha.default.pki.setRsaPrivateKey(...lu(e,["n","e","d","p","q","dp","dq","qi"]))}function du(e){return ha.default.pki.setRsaPublicKey(...lu(e,["n","e"]))}var Nr={};Nt(Nr,{jwkToPkcs1:()=>dg,jwkToPkix:()=>yg,pkcs1ToJwk:()=>hg,pkixToJwk:()=>pg});var Hw=Wt(kn(),1),zw=Wt(Gi(),1);var We=Wt(pt(),1);function hg(e){let t=We.default.asn1.fromDer(nt(e,"ascii")),r=We.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:we(r.n),e:we(r.e),d:we(r.d),p:we(r.p),q:we(r.q),dp:we(r.dP),dq:we(r.dQ),qi:we(r.qInv),alg:"RS256"}}function dg(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new rt("JWK was missing components","ERR_INVALID_PARAMETERS");let t=We.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return At(We.default.asn1.toDer(t).getBytes(),"ascii")}function pg(e){let t=We.default.asn1.fromDer(nt(e,"ascii")),r=We.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:we(r.n),e:we(r.e)}}function yg(e){if(e.n==null||e.e==null)throw new rt("JWK was missing components","ERR_INVALID_PARAMETERS");let t=We.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return At(We.default.asn1.toDer(t).getBytes(),"ascii")}async function pu(e){let t=await jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await mu(t);return{privateKey:r[0],publicKey:r[1]}}async function da(e){let r=[await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await gg(e)],n=await mu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function yu(e,t){let r=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(n,0,n.byteLength)}async function gu(e,t,r){let n=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r)}async function mu(e){if(e.privateKey==null||e.publicKey==null)throw new rt("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([jt.get().subtle.exportKey("jwk",e.privateKey),jt.get().subtle.exportKey("jwk",e.publicKey)])}async function gg(e){return jt.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function xu(e,t,r,n){let i=t?du(e):hu(e),o=nt(Uint8Array.from(r),"ascii"),s=n(o,i);return At(s,"ascii")}function bu(e,t){return xu(e,!0,t,(r,n)=>n.encrypt(r))}function vu(e,t){return xu(e,!1,t,(r,n)=>n.decrypt(r))}function Qi(e){if(e.kty!=="RSA")throw new rt("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new rt("invalid key modulus","ERR_INVALID_KEY_MODULUS");return At(e.n,"base64url").length*8}var Gn=8192,zn=class{_key;constructor(t){this._key=t}async verify(t,r){return gu(this._key,r,t)}marshal(){return Nr.jwkToPkix(this._key)}get bytes(){return Le.encode({Type:St.RSA,Data:this.marshal()}).subarray()}encrypt(t){return bu(this._key,t)}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},an=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return Xi(16)}async sign(t){return yu(this._key,t)}get public(){if(this._publicKey==null)throw new rt("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new zn(this._publicKey)}decrypt(t){return vu(this._key,t)}marshal(){return Nr.jwkToPkcs1(this._key)}get bytes(){return Re.encode({Type:St.RSA,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=await this.public.hash();return nt(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Hn.default.util.ByteBuffer(this.marshal()),i=Hn.default.asn1.fromDer(n),o=Hn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Hn.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return nn(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function xg(e){let t=Nr.pkcs1ToJwk(e);if(Qi(t)>Gn)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await da(t);return new an(r.privateKey,r.publicKey)}function bg(e){let t=Nr.pkixToJwk(e);if(Qi(t)>Gn)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new zn(t)}async function vg(e){if(Qi(e)>Gn)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await da(e);return new an(t.privateKey,t.publicKey)}async function wg(e){if(e>Gn)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await pu(e);return new an(t.privateKey,t.publicKey)}var xa={};Nt(xa,{Secp256k1PrivateKey:()=>Wn,Secp256k1PublicKey:()=>$n,generateKeyPair:()=>Dg,unmarshalSecp256k1PrivateKey:()=>Rg,unmarshalSecp256k1PublicKey:()=>Ng});function Eg(e){let t=En(e);oe(t,{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}=t;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({...t})}var{bytesToNumberBE:Sg,hexToBytes:Bg}=bi,Dr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Dr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:Sg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Dr,r=typeof e=="string"?Bg(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Dr._parseInt(r.subarray(2)),{d:s,l:a}=Dr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=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=t(r(e.s)),i=t(r(e.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}`}},Ye=BigInt(0),ce=BigInt(1),u8=BigInt(2),wu=BigInt(3),l8=BigInt(4);function Ag(e){let t=Eg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let m=p.toAffine();return Fe(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=t.fromBytes||(h=>{let p=h.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(h){let{a:p,b:y}=t,m=r.sqr(h),v=r.mul(m,h);return r.add(r.add(v,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Ye<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:m,n:v}=t;if(p&&typeof h!="bigint"){if(h instanceof Uint8Array&&(h=Ke(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let x;try{x=typeof h=="bigint"?h:Oe(mt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return m&&(x=at(x,v)),a(x),x}let f=new Map;function u(h){if(!(h 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 v=x=>r.eql(x,r.ZERO);return v(y)&&v(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,v)=>m.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(mt("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(t.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),v=o(p);if(!r.eql(m,v))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:v}=this,{px:x,py:A,pz:S}=p,B=r.eql(r.mul(y,S),r.mul(x,v)),R=r.eql(r.mul(m,S),r.mul(A,v));return B&&R}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,m=r.mul(y,wu),{px:v,py:x,pz:A}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,_=r.mul(v,v),O=r.mul(x,x),M=r.mul(A,A),U=r.mul(v,x);return U=r.add(U,U),R=r.mul(v,A),R=r.add(R,R),S=r.mul(p,R),B=r.mul(m,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(U,S),R=r.mul(m,R),M=r.mul(p,M),U=r.sub(_,M),U=r.mul(p,U),U=r.add(U,R),R=r.add(_,_),_=r.add(R,_),_=r.add(_,M),_=r.mul(_,U),B=r.add(B,_),M=r.mul(x,A),M=r.add(M,M),_=r.mul(M,U),S=r.sub(S,_),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:m,pz:v}=this,{px:x,py:A,pz:S}=p,B=r.ZERO,R=r.ZERO,_=r.ZERO,O=t.a,M=r.mul(t.b,wu),U=r.mul(y,x),H=r.mul(m,A),z=r.mul(v,S),Z=r.add(y,m),C=r.add(x,A);Z=r.mul(Z,C),C=r.add(U,H),Z=r.sub(Z,C),C=r.add(y,v);let N=r.add(x,S);return C=r.mul(C,N),N=r.add(U,z),C=r.sub(C,N),N=r.add(m,v),B=r.add(A,S),N=r.mul(N,B),B=r.add(H,z),N=r.sub(N,B),_=r.mul(O,C),B=r.mul(M,z),_=r.add(B,_),B=r.sub(H,_),_=r.add(H,_),R=r.mul(B,_),H=r.add(U,U),H=r.add(H,U),z=r.mul(O,z),C=r.mul(M,C),H=r.add(H,z),z=r.sub(U,z),z=r.mul(O,z),C=r.add(C,z),U=r.mul(H,C),R=r.add(R,U),U=r.mul(N,C),B=r.mul(Z,B),B=r.sub(B,U),U=r.mul(Z,H),_=r.mul(N,_),_=r.add(_,U),new l(B,R,_)}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(v=>v.pz));return y.map((v,x)=>v.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Ye)return y;if(a(p),p===ce)return this;let{endo:m}=t;if(!m)return g.unsafeLadder(this,p);let{k1neg:v,k1:x,k2neg:A,k2:S}=m.splitScalar(p),B=y,R=y,_=this;for(;x>Ye||S>Ye;)x&ce&&(B=B.add(_)),S&ce&&(R=R.add(_)),_=_.double(),x>>=ce,S>>=ce;return v&&(B=B.negate()),A&&(R=R.negate()),R=new l(r.mul(R.px,m.beta),R.py,R.pz),B.add(R)}multiply(p){a(p);let y=p,m,v,{endo:x}=t;if(x){let{k1neg:A,k1:S,k2neg:B,k2:R}=x.splitScalar(y),{p:_,f:O}=this.wNAF(S),{p:M,f:U}=this.wNAF(R);_=g.constTimeNegate(A,_),M=g.constTimeNegate(B,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),m=_.add(M),v=O.add(U)}else{let{p:A,f:S}=this.wNAF(y);m=A,v=S}return l.normalizeZ([m,v])[0]}multiplyAndAddUnsafe(p,y,m){let v=l.BASE,x=(S,B)=>B===Ye||B===ce||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),A=x(this,y).add(x(p,m));return A.is0()?void 0:A}toAffine(p){let{px:y,py:m,pz:v}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(v));let A=r.mul(y,p),S=r.mul(m,p),B=r.mul(v,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return{x:A,y:S}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===ce)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}=t;return p===ce?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ke(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=Ei(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Cg(e){let t=En(e);return oe(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Eu(e){let t=Cg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return Ye<C&&C<r.ORDER}function a(C){return at(C,n)}function c(C){return vi(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=Ag({...t,toBytes(C,N,T){let L=N.toAffine(),w=r.toBytes(L.x),k=Fe;return T?k(Uint8Array.from([N.hasEvenY()?2:3]),w):k(Uint8Array.from([4]),w,r.toBytes(L.y))},fromBytes(C){let N=C.length,T=C[0],L=C.subarray(1);if(N===i&&(T===2||T===3)){let w=Oe(L);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),V=(K&ce)===ce;return(T&1)===1!==V&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(L.subarray(0,r.BYTES)),k=r.fromBytes(L.subarray(r.BYTES,2*r.BYTES));return{x:w,y:k}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=C=>Ke(er(C,t.nByteLength));function h(C){let N=n>>ce;return C>N}function p(C){return h(C)?a(-C):C}let y=(C,N,T)=>Oe(C.slice(N,T));class m{constructor(N,T,L){this.r=N,this.s=T,this.recovery=L,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=mt("compactSignature",N,T*2),new m(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:L}=Dr.toSig(mt("DER",N));return new m(T,L)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new m(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:L,recovery:w}=this,k=R(mt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let V=w&1?"03":"02",W=f.fromHex(V+g(K)),Y=c(K),et=a(-k*Y),X=a(L*Y),J=f.BASE.multiplyAndAddUnsafe(W,et,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return gr(this.toDERHex())}toDERHex(){return Dr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return gr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=Zo(t.n);return M0(t.randomBytes(C),t.n)},precompute(C=8,N=f.BASE){return N._setWindowSize(C),N.multiply(BigInt(3)),N}};function x(C,N=!0){return f.fromPrivateKey(C).toRawBytes(N)}function A(C){let N=C instanceof Uint8Array,T=typeof C=="string",L=(N||T)&&C.length;return N?L===i||L===o:T?L===2*i||L===2*o:C instanceof f}function S(C,N,T=!0){if(A(C))throw new Error("first arg must be private key");if(!A(N))throw new Error("second arg must be public key");return f.fromHex(N).multiply(u(C)).toRawBytes(T)}let B=t.bits2int||function(C){let N=Oe(C),T=C.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(C){return a(B(C))},_=wn(t.nBitLength);function O(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Ye<=C&&C<_))throw new Error(`bigint expected < 2^${t.nBitLength}`);return er(C,t.nByteLength)}function M(C,N,T=U){if(["recovered","canonical"].some(ht=>ht in T))throw new Error("sign() legacy options not supported");let{hash:L,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:V}=T;k==null&&(k=!0),C=mt("msgHash",C),K&&(C=mt("prehashed msgHash",L(C)));let W=R(C),Y=u(N),et=[O(Y),O(W)];if(V!=null){let ht=V===!0?w(r.BYTES):V;et.push(mt("extraEntropy",ht))}let X=Fe(...et),J=W;function yt(ht){let Mt=B(ht);if(!d(Mt))return;let Ft=c(Mt),Rt=f.BASE.multiply(Mt).toAffine(),zt=a(Rt.x);if(zt===Ye)return;let Pe=a(Ft*a(J+zt*Y));if(Pe===Ye)return;let hr=(Rt.x===zt?0:2)|Number(Rt.y&ce),gn=Pe;return k&&h(Pe)&&(gn=p(Pe),hr^=1),new m(zt,gn,hr)}return{seed:X,k2sig:yt}}let U={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(C,N,T=U){let{seed:L,k2sig:w}=M(C,N,T),k=t;return zo(k.hash.outputLen,k.nByteLength,k.hmac)(L,w)}f.BASE._setWindowSize(8);function Z(C,N,T,L=H){let w=C;if(N=mt("msgHash",N),T=mt("publicKey",T),"strict"in L)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=L,V,W;try{if(typeof w=="string"||w instanceof Uint8Array)try{V=m.fromDER(w)}catch(Rt){if(!(Rt instanceof Dr.Err))throw Rt;V=m.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Rt,s:zt}=w;V=new m(Rt,zt)}else throw new Error("PARSE");W=f.fromHex(T)}catch(Rt){if(Rt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&V.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:et}=V,X=R(N),J=c(et),yt=a(X*J),ht=a(Y*J),Mt=f.BASE.multiplyAndAddUnsafe(W,yt,ht)?.toAffine();return Mt?a(Mt.x)===Y:!1}return{CURVE:t,getPublicKey:x,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:m,utils:v}}function Ig(e){return{hash:e,hmac:(t,...r)=>Gr(e,t,pi(...r)),randomBytes:yr}}function Su(e,t){let r=n=>Eu({...e,...Ig(n)});return Object.freeze({...r(t),create:r})}var Cu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Bu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Tg=BigInt(1),ya=BigInt(2),Au=(e,t)=>(e+t/ya)/t;function _g(e){let t=Cu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=xt(u,r,t)*u%t,d=xt(l,r,t)*u%t,g=xt(d,ya,t)*f%t,h=xt(g,i,t)*g%t,p=xt(h,o,t)*h%t,y=xt(p,a,t)*p%t,m=xt(y,c,t)*y%t,v=xt(m,a,t)*p%t,x=xt(v,r,t)*u%t,A=xt(x,s,t)*h%t,S=xt(A,n,t)*f%t,B=xt(S,ya,t);if(!ga.eql(ga.sqr(B),e))throw new Error("Cannot find square root");return B}var ga=wi(Cu,void 0,void 0,{sqrt:_g}),Ze=Su({a:BigInt(0),b:BigInt(7),Fp:ga,n:Bu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Bu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Tg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Au(o*e,t),c=Au(-n*e,t),f=at(e-a*r-c*i,t),u=at(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},$r),v8=BigInt(0);var w8=Ze.ProjectivePoint;function Iu(){return Ze.utils.randomPrivateKey()}async function Tu(e,t){let{digest:r}=await Ht.digest(t);try{return Ze.sign(r,e).toDERRawBytes()}catch(n){throw new rt(String(n),"ERR_INVALID_INPUT")}}async function _u(e,t,r){try{let{digest:n}=await Ht.digest(r);return Ze.verify(t,n,e)}catch(n){throw new rt(String(n),"ERR_INVALID_INPUT")}}function Lu(e){return Ze.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Ru(e){try{Ze.getPublicKey(e,!0)}catch(t){throw new rt(String(t),"ERR_INVALID_PRIVATE_KEY")}}function ma(e){try{Ze.ProjectivePoint.fromHex(e)}catch(t){throw new rt(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Nu(e){try{return Ze.getPublicKey(e,!0)}catch(t){throw new rt(String(t),"ERR_INVALID_PRIVATE_KEY")}}var $n=class{_key;constructor(t){ma(t),this._key=t}async verify(t,r){return _u(this._key,r,t)}marshal(){return Lu(this._key)}get bytes(){return Le.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},Wn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Nu(t),Ru(this._key),ma(this._publicKey)}async sign(t){return Tu(this._key,t)}get public(){return new $n(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=await this.public.hash();return nt(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return nn(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Rg(e){return new Wn(e)}function Ng(e){return new $n(e)}async function Dg(){let e=Iu();return new Wn(e)}var Pr={rsa:pa,ed25519:fa,secp256k1:xa};function Du(e){let t=Object.keys(Pr).join(" / ");return new rt(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Pu(e){let t=Le.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Pr.rsa.unmarshalRsaPublicKey(r);case St.Ed25519:return Pr.ed25519.unmarshalEd25519PublicKey(r);case St.Secp256k1:return Pr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Du(t.Type??"unknown")}}async function ku(e){let t=Re.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Pr.rsa.unmarshalRsaPrivateKey(r);case St.Ed25519:return Pr.ed25519.unmarshalEd25519PrivateKey(r);case St.Secp256k1:return Pr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Du(t.Type??"RSA")}}var Uu=Symbol.for("@libp2p/peer-id");var kg=Symbol.for("nodejs.util.inspect.custom"),Ku=Object.values(Se).map(e=>e.decoder).reduce((e,t)=>e.or(t),Se.identity.decoder),Ou=114,ba=36,va=37,Yn=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Uu]=!0;toString(){return this.string==null&&(this.string=Bt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return me.createV1(Ou,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Ct(this.multihash.bytes,t);if(typeof t=="string")return wa(t).equals(this);if(t?.multihash?.bytes!=null)return Ct(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[kg](){return`PeerId(${this.toString()})`}},cn=class extends Yn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},fn=class extends Yn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},un=class extends Yn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function wa(e,t){if(t=t??Ku,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=or(Bt.decode(`z${e}`));return e.startsWith("12D")?new fn({multihash:r}):e.startsWith("16U")?new un({multihash:r}):new cn({multihash:r})}return Ug(Ku.decode(e))}function Ug(e){try{let t=or(e);if(t.code===sr.code){if(t.digest.length===ba)return new fn({multihash:t});if(t.digest.length===va)return new un({multihash:t})}if(t.code===Ht.code)return new cn({multihash:t})}catch{return Kg(me.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Kg(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Ou)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Ht.code)return new cn({multihash:e.multihash});if(t.code===sr.code){if(t.digest.length===ba)return new fn({multihash:e.multihash});if(t.digest.length===va)return new un({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Ea(e,t){return e.length===ba?new fn({multihash:ge(sr.code,e),privateKey:t}):e.length===va?new un({multihash:ge(sr.code,e),privateKey:t}):new cn({multihash:await Ht.digest(e),publicKey:e,privateKey:t})}var Ji;(function(e){let t;e.codec=()=>(t==null&&(t=_r((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})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Cr(r,e.codec())})(Ji||(Ji={}));var Zn;(function(e){let t;e.codec=()=>(t==null&&(t=_r((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),Ji.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=Ji.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Cr(r,e.codec())})(Zn||(Zn={}));async function Mu(e,t,r){let n=await Mg(e,Fu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Og(e.publicKey,n,r)}function Og(e,t,r){return Zn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Mg(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await ku(e.privateKey)).sign(t)}async function Sa(e){return Ea(e.identityKey)}function Ba(e){return Zn.decode(e)}function Fu(e){let t=At("noise-libp2p-static-key:");return ft([t,e],t.length+e.length)}async function Aa(e,t,r){let n=await Ea(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Fu(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await Pu(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Xn(e){return!(!(e instanceof Uint8Array)||e.length!==32)}var ie=Wt(Gu(),1);ie.default.formatters.b=e=>e==null?"undefined":Bt.baseEncode(e);ie.default.formatters.t=e=>e==null?"undefined":ye.baseEncode(e);ie.default.formatters.m=e=>e==null?"undefined":Yr.baseEncode(e);ie.default.formatters.p=e=>e==null?"undefined":e.toString();ie.default.formatters.c=e=>e==null?"undefined":e.toString();ie.default.formatters.k=e=>e==null?"undefined":e.toString();ie.default.formatters.a=e=>e==null?"undefined":e.toString();function Jg(e){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=e,t.destroy=()=>!0,t.extend=()=>t,t}function $u(e){let t=Jg(`${e}:trace`);return ie.default.enabled(`${e}:trace`)&&ie.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(t=(0,ie.default)(`${e}:trace`)),Object.assign((0,ie.default)(e),{error:(0,ie.default)(`${e}:error`),trace:t})}var Ot=$u("libp2p:noise");var fe;g0?fe=Ot:fe=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function Wu(e){fe(`LOCAL_STATIC_PUBLIC_KEY ${nt(e.publicKey,"hex")}`),fe(`LOCAL_STATIC_PRIVATE_KEY ${nt(e.privateKey,"hex")}`)}function Ca(e){e?(fe(`LOCAL_PUBLIC_EPHEMERAL_KEY ${nt(e.publicKey,"hex")}`),fe(`LOCAL_PRIVATE_EPHEMERAL_KEY ${nt(e.privateKey,"hex")}`)):fe("Missing local ephemeral keys.")}function Yu(e){fe(`REMOTE_STATIC_PUBLIC_KEY ${nt(e,"hex")}`)}function Ia(e){fe(`REMOTE_EPHEMERAL_PUBLIC_KEY ${nt(e,"hex")}`)}function Zu(e){e.cs1&&e.cs2?(fe(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${nt(e.cs1.k,"hex")}`),fe(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${nt(e.cs2.k,"hex")}`)):fe("Missing cipher state.")}var jg="Cipherstate has reached maximum n, a new handshake must be performed",eo=class{n;bytes;view;constructor(t=0){this.n=t,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!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(jg)}};var ro=class{crypto;constructor(t){this.crypto=t}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(t){let r=this.createEmptyKey();return Ct(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Ot.error(i),new Uint8Array(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(ft([t,r],t.length+r.length))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new eo}}initializeSymmetric(t){let r=At(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=new Uint8Array(32);return r.set(t),r}else return this.getHash(t,new Uint8Array(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,new Uint8Array(0),r.ciphertext)}};var no=class extends ro{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=new Uint8Array(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Xn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Xn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);i&&Xn(n)&&(t.rs=n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(t,r){let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);if(i&&Xn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=new Uint8Array(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};var io=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(t,r,n,i,o,s,a,c){this.isInitiator=t,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new no(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Wu(this.session.hs.s),this.isInitiator){Ot.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(gc(t)),Ot.trace("Stage 0 - Initiator finished sending first message."),Ca(this.session.hs.e)}else{Ot.trace("Stage 0 - Responder waiting to receive first message...");let t=bc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new br("xx handshake stage 0 validation fail");Ot.trace("Stage 0 - Responder received first message."),Ia(this.session.hs.re)}}async exchange(){if(this.isInitiator){Ot.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=vc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new br("xx handshake stage 1 validation fail");Ot.trace("Stage 1 - Initiator received the message."),Ia(this.session.hs.re),Yu(this.session.hs.rs),Ot.trace("Initiator going to check remote's signature...");try{let i=Ba(r);this.remotePeer=this.remotePeer||await Sa(i),await Aa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Rn(`Error occurred while verifying signed payload: ${o.message}`)}Ot.trace("All good with the signature!")}else{Ot.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(mc(t)),Ot.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Ca(this.session.hs.e)}}async finish(){if(this.isInitiator){Ot.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(xc(t)),Ot.trace("Stage 2 - Initiator sent message with signed payload.")}else{Ot.trace("Stage 2 - Responder waiting for third handshake message...");let t=wc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new br("xx handshake stage 2 validation fail");Ot.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Ba(r);this.remotePeer=this.remotePeer||await Sa(i),await Aa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Rn(`Error occurred while verifying signed payload: ${o.message}`)}}Zu(this.session)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new br("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function Xu(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var oo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(t={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=t;this.crypto=i??X0,this.extensions=n,this.metrics=s?Xu(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(t,r,n){let i=Co(r,{lengthEncoder:Qr,lengthDecoder:_n,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=Co(r,{lengthEncoder:Qr,lengthDecoder:_n,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await Mu(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new io(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(t,r){let[n,i]=l0(),o=t.unwrap();return await d0(n,Bc(r,this.metrics),o,s=>bn(s,{lengthDecoder:_n}),Ac(r,this.metrics),n),i}};function Qu(e={}){return()=>new oo(e)}var ju=Symbol.for("@libp2p/transport");var Ju;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Ju||(Ju={}));var so=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();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(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,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 d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(o*=t,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 t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=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]=t(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]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var tl=45,tm=15,pn=new so;function Ta(e){if(!(e.length>tm))return pn.new(e).parseWith(()=>pn.readIPv4Addr())}function _a(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>tl))return pn.new(e).parseWith(()=>pn.readIPv6Addr())}function ao(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>tl))return pn.new(e).parseWith(()=>pn.readIPAddr())}var aE=parseInt("0xFFFF",16),cE=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function co(e){return!!Ta(e)}function fo(e){return!!_a(e)}function uo(e){return!!ao(e)}var nl=co,om=fo,La=function(e){let t=0;if(e=e.toString().trim(),nl(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(om(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=nl(r[n]),s;o&&(s=La(r[n]),r[n]=nt(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,nt(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(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},il=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var yn={},Ra={},am=[[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"]];am.forEach(e=>{let t=cm(...e);Ra[t.code]=t,yn[t.name]=t});function cm(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function lt(e){if(typeof e=="number"){if(Ra[e]!=null)return Ra[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(yn[e]!=null)return yn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var GE=lt("ip4"),$E=lt("ip6"),WE=lt("ipcidr");function Da(e,t){switch(lt(e).code){case 4:case 41:return um(t);case 42:return al(t);case 6:case 273:case 33:case 132:return fl(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return al(t);case 421:return pm(t);case 444:return cl(t);case 445:return cl(t);case 466:return dm(t);default:return nt(t,"base16")}}function Pa(e,t){switch(lt(e).code){case 4:return ol(t);case 41:return ol(t);case 42:return sl(t);case 6:case 273:case 33:case 132:return ka(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return sl(t);case 421:return lm(t);case 444:return ym(t);case 445:return gm(t);case 466:return hm(t);default:return At(t,"base16")}}var Na=Object.values(Se).map(e=>e.decoder),fm=function(){let e=Na[0].or(Na[1]);return Na.slice(2).forEach(t=>e=e.or(t)),e}();function ol(e){if(!uo(e))throw new Error("invalid ip address");return La(e)}function um(e){let t=il(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!uo(t))throw new Error("invalid ip address");return t}function ka(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function fl(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function sl(e){let t=At(e),r=Uint8Array.from(Qe(t.length));return ft([r,t],r.length+t.length)}function al(e){let t=le(e);if(e=e.slice(Xt(t)),e.length!==t)throw new Error("inconsistent lengths");return nt(e)}function lm(e){let t;e[0]==="Q"||e[0]==="1"?t=or(Bt.decode(`z${e}`)).bytes:t=me.parse(e).multihash.bytes;let r=Uint8Array.from(Qe(t.length));return ft([r,t],r.length+t.length)}function hm(e){let t=fm.decode(e),r=Uint8Array.from(Qe(t.length));return ft([r,t],r.length+t.length)}function dm(e){let t=le(e),r=e.slice(Xt(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+nt(r,"base64url")}function pm(e){let t=le(e),r=e.slice(Xt(t));if(r.length!==t)throw new Error("inconsistent lengths");return nt(r,"base58btc")}function ym(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=ye.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ka(n);return ft([r,i],r.length+i.length)}function gm(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=ye.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ka(n);return ft([r,i],r.length+i.length)}function cl(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=nt(t,"base32"),i=fl(r);return`${n}:${i}`}function ul(e){e=Ua(e);let t=[],r=[],n=null,i=e.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=lt(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw hl("invalid address: "+e);if(a.path===!0){n=Ua(i.slice(o).join("/")),t.push([a.code,Pa(a.code,n)]),r.push([a.code,n]);break}let c=Pa(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Da(a.code,c)])}return{string:ll(r),bytes:Oa(t),tuples:t,stringTuples:r,path:n}}function Ka(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=le(e,i),s=Xt(o),a=lt(o),c=mm(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let f=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw hl("Invalid address Uint8Array: "+nt(e,"base16"));t.push([o,f]);let u=Da(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:ll(r),tuples:t,stringTuples:r,path:n}}function ll(e){let t=[];return e.map(r=>{let n=lt(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Ua(t.join("/"))}function Oa(e){return ft(e.map(t=>{let r=lt(t[0]),n=Uint8Array.from(Qe(r.code));return t.length>1&&t[1]!=null&&(n=ft([n,t[1]])),n}))}function mm(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=le(t instanceof Uint8Array?t:Uint8Array.from(t));return r+Xt(r)}}function Ua(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function hl(e){return new Error("Error parsing address: "+e)}var xm=Symbol.for("nodejs.util.inspect.custom"),Fa=Symbol.for("@multiformats/js-multiaddr/multiaddr"),bm=[lt("dns").code,lt("dns4").code,lt("dns6").code,lt("dnsaddr").code],Ma=class e{bytes;#e;#t;#r;#n;[Fa]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Ka(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=ul(t)}else if(pl(t))r=Ka(t.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 t,r,n,i,o="",s=lt("tcp"),a=lt("udp"),c=lt("ip4"),f=lt("ip6"),u=lt("dns6"),l=lt("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),bm.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=lt(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=lt(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==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:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},lt(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>lt(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Oa(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===yn.p2p.code&&t.push([n,i]),n===yn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?nt(Bt.decode(`z${n}`),"base58btc"):nt(me.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Ct(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=dl.get(r.name);if(n==null)throw new rt(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[xm](){return`Multiaddr(${this.#e})`}};var dl=new Map;function pl(e){return!!e?.[Fa]}var vm=e=>e.toString().split("/").slice(1),Qn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Tt=e=>({match:t=>Qn(r=>r===e).match(t),pattern:e}),po=()=>({match:e=>Qn(t=>typeof t=="string").match(e),pattern:"{string}"}),yl=()=>({match:e=>Qn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ue=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{Bt.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),lo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{ps.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Ne=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),De=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),_t=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Pt(...e){function t(i){let o=vm(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var qa=_t(Tt("dns4"),po()),Ha=_t(Tt("dns6"),po()),za=_t(Tt("dnsaddr"),po()),gl=_t(Tt("dns"),po()),S3=Pt(qa),B3=Pt(Ha),A3=Pt(za),C3=Pt(De(gl,za,qa,Ha)),ml=_t(Tt("ip4"),Qn(co)),xl=_t(Tt("ip6"),Qn(fo)),bl=De(ml,xl),Jn=De(bl,gl,qa,Ha,za),I3=Pt(Jn),T3=Pt(ml),_3=Pt(xl),L3=Pt(bl),yo=_t(Jn,Tt("tcp"),yl()),jn=_t(Jn,Tt("udp"),yl()),wm=De(yo,jn),R3=Pt(yo),N3=Pt(jn),Ga=_t(jn,Tt("quic")),go=_t(jn,Tt("quic-v1")),Em=De(Ga,go),D3=Pt(Ga),P3=Pt(go),Va=De(Jn,yo,jn,Ga,go),vl=De(_t(Va,Tt("ws"),Ne(ue()))),k3=Pt(vl),wl=De(_t(Va,Tt("wss"),Ne(ue())),_t(Va,Tt("tls"),Tt("ws"),Ne(ue()))),U3=Pt(wl),El=_t(wm,Tt("webrtc-direct"),lo(),Ne(lo()),Ne(ue())),K3=Pt(El),Sl=_t(go,Tt("webtransport"),lo(),lo(),Ne(ue())),mo=Pt(Sl),ho=De(vl,wl,_t(yo,Ne(ue())),_t(Em,Ne(ue())),_t(Jn,Ne(ue())),El,Sl,ue()),O3=Pt(ho),Sm=_t(ho,Tt("p2p-circuit"),ue()),M3=Pt(Sm),Bm=De(_t(ho,Tt("p2p-circuit"),Tt("webrtc"),ue()),_t(ho,Tt("webrtc"),Ne(ue())),Tt("webrtc")),F3=Pt(Bm);async function $a(e,t,r,n,i,o){let s=o.forComponent("libp2p:webtransport:stream"),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Qt(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}}};return g}function Wa(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function Bl(e,t){return t.filter(n=>!!e.find(i=>Ct(n,i))).length===t.length}var Am=Object.values(Se).map(e=>e.decoder).reduce((e,t)=>e.or(t));function Cm(e){return Ee.decode(Am.decode(e))}function Al(e){if(!mo.matches(e))throw new rt("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===lt("certhash").code).map(([s,a])=>Cm(a??"")),n=t.filter(([s,a])=>s===lt("p2p").code).map(([s,a])=>wa(a??""))[0],i=e.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var Ya=class{log;components;config;metrics;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webtransport"),this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[ju]=!0;async dial(t,r){r?.signal?.throwIfAborted(),this.log("dialing %s",t);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}=Al(t);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=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},...Wa()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.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 d of l)await s.write(d)}},f=Qu()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{this.log.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{this.log.error(`Failed to close authentication stream reader: ${l.message}`)}),!Bl(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(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await $a(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await $a(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...Wa()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(mo.exactMatch)}};function Im(e={}){return t=>new Ya(t,e)}return Ml(Tm);})();
16
16
  //! TODO unclear how to add backpressure here?
17
17
  /*! Bundled license information:
18
18