@libp2p/webtransport 3.0.7 → 3.0.8-a6be8f0f

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};bc.decode=function(t){for(var e=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(t),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Ki.util.decode64(o[3])};if(e.push(a),!!o[2]){for(var c=o[2].split(i),f=0;o&&f<c.length;){for(var u=c[f].replace(/\s+$/,""),l=f+1;l<c.length;++l){var h=c[l];if(!/\s/.test(h[0]))break;u+=h,f=l}if(o=u.match(n),o){for(var g={name:o[1],values:[]},d=o[2].split(","),p=0;p<d.length;++p)g.values.push(ip(d[p]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=d[0]||"";else if(!a.dekInfo&&g.name==="DEK-Info"){if(g.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:d[0],parameters:d[1]||null}}else a.headers.push(g);else{if(g.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(g.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:d[0],type:d[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(e.length===0)throw new Error("Invalid PEM formatted message.");return e};function Ui(t){for(var e=t.name+": ",r=[],n=function(c,f){return" "+f},i=0;i<t.values.length;++i)r.push(t.values[i].replace(/^(\S+\r\n)/,n));e+=r.join(",")+`\r
13
13
  `;for(var o=0,s=-1,i=0;i<e.length;++i,++o)if(o>65&&s!==-1){var a=e[s];a===","?(++s,e=e.substr(0,s)+`\r
14
14
  `+e.substr(s)):e=e.substr(0,s)+`\r
15
- `+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function ip(t){return t.replace(/^\s+/,"")}});var Ic=tt((Ab,Cc)=>{var Ie=gt();Er();kt();var Sc=Cc.exports=Ie.sha256=Ie.sha256||{};Ie.md.sha256=Ie.md.algorithms.sha256=Sc;Sc.create=function(){Bc||op();var t=null,e=Ie.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Ie.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=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 e.putBytes(i),Ec(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Ie.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(fs.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};Ec(l,r,i);var h=Ie.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var fs=null,Bc=!1,Ac=null;function op(){fs=String.fromCharCode(128),fs+=Ie.util.fillString(String.fromCharCode(0),64),Ac=[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],Bc=!0}function Ec(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,E=r.length();E>=64;){for(f=0;f<16;++f)e[f]=r.getInt32();for(;f<64;++f)n=e[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[f]=n+e[f-7]+i+e[f-16]|0;for(u=t.h0,l=t.h1,h=t.h2,g=t.h3,d=t.h4,p=t.h5,y=t.h6,m=t.h7,f=0;f<64;++f)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=y^d&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|h&(u^l),n=m+s+a+Ac[f]+e[f],i=o+c,m=y,y=p,p=d,d=g+n>>>0,g=h,h=l,l=u,u=n+i>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+g|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+y|0,t.h7=t.h7+m|0,E-=64}}});var _c=tt((Cb,Tc)=>{var Te=gt();kt();var Oi=null;Te.util.isNodejs&&!Te.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Oi=Ni());var sp=Tc.exports=Te.prng=Te.prng||{};sp.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(f,u){if(!u)return e.generateSync(f);var l=e.plugin.cipher,h=e.plugin.increment,g=e.plugin.formatKey,d=e.plugin.formatSeed,p=Te.util.createBuffer();e.key=null,y();function y(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return Te.util.nextTick(function(){o(y)});var E=l(e.key,e.seed);e.generated+=E.length,p.putBytes(E),e.key=g(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Te.util.setImmediate(y)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,g=e.plugin.formatSeed;e.key=null;for(var d=Te.util.createBuffer();d.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=u(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(u(e.key,l(e.seed))),e.seed=g(u(e.key,e.seed))}return d.getBytes(f)};function o(f){if(e.pools[0].messageLength>=32)return a(),f();var u=32-e.pools[0].messageLength<<5;e.seedFile(u,function(l,h){if(l)return f(l);e.collect(h),a(),f()})}function s(){if(e.pools[0].messageLength>=32)return a();var f=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(f)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var f=e.plugin.md.create();f.update(e.keyBytes);for(var u=1,l=0;l<32;++l)e.reseeds%u===0&&(f.update(e.pools[l].digest().getBytes()),e.pools[l].start()),u=u<<1;e.keyBytes=f.digest().getBytes(),f.start(),f.update(e.keyBytes);var h=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(f){var u=null,l=Te.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(w){return h.getRandomValues(w)});var g=Te.util.createBuffer();if(u)for(;g.length()<f;){var d=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(w){if(!(typeof QuotaExceededError<"u"&&w instanceof QuotaExceededError))throw w}}if(g.length()<f)for(var m,E,x,A=Math.floor(Math.random()*65536);g.length()<f;){E=16807*(A&65535),m=16807*(A>>16),E+=(m&32767)<<16,E+=m>>15,E=(E&2147483647)+(E>>31),A=E&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 Oi?(e.seedFile=function(f,u){Oi.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},e.seedFileSync=function(f){return Oi.randomBytes(f).toString()}):(e.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},e.seedFileSync=c),e.collect=function(f){for(var u=f.length,l=0;l<u;++l)e.pools[e.pool].update(f.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(f,u){for(var l="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,h){function g(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var h=l.data;h.forge&&h.forge.prng&&e.seedFile(h.forge.prng.needed,function(g,d){f.postMessage({forge:{prng:{err:g,bytes:d}}})})};f.addEventListener("message",u)}},e}});var Mn=tt((Ib,us)=>{var Ot=gt();cs();Ic();_c();kt();(function(){if(Ot.random&&Ot.random.getBytes){us.exports=Ot.random;return}(function(t){var e={},r=new Array(4),n=Ot.util.createBuffer();e.formatKey=function(l){var h=Ot.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Ot.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=Ot.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return Ot.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=Ot.md.sha256;function i(){var l=Ot.prng.create(e);return l.getBytes=function(h,g){return l.generate(h,g)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=Ot.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ot.options.usePureJavaScript||!Ot.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ot.random)Ot.random=o;else for(var u in o)Ot.random[u]=o[u];Ot.random.createInstance=i,us.exports=Ot.random})(typeof jQuery<"u"?jQuery:null)})()});var Pc=tt((Tb,kc)=>{var Qt=gt();kt();var ls=[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],Lc=[1,2,3,5],ap=function(t,e){return t<<e&65535|(t&65535)>>16-e},cp=function(t,e){return(t&65535)>>e|t<<16-e&65535};kc.exports=Qt.rc2=Qt.rc2||{};Qt.rc2.expandKey=function(t,e){typeof t=="string"&&(t=Qt.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(ls[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,ls[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,ls[r.at(a+1)^r.at(a+o)]);return r};var Rc=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(t=Qt.rc2.expandKey(t,e),f=0;f<64;f++)l.push(t.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=ap(d[f],Lc[f]),u++},c=function(d){for(f=0;f<4;f++)d[f]+=l[d[(f+3)%4]&63]}):(a=function(d){for(f=3;f>=0;f--)d[f]=cp(d[f],Lc[f]),d[f]-=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),u--},c=function(d){for(f=3;f>=0;f--)d[f]-=l[d[(f+3)%4]&63]});var h=function(d){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var m=0;m<d.length;m++)for(var E=0;E<d[m][0];E++)d[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(d,p){d&&typeof d=="string"&&(d=Qt.util.createBuffer(d)),n=!1,i=Qt.util.createBuffer(),o=p||new Qt.util.createBuffer,s=d,g.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),E=o.at(m-1);E>m?p=!1:o.truncate(E)}return p}},g};Qt.rc2.startEncrypting=function(t,e,r){var n=Qt.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};Qt.rc2.createEncryptionCipher=function(t,e){return Rc(t,e,!0)};Qt.rc2.startDecrypting=function(t,e,r){var n=Qt.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};Qt.rc2.createDecryptionCipher=function(t,e){return Rc(t,e,!1)}});var Vi=tt((_b,Vc)=>{var hs=gt();Vc.exports=hs.jsbn=hs.jsbn||{};var $e,fp=0xdeadbeefcafe,Dc=(fp&16777215)==15715070;function P(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}hs.jsbn.BigInteger=P;function ft(){return new P(null)}function up(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function lp(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,f=this.data[t++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function Nc(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,f=this.data[t++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(P.prototype.am=Nc,$e=28):Dc&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=lp,$e=30):Dc&&navigator.appName!="Netscape"?(P.prototype.am=up,$e=26):(P.prototype.am=Nc,$e=28);P.prototype.DB=$e;P.prototype.DM=(1<<$e)-1;P.prototype.DV=1<<$e;var ds=52;P.prototype.FV=Math.pow(2,ds);P.prototype.F1=ds-$e;P.prototype.F2=2*$e-ds;var hp="0123456789abcdefghijklmnopqrstuvwxyz",Mi=new Array,Jr,ce;Jr="0".charCodeAt(0);for(ce=0;ce<=9;++ce)Mi[Jr++]=ce;Jr="a".charCodeAt(0);for(ce=10;ce<36;++ce)Mi[Jr++]=ce;Jr="A".charCodeAt(0);for(ce=10;ce<36;++ce)Mi[Jr++]=ce;function Uc(t){return hp.charAt(t)}function Kc(t,e){var r=Mi[t.charCodeAt(e)];return r??-1}function dp(t){for(var e=this.t-1;e>=0;--e)t.data[e]=this.data[e];t.t=this.t,t.s=this.s}function pp(t){this.t=1,this.s=t<0?-1:0,t>0?this.data[0]=t:t<-1?this.data[0]=t+this.DV:this.t=0}function cr(t){var e=ft();return e.fromInt(t),e}function yp(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=r==8?t[n]&255:Kc(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&P.ZERO.subTo(this,this)}function gp(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function mp(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=Uc(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=Uc(n));return i?o:"0"}function xp(){var t=ft();return P.ZERO.subTo(this,t),t}function bp(){return this.s<0?this.negate():this}function vp(t){var e=this.s-t.s;if(e!=0)return e;var r=this.t;if(e=r-t.t,e!=0)return this.s<0?-e:e;for(;--r>=0;)if((e=this.data[r]-t.data[r])!=0)return e;return 0}function Fi(t){var e=1,r;return(r=t>>>16)!=0&&(t=r,e+=16),(r=t>>8)!=0&&(t=r,e+=8),(r=t>>4)!=0&&(t=r,e+=4),(r=t>>2)!=0&&(t=r,e+=2),(r=t>>1)!=0&&(t=r,e+=1),e}function wp(){return this.t<=0?0:this.DB*(this.t-1)+Fi(this.data[this.t-1]^this.s&this.DM)}function Ep(t,e){var r;for(r=this.t-1;r>=0;--r)e.data[r+t]=this.data[r];for(r=t-1;r>=0;--r)e.data[r]=0;e.t=this.t+t,e.s=this.s}function Sp(t,e){for(var r=t;r<this.t;++r)e.data[r-t]=this.data[r];e.t=Math.max(this.t-t,0),e.s=this.s}function Bp(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function Ap(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function Cp(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function Ip(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&P.ZERO.subTo(e,e)}function Tp(t){for(var e=this.abs(),r=t.t=2*e.t;--r>=0;)t.data[r]=0;for(r=0;r<e.t-1;++r){var n=e.am(r,e.data[r],t,2*r,0,1);(t.data[r+e.t]+=e.am(r+1,2*e.data[r],t,2*r+1,n,e.t-r-1))>=e.DV&&(t.data[r+e.t]-=e.DV,t.data[r+e.t+1]=1)}t.t>0&&(t.data[t.t-1]+=e.am(r,e.data[r],t,2*r,0,1)),t.s=0,t.clamp()}function _p(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=ft());var o=ft(),s=this.s,a=t.s,c=this.DB-Fi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,g=(1<<this.F1)/l,d=1<<this.F2,p=r.t,y=p-f,m=e??ft();for(o.dlShiftTo(y,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),P.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var E=r.data[--p]==u?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*g);if((r.data[p]+=o.am(0,E,r,y,0,f))<E)for(o.dlShiftTo(y,m),r.subTo(m,r);r.data[p]<--E;)r.subTo(m,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&P.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function Lp(t){var e=ft();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(P.ZERO)>0&&t.subTo(e,e),e}function Sr(t){this.m=t}function Rp(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function kp(t){return t}function Pp(t){t.divRemTo(this.m,null,t)}function Dp(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function Np(t,e){t.squareTo(e),this.reduce(e)}Sr.prototype.convert=Rp;Sr.prototype.revert=kp;Sr.prototype.reduce=Pp;Sr.prototype.mulTo=Dp;Sr.prototype.sqrTo=Np;function Up(){if(this.t<1)return 0;var t=this.data[0];if(!(t&1))return 0;var e=t&3;return e=e*(2-(t&15)*e)&15,e=e*(2-(t&255)*e)&255,e=e*(2-((t&65535)*e&65535))&65535,e=e*(2-t*e%this.DV)%this.DV,e>0?this.DV-e:-e}function Br(t){this.m=t,this.mp=t.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}function Kp(t){var e=ft();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(P.ZERO)>0&&this.m.subTo(e,e),e}function Op(t){var e=ft();return t.copyTo(e),this.reduce(e),e}function Mp(t){for(;t.t<=this.mt2;)t.data[t.t++]=0;for(var e=0;e<this.m.t;++e){var r=t.data[e]&32767,n=r*this.mpl+((r*this.mph+(t.data[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(r=e+this.m.t,t.data[r]+=this.m.am(0,n,t,e,0,this.m.t);t.data[r]>=t.DV;)t.data[r]-=t.DV,t.data[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)}function Fp(t,e){t.squareTo(e),this.reduce(e)}function Vp(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Br.prototype.convert=Kp;Br.prototype.revert=Op;Br.prototype.reduce=Mp;Br.prototype.mulTo=Vp;Br.prototype.sqrTo=Fp;function qp(){return(this.t>0?this.data[0]&1:this.s)==0}function Hp(t,e){if(t>4294967295||t<1)return P.ONE;var r=ft(),n=ft(),i=e.convert(this),o=Fi(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function zp(t,e){var r;return t<256||e.isEven()?r=new Sr(e):r=new Br(e),this.exp(t,r)}P.prototype.copyTo=dp;P.prototype.fromInt=pp;P.prototype.fromString=yp;P.prototype.clamp=gp;P.prototype.dlShiftTo=Ep;P.prototype.drShiftTo=Sp;P.prototype.lShiftTo=Bp;P.prototype.rShiftTo=Ap;P.prototype.subTo=Cp;P.prototype.multiplyTo=Ip;P.prototype.squareTo=Tp;P.prototype.divRemTo=_p;P.prototype.invDigit=Up;P.prototype.isEven=qp;P.prototype.exp=Hp;P.prototype.toString=mp;P.prototype.negate=xp;P.prototype.abs=bp;P.prototype.compareTo=vp;P.prototype.bitLength=wp;P.prototype.mod=Lp;P.prototype.modPowInt=zp;P.ZERO=cr(0);P.ONE=cr(1);function Gp(){var t=ft();return this.copyTo(t),t}function $p(){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 Wp(){return this.t==0?this.s:this.data[0]<<24>>24}function Yp(){return this.t==0?this.s:this.data[0]<<16>>16}function Zp(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Xp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Qp(t){if(t==null&&(t=10),this.signum()==0||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=cr(r),i=ft(),o=ft(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function jp(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=Kc(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&P.ZERO.subTo(this,this)}function Jp(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(P.ONE.shiftLeft(t-1),ps,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(P.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function ty(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function ey(t){return this.compareTo(t)==0}function ry(t){return this.compareTo(t)<0?this:t}function ny(t){return this.compareTo(t)>0?this:t}function iy(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function oy(t,e){return t&e}function sy(t){var e=ft();return this.bitwiseTo(t,oy,e),e}function ps(t,e){return t|e}function ay(t){var e=ft();return this.bitwiseTo(t,ps,e),e}function Oc(t,e){return t^e}function cy(t){var e=ft();return this.bitwiseTo(t,Oc,e),e}function Mc(t,e){return t&~e}function fy(t){var e=ft();return this.bitwiseTo(t,Mc,e),e}function uy(){for(var t=ft(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function ly(t){var e=ft();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function hy(t){var e=ft();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function dy(t){if(t==0)return-1;var e=0;return t&65535||(t>>=16,e+=16),t&255||(t>>=8,e+=8),t&15||(t>>=4,e+=4),t&3||(t>>=2,e+=2),t&1||++e,e}function py(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+dy(this.data[t]);return this.s<0?this.t*this.DB:-1}function yy(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function gy(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=yy(this.data[r]^e);return t}function my(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function xy(t,e){var r=P.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function by(t){return this.changeBit(t,ps)}function vy(t){return this.changeBit(t,Mc)}function wy(t){return this.changeBit(t,Oc)}function Ey(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function Sy(t){var e=ft();return this.addTo(t,e),e}function By(t){var e=ft();return this.subTo(t,e),e}function Ay(t){var e=ft();return this.multiplyTo(t,e),e}function Cy(t){var e=ft();return this.divRemTo(t,e,null),e}function Iy(t){var e=ft();return this.divRemTo(t,null,e),e}function Ty(t){var e=ft(),r=ft();return this.divRemTo(t,e,r),new Array(e,r)}function _y(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function Ly(t,e){if(t!=0){for(;this.t<=e;)this.data[this.t++]=0;for(this.data[e]+=t;this.data[e]>=this.DV;)this.data[e]-=this.DV,++e>=this.t&&(this.data[this.t++]=0),++this.data[e]}}function Fn(){}function Fc(t){return t}function Ry(t,e,r){t.multiplyTo(e,r)}function ky(t,e){t.squareTo(e)}Fn.prototype.convert=Fc;Fn.prototype.revert=Fc;Fn.prototype.mulTo=Ry;Fn.prototype.sqrTo=ky;function Py(t){return this.exp(t,new Fn)}function Dy(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function Ny(t,e,r){--e;var n=r.t=this.t+t.t-e;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(e-this.t,0);n<t.t;++n)r.data[this.t+n-e]=this.am(e-n,t.data[n],r,0,0,this.t+n-e);r.clamp(),r.drShiftTo(1,r)}function tn(t){this.r2=ft(),this.q3=ft(),P.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function Uy(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=ft();return t.copyTo(e),this.reduce(e),e}function Ky(t){return t}function Oy(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)}function My(t,e){t.squareTo(e),this.reduce(e)}function Fy(t,e,r){t.multiplyTo(e,r),this.reduce(r)}tn.prototype.convert=Uy;tn.prototype.revert=Ky;tn.prototype.reduce=Oy;tn.prototype.mulTo=Fy;tn.prototype.sqrTo=My;function Vy(t,e){var r=t.bitLength(),n,i=cr(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 Sr(e):e.isEven()?o=new tn(e):o=new Br(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=ft();for(o.sqrTo(s[1],u);a<=f;)s[a]=ft(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,h,g=!0,d=ft(),p;for(r=Fi(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&f:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[h].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function qy(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function Hy(t){if(t<=0)return 0;var e=this.DV%t,r=this.s<0?t-1:0;if(this.t>0)if(e==0)r=this.data[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this.data[n])%t;return r}function zy(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return P.ZERO;for(var r=t.clone(),n=this.clone(),i=cr(1),o=cr(0),s=cr(0),a=cr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(P.ONE)!=0)return P.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var xe=[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],Gy=(1<<26)/xe[xe.length-1];function $y(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=xe[xe.length-1]){for(e=0;e<xe.length;++e)if(r.data[0]==xe[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<xe.length;){for(var n=xe[e],i=e+1;i<xe.length&&n<Gy;)n*=xe[i++];for(n=r.modInt(n);e<i;)if(n%xe[e++]==0)return!1}return r.millerRabin(t)}function Wy(t){var e=this.subtract(P.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Yy(),o,s=0;s<t;++s){do o=new P(this.bitLength(),i);while(o.compareTo(P.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(P.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(P.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function Yy(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Zp;P.prototype.toRadix=Qp;P.prototype.fromRadix=jp;P.prototype.fromNumber=Jp;P.prototype.bitwiseTo=iy;P.prototype.changeBit=xy;P.prototype.addTo=Ey;P.prototype.dMultiply=_y;P.prototype.dAddOffset=Ly;P.prototype.multiplyLowerTo=Dy;P.prototype.multiplyUpperTo=Ny;P.prototype.modInt=Hy;P.prototype.millerRabin=Wy;P.prototype.clone=Gp;P.prototype.intValue=$p;P.prototype.byteValue=Wp;P.prototype.shortValue=Yp;P.prototype.signum=Xp;P.prototype.toByteArray=ty;P.prototype.equals=ey;P.prototype.min=ry;P.prototype.max=ny;P.prototype.and=sy;P.prototype.or=ay;P.prototype.xor=cy;P.prototype.andNot=fy;P.prototype.not=uy;P.prototype.shiftLeft=ly;P.prototype.shiftRight=hy;P.prototype.getLowestSetBit=py;P.prototype.bitCount=gy;P.prototype.testBit=my;P.prototype.setBit=by;P.prototype.clearBit=vy;P.prototype.flipBit=wy;P.prototype.add=Sy;P.prototype.subtract=By;P.prototype.multiply=Ay;P.prototype.divide=Cy;P.prototype.remainder=Iy;P.prototype.divideAndRemainder=Ty;P.prototype.modPow=Vy;P.prototype.modInverse=zy;P.prototype.pow=Py;P.prototype.gcd=qy;P.prototype.isProbablePrime=$y});var $c=tt((Lb,Gc)=>{var _e=gt();Er();kt();var Hc=Gc.exports=_e.sha1=_e.sha1||{};_e.md.sha1=_e.md.algorithms.sha1=Hc;Hc.create=function(){zc||Zy();var t=null,e=_e.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=_e.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=_e.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),qc(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=_e.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(ys.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};qc(l,r,i);var h=_e.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var ys=null,zc=!1;function Zy(){ys=String.fromCharCode(128),ys+=_e.util.fillString(String.fromCharCode(0),64),zc=!0}function qc(t,e,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,u=0;u<16;++u)n=r.getInt32(),e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var Zc=tt((Rb,Yc)=>{var Le=gt();kt();Mn();$c();var Wc=Yc.exports=Le.pkcs1=Le.pkcs1||{};Wc.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Le.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=e.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",h=c-e.length,g=0;g<h;g++)l+="\0";var d=u.getBytes()+l+""+e;if(!i)i=Le.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=qi(i,a-o.digestLength-1,s),y=Le.util.xorBytes(d,p,d.length),m=qi(y,o.digestLength,s),E=Le.util.xorBytes(i,m,i.length);return"\0"+E+y};Wc.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=e.length,y.expectedLength=s,y}if(i===void 0?i=Le.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),f=e.substring(1,i.digestLength+1),u=e.substring(1+i.digestLength),l=qi(u,i.digestLength,o),h=Le.util.xorBytes(f,l,f.length),g=qi(h,s-i.digestLength-1,o),d=Le.util.xorBytes(u,g,u.length),p=d.substring(0,i.digestLength),y=c!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==p.charAt(m);for(var E=1,x=i.digestLength,A=i.digestLength;A<d.length;A++){var w=d.charCodeAt(A),v=w&1^1,L=E?65534:0;y|=w&L,E=E&v,x+=E}if(y||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function qi(t,e,r){r||(r=Le.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var Xc=tt((kb,gs)=>{var fr=gt();kt();Vi();Mn();(function(){if(fr.prime){gs.exports=fr.prime;return}var t=gs.exports=fr.prime=fr.prime||{},e=fr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,g){typeof h=="function"&&(g=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||fr.random,y={nextBytes:function(m){for(var E=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=E.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,y,d.options,g);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,g,d){return"workers"in g?c(l,h,g,d):s(l,h,g,d)}function s(l,h,g,d){var p=f(l,h),y=0,m=u(p.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var E=10;"maxBlockTime"in g&&(E=g.maxBlockTime),a(p,l,h,y,m,E,d)}function a(l,h,g,d,p,y,m){var E=+new Date;do{if(l.bitLength()>h&&(l=f(h,g)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(y<0||+new Date-E<y);fr.util.setImmediate(function(){a(l,h,g,d,p,y,m)})}function c(l,h,g,d){if(typeof Worker>"u")return s(l,h,g,d);var p=f(l,h),y=g.workers,m=g.workLoad||100,E=m*30/8,x=g.workerScript||"forge/prime.worker.js";if(y===-1)return fr.util.estimateCores(function(w,v){w&&(v=2),y=v-1,A()});A();function A(){y=Math.max(1,y);for(var w=[],v=0;v<y;++v)w[v]=new Worker(x);for(var L=y,v=0;v<y;++v)w[v].addEventListener("message",N);var _=!1;function N(M){if(!_){--L;var K=M.data;if(K.found){for(var F=0;F<w.length;++F)w[F].terminate();return _=!0,d(null,new e(K.prime,16))}p.bitLength()>l&&(p=f(l,h));var H=p.toString(16);M.target.postMessage({hex:H,workLoad:m}),p.dAddOffset(E,0)}}}}function f(l,h){var g=new e(l,h),d=l-1;return g.testBit(d)||g.bitwiseTo(e.ONE.shiftLeft(d),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var zi=tt((Pb,nf)=>{var W=gt();On();Vi();Ti();Zc();Xc();Mn();kt();typeof ct>"u"&&(ct=W.jsbn.BigInteger);var ct,ms=W.util.isNodejs?Ni():null,B=W.asn1,fe=W.util;W.pki=W.pki||{};nf.exports=W.pki.rsa=W.rsa=W.rsa||{};var j=W.pki,Xy=[6,4,2,4,2,4,6,2],Qy={name:"PrivateKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},jy={name:"RSAPrivateKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Jy={name:"RSAPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},t1=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},e1={name:"DigestInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:B.Class.UNIVERSAL,type:B.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},r1=function(t){var e;if(t.algorithm in j.oids)e=j.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=B.oidToDer(e).getBytes(),i=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[]),o=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[]);o.value.push(B.create(B.Class.UNIVERSAL,B.Type.OID,!1,n)),o.value.push(B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,""));var s=B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),B.toDer(i).getBytes()},ef=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(ct.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(ct.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new ct(W.util.bytesToHex(W.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(ct.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};j.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=rf(t,e,r)):(i=W.util.createBuffer(),i.putBytes(t));for(var s=new ct(i.toHex(),16),a=ef(s,e,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};j.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new ct(W.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=ef(s,e,r),c=a.toString(16),f=W.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),n!==!1?Hi(f.getBytes(),e,r):f.getBytes()};j.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||W.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:t,rng:i,eInt:e||65537,e:new ct(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};j.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new ct(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,f=c-1;t.pqState===0?(t.num=new ct(c,t.rng),t.num.testBit(f)||t.num.bitwiseTo(ct.ONE.shiftLeft(f),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(i1(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Xy[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(ct.ONE).gcd(t.e).compareTo(ct.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(ct.ONE),t.q1=t.q.subtract(ct.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(ct.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var u=t.e.modInverse(t.phi);t.keys={privateKey:j.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:j.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};j.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(Qc("generateKeyPair"))return ms.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:j.privateKeyFromPem(f),publicKey:j.publicKeyFromPem(c)})});if(jc("generateKey")&&jc("exportKey"))return fe.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:tf(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return fe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=j.privateKeyFromAsn1(B.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:j.setRsaPublicKey(c.n,c.e)})}});if(Jc("generateKey")&&Jc("exportKey")){var i=fe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:tf(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=fe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=j.privateKeyFromAsn1(B.fromDer(W.util.createBuffer(l)));n(null,{privateKey:h,publicKey:j.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(Qc("generateKeyPairSync")){var o=ms.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:j.privateKeyFromPem(o.privateKey),publicKey:j.publicKeyFromPem(o.publicKey)}}}var s=j.rsa.createKeyPairGenerationState(t,e,r);if(!n)return j.rsa.stepKeyPairGenerationState(s,0),s.keys;n1(s,r,n)};j.setRsaPublicKey=j.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return rf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return j.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=Hi(f,r,!0);var u=B.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!B.validate(u,e1,l,h)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=h,g}var d=B.derToOid(l.algorithmIdentifier);if(!(d===W.oids.md2||d===W.oids.md5||d===W.oids.sha1||d===W.oids.sha224||d===W.oids.sha256||d===W.oids.sha384||d===W.oids.sha512||d===W.oids["sha512-224"]||d===W.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=d,g}if((d===W.oids.md2||d===W.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Hi(f,r,!0),c===f}});var a=j.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};j.setRsaPrivateKey=j.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var h=j.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Hi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,d){return W.pkcs1.decode_rsa_oaep(d,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(h,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:r1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return j.rsa.encrypt(h,c,l)},c};j.wrapRsaPrivateKey=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,B.integerToDer(0).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(j.oids.rsaEncryption).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,"")]),B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,B.toDer(t).getBytes())])};j.privateKeyFromAsn1=function(t){var e={},r=[];if(B.validate(t,Qy,e,r)&&(t=B.fromDer(W.util.createBuffer(e.privateKey))),e={},r=[],!B.validate(t,jy,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(e.privateKeyModulus).toHex(),o=W.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(e.privateKeyPrime1).toHex(),c=W.util.createBuffer(e.privateKeyPrime2).toHex(),f=W.util.createBuffer(e.privateKeyExponent1).toHex(),u=W.util.createBuffer(e.privateKeyExponent2).toHex(),l=W.util.createBuffer(e.privateKeyCoefficient).toHex(),j.setRsaPrivateKey(new ct(i,16),new ct(o,16),new ct(s,16),new ct(a,16),new ct(c,16),new ct(f,16),new ct(u,16),new ct(l,16))};j.privateKeyToAsn1=j.privateKeyToRSAPrivateKey=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,B.integerToDer(0).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.n)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.e)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.d)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.p)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.q)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.dP)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.dQ)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.qInv))])};j.publicKeyFromAsn1=function(t){var e={},r=[];if(B.validate(t,t1,e,r)){var n=B.derToOid(e.publicKeyOid);if(n!==j.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!B.validate(t,Jy,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(e.publicKeyModulus).toHex(),s=W.util.createBuffer(e.publicKeyExponent).toHex();return j.setRsaPublicKey(new ct(o,16),new ct(s,16))};j.publicKeyToAsn1=j.publicKeyToSubjectPublicKeyInfo=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(j.oids.rsaEncryption).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,"")]),B.create(B.Class.UNIVERSAL,B.Type.BITSTRING,!1,[j.publicKeyToRSAPublicKey(t)])])};j.publicKeyToRSAPublicKey=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.n)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.e))])};function rf(t,e,r){var n=W.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=W.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(t),n}function Hi(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=W.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function n1(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(t.q=c,t.p.compareTo(t.q)<0){var f=t.p;t.p=t.q,t.q=f}if(t.p.subtract(ct.ONE).gcd(t.e).compareTo(ct.ONE)!==0){t.p=null,i();return}if(t.q.subtract(ct.ONE).gcd(t.e).compareTo(ct.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(ct.ONE),t.q1=t.q.subtract(ct.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(ct.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var u=t.e.modInverse(t.phi);t.keys={privateKey:j.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:j.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Re(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=W.util.hexToBytes(e);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function i1(t){return t<=100?27:t<=150?18:t<=200?15:t<=250?12:t<=300?9:t<=350?8:t<=400?7:t<=500?6:t<=600?5:t<=800?4:t<=1250?3:2}function Qc(t){return W.util.isNodejs&&typeof ms[t]=="function"}function jc(t){return typeof fe.globalScope<"u"&&typeof fe.globalScope.crypto=="object"&&typeof fe.globalScope.crypto.subtle=="object"&&typeof fe.globalScope.crypto.subtle[t]=="function"}function Jc(t){return typeof fe.globalScope<"u"&&typeof fe.globalScope.msCrypto=="object"&&typeof fe.globalScope.msCrypto.subtle=="object"&&typeof fe.globalScope.msCrypto.subtle[t]=="function"}function tf(t){for(var e=W.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var uf=tt((Db,ff)=>{var z=gt();cs();On();dc();Er();Ti();xc();wc();Mn();Pc();zi();kt();typeof of>"u"&&(of=z.jsbn.BigInteger);var of,I=z.asn1,rt=z.pki=z.pki||{};ff.exports=rt.pbe=z.pbe=z.pbe||{};var Ar=rt.oids,o1={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"}]},s1={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"}]}]},a1={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"}]};rt.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=z.random.getBytesSync(r.saltSize),i=r.count,o=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=Ar["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Ar["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Ar["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Ar.desCBC,l=z.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),d=cf(g),p=z.pkcs5.pbkdf2(e,n,i,s,d),y=z.random.getBytesSync(f),m=l(p);m.start(y),m.update(I.toDer(t)),m.finish(),c=m.output.getBytes();var E=c1(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(Ar.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(Ar.pkcs5PBKDF2).getBytes()),E]),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 z.util.ByteBuffer(n),p=rt.pbe.generatePkcs12Key(e,x,1,i,s),y=rt.pbe.generatePkcs12Key(e,x,2,i,s),m=z.des.createEncryptionCipher(p);m.start(y),m.update(I.toDer(t)),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(Ar["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 h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var A=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return A};rt.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!I.validate(t,o1,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=rt.pbe.getCipher(s,n.encryptionParams,e),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};rt.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(t).getBytes()};return z.pem.encode(r,{maxline:e})};rt.encryptedPrivateKeyFromPem=function(t){var e=z.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return I.fromDer(e.body)};rt.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=rt.wrapRsaPrivateKey(rt.privateKeyToAsn1(t));return n=rt.encryptPrivateKeyInfo(n,e,r),rt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=z.pbe.opensslDeriveBytes(e,o.substr(0,8),s),u=a(f);u.start(o),u.update(I.toDer(rt.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:z.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return z.pem.encode(l)};rt.decryptRsaPrivateKey=function(t,e){var r=null,n=z.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(e,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(z.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=rt.decryptPrivateKeyInfo(I.fromDer(r),e):r=I.fromDer(r),r!==null&&(r=rt.privateKeyFromAsn1(r)),r};rt.pbe.generatePkcs12Key=function(t,e,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),g=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new z.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(e.at(a%g));var m=f*Math.ceil(h/f),E=new z.util.ByteBuffer;for(a=0;a<m;a++)E.putByte(l.at(a%h));var x=y;x.putBuffer(E);for(var A=Math.ceil(i/c),w=1;w<=A;w++){var v=new z.util.ByteBuffer;v.putBytes(d.bytes()),v.putBytes(x.bytes());for(var L=0;L<n;L++)o.start(),o.update(v.getBytes()),v=o.digest();var _=new z.util.ByteBuffer;for(a=0;a<f;a++)_.putByte(v.at(a%c));var N=Math.ceil(g/f)+Math.ceil(h/f),M=new z.util.ByteBuffer;for(s=0;s<N;s++){var K=new z.util.ByteBuffer(x.getBytes(f)),F=511;for(a=_.length()-1;a>=0;a--)F=F>>8,F+=_.at(a)+K.at(a),K.setAt(a,F&255);M.putBuffer(K)}x=M,u.putBuffer(v)}return u.truncate(u.length()-i),u};rt.pbe.getCipher=function(t,e,r){switch(t){case rt.oids.pkcs5PBES2:return rt.pbe.getCipherForPBES2(t,e,r);case rt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case rt.oids["pbewithSHAAnd40BitRC2-CBC"]:return rt.pbe.getCipherForPKCS12PBE(t,e,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=t,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};rt.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!I.validate(e,s1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=I.derToOid(n.kdfOid),t!==rt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}if(t=I.derToOid(n.encOid),t!==rt.oids["aes128-CBC"]&&t!==rt.oids["aes192-CBC"]&&t!==rt.oids["aes256-CBC"]&&t!==rt.oids["des-EDE3-CBC"]&&t!==rt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(rt.oids[t]){case"aes128-CBC":c=16,f=z.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=z.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=z.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=z.des.createDecryptionCipher;break;case"desCBC":c=8,f=z.des.createDecryptionCipher;break}var u=af(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,g=f(l);return g.start(h),g};rt.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!I.validate(e,a1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=z.util.createBuffer(n.salt),a=z.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case rt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=z.des.startDecrypting;break;case rt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var m=z.rc2.createDecryptionCipher(p,40);return m.start(y,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=af(n.prfOid),h=rt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=rt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,g)};rt.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[sf(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(sf(n,i[s-1]+t+e));return i.join("").substr(0,r)};function sf(t,e){return t.start().update(e).digest().getBytes()}function af(t){var e;if(!t)e="hmacWithSHA1";else if(e=rt.oids[I.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return cf(e)}function cf(t){var e=z.md;switch(t){case"hmacWithSHA224":e=z.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function c1(t,e,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,t),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,z.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(rt.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var Kf=tt((_v,Uf)=>{"use strict";Uf.exports=yg;function yg(t,e){for(var r=new Array(arguments.length-1),n=0,i=2,o=!0;i<arguments.length;)r[n++]=arguments[i++];return new Promise(function(a,c){r[n]=function(u){if(o)if(o=!1,u)c(u);else{for(var l=new Array(arguments.length-1),h=0;h<l.length;)l[h++]=arguments[h];a.apply(null,l)}};try{t.apply(e||null,r)}catch(f){o&&(o=!1,c(f))}})}});var Vf=tt(Ff=>{"use strict";var Yi=Ff;Yi.length=function(e){var r=e.length;if(!r)return 0;for(var n=0;--r%4>1&&e.charAt(r)==="=";)++n;return Math.ceil(e.length*3)/4-n};var cn=new Array(64),Mf=new Array(123);for(Ee=0;Ee<64;)Mf[cn[Ee]=Ee<26?Ee+65:Ee<52?Ee+71:Ee<62?Ee-4:Ee-59|43]=Ee++;var Ee;Yi.encode=function(e,r,n){for(var i=null,o=[],s=0,a=0,c;r<n;){var f=e[r++];switch(a){case 0:o[s++]=cn[f>>2],c=(f&3)<<4,a=1;break;case 1:o[s++]=cn[c|f>>4],c=(f&15)<<2,a=2;break;case 2:o[s++]=cn[c|f>>6],o[s++]=cn[f&63],a=0;break}s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),s=0)}return a&&(o[s++]=cn[c],o[s++]=61,a===1&&(o[s++]=61)),i?(s&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))};var Of="invalid encoding";Yi.decode=function(e,r,n){for(var i=n,o=0,s,a=0;a<e.length;){var c=e.charCodeAt(a++);if(c===61&&o>1)break;if((c=Mf[c])===void 0)throw Error(Of);switch(o){case 0:s=c,o=1;break;case 1:r[n++]=s<<2|(c&48)>>4,s=c,o=2;break;case 2:r[n++]=(s&15)<<4|(c&60)>>2,s=c,o=3;break;case 3:r[n++]=(s&3)<<6|c,o=0;break}}if(o===1)throw Error(Of);return n-i};Yi.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}});var Hf=tt((Rv,qf)=>{"use strict";qf.exports=Zi;function Zi(){this._listeners={}}Zi.prototype.on=function(e,r,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:r,ctx:n||this}),this};Zi.prototype.off=function(e,r){if(e===void 0)this._listeners={};else if(r===void 0)this._listeners[e]=[];else for(var n=this._listeners[e],i=0;i<n.length;)n[i].fn===r?n.splice(i,1):++i;return this};Zi.prototype.emit=function(e){var r=this._listeners[e];if(r){for(var n=[],i=1;i<arguments.length;)n.push(arguments[i++]);for(i=0;i<r.length;)r[i].fn.apply(r[i++].ctx,n)}return this}});var Xf=tt((kv,Zf)=>{"use strict";Zf.exports=zf(zf);function zf(t){return typeof Float32Array<"u"?function(){var e=new Float32Array([-0]),r=new Uint8Array(e.buffer),n=r[3]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3]}function o(c,f,u){e[0]=c,f[u]=r[3],f[u+1]=r[2],f[u+2]=r[1],f[u+3]=r[0]}t.writeFloatLE=n?i:o,t.writeFloatBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],e[0]}function a(c,f){return r[3]=c[f],r[2]=c[f+1],r[1]=c[f+2],r[0]=c[f+3],e[0]}t.readFloatLE=n?s:a,t.readFloatBE=n?a:s}():function(){function e(n,i,o,s){var a=i<0?1:0;if(a&&(i=-i),i===0)n(1/i>0?0:2147483648,o,s);else if(isNaN(i))n(2143289344,o,s);else if(i>34028234663852886e22)n((a<<31|2139095040)>>>0,o,s);else if(i<11754943508222875e-54)n((a<<31|Math.round(i/1401298464324817e-60))>>>0,o,s);else{var c=Math.floor(Math.log(i)/Math.LN2),f=Math.round(i*Math.pow(2,-c)*8388608)&8388607;n((a<<31|c+127<<23|f)>>>0,o,s)}}t.writeFloatLE=e.bind(null,Gf),t.writeFloatBE=e.bind(null,$f);function r(n,i,o){var s=n(i,o),a=(s>>31)*2+1,c=s>>>23&255,f=s&8388607;return c===255?f?NaN:a*(1/0):c===0?a*1401298464324817e-60*f:a*Math.pow(2,c-150)*(f+8388608)}t.readFloatLE=r.bind(null,Wf),t.readFloatBE=r.bind(null,Yf)}(),typeof Float64Array<"u"?function(){var e=new Float64Array([-0]),r=new Uint8Array(e.buffer),n=r[7]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3],f[u+4]=r[4],f[u+5]=r[5],f[u+6]=r[6],f[u+7]=r[7]}function o(c,f,u){e[0]=c,f[u]=r[7],f[u+1]=r[6],f[u+2]=r[5],f[u+3]=r[4],f[u+4]=r[3],f[u+5]=r[2],f[u+6]=r[1],f[u+7]=r[0]}t.writeDoubleLE=n?i:o,t.writeDoubleBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],r[4]=c[f+4],r[5]=c[f+5],r[6]=c[f+6],r[7]=c[f+7],e[0]}function a(c,f){return r[7]=c[f],r[6]=c[f+1],r[5]=c[f+2],r[4]=c[f+3],r[3]=c[f+4],r[2]=c[f+5],r[1]=c[f+6],r[0]=c[f+7],e[0]}t.readDoubleLE=n?s:a,t.readDoubleBE=n?a:s}():function(){function e(n,i,o,s,a,c){var f=s<0?1:0;if(f&&(s=-s),s===0)n(0,a,c+i),n(1/s>0?0:2147483648,a,c+o);else if(isNaN(s))n(0,a,c+i),n(2146959360,a,c+o);else if(s>17976931348623157e292)n(0,a,c+i),n((f<<31|2146435072)>>>0,a,c+o);else{var u;if(s<22250738585072014e-324)u=s/5e-324,n(u>>>0,a,c+i),n((f<<31|u/4294967296)>>>0,a,c+o);else{var l=Math.floor(Math.log(s)/Math.LN2);l===1024&&(l=1023),u=s*Math.pow(2,-l),n(u*4503599627370496>>>0,a,c+i),n((f<<31|l+1023<<20|u*1048576&1048575)>>>0,a,c+o)}}}t.writeDoubleLE=e.bind(null,Gf,0,4),t.writeDoubleBE=e.bind(null,$f,4,0);function r(n,i,o,s,a){var c=n(s,a+i),f=n(s,a+o),u=(f>>31)*2+1,l=f>>>20&2047,h=4294967296*(f&1048575)+c;return l===2047?h?NaN:u*(1/0):l===0?u*5e-324*h:u*Math.pow(2,l-1075)*(h+4503599627370496)}t.readDoubleLE=r.bind(null,Wf,0,4),t.readDoubleBE=r.bind(null,Yf,4,0)}(),t}function Gf(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}function $f(t,e,r){e[r]=t>>>24,e[r+1]=t>>>16&255,e[r+2]=t>>>8&255,e[r+3]=t&255}function Wf(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16|t[e+3]<<24)>>>0}function Yf(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}});var Qf=tt((exports,module)=>{"use strict";module.exports=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(t){}return null}});var Jf=tt(jf=>{"use strict";var qs=jf;qs.length=function(e){for(var r=0,n=0,i=0;i<e.length;++i)n=e.charCodeAt(i),n<128?r+=1:n<2048?r+=2:(n&64512)===55296&&(e.charCodeAt(i+1)&64512)===56320?(++i,r+=4):r+=3;return r};qs.read=function(e,r,n){var i=n-r;if(i<1)return"";for(var o=null,s=[],a=0,c;r<n;)c=e[r++],c<128?s[a++]=c:c>191&&c<224?s[a++]=(c&31)<<6|e[r++]&63:c>239&&c<365?(c=((c&7)<<18|(e[r++]&63)<<12|(e[r++]&63)<<6|e[r++]&63)-65536,s[a++]=55296+(c>>10),s[a++]=56320+(c&1023)):s[a++]=(c&15)<<12|(e[r++]&63)<<6|e[r++]&63,a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,s)),a=0);return o?(a&&o.push(String.fromCharCode.apply(String,s.slice(0,a))),o.join("")):String.fromCharCode.apply(String,s.slice(0,a))};qs.write=function(e,r,n){for(var i=n,o,s,a=0;a<e.length;++a)o=e.charCodeAt(a),o<128?r[n++]=o:o<2048?(r[n++]=o>>6|192,r[n++]=o&63|128):(o&64512)===55296&&((s=e.charCodeAt(a+1))&64512)===56320?(o=65536+((o&1023)<<10)+(s&1023),++a,r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=o&63|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=o&63|128);return n-i}});var eu=tt((Dv,tu)=>{"use strict";tu.exports=gg;function gg(t,e,r){var n=r||8192,i=n>>>1,o=null,s=n;return function(c){if(c<1||c>i)return t(c);s+c>n&&(o=t(n),s=0);var f=e.call(o,s,s+=c);return s&7&&(s=(s|7)+1),f}}});var nu=tt((Nv,ru)=>{"use strict";ru.exports=Mt;var zn=Tr();function Mt(t,e){this.lo=t>>>0,this.hi=e>>>0}var Ir=Mt.zero=new Mt(0,0);Ir.toNumber=function(){return 0};Ir.zzEncode=Ir.zzDecode=function(){return this};Ir.length=function(){return 1};var mg=Mt.zeroHash="\0\0\0\0\0\0\0\0";Mt.fromNumber=function(e){if(e===0)return Ir;var r=e<0;r&&(e=-e);var n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new Mt(n,i)};Mt.from=function(e){if(typeof e=="number")return Mt.fromNumber(e);if(zn.isString(e))if(zn.Long)e=zn.Long.fromString(e);else return Mt.fromNumber(parseInt(e,10));return e.low||e.high?new Mt(e.low>>>0,e.high>>>0):Ir};Mt.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var r=~this.lo+1>>>0,n=~this.hi>>>0;return r||(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296};Mt.prototype.toLong=function(e){return zn.Long?new zn.Long(this.lo|0,this.hi|0,!!e):{low:this.lo|0,high:this.hi|0,unsigned:!!e}};var dr=String.prototype.charCodeAt;Mt.fromHash=function(e){return e===mg?Ir:new Mt((dr.call(e,0)|dr.call(e,1)<<8|dr.call(e,2)<<16|dr.call(e,3)<<24)>>>0,(dr.call(e,4)|dr.call(e,5)<<8|dr.call(e,6)<<16|dr.call(e,7)<<24)>>>0)};Mt.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)};Mt.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this};Mt.prototype.zzDecode=function(){var e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this};Mt.prototype.length=function(){var e=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?e<16384?e<128?1:2:e<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}});var Tr=tt(Hs=>{"use strict";var $=Hs;$.asPromise=Kf();$.base64=Vf();$.EventEmitter=Hf();$.float=Xf();$.inquire=Qf();$.utf8=Jf();$.pool=eu();$.LongBits=nu();$.isNode=!!(typeof globalThis<"u"&&globalThis&&globalThis.process&&globalThis.process.versions&&globalThis.process.versions.node);$.global=$.isNode&&globalThis||typeof window<"u"&&window||typeof self<"u"&&self||Hs;$.emptyArray=Object.freeze?Object.freeze([]):[];$.emptyObject=Object.freeze?Object.freeze({}):{};$.isInteger=Number.isInteger||function(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e};$.isString=function(e){return typeof e=="string"||e instanceof String};$.isObject=function(e){return e&&typeof e=="object"};$.isset=$.isSet=function(e,r){var n=e[r];return n!=null&&e.hasOwnProperty(r)?typeof n!="object"||(Array.isArray(n)?n.length:Object.keys(n).length)>0:!1};$.Buffer=function(){try{var t=$.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch{return null}}();$._Buffer_from=null;$._Buffer_allocUnsafe=null;$.newBuffer=function(e){return typeof e=="number"?$.Buffer?$._Buffer_allocUnsafe(e):new $.Array(e):$.Buffer?$._Buffer_from(e):typeof Uint8Array>"u"?e:new Uint8Array(e)};$.Array=typeof Uint8Array<"u"?Uint8Array:Array;$.Long=$.global.dcodeIO&&$.global.dcodeIO.Long||$.global.Long||$.inquire("long");$.key2Re=/^true|false|0|1$/;$.key32Re=/^-?(?:0|[1-9][0-9]*)$/;$.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;$.longToHash=function(e){return e?$.LongBits.from(e).toHash():$.LongBits.zeroHash};$.longFromHash=function(e,r){var n=$.LongBits.fromHash(e);return $.Long?$.Long.fromBits(n.lo,n.hi,r):n.toNumber(!!r)};function iu(t,e,r){for(var n=Object.keys(e),i=0;i<n.length;++i)(t[n[i]]===void 0||!r)&&(t[n[i]]=e[n[i]]);return t}$.merge=iu;$.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)};function ou(t){function e(r,n){if(!(this instanceof e))return new e(r,n);Object.defineProperty(this,"message",{get:function(){return r}}),Error.captureStackTrace?Error.captureStackTrace(this,e):Object.defineProperty(this,"stack",{value:new Error().stack||""}),n&&iu(this,n)}return e.prototype=Object.create(Error.prototype,{constructor:{value:e,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return t},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),e}$.newError=ou;$.ProtocolError=ou("ProtocolError");$.oneOfGetter=function(e){for(var r={},n=0;n<e.length;++n)r[e[n]]=1;return function(){for(var i=Object.keys(this),o=i.length-1;o>-1;--o)if(r[i[o]]===1&&this[i[o]]!==void 0&&this[i[o]]!==null)return i[o]}};$.oneOfSetter=function(e){return function(r){for(var n=0;n<e.length;++n)e[n]!==r&&delete this[e[n]]}};$.toJSONOptions={longs:String,enums:String,bytes:String,json:!0};$._configure=function(){var t=$.Buffer;if(!t){$._Buffer_from=$._Buffer_allocUnsafe=null;return}$._Buffer_from=t.from!==Uint8Array.from&&t.from||function(r,n){return new t(r,n)},$._Buffer_allocUnsafe=t.allocUnsafe||function(r){return new t(r)}}});var $s=tt((Kv,uu)=>{"use strict";uu.exports=Lt;var Se=Tr(),Gs,cu=Se.LongBits,xg=Se.utf8;function Be(t,e){return RangeError("index out of range: "+t.pos+" + "+(e||1)+" > "+t.len)}function Lt(t){this.buf=t,this.pos=0,this.len=t.length}var su=typeof Uint8Array<"u"?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new Lt(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new Lt(e);throw Error("illegal buffer")},fu=function(){return Se.Buffer?function(r){return(Lt.create=function(i){return Se.Buffer.isBuffer(i)?new Gs(i):su(i)})(r)}:su};Lt.create=fu();Lt.prototype._slice=Se.Array.prototype.subarray||Se.Array.prototype.slice;Lt.prototype.uint32=function(){var e=4294967295;return function(){if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,Be(this,10);return e}}();Lt.prototype.int32=function(){return this.uint32()|0};Lt.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(e&1)|0};function zs(){var t=new cu(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Be(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Be(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}Lt.prototype.bool=function(){return this.uint32()!==0};function Xi(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}Lt.prototype.fixed32=function(){if(this.pos+4>this.len)throw Be(this,4);return Xi(this.buf,this.pos+=4)};Lt.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Be(this,4);return Xi(this.buf,this.pos+=4)|0};function au(){if(this.pos+8>this.len)throw Be(this,8);return new cu(Xi(this.buf,this.pos+=4),Xi(this.buf,this.pos+=4))}Lt.prototype.float=function(){if(this.pos+4>this.len)throw Be(this,4);var e=Se.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e};Lt.prototype.double=function(){if(this.pos+8>this.len)throw Be(this,4);var e=Se.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e};Lt.prototype.bytes=function(){var e=this.uint32(),r=this.pos,n=this.pos+e;if(n>this.len)throw Be(this,e);if(this.pos+=e,Array.isArray(this.buf))return this.buf.slice(r,n);if(r===n){var i=Se.Buffer;return i?i.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,r,n)};Lt.prototype.string=function(){var e=this.bytes();return xg.read(e,0,e.length)};Lt.prototype.skip=function(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Be(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Be(this);while(this.buf[this.pos++]&128);return this};Lt.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this};Lt._configure=function(t){Gs=t,Lt.create=fu(),Gs._configure();var e=Se.Long?"toLong":"toNumber";Se.merge(Lt.prototype,{int64:function(){return zs.call(this)[e](!1)},uint64:function(){return zs.call(this)[e](!0)},sint64:function(){return zs.call(this).zzDecode()[e](!1)},fixed64:function(){return au.call(this)[e](!0)},sfixed64:function(){return au.call(this)[e](!1)}})}});var pu=tt((Ov,du)=>{"use strict";du.exports=_r;var hu=$s();(_r.prototype=Object.create(hu.prototype)).constructor=_r;var lu=Tr();function _r(t){hu.call(this,t)}_r._configure=function(){lu.Buffer&&(_r.prototype._slice=lu.Buffer.prototype.slice)};_r.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))};_r._configure()});var Js=tt((Mv,xu)=>{"use strict";xu.exports=ut;var ue=Tr(),Ws,Qi=ue.LongBits,yu=ue.base64,gu=ue.utf8;function Gn(t,e,r){this.fn=t,this.len=e,this.next=void 0,this.val=r}function Zs(){}function bg(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function ut(){this.len=0,this.head=new Gn(Zs,0,0),this.tail=this.head,this.states=null}var mu=function(){return ue.Buffer?function(){return(ut.create=function(){return new Ws})()}:function(){return new ut}};ut.create=mu();ut.alloc=function(e){return new ue.Array(e)};ue.Array!==Array&&(ut.alloc=ue.pool(ut.alloc,ue.Array.prototype.subarray));ut.prototype._push=function(e,r,n){return this.tail=this.tail.next=new Gn(e,r,n),this.len+=r,this};function Xs(t,e,r){e[r]=t&255}function vg(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}function Qs(t,e){this.len=t,this.next=void 0,this.val=e}Qs.prototype=Object.create(Gn.prototype);Qs.prototype.fn=vg;ut.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new Qs((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this};ut.prototype.int32=function(e){return e<0?this._push(js,10,Qi.fromNumber(e)):this.uint32(e)};ut.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)};function js(t,e,r){for(;t.hi;)e[r++]=t.lo&127|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[r++]=t.lo&127|128,t.lo=t.lo>>>7;e[r++]=t.lo}ut.prototype.uint64=function(e){var r=Qi.from(e);return this._push(js,r.length(),r)};ut.prototype.int64=ut.prototype.uint64;ut.prototype.sint64=function(e){var r=Qi.from(e).zzEncode();return this._push(js,r.length(),r)};ut.prototype.bool=function(e){return this._push(Xs,1,e?1:0)};function Ys(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}ut.prototype.fixed32=function(e){return this._push(Ys,4,e>>>0)};ut.prototype.sfixed32=ut.prototype.fixed32;ut.prototype.fixed64=function(e){var r=Qi.from(e);return this._push(Ys,4,r.lo)._push(Ys,4,r.hi)};ut.prototype.sfixed64=ut.prototype.fixed64;ut.prototype.float=function(e){return this._push(ue.float.writeFloatLE,4,e)};ut.prototype.double=function(e){return this._push(ue.float.writeDoubleLE,8,e)};var wg=ue.Array.prototype.set?function(e,r,n){r.set(e,n)}:function(e,r,n){for(var i=0;i<e.length;++i)r[n+i]=e[i]};ut.prototype.bytes=function(e){var r=e.length>>>0;if(!r)return this._push(Xs,1,0);if(ue.isString(e)){var n=ut.alloc(r=yu.length(e));yu.decode(e,n,0),e=n}return this.uint32(r)._push(wg,r,e)};ut.prototype.string=function(e){var r=gu.length(e);return r?this.uint32(r)._push(gu.write,r,e):this._push(Xs,1,0)};ut.prototype.fork=function(){return this.states=new bg(this),this.head=this.tail=new Gn(Zs,0,0),this.len=0,this};ut.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Gn(Zs,0,0),this.len=0),this};ut.prototype.ldelim=function(){var e=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=r,this.len+=n),this};ut.prototype.finish=function(){for(var e=this.head.next,r=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r};ut._configure=function(t){Ws=t,ut.create=mu(),Ws._configure()}});var wu=tt((Fv,vu)=>{"use strict";vu.exports=De;var bu=Js();(De.prototype=Object.create(bu.prototype)).constructor=De;var pr=Tr();function De(){bu.call(this)}De._configure=function(){De.alloc=pr._Buffer_allocUnsafe,De.writeBytesBuffer=pr.Buffer&&pr.Buffer.prototype instanceof Uint8Array&&pr.Buffer.prototype.set.name==="set"?function(e,r,n){r.set(e,n)}:function(e,r,n){if(e.copy)e.copy(r,n,0,e.length);else for(var i=0;i<e.length;)r[n++]=e[i++]}};De.prototype.bytes=function(e){pr.isString(e)&&(e=pr._Buffer_from(e,"base64"));var r=e.length>>>0;return this.uint32(r),r&&this._push(De.writeBytesBuffer,r,e),this};function Eg(t,e,r){t.length<40?pr.utf8.write(t,e,r):e.utf8Write?e.utf8Write(t,r):e.write(t,r)}De.prototype.string=function(e){var r=pr.Buffer.byteLength(e);return this.uint32(r),r&&this._push(Eg,r,e),this};De._configure()});var Pu=tt((Fw,ku)=>{var Et=gt();Er();kt();var Wn=ku.exports=Et.sha512=Et.sha512||{};Et.md.sha512=Et.md.algorithms.sha512=Wn;var Lu=Et.sha384=Et.sha512.sha384=Et.sha512.sha384||{};Lu.create=function(){return Wn.create("SHA-384")};Et.md.sha384=Et.md.algorithms.sha384=Lu;Et.sha512.sha256=Et.sha512.sha256||{create:function(){return Wn.create("SHA-512/256")}};Et.md["sha512/256"]=Et.md.algorithms["sha512/256"]=Et.sha512.sha256;Et.sha512.sha224=Et.sha512.sha224||{create:function(){return Wn.create("SHA-512/224")}};Et.md["sha512/224"]=Et.md.algorithms["sha512/224"]=Et.sha512.sha224;Wn.create=function(t){if(Ru||kg(),typeof t>"u"&&(t="SHA-512"),!(t in Dr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Dr[t],r=null,n=Et.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=Et.util.createBuffer(),r=new Array(e.length);for(var f=0;f<e.length;++f)r[f]=e[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=Et.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),_u(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Et.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(aa.substr(0,a.blockLength-u));for(var l,h,g=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,g+=h,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);_u(p,i,c);var y=Et.util.createBuffer(),m;t==="SHA-512"?m=p.length:t==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)y.putInt32(p[d][0]),(d!==m-1||t!=="SHA-512/224")&&y.putInt32(p[d][1]);return y},a};var aa=null,Ru=!1,ca=null,Dr=null;function kg(){aa=String.fromCharCode(128),aa+=Et.util.fillString(String.fromCharCode(0),128),ca=[[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]],Dr={},Dr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Dr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Dr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Dr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Ru=!0}function _u(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,E,x,A,w,v,L,_,N,M,K,F,H,X,C,k,T,R,S,U,O,q=r.length();q>=128;){for(C=0;C<16;++C)e[C][0]=r.getInt32()>>>0,e[C][1]=r.getInt32()>>>0;for(;C<80;++C)R=e[C-2],k=R[0],T=R[1],n=((k>>>19|T<<13)^(T>>>29|k<<3)^k>>>6)>>>0,i=((k<<13|T>>>19)^(T<<3|k>>>29)^(k<<26|T>>>6))>>>0,U=e[C-15],k=U[0],T=U[1],o=((k>>>1|T<<31)^(k>>>8|T<<24)^k>>>7)>>>0,s=((k<<31|T>>>1)^(k<<24|T>>>8)^(k<<25|T>>>7))>>>0,S=e[C-7],O=e[C-16],T=i+S[1]+s+O[1],e[C][0]=n+S[0]+o+O[0]+(T/4294967296>>>0)>>>0,e[C][1]=T>>>0;for(p=t[0][0],y=t[0][1],m=t[1][0],E=t[1][1],x=t[2][0],A=t[2][1],w=t[3][0],v=t[3][1],L=t[4][0],_=t[4][1],N=t[5][0],M=t[5][1],K=t[6][0],F=t[6][1],H=t[7][0],X=t[7][1],C=0;C<80;++C)f=((L>>>14|_<<18)^(L>>>18|_<<14)^(_>>>9|L<<23))>>>0,u=((L<<18|_>>>14)^(L<<14|_>>>18)^(_<<23|L>>>9))>>>0,l=(K^L&(N^K))>>>0,h=(F^_&(M^F))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&m|x&(p^m))>>>0,d=(y&E|A&(y^E))>>>0,T=X+u+h+ca[C][1]+e[C][1],n=H+f+l+ca[C][0]+e[C][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+d,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,H=K,X=F,K=N,F=M,N=L,M=_,T=v+i,L=w+n+(T/4294967296>>>0)>>>0,_=T>>>0,w=x,v=A,x=m,A=E,m=p,E=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=t[0][1]+y,t[0][0]=t[0][0]+p+(T/4294967296>>>0)>>>0,t[0][1]=T>>>0,T=t[1][1]+E,t[1][0]=t[1][0]+m+(T/4294967296>>>0)>>>0,t[1][1]=T>>>0,T=t[2][1]+A,t[2][0]=t[2][0]+x+(T/4294967296>>>0)>>>0,t[2][1]=T>>>0,T=t[3][1]+v,t[3][0]=t[3][0]+w+(T/4294967296>>>0)>>>0,t[3][1]=T>>>0,T=t[4][1]+_,t[4][0]=t[4][0]+L+(T/4294967296>>>0)>>>0,t[4][1]=T>>>0,T=t[5][1]+M,t[5][0]=t[5][0]+N+(T/4294967296>>>0)>>>0,t[5][1]=T>>>0,T=t[6][1]+F,t[6][0]=t[6][0]+K+(T/4294967296>>>0)>>>0,t[6][1]=T>>>0,T=t[7][1]+X,t[7][0]=t[7][0]+H+(T/4294967296>>>0)>>>0,t[7][1]=T>>>0,q-=128}}});var ll=tt((S4,ul)=>{var yn=1e3,gn=yn*60,mn=gn*60,Or=mn*24,a2=Or*7,c2=Or*365.25;ul.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return f2(t);if(r==="number"&&isFinite(t))return e.long?l2(t):u2(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function f2(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*c2;case"weeks":case"week":case"w":return r*a2;case"days":case"day":case"d":return r*Or;case"hours":case"hour":case"hrs":case"hr":case"h":return r*mn;case"minutes":case"minute":case"mins":case"min":case"m":return r*gn;case"seconds":case"second":case"secs":case"sec":case"s":return r*yn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function u2(t){var e=Math.abs(t);return e>=Or?Math.round(t/Or)+"d":e>=mn?Math.round(t/mn)+"h":e>=gn?Math.round(t/gn)+"m":e>=yn?Math.round(t/yn)+"s":t+"ms"}function l2(t){var e=Math.abs(t);return e>=Or?no(t,e,Or,"day"):e>=mn?no(t,e,mn,"hour"):e>=gn?no(t,e,gn,"minute"):e>=yn?no(t,e,yn,"second"):t+" ms"}function no(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var dl=tt((B4,hl)=>{function h2(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=ll(),r.destroy=f,Object.keys(t).forEach(u=>{r[u]=t[u]}),r.names=[],r.skips=[],r.formatters={};function e(u){let l=0;for(let h=0;h<u.length;h++)l=(l<<5)-l+u.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=e;function r(u){let l,h=null,g,d;function p(...y){if(!p.enabled)return;let m=p,E=Number(new Date),x=E-(l||E);m.diff=x,m.prev=l,m.curr=E,l=E,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,(v,L)=>{if(v==="%%")return"%";A++;let _=r.formatters[L];if(typeof _=="function"){let N=y[A];v=_.call(m,N),y.splice(A,1),A--}return v}),r.formatArgs.call(m,y),(m.log||r.log).apply(m,y)}return p.namespace=u,p.useColors=r.useColors(),p.color=r.selectColor(u),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(g!==r.namespaces&&(g=r.namespaces,d=r.enabled(u)),d),set:y=>{h=y}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let h=r(this.namespace+(typeof l>"u"?":":l)+u);return h.log=this.log,h}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,h=(typeof u=="string"?u:"").split(/[\s,]+/),g=h.length;for(l=0;l<g;l++)h[l]&&(u=h[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.slice(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function o(){let u=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,h;for(l=0,h=r.skips.length;l<h;l++)if(r.skips[l].test(u))return!1;for(l=0,h=r.names.length;l<h;l++)if(r.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(u){return u instanceof Error?u.stack||u.message:u}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}hl.exports=h2});var pl=tt((re,io)=>{re.formatArgs=p2;re.save=y2;re.load=g2;re.useColors=d2;re.storage=m2();re.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();re.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 d2(){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 p2(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+io.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}re.log=console.debug||console.log||(()=>{});function y2(t){try{t?re.storage.setItem("debug",t):re.storage.removeItem("debug")}catch{}}function g2(){let t;try{t=re.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function m2(){try{return localStorage}catch{}}io.exports=dl()(re);var{formatters:x2}=io.exports;x2.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var $2={};Dt($2,{webTransport:()=>G2});function je(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Oe(t=0){return globalThis.Buffer?.alloc!=null?je(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function oe(t=0){return globalThis.Buffer?.allocUnsafe!=null?je(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var eh=Math.pow(2,7),rh=Math.pow(2,14),nh=Math.pow(2,21),go=Math.pow(2,28),mo=Math.pow(2,35),xo=Math.pow(2,42),bo=Math.pow(2,49),ht=128,$t=127;function Xt(t){if(t<eh)return 1;if(t<rh)return 2;if(t<nh)return 3;if(t<go)return 4;if(t<mo)return 5;if(t<xo)return 6;if(t<bo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ih(t,e,r=0){switch(Xt(t)){case 8:e[r++]=t&255|ht,t/=128;case 7:e[r++]=t&255|ht,t/=128;case 6:e[r++]=t&255|ht,t/=128;case 5:e[r++]=t&255|ht,t/=128;case 4:e[r++]=t&255|ht,t>>>=7;case 3:e[r++]=t&255|ht,t>>>=7;case 2:e[r++]=t&255|ht,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function oh(t,e,r=0){switch(Xt(t)){case 8:e.set(r++,t&255|ht),t/=128;case 7:e.set(r++,t&255|ht),t/=128;case 6:e.set(r++,t&255|ht),t/=128;case 5:e.set(r++,t&255|ht),t/=128;case 4:e.set(r++,t&255|ht),t>>>=7;case 3:e.set(r++,t&255|ht),t>>>=7;case 2:e.set(r++,t&255|ht),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function sh(t,e){let r=t[e],n=0;if(n+=r&$t,r<ht||(r=t[e+1],n+=(r&$t)<<7,r<ht)||(r=t[e+2],n+=(r&$t)<<14,r<ht)||(r=t[e+3],n+=(r&$t)<<21,r<ht)||(r=t[e+4],n+=(r&$t)*go,r<ht)||(r=t[e+5],n+=(r&$t)*mo,r<ht)||(r=t[e+6],n+=(r&$t)*xo,r<ht)||(r=t[e+7],n+=(r&$t)*bo,r<ht))return n;throw new RangeError("Could not decode varint")}function ah(t,e){let r=t.get(e),n=0;if(n+=r&$t,r<ht||(r=t.get(e+1),n+=(r&$t)<<7,r<ht)||(r=t.get(e+2),n+=(r&$t)<<14,r<ht)||(r=t.get(e+3),n+=(r&$t)<<21,r<ht)||(r=t.get(e+4),n+=(r&$t)*go,r<ht)||(r=t.get(e+5),n+=(r&$t)*mo,r<ht)||(r=t.get(e+6),n+=(r&$t)*xo,r<ht)||(r=t.get(e+7),n+=(r&$t)*bo,r<ht))return n;throw new RangeError("Could not decode varint")}function Je(t,e,r=0){return e==null&&(e=oe(Xt(t))),e instanceof Uint8Array?ih(t,e,r):oh(t,e,r)}function de(t,e=0){return t instanceof Uint8Array?sh(t,e):ah(t,e)}function yt(t,e){e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=oe(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return je(r)}function Ct(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var Za=Symbol.for("@achingbrain/uint8arraylist");function Ya(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function ni(t){return!!t?.[Za]}var Jt=class t{constructor(...e){Object.defineProperty(this,Za,{value:!0}),this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ni(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(ni(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=Ya(this.bufs,e);return r.buf[r.index]}set(e,r){let n=Ya(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(ni(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return yt(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:yt(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=n,o}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let f=e>=a&&e<c,u=r>a&&r<=c;if(f&&u){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(f){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!ni(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let h=f;h>=0;h--){let g=this.get(l+h);if(n[h]!==g){u=Math.max(1,h-a[g]);break}}if(u===0)return l}return-1}getInt8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(e,r){let n=oe(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=Oe(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=Oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=Oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=oe(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=Oe(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=Oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=Oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=Oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=Oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Ct(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function ii(t){return t[Symbol.asyncIterator]!=null}var oi=t=>{let e=Xt(t),r=oe(e);return Je(t,r),oi.bytes=e,r};oi.bytes=0;function si(t,e){e=e??{};let r=e.lengthEncoder??oi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ii(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}si.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??oi;return new Jt(r(t.byteLength),t)};var Mr=Rt(ja(),1);var fh=8,uh=1024*1024*4,gr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(gr||(gr={}));var vo=t=>{let e=de(t);return vo.bytes=Xt(e),e};vo.bytes=0;function Sn(t,e){let r=new Jt,n=gr.LENGTH,i=-1,o=e?.lengthDecoder??vo,s=e?.maxLengthLength??fh,a=e?.maxDataLength??uh;function*c(){for(;r.byteLength>0;){if(n===gr.LENGTH)try{if(i=o(r),i<0)throw(0,Mr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Mr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),e?.onLength!=null&&e.onLength(i),n=gr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Mr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===gr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(f),yield f,n=gr.LENGTH}}}return ii(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Mr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Mr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}Sn.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return Sn(n,{...e??{},onLength:o=>{r=o}})};function Fr(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var ai=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Vr=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new ai(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let r=this.head;this.head=r.next=new ai(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var wo=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function qr(t={}){return hh(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},t)}function hh(t,e){e=e??{};let r=e.onEnd,n=new Vr,i,o,s,a=Fr(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,m)=>{o=E=>{o=null,n.push(E);try{y(t(n))}catch(x){m(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Fr()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Vr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(e?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},h=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Vr,h(),{done:!0}),d=y=>(h(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let E,x;m!=null&&(E=new Promise((A,w)=>{x=()=>{w(new wo)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,E])}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 ci=class extends Error{code;constructor(e,r){super(e),this.code=r}},Eo=class extends ci{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function Ja(t){let e=qr();t.sink(e).catch(o=>{e.end(o)}),t.sink=async o=>{for await(let s of o)e.push(s);e.end()};let r=t.source;t.source[Symbol.iterator]!=null?r=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(r=t.source[Symbol.asyncIterator]());let n=new Jt;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new Eo("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 Jt:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new ci("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(u)}let f=n.sublist(0,o);return n.consume(o),f}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?e.push(o):e.push(o.subarray()),await e.onEmpty(s)},unwrap:()=>{let o=t.source;return t.source=async function*(){yield*n,yield*o}(),t}}}var fi=class extends Error{code;constructor(e,r){super(e),this.code=r}},t0=t=>de(t);t0.bytes=0;function So(t,e){let r=Ja(t);return{read:async i=>{let o=-1,s=new Jt,a=e?.lengthDecoder??t0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new fi("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new fi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(si.single(i,e),o)},unwrap:()=>r.unwrap()}}function Bo(){let t=Fr(),e=!1;return{sink:async r=>{if(e)throw new Error("already piped");e=!0,t.resolve(r)},source:async function*(){yield*await t.promise}()}}function e0(){let t=Bo(),e=Bo();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function dh(t){return t[Symbol.asyncIterator]!=null}function ph(...t){let e=[];for(let r of t)dh(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=qr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var r0=ph;function n0(t,...e){if(t==null)throw new Error("Empty pipeline");if(Ao(t)){let n=t;t=()=>n.source}else if(o0(t)||i0(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Ao(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++)Ao(r[n])&&(r[n]=gh(r[n]));return yh(...r)}var yh=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},i0=t=>t?.[Symbol.asyncIterator]!=null,o0=t=>t?.[Symbol.iterator]!=null,Ao=t=>t==null?!1:t.sink!=null&&t.source!=null,gh=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=qr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(i0(o))i=async function*(){yield*o,n.end()};else if(o0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return r0(n,i())}return t.source};var s0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var mh=t=>t instanceof Uint8Array;var se=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),a0=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),xh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!xh)throw new Error("Non little-endian hardware is not supported");function ui(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function li(t){if(typeof t=="string"&&(t=ui(t)),!mh(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var bh=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function c0(t,e){if(e!==void 0&&(typeof e!="object"||!bh(e)))throw new Error("Options should be object or undefined");return Object.assign(t,e)}function Bn(t,e){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function f0(t,e){if(t.length!==e.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<t.length;n++)r&&(r=t[n]===e[n]);return r}function Co(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}function Io(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function vh(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function u0(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function wh(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Io(t.outputLen),Io(t.blockLen)}function Eh(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Sh(t,e){u0(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Bh={number:Io,bool:vh,bytes:u0,hash:wh,exists:Eh,output:Sh},Wt=Bh;var Ht=(t,e)=>t[e++]&255|(t[e++]&255)<<8,To=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=li(e),Bn(e,32);let r=Ht(e,0),n=Ht(e,2),i=Ht(e,4),o=Ht(e,6),s=Ht(e,8),a=Ht(e,10),c=Ht(e,12),f=Ht(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Ht(e,16+2*u)}process(e,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],h=s[5],g=s[6],d=s[7],p=s[8],y=s[9],m=Ht(e,r+0),E=Ht(e,r+2),x=Ht(e,r+4),A=Ht(e,r+6),w=Ht(e,r+8),v=Ht(e,r+10),L=Ht(e,r+12),_=Ht(e,r+14),N=o[0]+(m&8191),M=o[1]+((m>>>13|E<<3)&8191),K=o[2]+((E>>>10|x<<6)&8191),F=o[3]+((x>>>7|A<<9)&8191),H=o[4]+((A>>>4|w<<12)&8191),X=o[5]+(w>>>1&8191),C=o[6]+((w>>>14|v<<2)&8191),k=o[7]+((v>>>11|L<<5)&8191),T=o[8]+((L>>>8|_<<8)&8191),R=o[9]+(_>>>5|i),S=0,U=S+N*a+M*(5*y)+K*(5*p)+F*(5*d)+H*(5*g);S=U>>>13,U&=8191,U+=X*(5*h)+C*(5*l)+k*(5*u)+T*(5*f)+R*(5*c),S+=U>>>13,U&=8191;let O=S+N*c+M*a+K*(5*y)+F*(5*p)+H*(5*d);S=O>>>13,O&=8191,O+=X*(5*g)+C*(5*h)+k*(5*l)+T*(5*u)+R*(5*f),S+=O>>>13,O&=8191;let q=S+N*f+M*c+K*a+F*(5*y)+H*(5*p);S=q>>>13,q&=8191,q+=X*(5*d)+C*(5*g)+k*(5*h)+T*(5*l)+R*(5*u),S+=q>>>13,q&=8191;let Y=S+N*u+M*f+K*c+F*a+H*(5*y);S=Y>>>13,Y&=8191,Y+=X*(5*p)+C*(5*d)+k*(5*g)+T*(5*h)+R*(5*l),S+=Y>>>13,Y&=8191;let Z=S+N*l+M*u+K*f+F*c+H*a;S=Z>>>13,Z&=8191,Z+=X*(5*y)+C*(5*p)+k*(5*d)+T*(5*g)+R*(5*h),S+=Z>>>13,Z&=8191;let nt=S+N*h+M*l+K*u+F*f+H*c;S=nt>>>13,nt&=8191,nt+=X*a+C*(5*y)+k*(5*p)+T*(5*d)+R*(5*g),S+=nt>>>13,nt&=8191;let Q=S+N*g+M*h+K*l+F*u+H*f;S=Q>>>13,Q&=8191,Q+=X*c+C*a+k*(5*y)+T*(5*p)+R*(5*d),S+=Q>>>13,Q&=8191;let J=S+N*d+M*g+K*h+F*l+H*u;S=J>>>13,J&=8191,J+=X*f+C*c+k*a+T*(5*y)+R*(5*p),S+=J>>>13,J&=8191;let mt=S+N*p+M*d+K*g+F*h+H*l;S=mt>>>13,mt&=8191,mt+=X*u+C*f+k*c+T*a+R*(5*y),S+=mt>>>13,mt&=8191;let pt=S+N*y+M*p+K*d+F*g+H*h;S=pt>>>13,pt&=8191,pt+=X*l+C*u+k*f+T*c+R*a,S+=pt>>>13,pt&=8191,S=(S<<2)+S|0,S=S+U|0,U=S&8191,S=S>>>13,O+=S,o[0]=U,o[1]=O,o[2]=q,o[3]=Y,o[4]=Z,o[5]=nt,o[6]=Q,o[7]=J,o[8]=mt,o[9]=pt}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=i,i=e[a]>>>13,e[a]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,n[0]=e[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)e[a]=e[a]&o|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+r[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+r[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){Wt.exists(this);let{buffer:r,blockLen:n}=this;e=li(e);let i=e.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(e,o);continue}r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){Wt.exists(this),Wt.output(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)e[o++]=n[s]>>>0,e[o++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}};function Ah(t){let e=(n,i)=>t(i).update(li(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var l0=Ah(t=>new To(t));var Ch=ui("expand 16-byte k"),Ih=ui("expand 32-byte k"),Th=se(Ch),_h=se(Ih),h0=t=>!(t.byteOffset%4),Hr=t=>{let{core:e,rounds:r,counterRight:n,counterLen:i,allow128bitKeys:o,extendNonceFn:s,blockLen:a}=c0({rounds:20,counterRight:!1,counterLen:8,allow128bitKeys:!0,blockLen:64},t);Wt.number(i),Wt.number(r),Wt.number(a),Wt.bool(n),Wt.bool(o);let c=a/4;if(a%4!==0)throw new Error("Salsa/ChaCha: blockLen should be aligned to 4 bytes");return(f,u,l,h,g=0)=>{if(Wt.bytes(f),Wt.bytes(u),Wt.bytes(l),h||(h=new Uint8Array(l.length)),Wt.bytes(h),Wt.number(g),g<0||g>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");if(h.length<l.length)throw new Error(`Salsa/ChaCha: output (${h.length}) is shorter than data (${l.length})`);let d=[],p,y;if(f.length===32)p=f,y=_h;else if(f.length===16&&o)p=new Uint8Array(32),p.set(f),p.set(f,16),y=Th,d.push(p);else throw new Error(`Salsa/ChaCha: wrong key length=${f.length}, expected`);if(s){if(u.length<=16)throw new Error("Salsa/ChaCha: extended nonce should be bigger than 16 bytes");p=s(y,p,u.subarray(0,16),new Uint8Array(32)),d.push(p),u=u.subarray(16)}let m=16-i;if(u.length!==m)throw new Error(`Salsa/ChaCha: nonce should be ${m} or 16 bytes`);if(m!==12){let N=new Uint8Array(12);N.set(u,n?0:12-u.length),d.push(u=N)}let E=new Uint8Array(a),x=se(E),A=se(p),w=se(u),v=h0(l)&&se(l),L=h0(h)&&se(h);d.push(x);let _=l.length;for(let N=0,M=g;N<_;M++){if(e(y,A,w,x,M,r),M>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");let K=Math.min(a,_-N);if(K===a&&L&&v){let F=N/4;if(N%4!==0)throw new Error("Salsa/ChaCha: wrong block position");for(let H=0;H<c;H++)L[F+H]=v[F+H]^x[H];N+=a;continue}for(let F=0;F<K;F++)h[N+F]=l[N+F]^E[F];N+=K}for(let N=0;N<d.length;N++)d[N].fill(0);return h}};var G=(t,e)=>t<<e|t>>>32-e;function An(t,e,r,n,i,o=20){let s=t[0],a=t[1],c=t[2],f=t[3],u=e[0],l=e[1],h=e[2],g=e[3],d=e[4],p=e[5],y=e[6],m=e[7],E=i,x=r[0],A=r[1],w=r[2],v=s,L=a,_=c,N=f,M=u,K=l,F=h,H=g,X=d,C=p,k=y,T=m,R=E,S=x,U=A,O=w;for(let Y=0;Y<o;Y+=2)v=v+M|0,R=G(R^v,16),X=X+R|0,M=G(M^X,12),v=v+M|0,R=G(R^v,8),X=X+R|0,M=G(M^X,7),L=L+K|0,S=G(S^L,16),C=C+S|0,K=G(K^C,12),L=L+K|0,S=G(S^L,8),C=C+S|0,K=G(K^C,7),_=_+F|0,U=G(U^_,16),k=k+U|0,F=G(F^k,12),_=_+F|0,U=G(U^_,8),k=k+U|0,F=G(F^k,7),N=N+H|0,O=G(O^N,16),T=T+O|0,H=G(H^T,12),N=N+H|0,O=G(O^N,8),T=T+O|0,H=G(H^T,7),v=v+K|0,O=G(O^v,16),k=k+O|0,K=G(K^k,12),v=v+K|0,O=G(O^v,8),k=k+O|0,K=G(K^k,7),L=L+F|0,R=G(R^L,16),T=T+R|0,F=G(F^T,12),L=L+F|0,R=G(R^L,8),T=T+R|0,F=G(F^T,7),_=_+H|0,S=G(S^_,16),X=X+S|0,H=G(H^X,12),_=_+H|0,S=G(S^_,8),X=X+S|0,H=G(H^X,7),N=N+M|0,U=G(U^N,16),C=C+U|0,M=G(M^C,12),N=N+M|0,U=G(U^N,8),C=C+U|0,M=G(M^C,7);let q=0;n[q++]=s+v|0,n[q++]=a+L|0,n[q++]=c+_|0,n[q++]=f+N|0,n[q++]=u+M|0,n[q++]=l+K|0,n[q++]=h+F|0,n[q++]=g+H|0,n[q++]=d+X|0,n[q++]=p+C|0,n[q++]=y+k|0,n[q++]=m+T|0,n[q++]=E+R|0,n[q++]=x+S|0,n[q++]=A+U|0,n[q++]=w+O|0}function Lh(t,e,r,n){let i=se(e),o=se(r),s=se(n),a=t[0],c=t[1],f=t[2],u=t[3],l=i[0],h=i[1],g=i[2],d=i[3],p=i[4],y=i[5],m=i[6],E=i[7],x=o[0],A=o[1],w=o[2],v=o[3];for(let L=0;L<20;L+=2)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),c=c+h|0,A=G(A^c,16),y=y+A|0,h=G(h^y,12),c=c+h|0,A=G(A^c,8),y=y+A|0,h=G(h^y,7),f=f+g|0,w=G(w^f,16),m=m+w|0,g=G(g^m,12),f=f+g|0,w=G(w^f,8),m=m+w|0,g=G(g^m,7),u=u+d|0,v=G(v^u,16),E=E+v|0,d=G(d^E,12),u=u+d|0,v=G(v^u,8),E=E+v|0,d=G(d^E,7),a=a+h|0,v=G(v^a,16),m=m+v|0,h=G(h^m,12),a=a+h|0,v=G(v^a,8),m=m+v|0,h=G(h^m,7),c=c+g|0,x=G(x^c,16),E=E+x|0,g=G(g^E,12),c=c+g|0,x=G(x^c,8),E=E+x|0,g=G(g^E,7),f=f+d|0,A=G(A^f,16),p=p+A|0,d=G(d^p,12),f=f+d|0,A=G(A^f,8),p=p+A|0,d=G(d^p,7),u=u+l|0,w=G(w^u,16),y=y+w|0,l=G(l^y,12),u=u+l|0,w=G(w^u,8),y=y+w|0,l=G(l^y,7);return s[0]=a,s[1]=c,s[2]=f,s[3]=u,s[4]=x,s[5]=A,s[6]=w,s[7]=v,n}var Zm=Hr({core:An,counterRight:!1,counterLen:8}),Rh=Hr({core:An,counterRight:!1,counterLen:4,allow128bitKeys:!1}),kh=Hr({core:An,counterRight:!1,counterLen:8,extendNonceFn:Lh,allow128bitKeys:!1}),Xm=Hr({core:An,counterRight:!1,counterLen:4,rounds:8}),Qm=Hr({core:An,counterRight:!1,counterLen:4,rounds:12}),Ph=new Uint8Array(16),d0=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(Ph.subarray(r))},p0=(t,e,r,n,i)=>{let o=t(e,r,new Uint8Array(32)),s=l0.create(o);i&&d0(s,i),d0(s,n);let a=new Uint8Array(16),c=a0(a);Co(c,0,BigInt(i?i.length:0),!0),Co(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f},y0=t=>(e,r,n)=>(Bn(e,32),Bn(r),{tagLength:16,encrypt:o=>{let s=new Uint8Array(o.length+16);t(e,r,o,s,1);let a=p0(t,e,r,s.subarray(0,-16),n);return s.set(a,o.length),s},decrypt:o=>{if(o.length<16)throw new Error("Encrypted data should be at least 16");let s=o.subarray(-16),a=o.subarray(0,-16),c=p0(t,e,r,a,n);if(!f0(s,c))throw new Error("Wrong tag");return t(e,r,a,void 0,1)}}),_o=y0(Rh),jm=y0(kh);function hi(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Lo(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Cn(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");hi(t.outputLen),hi(t.blockLen)}function zr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function g0(t,e){Lo(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var di=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var m0=t=>t instanceof Uint8Array;var pi=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),pe=(t,e)=>t<<32-e|t>>>e,Dh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Dh)throw new Error("Non little-endian hardware is not supported");function Ro(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function tr(t){if(typeof t=="string"&&(t=Ro(t)),!m0(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function yi(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!m0(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Gr=class{clone(){return this._cloneInto()}},nx={}.toString;function gi(t){let e=n=>t().update(tr(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function mr(t=32){if(di&&typeof di.getRandomValues=="function")return di.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function Nh(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}var $r=class extends Gr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=pi(this.buffer)}update(e){zr(this);let{view:r,buffer:n,blockLen:i}=this;e=tr(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=pi(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){zr(this),g0(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;Nh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=pi(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var mi=BigInt(4294967295),ko=BigInt(32);function x0(t,e=!1){return e?{h:Number(t&mi),l:Number(t>>ko&mi)}:{h:Number(t>>ko&mi)|0,l:Number(t&mi)|0}}function Uh(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=x0(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var Kh=(t,e)=>BigInt(t>>>0)<<ko|BigInt(e>>>0),Oh=(t,e,r)=>t>>>r,Mh=(t,e,r)=>t<<32-r|e>>>r,Fh=(t,e,r)=>t>>>r|e<<32-r,Vh=(t,e,r)=>t<<32-r|e>>>r,qh=(t,e,r)=>t<<64-r|e>>>r-32,Hh=(t,e,r)=>t>>>r-32|e<<64-r,zh=(t,e)=>e,Gh=(t,e)=>t,$h=(t,e,r)=>t<<r|e>>>32-r,Wh=(t,e,r)=>e<<r|t>>>32-r,Yh=(t,e,r)=>e<<r-32|t>>>64-r,Zh=(t,e,r)=>t<<r-32|e>>>64-r;function Xh(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Qh=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),jh=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Jh=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),td=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,ed=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),rd=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var nd={fromBig:x0,split:Uh,toBig:Kh,shrSH:Oh,shrSL:Mh,rotrSH:Fh,rotrSL:Vh,rotrBH:qh,rotrBL:Hh,rotr32H:zh,rotr32L:Gh,rotlSH:$h,rotlSL:Wh,rotlBH:Yh,rotlBL:Zh,add:Xh,add3L:Qh,add3H:jh,add4L:Jh,add4H:td,add5H:rd,add5L:ed},et=nd;var[id,od]=(()=>et.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),er=new Uint32Array(80),rr=new Uint32Array(80),Po=class extends $r{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:h,Gh:g,Gl:d,Hh:p,Hl:y}=this;return[e,r,n,i,o,s,a,c,f,u,l,h,g,d,p,y]}set(e,r,n,i,o,s,a,c,f,u,l,h,g,d,p,y){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=h|0,this.Gh=g|0,this.Gl=d|0,this.Hh=p|0,this.Hl=y|0}process(e,r){for(let x=0;x<16;x++,r+=4)er[x]=e.getUint32(r),rr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let A=er[x-15]|0,w=rr[x-15]|0,v=et.rotrSH(A,w,1)^et.rotrSH(A,w,8)^et.shrSH(A,w,7),L=et.rotrSL(A,w,1)^et.rotrSL(A,w,8)^et.shrSL(A,w,7),_=er[x-2]|0,N=rr[x-2]|0,M=et.rotrSH(_,N,19)^et.rotrBH(_,N,61)^et.shrSH(_,N,6),K=et.rotrSL(_,N,19)^et.rotrBL(_,N,61)^et.shrSL(_,N,6),F=et.add4L(L,K,rr[x-7],rr[x-16]),H=et.add4H(F,v,M,er[x-7],er[x-16]);er[x]=H|0,rr[x]=F|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:g,Fl:d,Gh:p,Gl:y,Hh:m,Hl:E}=this;for(let x=0;x<80;x++){let A=et.rotrSH(l,h,14)^et.rotrSH(l,h,18)^et.rotrBH(l,h,41),w=et.rotrSL(l,h,14)^et.rotrSL(l,h,18)^et.rotrBL(l,h,41),v=l&g^~l&p,L=h&d^~h&y,_=et.add5L(E,w,L,od[x],rr[x]),N=et.add5H(_,m,A,v,id[x],er[x]),M=_|0,K=et.rotrSH(n,i,28)^et.rotrBH(n,i,34)^et.rotrBH(n,i,39),F=et.rotrSL(n,i,28)^et.rotrBL(n,i,34)^et.rotrBL(n,i,39),H=n&o^n&a^o&a,X=i&s^i&c^s&c;m=p|0,E=y|0,p=g|0,y=d|0,g=l|0,d=h|0,{h:l,l:h}=et.add(f|0,u|0,N|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let C=et.add3L(M,F,X);n=et.add3H(C,N,K,H),i=C|0}({h:n,l:i}=et.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=et.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=et.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=et.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:h}=et.add(this.Eh|0,this.El|0,l|0,h|0),{h:g,l:d}=et.add(this.Fh|0,this.Fl|0,g|0,d|0),{h:p,l:y}=et.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:m,l:E}=et.add(this.Hh|0,this.Hl|0,m|0,E|0),this.set(n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,E)}roundClean(){er.fill(0),rr.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 Do=gi(()=>new Po);var vi={};Dt(vi,{bitGet:()=>hd,bitLen:()=>ld,bitMask:()=>In,bitSet:()=>dd,bytesToHex:()=>Me,bytesToNumberBE:()=>Fe,bytesToNumberLE:()=>ye,concatBytes:()=>qe,createHmacDrbg:()=>Ko,ensureBytes:()=>bt,equalBytes:()=>fd,hexToBytes:()=>xr,hexToNumber:()=>Uo,numberToBytesBE:()=>nr,numberToBytesLE:()=>Ve,numberToHexUnpadded:()=>w0,numberToVarBytesBE:()=>cd,utf8ToBytes:()=>ud,validateObject:()=>ae});var v0=BigInt(0),xi=BigInt(1),sd=BigInt(2),bi=t=>t instanceof Uint8Array,ad=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Me(t){if(!bi(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=ad[t[r]];return e}function w0(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Uo(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function xr(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let r=new Uint8Array(e/2);for(let n=0;n<r.length;n++){let i=n*2,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function Fe(t){return Uo(Me(t))}function ye(t){if(!bi(t))throw new Error("Uint8Array expected");return Uo(Me(Uint8Array.from(t).reverse()))}function nr(t,e){return xr(t.toString(16).padStart(e*2,"0"))}function Ve(t,e){return nr(t,e).reverse()}function cd(t){return xr(w0(t))}function bt(t,e,r){let n;if(typeof e=="string")try{n=xr(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(bi(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function qe(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!bi(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function fd(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function ud(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function ld(t){let e;for(e=0;t>v0;t>>=xi,e+=1);return e}function hd(t,e){return t>>BigInt(e)&xi}var dd=(t,e,r)=>t|(r?xi:v0)<<BigInt(e),In=t=>(sd<<BigInt(t-1))-xi,No=t=>new Uint8Array(t),b0=t=>Uint8Array.from(t);function Ko(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=No(t),i=No(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=No())=>{i=a(b0([0]),l),n=a(),l.length!==0&&(i=a(b0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let g=n.slice();h.push(g),l+=n.length}return qe(...h)};return(l,h)=>{s(),c(l);let g;for(;!(g=h(f()));)c();return s(),g}}var pd={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function ae(t,e,r={}){let n=(i,o,s)=>{let a=pd[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var Nt=BigInt(0),St=BigInt(1),br=BigInt(2),yd=BigInt(3),Oo=BigInt(4),E0=BigInt(5),S0=BigInt(8),gd=BigInt(9),md=BigInt(16);function lt(t,e){let r=t%e;return r>=Nt?r:e+r}function Mo(t,e,r){if(r<=Nt||e<Nt)throw new Error("Expected power/modulo > 0");if(r===St)return Nt;let n=St;for(;e>Nt;)e&St&&(n=n*t%r),t=t*t%r,e>>=St;return n}function vt(t,e,r){let n=t;for(;e-- >Nt;)n*=n,n%=r;return n}function wi(t,e){if(t===Nt||e<=Nt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=lt(t,e),n=e,i=Nt,o=St,s=St,a=Nt;for(;r!==Nt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==St)throw new Error("invert: does not exist");return lt(i,e)}function xd(t){let e=(t-St)/br,r,n,i;for(r=t-St,n=0;r%br===Nt;r/=br,n++);for(i=br;i<t&&Mo(i,e,t)!==t-St;i++);if(n===1){let s=(t+St)/Oo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+St)/br;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(h);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let d=a.pow(u,St<<BigInt(f-g-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=g}return l}}function bd(t){if(t%Oo===yd){let e=(t+St)/Oo;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%S0===E0){let e=(t-E0)/S0;return function(n,i){let o=n.mul(i,br),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,br),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return t%md,xd(t)}var B0=(t,e)=>(lt(t,e)&St)===St,vd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Fo(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=vd.reduce((n,i)=>(n[i]="function",n),e);return ae(t,r)}function wd(t,e,r){if(r<Nt)throw new Error("Expected power > 0");if(r===Nt)return t.ONE;if(r===St)return e;let n=t.ONE,i=e;for(;r>Nt;)r&St&&(n=t.mul(n,i)),i=t.sqr(i),r>>=St;return n}function Ed(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function Vo(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ei(t,e,r=!1,n={}){if(t<=Nt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Vo(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=bd(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:In(i),ZERO:Nt,ONE:St,create:c=>lt(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Nt<=c&&c<t},is0:c=>c===Nt,isOdd:c=>(c&St)===St,neg:c=>lt(-c,t),eql:(c,f)=>c===f,sqr:c=>lt(c*c,t),add:(c,f)=>lt(c+f,t),sub:(c,f)=>lt(c-f,t),mul:(c,f)=>lt(c*f,t),pow:(c,f)=>wd(a,c,f),div:(c,f)=>lt(c*wi(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>wi(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Ed(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Ve(c,o):nr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?ye(c):Fe(c)}});return Object.freeze(a)}function A0(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}function C0(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function qo(t){let e=C0(t);return e+Math.ceil(e/2)}function I0(t,e,r=!1){let n=t.length,i=C0(e),o=qo(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Fe(t):ye(t),a=lt(s,e-St)+St;return r?Ve(a,i):nr(a,i)}var Bd=BigInt(0),Ho=BigInt(1);function Si(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>Bd;)o&Ho&&(s=s.add(a)),a=a.double(),o>>=Ho;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=t.ZERO,u=t.BASE,l=BigInt(2**i-1),h=2**i,g=BigInt(i);for(let d=0;d<a;d++){let p=d*c,y=Number(s&l);s>>=g,y>c&&(y-=h,s+=Ho);let m=p,E=p+Math.abs(y)-1,x=d%2!==0,A=y<0;y===0?u=u.add(r(x,o[m])):f=f.add(r(A,o[E]))}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 Tn(t){return Fo(t.Fp),ae(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Vo(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var ge=BigInt(0),te=BigInt(1),Bi=BigInt(2),Ad=BigInt(8),Cd={zip215:!0};function Id(t){let e=Tn(t);return ae(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Ai(t){let e=Id(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,f=Bi<<BigInt(a*8)-te,u=r.create,l=e.uvRatio||((R,S)=>{try{return{isValid:!0,value:r.sqrt(R*r.inv(S))}}catch{return{isValid:!1,value:ge}}}),h=e.adjustScalarBytes||(R=>R),g=e.domain||((R,S,U)=>{if(S.length||U)throw new Error("Contexts/pre-hash are not supported");return R}),d=R=>typeof R=="bigint"&&ge<R,p=(R,S)=>d(R)&&d(S)&&R<S,y=R=>R===ge||p(R,f);function m(R,S){if(p(R,S))return R;throw new Error(`Expected valid scalar < ${S}, got ${typeof R} ${R}`)}function E(R){return R===ge?R:m(R,n)}let x=new Map;function A(R){if(!(R instanceof w))throw new Error("ExtendedPoint expected")}class w{constructor(S,U,O,q){if(this.ex=S,this.ey=U,this.ez=O,this.et=q,!y(S))throw new Error("x required");if(!y(U))throw new Error("y required");if(!y(O))throw new Error("z required");if(!y(q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(S){if(S instanceof w)throw new Error("extended point not allowed");let{x:U,y:O}=S||{};if(!y(U)||!y(O))throw new Error("invalid affine point");return new w(U,O,te,u(U*O))}static normalizeZ(S){let U=r.invertBatch(S.map(O=>O.ez));return S.map((O,q)=>O.toAffine(U[q])).map(w.fromAffine)}_setWindowSize(S){this._WINDOW_SIZE=S,x.delete(this)}assertValidity(){let{a:S,d:U}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:O,ey:q,ez:Y,et:Z}=this,nt=u(O*O),Q=u(q*q),J=u(Y*Y),mt=u(J*J),pt=u(nt*S),Vt=u(J*u(pt+Q)),qt=u(mt+u(U*u(nt*Q)));if(Vt!==qt)throw new Error("bad point: equation left != right (1)");let Pt=u(O*q),Gt=u(Y*Z);if(Pt!==Gt)throw new Error("bad point: equation left != right (2)")}equals(S){A(S);let{ex:U,ey:O,ez:q}=this,{ex:Y,ey:Z,ez:nt}=S,Q=u(U*nt),J=u(Y*q),mt=u(O*nt),pt=u(Z*q);return Q===J&&mt===pt}is0(){return this.equals(w.ZERO)}negate(){return new w(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:S}=e,{ex:U,ey:O,ez:q}=this,Y=u(U*U),Z=u(O*O),nt=u(Bi*u(q*q)),Q=u(S*Y),J=U+O,mt=u(u(J*J)-Y-Z),pt=Q+Z,Vt=pt-nt,qt=Q-Z,Pt=u(mt*Vt),Gt=u(pt*qt),Ke=u(mt*qt),yr=u(Vt*pt);return new w(Pt,Gt,yr,Ke)}add(S){A(S);let{a:U,d:O}=e,{ex:q,ey:Y,ez:Z,et:nt}=this,{ex:Q,ey:J,ez:mt,et:pt}=S;if(U===BigInt(-1)){let Fa=u((Y-q)*(J+Q)),Va=u((Y+q)*(J-Q)),yo=u(Va-Fa);if(yo===ge)return this.double();let qa=u(Z*Bi*pt),Ha=u(nt*Bi*mt),za=Ha+qa,Ga=Va+Fa,$a=Ha-qa,Gl=u(za*yo),$l=u(Ga*$a),Wl=u(za*$a),Yl=u(yo*Ga);return new w(Gl,$l,Yl,Wl)}let Vt=u(q*Q),qt=u(Y*J),Pt=u(nt*O*pt),Gt=u(Z*mt),Ke=u((q+Y)*(Q+J)-Vt-qt),yr=Gt-Pt,wn=Gt+Pt,Ma=u(qt-U*Vt),Vl=u(Ke*yr),ql=u(wn*Ma),Hl=u(Ke*Ma),zl=u(yr*wn);return new w(Vl,ql,zl,Hl)}subtract(S){return this.add(S.negate())}wNAF(S){return _.wNAFCached(this,x,S,w.normalizeZ)}multiply(S){let{p:U,f:O}=this.wNAF(m(S,n));return w.normalizeZ([U,O])[0]}multiplyUnsafe(S){let U=E(S);return U===ge?L:this.equals(L)||U===te?this:this.equals(v)?this.wNAF(U).p:_.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(S){let{ex:U,ey:O,ez:q}=this,Y=this.is0();S==null&&(S=Y?Ad:r.inv(q));let Z=u(U*S),nt=u(O*S),Q=u(q*S);if(Y)return{x:ge,y:te};if(Q!==te)throw new Error("invZ was invalid");return{x:Z,y:nt}}clearCofactor(){let{h:S}=e;return S===te?this:this.multiplyUnsafe(S)}static fromHex(S,U=!1){let{d:O,a:q}=e,Y=r.BYTES;S=bt("pointHex",S,Y);let Z=S.slice(),nt=S[Y-1];Z[Y-1]=nt&-129;let Q=ye(Z);Q===ge||(U?m(Q,f):m(Q,r.ORDER));let J=u(Q*Q),mt=u(J-te),pt=u(O*J-q),{isValid:Vt,value:qt}=l(mt,pt);if(!Vt)throw new Error("Point.fromHex: invalid y coordinate");let Pt=(qt&te)===te,Gt=(nt&128)!==0;if(!U&&qt===ge&&Gt)throw new Error("Point.fromHex: x=0 and x_0=1");return Gt!==Pt&&(qt=u(-qt)),w.fromAffine({x:qt,y:Q})}static fromPrivateKey(S){return K(S).point}toRawBytes(){let{x:S,y:U}=this.toAffine(),O=Ve(U,r.BYTES);return O[O.length-1]|=S&te?128:0,O}toHex(){return Me(this.toRawBytes())}}w.BASE=new w(e.Gx,e.Gy,te,u(e.Gx*e.Gy)),w.ZERO=new w(ge,te,te,ge);let{BASE:v,ZERO:L}=w,_=Si(w,a*8);function N(R){return lt(R,n)}function M(R){return N(ye(R))}function K(R){let S=a;R=bt("private key",R,S);let U=bt("hashed private key",o(R),2*S),O=h(U.slice(0,S)),q=U.slice(S,2*S),Y=M(O),Z=v.multiply(Y),nt=Z.toRawBytes();return{head:O,prefix:q,scalar:Y,point:Z,pointBytes:nt}}function F(R){return K(R).pointBytes}function H(R=new Uint8Array,...S){let U=qe(...S);return M(o(g(U,bt("context",R),!!i)))}function X(R,S,U={}){R=bt("message",R),i&&(R=i(R));let{prefix:O,scalar:q,pointBytes:Y}=K(S),Z=H(U.context,O,R),nt=v.multiply(Z).toRawBytes(),Q=H(U.context,nt,Y,R),J=N(Z+Q*q);E(J);let mt=qe(nt,Ve(J,r.BYTES));return bt("result",mt,a*2)}let C=Cd;function k(R,S,U,O=C){let{context:q,zip215:Y}=O,Z=r.BYTES;R=bt("signature",R,2*Z),S=bt("message",S),i&&(S=i(S));let nt=ye(R.slice(Z,2*Z)),Q,J,mt;try{Q=w.fromHex(U,Y),J=w.fromHex(R.slice(0,Z),Y),mt=v.multiplyUnsafe(nt)}catch{return!1}if(!Y&&Q.isSmallOrder())return!1;let pt=H(q,J.toRawBytes(),Q.toRawBytes(),S);return J.add(Q.multiplyUnsafe(pt)).subtract(mt).clearCofactor().equals(w.ZERO)}return v._setWindowSize(8),{CURVE:e,getPublicKey:F,sign:X,verify:k,ExtendedPoint:w,utils:{getExtendedPublicKey:K,randomPrivateKey:()=>s(r.BYTES),precompute(R=8,S=w.BASE){return S._setWindowSize(R),S.multiply(BigInt(3)),S}}}}var _n=BigInt(0),zo=BigInt(1);function Td(t){return ae(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function T0(t){let e=Td(t),{P:r}=e,n=x=>lt(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>Mo(x,r-BigInt(2),r));function f(x,A,w){let v=n(x*(A-w));return A=n(A-v),w=n(w+v),[A,w]}function u(x){if(typeof x=="bigint"&&_n<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function h(x,A){let w=u(x),v=u(A),L=w,_=zo,N=_n,M=w,K=zo,F=_n,H;for(let C=BigInt(i-1);C>=_n;C--){let k=v>>C&zo;F^=k,H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1],F=k;let T=_+N,R=n(T*T),S=_-N,U=n(S*S),O=R-U,q=M+K,Y=M-K,Z=n(Y*T),nt=n(q*S),Q=Z+nt,J=Z-nt;M=n(Q*Q),K=n(L*n(J*J)),_=n(R*U),N=n(O*(R+n(l*O)))}H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1];let X=c(N);return n(_*X)}function g(x){return Ve(n(x),o)}function d(x){let A=bt("u coordinate",x,o);return s===o&&(A[s-1]&=127),ye(A)}function p(x){let A=bt("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return ye(a(A))}function y(x,A){let w=d(A),v=p(x),L=h(w,v);if(L===_n)throw new Error("Invalid private or public key received");return g(L)}let m=g(e.Gu);function E(x){return y(x,m)}return{scalarMult:y,scalarMultBase:E,getSharedSecret:(x,A)=>y(x,A),getPublicKey:x=>E(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:m}}var Ln=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),_0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),_x=BigInt(0),_d=BigInt(1),Go=BigInt(2),Ld=BigInt(5),L0=BigInt(10),Rd=BigInt(20),kd=BigInt(40),R0=BigInt(80);function k0(t){let e=Ln,n=t*t%e*t%e,i=vt(n,Go,e)*n%e,o=vt(i,_d,e)*t%e,s=vt(o,Ld,e)*o%e,a=vt(s,L0,e)*s%e,c=vt(a,Rd,e)*a%e,f=vt(c,kd,e)*c%e,u=vt(f,R0,e)*f%e,l=vt(u,R0,e)*f%e,h=vt(l,L0,e)*s%e;return{pow_p_5_8:vt(h,Go,e)*t%e,b2:n}}function P0(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function Pd(t,e){let r=Ln,n=lt(e*e*e,r),i=lt(n*n*e,r),o=k0(t*i).pow_p_5_8,s=lt(t*n*o,r),a=lt(e*s*s,r),c=s,f=lt(s*_0,r),u=a===t,l=a===lt(-t,r),h=a===lt(-t*_0,r);return u&&(s=c),(l||h)&&(s=f),B0(s,r)&&(s=lt(-s,r)),{isValid:u||l,value:s}}var He=Ei(Ln,void 0,!0),$o={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:He,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Do,randomBytes:mr,adjustScalarBytes:P0,uvRatio:Pd},Wr=Ai($o);function D0(t,e,r){if(e.length>255)throw new Error("Context is too big");return yi(Ro("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Lx=Ai({...$o,domain:D0}),Rx=Ai({...$o,domain:D0,prehash:Do}),Rn=(()=>T0({P:Ln,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Ln,{pow_p_5_8:r,b2:n}=k0(t);return lt(vt(r,BigInt(3),e)*n,e)},adjustScalarBytes:P0,randomBytes:mr}))();var Dd=(He.ORDER+BigInt(3))/BigInt(8),kx=He.pow(Go,Dd),Px=He.sqrt(He.neg(He.ONE)),Dx=(He.ORDER-BigInt(5))/BigInt(8),Nx=BigInt(486662);var Ux=A0(He,He.neg(BigInt(486664)));var Kx=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),Ox=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),Mx=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),Fx=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Vx=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ci=class extends Gr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Cn(e);let n=tr(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return zr(this),this.iHash.update(e),this}digestInto(e){zr(this),Lo(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Yr=(t,e,r)=>new Ci(t,e).update(r).digest();Yr.create=(t,e)=>new Ci(t,e);function U0(t,e,r){return Cn(t),r===void 0&&(r=new Uint8Array(t.outputLen)),Yr(t,tr(r),tr(e))}var Wo=new Uint8Array([0]),N0=new Uint8Array;function K0(t,e,r,n=32){if(Cn(t),hi(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=N0);let o=new Uint8Array(i*t.outputLen),s=Yr.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)Wo[0]=f+1,a.update(f===0?N0:c).update(r).update(Wo).digestInto(c),o.set(c,t.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),Wo.fill(0),o.slice(0,n)}var Nd=(t,e,r)=>t&e^~t&r,Ud=(t,e,r)=>t&e^t&r^e&r,Kd=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]),ir=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),or=new Uint32Array(64),Yo=class extends $r{constructor(){super(64,32,8,!1),this.A=ir[0]|0,this.B=ir[1]|0,this.C=ir[2]|0,this.D=ir[3]|0,this.E=ir[4]|0,this.F=ir[5]|0,this.G=ir[6]|0,this.H=ir[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)or[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=or[l-15],g=or[l-2],d=pe(h,7)^pe(h,18)^h>>>3,p=pe(g,17)^pe(g,19)^g>>>10;or[l]=p+or[l-7]+d+or[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=pe(a,6)^pe(a,11)^pe(a,25),g=u+h+Nd(a,c,f)+Kd[l]+or[l]|0,p=(pe(n,2)^pe(n,13)^pe(n,22))+Ud(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(){or.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Zr=gi(()=>new Yo);var Zo={hashSHA256(t){return Zr(t)},getHKDF(t,e){let r=U0(Zr,e,t),i=K0(Zr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let t=Rn.utils.randomPrivateKey();return{publicKey:Rn.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Rn.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Rn.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return _o(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){let o=_o(n,e,r).decrypt(t);return i&&i.set(o),o}};var Od=t=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t),Xr=t=>{let e=Od(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};Xr.bytes=2;var kn=t=>{if(t.length<2)throw RangeError("Could not decode int16BE");return t instanceof Uint8Array?new DataView(t.buffer,t.byteOffset,t.byteLength).getUint16(0,!1):t.getUint16(0)};kn.bytes=2;function O0(t){return yt([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function M0(t){return yt([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function F0(t){return yt([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function V0(t){if(t.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:t.subarray(0,32),ciphertext:t.subarray(32,t.length),ns:new Uint8Array(0)}}function q0(t){if(t.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:t.subarray(0,32),ns:t.subarray(32,80),ciphertext:t.subarray(80,t.length)}}function H0(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var G0=16;function $0(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=t.encrypt(n.subarray(i,o),t.session);e?.encryptedPackets.increment(),yield Xr(s.byteLength),yield s}}}function W0(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-G0<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-G0),{plaintext:c,valid:f}=t.decrypt(s,t.session,a);if(!f)throw e?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");e?.decryptedPackets.increment(),yield c}}}var at=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},Dn=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},vr=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var O8=Rt(On(),1),M8=Rt(uf(),1);var e2=Rt(gt(),1);var Es={};Dt(Es,{identity:()=>p1});function f1(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,y=0,m=0,E=d.length;m!==E&&d[m]===0;)m++,p++;for(var x=(E-m)*u+1>>>0,A=new Uint8Array(x);m!==E;){for(var w=d[m],v=0,L=x-1;(w!==0||v<y)&&L!==-1;L--,v++)w+=256*A[L]>>>0,A[L]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");y=v,m++}for(var _=x-y;_!==x&&A[_]===0;)_++;for(var N=c.repeat(p);_<x;++_)N+=t.charAt(A[_]);return N}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var y=0,m=0;d[p]===c;)y++,p++;for(var E=(d.length-p)*f+1>>>0,x=new Uint8Array(E);d[p];){var A=r[d.charCodeAt(p)];if(A===255)return;for(var w=0,v=E-1;(A!==0||w<m)&&v!==-1;v--,w++)A+=a*x[v]>>>0,x[v]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");m=w,p++}if(d[p]!==" "){for(var L=E-m;L!==E&&x[L]===0;)L++;for(var _=new Uint8Array(y+(E-L)),N=y;L!==E;)_[N++]=x[L++];return _}}}function g(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:g}}var u1=f1,l1=u1,lf=l1;var Ub=new Uint8Array(0);var hf=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},We=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var df=t=>new TextEncoder().encode(t),pf=t=>new TextDecoder().decode(t);var xs=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},bs=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return gf(this,e)}},vs=class{constructor(e){this.decoders=e}or(e){return gf(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},gf=(t,e)=>new vs({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),ws=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new xs(e,r,n),this.decoder=new bs(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},en=({name:t,prefix:e,encode:r,decode:n})=>new ws(t,e,r,n),ur=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=lf(r,e);return en({prefix:t,name:e,encode:n,decode:o=>We(i(o))})},h1=(t,e,r,n)=>{let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[t[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},d1=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},It=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>en({prefix:e,name:t,encode(i){return d1(i,n,r)},decode(i){return h1(i,n,r,t)}});var p1=en({prefix:"\0",name:"identity",encode:t=>pf(t),decode:t=>df(t)});var Ss={};Dt(Ss,{base2:()=>y1});var y1=It({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Bs={};Dt(Bs,{base8:()=>g1});var g1=It({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var As={};Dt(As,{base10:()=>m1});var m1=ur({prefix:"9",name:"base10",alphabet:"0123456789"});var Cs={};Dt(Cs,{base16:()=>x1,base16upper:()=>b1});var x1=It({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),b1=It({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Is={};Dt(Is,{base32:()=>be,base32hex:()=>S1,base32hexpad:()=>A1,base32hexpadupper:()=>C1,base32hexupper:()=>B1,base32pad:()=>w1,base32padupper:()=>E1,base32upper:()=>v1,base32z:()=>I1});var be=It({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),v1=It({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),w1=It({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),E1=It({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),S1=It({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),B1=It({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),A1=It({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),C1=It({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),I1=It({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Ts={};Dt(Ts,{base36:()=>T1,base36upper:()=>_1});var T1=ur({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),_1=ur({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var _s={};Dt(_s,{base58btc:()=>Tt,base58flickr:()=>L1});var Tt=ur({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),L1=ur({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ls={};Dt(Ls,{base64:()=>rn,base64pad:()=>R1,base64url:()=>k1,base64urlpad:()=>P1});var rn=It({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),R1=It({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),k1=It({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),P1=It({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Rs={};Dt(Rs,{base256emoji:()=>O1});var mf=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}"),D1=mf.reduce((t,e,r)=>(t[r]=e,t),[]),N1=mf.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function U1(t){return t.reduce((e,r)=>(e+=D1[r],e),"")}function K1(t){let e=[];for(let r of t){let n=N1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var O1=en({prefix:"\u{1F680}",name:"base256emoji",encode:U1,decode:K1});var Us={};Dt(Us,{sha256:()=>zt,sha512:()=>ng});var ke={};Dt(ke,{Digest:()=>Cr,create:()=>ve,decode:()=>lr,equals:()=>Ps});var M1=vf,xf=128,F1=127,V1=~F1,q1=Math.pow(2,31);function vf(t,e,r){e=e||[],r=r||0;for(var n=r;t>=q1;)e[r++]=t&255|xf,t/=128;for(;t&V1;)e[r++]=t&255|xf,t>>>=7;return e[r]=t|0,vf.bytes=r-n+1,e}var H1=ks,z1=128,bf=127;function ks(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw ks.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&bf)<<i:(s&bf)*Math.pow(2,i),i+=7}while(s>=z1);return ks.bytes=o-n,r}var G1=Math.pow(2,7),$1=Math.pow(2,14),W1=Math.pow(2,21),Y1=Math.pow(2,28),Z1=Math.pow(2,35),X1=Math.pow(2,42),Q1=Math.pow(2,49),j1=Math.pow(2,56),J1=Math.pow(2,63),tg=function(t){return t<G1?1:t<$1?2:t<W1?3:t<Y1?4:t<Z1?5:t<X1?6:t<Q1?7:t<j1?8:t<J1?9:10},eg={encode:M1,decode:H1,encodingLength:tg},rg=eg,Vn=rg;var qn=(t,e=0)=>[Vn.decode(t,e),Vn.decode.bytes],nn=(t,e,r=0)=>(Vn.encode(t,e,r),e),on=t=>Vn.encodingLength(t);var ve=(t,e)=>{let r=e.byteLength,n=on(t),i=n+on(r),o=new Uint8Array(i+r);return nn(t,o,0),nn(r,o,n),o.set(e,i),new Cr(t,r,e,o)},lr=t=>{let e=We(t),[r,n]=qn(e),[i,o]=qn(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Cr(r,i,s,e)},Ps=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&hf(t.bytes,r.bytes)}},Cr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Ns=({name:t,code:e,encode:r})=>new Ds(t,e,r),Ds=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?ve(this.code,r):r.then(n=>ve(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Ef=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),zt=Ns({name:"sha2-256",code:18,encode:Ef("SHA-256")}),ng=Ns({name:"sha2-512",code:19,encode:Ef("SHA-512")});var Ks={};Dt(Ks,{identity:()=>hr});var Sf=0,ig="identity",Bf=We,og=t=>ve(Sf,Bf(t)),hr={code:Sf,name:ig,encode:Bf,digest:og};var nv=new TextEncoder,iv=new TextDecoder;var Af=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return fg(r,Os(t),e||Tt.encoder);default:return ug(r,Os(t),e||be.encoder)}};var Cf=new WeakMap,Os=t=>{let e=Cf.get(t);if(e==null){let r=new Map;return Cf.set(t,r),r}return e},we=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==Hn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==lg)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=ve(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Ps(e.multihash,n.multihash)}toString(e){return Af(this,e)}toJSON(){return{"/":Af(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s||If(n,i,o.bytes))}else if(r[hg]===!0){let{version:n,multihash:i,code:o}=r,s=lr(i);return t.create(n,o,s)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==Hn)throw new Error(`Version 0 CID must use dag-pb (code: ${Hn}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=If(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Hn,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=We(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Cr(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=qn(e.subarray(r));return r+=h,l},i=n(),o=Hn;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,i]=cg(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Os(o).set(n,e),o}},cg=(t,e)=>{switch(t[0]){case"Q":{let r=e||Tt;return[Tt.prefix,r.decode(`${Tt.prefix}${t}`)]}case Tt.prefix:{let r=e||Tt;return[Tt.prefix,r.decode(t)]}case be.prefix:{let r=e||be;return[be.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},fg=(t,e,r)=>{let{prefix:n}=r;if(n!==Tt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},ug=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},Hn=112,lg=18,If=(t,e,r)=>{let n=on(t),i=n+on(e),o=new Uint8Array(i+r.byteLength);return nn(t,o,0),nn(e,o,n),o.set(r,i),o},hg=Symbol.for("@ipld/js-cid/CID");var Pe={...Es,...Ss,...Bs,...As,...Cs,...Is,...Ts,..._s,...Ls,...Rs},pv={...Us,...Ks};function _f(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var Tf=_f("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Ms=_f("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=oe(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),dg={utf8:Tf,"utf-8":Tf,hex:Pe.base16,latin1:Ms,ascii:Ms,binary:Ms,...Pe},$i=dg;function _t(t,e="utf8"){let r=$i[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?je(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var sa={};Dt(sa,{Ed25519PrivateKey:()=>Pr,Ed25519PublicKey:()=>$n,generateKeyPair:()=>Tg,generateKeyPairFromSeed:()=>Cu,unmarshalEd25519PrivateKey:()=>Cg,unmarshalEd25519PublicKey:()=>Ig});var sn=32,Ye=64,Wi=32;async function Lf(){let t=Wr.utils.randomPrivateKey(),e=Wr.getPublicKey(t);return{privateKey:Df(t,e),publicKey:e}}async function Rf(t){if(t.length!==Wi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=Wr.getPublicKey(e);return{privateKey:Df(e,r),publicKey:r}}async function kf(t,e){let r=t.subarray(0,Wi);return Wr.sign(e,r)}async function Pf(t,e,r){return Wr.verify(e,r,t)}function Df(t,e){let r=new Uint8Array(Ye);for(let n=0;n<Wi;n++)r[n]=t[n],r[Wi+n]=e[n];return r}var jt={get(t=globalThis){let e=t.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var Fs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Vs(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=jt.get();r*=8;async function c(l,h){let g=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=_t(h));let y;if(h.length===0){y=await a.subtle.importKey("jwk",Fs,{name:"AES-GCM"},!0,["encrypt"]);try{let E={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(E,x,{name:e,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",Fs,{name:"AES-GCM"},!0,["encrypt"])}}else{let E={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(E,x,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,y,l);return yt([g,p.iv,new Uint8Array(m)])}async function f(l,h){let g=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),y={name:e,iv:d};typeof h=="string"&&(h=_t(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",Fs,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:e,length:r},!0,["decrypt"])}let E=await a.subtle.decrypt(y,m,p);return new Uint8Array(E)}return{encrypt:c,decrypt:f}}async function an(t,e){let n=await Vs().encrypt(t,e);return rn.encode(n)}var ta=Rt($s(),1),Eu=Rt(pu(),1),Su=Rt(Tr(),1),ea=Rt(Js(),1),Bu=Rt(wu(),1);function Sg(){Su.default._configure(),ta.default._configure(Eu.default),ea.default._configure(Bu.default)}Sg();var Au=["uint64","int64","sint64","fixed64","sfixed64"];function Bg(t){for(let e of Au){if(t[e]==null)continue;let r=t[e];t[e]=function(){return BigInt(r.call(this).toString())}}return t}function ra(t){return Bg(new ta.default(t))}function Ag(t){for(let e of Au){if(t[e]==null)continue;let r=t[e];t[e]=function(n){return r.call(this,n.toString())}}return t}function na(){return Ag(ea.default.create())}function Lr(t,e){let r=ra(t instanceof Uint8Array?t:t.subarray());return e.decode(r)}function Rr(t,e){let r=na();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var fn;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(fn||(fn={}));function ji(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function ia(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return ji("enum",fn.VARINT,r,n)}function kr(t,e){return ji("message",fn.LENGTH_DELIMITED,t,e)}var At;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(At||(At={}));var oa;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(oa||(oa={}));(function(t){t.codec=()=>ia(oa)})(At||(At={}));var Ne;(function(t){let e;t.codec=()=>(e==null&&(e=kr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Rr(r,t.codec()),t.decode=r=>Lr(r,t.codec())})(Ne||(Ne={}));var Ue;(function(t){let e;t.codec=()=>(e==null&&(e=kr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Rr(r,t.codec()),t.decode=r=>Lr(r,t.codec())})(Ue||(Ue={}));var $n=class{_key;constructor(e){this._key=un(e,sn)}async verify(e,r){return Pf(this._key,r,e)}marshal(){return this._key}get bytes(){return Ne.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}},Pr=class{_key;_publicKey;constructor(e,r){this._key=un(e,Ye),this._publicKey=un(r,sn)}async sign(e){return kf(this._key,e)}get public(){return new $n(this._publicKey)}marshal(){return this._key}get bytes(){return Ue.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}async id(){let e=hr.digest(this.public.bytes);return Tt.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return an(this.bytes,e);throw new at(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Cg(t){if(t.length>Ye){t=un(t,Ye+sn);let n=t.subarray(0,Ye),i=t.subarray(Ye,t.length);return new Pr(n,i)}t=un(t,Ye);let e=t.subarray(0,Ye),r=t.subarray(sn);return new Pr(e,r)}function Ig(t){return t=un(t,sn),new $n(t)}async function Tg(){let{privateKey:t,publicKey:e}=await Lf();return new Pr(t,e)}async function Cu(t){let{privateKey:e,publicKey:r}=await Rf(t);return new Pr(e,r)}function un(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new at(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}function st(t,e="utf8"){let r=$i[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var hw=Rt(kt(),1),dw=Rt(Vi(),1),Iu=Rt(gt(),1);function Ae(t,e){let r=Uint8Array.from(t.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return st(r,"base64url")}function ee(t){let e=Tu(t);return new Iu.default.jsbn.BigInteger(st(e,"base16"),16)}function Tu(t,e){let r=_t(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return r}var _g={"P-256":256,"P-384":384,"P-521":521},Lg=Object.keys(_g),Bw=Lg.join(" / ");var la={};Dt(la,{MAX_KEY_SIZE:()=>Xn,RsaPrivateKey:()=>ln,RsaPublicKey:()=>Zn,fromJwk:()=>Vg,generateKeyPair:()=>qg,unmarshalRsaPrivateKey:()=>Mg,unmarshalRsaPublicKey:()=>Fg});var Yn=Rt(gt(),1);var c8=Rt(Pu(),1);function to(t){if(isNaN(t)||t<=0)throw new at("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return mr(t)}var zw=Rt(zi(),1),fa=Rt(gt(),1);function Du(t,e){return e.map(r=>ee(t[r]))}function Nu(t){return fa.default.pki.setRsaPrivateKey(...Du(t,["n","e","d","p","q","dp","dq","qi"]))}function Uu(t){return fa.default.pki.setRsaPublicKey(...Du(t,["n","e"]))}var Nr={};Dt(Nr,{jwkToPkcs1:()=>Dg,jwkToPkix:()=>Ug,pkcs1ToJwk:()=>Pg,pkixToJwk:()=>Ng});var Ww=Rt(On(),1),Yw=Rt(zi(),1);var Ze=Rt(gt(),1);function Pg(t){let e=Ze.default.asn1.fromDer(st(t,"ascii")),r=Ze.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Ae(r.n),e:Ae(r.e),d:Ae(r.d),p:Ae(r.p),q:Ae(r.q),dp:Ae(r.dP),dq:Ae(r.dQ),qi:Ae(r.qInv),alg:"RS256"}}function Dg(t){if(t.n==null||t.e==null||t.d==null||t.p==null||t.q==null||t.dp==null||t.dq==null||t.qi==null)throw new at("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Ze.default.pki.privateKeyToAsn1({n:ee(t.n),e:ee(t.e),d:ee(t.d),p:ee(t.p),q:ee(t.q),dP:ee(t.dp),dQ:ee(t.dq),qInv:ee(t.qi)});return _t(Ze.default.asn1.toDer(e).getBytes(),"ascii")}function Ng(t){let e=Ze.default.asn1.fromDer(st(t,"ascii")),r=Ze.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Ae(r.n),e:Ae(r.e)}}function Ug(t){if(t.n==null||t.e==null)throw new at("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Ze.default.pki.publicKeyToAsn1({n:ee(t.n),e:ee(t.e)});return _t(Ze.default.asn1.toDer(e).getBytes(),"ascii")}async function Ku(t){let e=await jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await Fu(e);return{privateKey:r[0],publicKey:r[1]}}async function ua(t){let r=[await jt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Kg(t)],n=await Fu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Ou(t,e){let r=await jt.get().subtle.importKey("jwk",t,{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(e));return new Uint8Array(n,0,n.byteLength)}async function Mu(t,e,r){let n=await jt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r)}async function Fu(t){if(t.privateKey==null||t.publicKey==null)throw new at("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([jt.get().subtle.exportKey("jwk",t.privateKey),jt.get().subtle.exportKey("jwk",t.publicKey)])}async function Kg(t){return jt.get().subtle.importKey("jwk",{kty:t.kty,n:t.n,e:t.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function Vu(t,e,r,n){let i=e?Uu(t):Nu(t),o=st(Uint8Array.from(r),"ascii"),s=n(o,i);return _t(s,"ascii")}function qu(t,e){return Vu(t,!0,e,(r,n)=>n.encrypt(r))}function Hu(t,e){return Vu(t,!1,e,(r,n)=>n.decrypt(r))}function eo(t){if(t.kty!=="RSA")throw new at("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new at("invalid key modulus","ERR_INVALID_KEY_MODULUS");return _t(t.n,"base64url").length*8}var Xn=8192,Zn=class{_key;constructor(e){this._key=e}async verify(e,r){return Mu(this._key,r,e)}marshal(){return Nr.jwkToPkix(this._key)}get bytes(){return Ne.encode({Type:At.RSA,Data:this.marshal()}).subarray()}encrypt(e){return qu(this._key,e)}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}},ln=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return to(16)}async sign(e){return Ou(this._key,e)}get public(){if(this._publicKey==null)throw new at("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Zn(this._publicKey)}decrypt(e){return Hu(this._key,e)}marshal(){return Nr.jwkToPkcs1(this._key)}get bytes(){return Ue.encode({Type:At.RSA,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}async id(){let e=await this.public.hash();return st(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new Yn.default.util.ByteBuffer(this.marshal()),i=Yn.default.asn1.fromDer(n),o=Yn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Yn.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return an(this.bytes,e);throw new at(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Mg(t){let e=Nr.pkcs1ToJwk(t);if(eo(e)>Xn)throw new at("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await ua(e);return new ln(r.privateKey,r.publicKey)}function Fg(t){let e=Nr.pkixToJwk(t);if(eo(e)>Xn)throw new at("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Zn(e)}async function Vg(t){if(eo(t)>Xn)throw new at("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await ua(t);return new ln(e.privateKey,e.publicKey)}async function qg(t){if(t>Xn)throw new at("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Ku(t);return new ln(e.privateKey,e.publicKey)}var ya={};Dt(ya,{Secp256k1PrivateKey:()=>jn,Secp256k1PublicKey:()=>Qn,generateKeyPair:()=>t2,unmarshalSecp256k1PrivateKey:()=>jg,unmarshalSecp256k1PublicKey:()=>Jg});function Hg(t){let e=Tn(t);ae(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:zg,hexToBytes:Gg}=vi,Ur={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Ur;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:zg(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Ur,r=typeof t=="string"?Gg(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=Ur._parseInt(r.subarray(2)),{d:s,l:a}=Ur._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Xe=BigInt(0),le=BigInt(1),p8=BigInt(2),zu=BigInt(3),y8=BigInt(4);function $g(t){let e=Hg(t),{Fp:r}=e,n=e.toBytes||((d,p,y)=>{let m=p.toAffine();return qe(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:m}});function o(d){let{a:p,b:y}=e,m=r.sqr(d),E=r.mul(m,d);return r.add(r.add(E,r.mul(d,p)),y)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&Xe<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:m,n:E}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Me(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(y*2,"0")}let x;try{x=typeof d=="bigint"?d:Fe(bt("private key",d,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=lt(x,E)),a(x),x}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,m){if(this.px=p,this.py=y,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:y,y:m}=p||{};if(!p||!r.isValid(y)||!r.isValid(m))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let E=x=>r.eql(x,r.ZERO);return E(y)&&E(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,E)=>m.toAffine(y[E])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(bt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let m=r.sqr(y),E=o(p);if(!r.eql(m,E))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:E}=this,{px:x,py:A,pz:w}=p,v=r.eql(r.mul(y,w),r.mul(x,E)),L=r.eql(r.mul(m,w),r.mul(A,E));return v&&L}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=e,m=r.mul(y,zu),{px:E,py:x,pz:A}=this,w=r.ZERO,v=r.ZERO,L=r.ZERO,_=r.mul(E,E),N=r.mul(x,x),M=r.mul(A,A),K=r.mul(E,x);return K=r.add(K,K),L=r.mul(E,A),L=r.add(L,L),w=r.mul(p,L),v=r.mul(m,M),v=r.add(w,v),w=r.sub(N,v),v=r.add(N,v),v=r.mul(w,v),w=r.mul(K,w),L=r.mul(m,L),M=r.mul(p,M),K=r.sub(_,M),K=r.mul(p,K),K=r.add(K,L),L=r.add(_,_),_=r.add(L,_),_=r.add(_,M),_=r.mul(_,K),v=r.add(v,_),M=r.mul(x,A),M=r.add(M,M),_=r.mul(M,K),w=r.sub(w,_),L=r.mul(M,N),L=r.add(L,L),L=r.add(L,L),new l(w,v,L)}add(p){u(p);let{px:y,py:m,pz:E}=this,{px:x,py:A,pz:w}=p,v=r.ZERO,L=r.ZERO,_=r.ZERO,N=e.a,M=r.mul(e.b,zu),K=r.mul(y,x),F=r.mul(m,A),H=r.mul(E,w),X=r.add(y,m),C=r.add(x,A);X=r.mul(X,C),C=r.add(K,F),X=r.sub(X,C),C=r.add(y,E);let k=r.add(x,w);return C=r.mul(C,k),k=r.add(K,H),C=r.sub(C,k),k=r.add(m,E),v=r.add(A,w),k=r.mul(k,v),v=r.add(F,H),k=r.sub(k,v),_=r.mul(N,C),v=r.mul(M,H),_=r.add(v,_),v=r.sub(F,_),_=r.add(F,_),L=r.mul(v,_),F=r.add(K,K),F=r.add(F,K),H=r.mul(N,H),C=r.mul(M,C),F=r.add(F,H),H=r.sub(K,H),H=r.mul(N,H),C=r.add(C,H),K=r.mul(F,C),L=r.add(L,K),K=r.mul(k,C),v=r.mul(X,v),v=r.sub(v,K),K=r.mul(X,F),_=r.mul(k,_),_=r.add(_,K),new l(v,L,_)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let m=r.invertBatch(y.map(E=>E.pz));return y.map((E,x)=>E.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Xe)return y;if(a(p),p===le)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,p);let{k1neg:E,k1:x,k2neg:A,k2:w}=m.splitScalar(p),v=y,L=y,_=this;for(;x>Xe||w>Xe;)x&le&&(v=v.add(_)),w&le&&(L=L.add(_)),_=_.double(),x>>=le,w>>=le;return E&&(v=v.negate()),A&&(L=L.negate()),L=new l(r.mul(L.px,m.beta),L.py,L.pz),v.add(L)}multiply(p){a(p);let y=p,m,E,{endo:x}=e;if(x){let{k1neg:A,k1:w,k2neg:v,k2:L}=x.splitScalar(y),{p:_,f:N}=this.wNAF(w),{p:M,f:K}=this.wNAF(L);_=g.constTimeNegate(A,_),M=g.constTimeNegate(v,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),m=_.add(M),E=N.add(K)}else{let{p:A,f:w}=this.wNAF(y);m=A,E=w}return l.normalizeZ([m,E])[0]}multiplyAndAddUnsafe(p,y,m){let E=l.BASE,x=(w,v)=>v===Xe||v===le||!w.equals(E)?w.multiplyUnsafe(v):w.multiply(v),A=x(this,y).add(x(p,m));return A.is0()?void 0:A}toAffine(p){let{px:y,py:m,pz:E}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(E));let A=r.mul(y,p),w=r.mul(m,p),v=r.mul(E,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(v,r.ONE))throw new Error("invZ was invalid");return{x:A,y:w}}isTorsionFree(){let{h:p,isTorsionFree:y}=e;if(p===le)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=e;return p===le?this:y?y(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Me(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,g=Si(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Wg(t){let e=Tn(t);return ae(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Gu(t){let e=Wg(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return Xe<C&&C<r.ORDER}function a(C){return lt(C,n)}function c(C){return wi(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=$g({...e,toBytes(C,k,T){let R=k.toAffine(),S=r.toBytes(R.x),U=qe;return T?U(Uint8Array.from([k.hasEvenY()?2:3]),S):U(Uint8Array.from([4]),S,r.toBytes(R.y))},fromBytes(C){let k=C.length,T=C[0],R=C.subarray(1);if(k===i&&(T===2||T===3)){let S=Fe(R);if(!s(S))throw new Error("Point is not on curve");let U=l(S),O=r.sqrt(U),q=(O&le)===le;return(T&1)===1!==q&&(O=r.neg(O)),{x:S,y:O}}else if(k===o&&T===4){let S=r.fromBytes(R.subarray(0,r.BYTES)),U=r.fromBytes(R.subarray(r.BYTES,2*r.BYTES));return{x:S,y:U}}else throw new Error(`Point of length ${k} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=C=>Me(nr(C,e.nByteLength));function d(C){let k=n>>le;return C>k}function p(C){return d(C)?a(-C):C}let y=(C,k,T)=>Fe(C.slice(k,T));class m{constructor(k,T,R){this.r=k,this.s=T,this.recovery=R,this.assertValidity()}static fromCompact(k){let T=e.nByteLength;return k=bt("compactSignature",k,T*2),new m(y(k,0,T),y(k,T,2*T))}static fromDER(k){let{r:T,s:R}=Ur.toSig(bt("DER",k));return new m(T,R)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(k){return new m(this.r,this.s,k)}recoverPublicKey(k){let{r:T,s:R,recovery:S}=this,U=L(bt("msgHash",k));if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");let O=S===2||S===3?T+e.n:T;if(O>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=S&1?"03":"02",Y=f.fromHex(q+g(O)),Z=c(O),nt=a(-U*Z),Q=a(R*Z),J=f.BASE.multiplyAndAddUnsafe(Y,nt,Q);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return xr(this.toDERHex())}toDERHex(){return Ur.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return xr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let E={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=qo(e.n);return I0(e.randomBytes(C),e.n)},precompute(C=8,k=f.BASE){return k._setWindowSize(C),k.multiply(BigInt(3)),k}};function x(C,k=!0){return f.fromPrivateKey(C).toRawBytes(k)}function A(C){let k=C instanceof Uint8Array,T=typeof C=="string",R=(k||T)&&C.length;return k?R===i||R===o:T?R===2*i||R===2*o:C instanceof f}function w(C,k,T=!0){if(A(C))throw new Error("first arg must be private key");if(!A(k))throw new Error("second arg must be public key");return f.fromHex(k).multiply(u(C)).toRawBytes(T)}let v=e.bits2int||function(C){let k=Fe(C),T=C.length*8-e.nBitLength;return T>0?k>>BigInt(T):k},L=e.bits2int_modN||function(C){return a(v(C))},_=In(e.nBitLength);function N(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Xe<=C&&C<_))throw new Error(`bigint expected < 2^${e.nBitLength}`);return nr(C,e.nByteLength)}function M(C,k,T=K){if(["recovered","canonical"].some(pt=>pt in T))throw new Error("sign() legacy options not supported");let{hash:R,randomBytes:S}=e,{lowS:U,prehash:O,extraEntropy:q}=T;U==null&&(U=!0),C=bt("msgHash",C),O&&(C=bt("prehashed msgHash",R(C)));let Y=L(C),Z=u(k),nt=[N(Z),N(Y)];if(q!=null){let pt=q===!0?S(r.BYTES):q;nt.push(bt("extraEntropy",pt))}let Q=qe(...nt),J=Y;function mt(pt){let Vt=v(pt);if(!h(Vt))return;let qt=c(Vt),Pt=f.BASE.multiply(Vt).toAffine(),Gt=a(Pt.x);if(Gt===Xe)return;let Ke=a(qt*a(J+Gt*Z));if(Ke===Xe)return;let yr=(Pt.x===Gt?0:2)|Number(Pt.y&le),wn=Ke;return U&&d(Ke)&&(wn=p(Ke),yr^=1),new m(Gt,wn,yr)}return{seed:Q,k2sig:mt}}let K={lowS:e.lowS,prehash:!1},F={lowS:e.lowS,prehash:!1};function H(C,k,T=K){let{seed:R,k2sig:S}=M(C,k,T),U=e;return Ko(U.hash.outputLen,U.nByteLength,U.hmac)(R,S)}f.BASE._setWindowSize(8);function X(C,k,T,R=F){let S=C;if(k=bt("msgHash",k),T=bt("publicKey",T),"strict"in R)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:O}=R,q,Y;try{if(typeof S=="string"||S instanceof Uint8Array)try{q=m.fromDER(S)}catch(Pt){if(!(Pt instanceof Ur.Err))throw Pt;q=m.fromCompact(S)}else if(typeof S=="object"&&typeof S.r=="bigint"&&typeof S.s=="bigint"){let{r:Pt,s:Gt}=S;q=new m(Pt,Gt)}else throw new Error("PARSE");Y=f.fromHex(T)}catch(Pt){if(Pt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&q.hasHighS())return!1;O&&(k=e.hash(k));let{r:Z,s:nt}=q,Q=L(k),J=c(nt),mt=a(Q*J),pt=a(Z*J),Vt=f.BASE.multiplyAndAddUnsafe(Y,mt,pt)?.toAffine();return Vt?a(Vt.x)===Z:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:w,sign:H,verify:X,ProjectivePoint:f,Signature:m,utils:E}}function Yg(t){return{hash:t,hmac:(e,...r)=>Yr(t,e,yi(...r)),randomBytes:mr}}function $u(t,e){let r=n=>Gu({...t,...Yg(n)});return Object.freeze({...r(e),create:r})}var Zu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Wu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Zg=BigInt(1),ha=BigInt(2),Yu=(t,e)=>(t+e/ha)/e;function Xg(t){let e=Zu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=t*t*t%e,u=f*f*t%e,l=vt(u,r,e)*u%e,h=vt(l,r,e)*u%e,g=vt(h,ha,e)*f%e,d=vt(g,i,e)*g%e,p=vt(d,o,e)*d%e,y=vt(p,a,e)*p%e,m=vt(y,c,e)*y%e,E=vt(m,a,e)*p%e,x=vt(E,r,e)*u%e,A=vt(x,s,e)*d%e,w=vt(A,n,e)*f%e,v=vt(w,ha,e);if(!da.eql(da.sqr(v),t))throw new Error("Cannot find square root");return v}var da=Ei(Zu,void 0,void 0,{sqrt:Xg}),Qe=$u({a:BigInt(0),b:BigInt(7),Fp:da,n:Wu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=Wu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Zg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Yu(o*t,e),c=Yu(-n*t,e),f=lt(t-a*r-c*i,e),u=lt(-a*n-c*o,e),l=f>s,h=u>s;if(l&&(f=e-f),h&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},Zr),B8=BigInt(0);var A8=Qe.ProjectivePoint;function Xu(){return Qe.utils.randomPrivateKey()}async function Qu(t,e){let{digest:r}=await zt.digest(e);try{return Qe.sign(r,t).toDERRawBytes()}catch(n){throw new at(String(n),"ERR_INVALID_INPUT")}}async function ju(t,e,r){try{let{digest:n}=await zt.digest(r);return Qe.verify(e,n,t)}catch(n){throw new at(String(n),"ERR_INVALID_INPUT")}}function Ju(t){return Qe.ProjectivePoint.fromHex(t).toRawBytes(!0)}function tl(t){try{Qe.getPublicKey(t,!0)}catch(e){throw new at(String(e),"ERR_INVALID_PRIVATE_KEY")}}function pa(t){try{Qe.ProjectivePoint.fromHex(t)}catch(e){throw new at(String(e),"ERR_INVALID_PUBLIC_KEY")}}function el(t){try{return Qe.getPublicKey(t,!0)}catch(e){throw new at(String(e),"ERR_INVALID_PRIVATE_KEY")}}var Qn=class{_key;constructor(e){pa(e),this._key=e}async verify(e,r){return ju(this._key,r,e)}marshal(){return Ju(this._key)}get bytes(){return Ne.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}},jn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??el(e),tl(this._key),pa(this._publicKey)}async sign(e){return Qu(this._key,e)}get public(){return new Qn(this._publicKey)}marshal(){return this._key}get bytes(){return Ue.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}async id(){let e=await this.public.hash();return st(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return an(this.bytes,e);throw new at(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function jg(t){return new jn(t)}function Jg(t){return new Qn(t)}async function t2(){let t=Xu();return new jn(t)}var Kr={rsa:la,ed25519:sa,secp256k1:ya};function rl(t){let e=Object.keys(Kr).join(" / ");return new at(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function nl(t){let e=Ne.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return Kr.rsa.unmarshalRsaPublicKey(r);case At.Ed25519:return Kr.ed25519.unmarshalEd25519PublicKey(r);case At.Secp256k1:return Kr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw rl(e.Type??"RSA")}}async function il(t){let e=Ue.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return Kr.rsa.unmarshalRsaPrivateKey(r);case At.Ed25519:return Kr.ed25519.unmarshalEd25519PrivateKey(r);case At.Secp256k1:return Kr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw rl(e.Type??"RSA")}}var ol=Symbol.for("@libp2p/peer-id");var r2=Symbol.for("nodejs.util.inspect.custom"),sl=Object.values(Pe).map(t=>t.decoder).reduce((t,e)=>t.or(e),Pe.identity.decoder),al=114,ga=36,ma=37,Jn=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[ol]=!0;toString(){return this.string==null&&(this.string=Tt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return we.createV1(al,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Ct(this.multihash.bytes,e);if(typeof e=="string")return xa(e).equals(this);if(e?.multihash?.bytes!=null)return Ct(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[r2](){return`PeerId(${this.toString()})`}},hn=class extends Jn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},dn=class extends Jn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},pn=class extends Jn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function xa(t,e){if(e=e??sl,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=lr(Tt.decode(`z${t}`));return t.startsWith("12D")?new dn({multihash:r}):t.startsWith("16U")?new pn({multihash:r}):new hn({multihash:r})}return n2(sl.decode(t))}function n2(t){try{let e=lr(t);if(e.code===hr.code){if(e.digest.length===ga)return new dn({multihash:e});if(e.digest.length===ma)return new pn({multihash:e})}if(e.code===zt.code)return new hn({multihash:e})}catch{return i2(we.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function i2(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==al)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===zt.code)return new hn({multihash:t.multihash});if(e.code===hr.code){if(e.digest.length===ga)return new dn({multihash:t.multihash});if(e.digest.length===ma)return new pn({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function ba(t,e){return t.length===ga?new dn({multihash:ve(hr.code,t),privateKey:e}):t.length===ma?new pn({multihash:ve(hr.code,t),privateKey:e}):new hn({multihash:await zt.digest(t),publicKey:t,privateKey:e})}var ro;(function(t){let e;t.codec=()=>(e==null&&(e=kr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.webtransportCerthashes.push(r.bytes());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Rr(r,t.codec()),t.decode=r=>Lr(r,t.codec())})(ro||(ro={}));var ti;(function(t){let e;t.codec=()=>(e==null&&(e=kr((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),ro.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=ro.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Rr(r,t.codec()),t.decode=r=>Lr(r,t.codec())})(ti||(ti={}));async function cl(t,e,r){let n=await s2(t,fl(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return o2(t.publicKey,n,r)}function o2(t,e,r){return ti.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function s2(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await il(t.privateKey)).sign(e)}async function va(t){return ba(t.identityKey)}function wa(t){return ti.decode(t)}function fl(t){let e=_t("noise-libp2p-static-key:");return yt([e,t],e.length+t.length)}async function Ea(t,e,r){let n=await ba(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=fl(t);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(e.identitySig==null)throw new Error("Signature was missing from message");if(!await nl(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function ei(t){return!(!(t instanceof Uint8Array)||t.length!==32)}var ne=Rt(pl(),1);ne.default.formatters.b=t=>t==null?"undefined":Tt.baseEncode(t);ne.default.formatters.t=t=>t==null?"undefined":be.baseEncode(t);ne.default.formatters.m=t=>t==null?"undefined":rn.baseEncode(t);ne.default.formatters.p=t=>t==null?"undefined":t.toString();ne.default.formatters.c=t=>t==null?"undefined":t.toString();ne.default.formatters.k=t=>t==null?"undefined":t.toString();ne.default.formatters.a=t=>t==null?"undefined":t.toString();function b2(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function xn(t){let e=b2(`${t}:trace`);return ne.default.enabled(`${t}:trace`)&&ne.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,ne.default)(`${t}:trace`)),Object.assign((0,ne.default)(t),{error:(0,ne.default)(`${t}:error`),trace:e})}var Ft=xn("libp2p:noise");var he;s0?he=Ft:he=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function yl(t){he(`LOCAL_STATIC_PUBLIC_KEY ${st(t.publicKey,"hex")}`),he(`LOCAL_STATIC_PRIVATE_KEY ${st(t.privateKey,"hex")}`)}function Sa(t){t?(he(`LOCAL_PUBLIC_EPHEMERAL_KEY ${st(t.publicKey,"hex")}`),he(`LOCAL_PRIVATE_EPHEMERAL_KEY ${st(t.privateKey,"hex")}`)):he("Missing local ephemeral keys.")}function gl(t){he(`REMOTE_STATIC_PUBLIC_KEY ${st(t,"hex")}`)}function Ba(t){he(`REMOTE_EPHEMERAL_PUBLIC_KEY ${st(t,"hex")}`)}function ml(t){t.cs1&&t.cs2?(he(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${st(t.cs1.k,"hex")}`),he(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${st(t.cs2.k,"hex")}`)):he("Missing cipher state.")}var v2="Cipherstate has reached maximum n, a new handshake must be performed",oo=class{n;bytes;view;constructor(e=0){this.n=e,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,e,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>4294967295)throw new Error(v2)}};var so=class{crypto;constructor(e){this.crypto=e}encryptWithAd(e,r,n){let i=this.encrypt(e.k,e.n,r,n);return e.n.increment(),i}decryptWithAd(e,r,n,i){let{plaintext:o,valid:s}=this.decrypt(e.k,e.n,r,n,i);return s&&e.n.increment(),{plaintext:o,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(e){let r=this.createEmptyKey();return Ct(r,e)}encrypt(e,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,e)}encryptAndHash(e,r){let n;return this.hasKey(e.cs)?n=this.encryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,n),n}decrypt(e,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,e,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(e,r){let n,i=!0;return this.hasKey(e.cs)?{plaintext:n,valid:i}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:i}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Ft.error(i),new Uint8Array(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(yt([e,r],e.length+r.length))}mixKey(e,r){let[n,i]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(i),e.ck=n}initializeKey(e){return{k:e,n:new oo}}initializeSymmetric(e){let r=_t(e,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(e){if(e.length<=32){let r=new Uint8Array(32);return r.set(e),r}else return this.getHash(e,new Uint8Array(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,new Uint8Array(0),r.ciphertext)}};var ao=class extends so{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=new Uint8Array(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let o=e.e.publicKey;this.mixHash(e.ss,o);let s=this.encryptAndHash(e.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(e,r){e.e=this.crypto.generateX25519KeyPair();let n=e.e.publicKey;this.mixHash(e.ss,n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let i=e.s.publicKey,o=this.encryptAndHash(e.ss,i);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,i=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let o=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(e,r){return ei(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(ei(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&ei(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&ei(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return e?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let i;if(e.mc===0)i=this.writeMessageA(e.hs,r,n);else if(e.mc===1)i=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);i=s,e.h=o,e.cs1=a,e.cs2=c}else if(e.mc>2)if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,i}recvMessage(e,r){let n=new Uint8Array(0),i=!1;if(e.mc===0)({plaintext:n,valid:i}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:i}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(e.hs,r);n=s,i=a,e.h=o,e.cs1=c,e.cs2=f}return e.mc++,{plaintext:n,valid:i}}};var co=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(e,r,n,i,o,s,a,c){this.isInitiator=e,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new ao(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(yl(this.session.hs.s),this.isInitiator){Ft.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(O0(e)),Ft.trace("Stage 0 - Initiator finished sending first message."),Sa(this.session.hs.e)}else{Ft.trace("Stage 0 - Responder waiting to receive first message...");let e=V0((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new vr("xx handshake stage 0 validation fail");Ft.trace("Stage 0 - Responder received first message."),Ba(this.session.hs.re)}}async exchange(){if(this.isInitiator){Ft.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=q0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new vr("xx handshake stage 1 validation fail");Ft.trace("Stage 1 - Initiator received the message."),Ba(this.session.hs.re),gl(this.session.hs.rs),Ft.trace("Initiator going to check remote's signature...");try{let i=wa(r);this.remotePeer=this.remotePeer||await va(i),await Ea(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Dn(`Error occurred while verifying signed payload: ${o.message}`)}Ft.trace("All good with the signature!")}else{Ft.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(M0(e)),Ft.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Sa(this.session.hs.e)}}async finish(){if(this.isInitiator){Ft.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(F0(e)),Ft.trace("Stage 2 - Initiator sent message with signed payload.")}else{Ft.trace("Stage 2 - Responder waiting for third handshake message...");let e=H0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new vr("xx handshake stage 2 validation fail");Ft.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=wa(r);this.remotePeer=this.remotePeer||await va(i),await Ea(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Dn(`Error occurred while verifying signed payload: ${o.message}`)}}ml(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new vr("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?e.cs1:e.cs2:r?e.cs2:e.cs1}setRemoteNoiseExtension(e){e&&(this.remoteExtensions=e)}};function xl(t){return{xxHandshakeSuccesses:t.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:t.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:t.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:t.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:t.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var fo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(e={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=e;this.crypto=i??Zo,this.extensions=n,this.metrics=s?xl(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(e,r,n){let i=So(r,{lengthEncoder:Xr,lengthDecoder:kn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(e,r,n){let i=So(r,{lengthEncoder:Xr,lengthDecoder:kn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(e){let r=await cl(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:i,connection:o}=e,s=new co(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(e,r){let[n,i]=e0(),o=e.unwrap();return await n0(n,$0(r,this.metrics),o,s=>Sn(s,{lengthDecoder:kn}),W0(r,this.metrics),n),i}};function bl(t={}){return()=>new fo(t)}var wl=Symbol.for("@libp2p/transport");var vl;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(vl||(vl={}));var uo=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(o*=e,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var El=45,w2=15,bn=new uo;function Aa(t){if(!(t.length>w2))return bn.new(t).parseWith(()=>bn.readIPv4Addr())}function Ca(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>El))return bn.new(t).parseWith(()=>bn.readIPv6Addr())}function lo(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>El))return bn.new(t).parseWith(()=>bn.readIPAddr())}var w3=parseInt("0xFFFF",16),E3=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Al(t){return!!Aa(t)}function Cl(t){return!!Ca(t)}function ho(t){return!!lo(t)}var Il=Al,C2=Cl,Ia=function(t){let e=0;if(t=t.toString().trim(),Il(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(C2(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=Il(r[n]),s;o&&(s=Ia(r[n]),r[n]=st(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,st(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},Tl=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var vn={},Ta={},T2=[[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"]];T2.forEach(t=>{let e=_2(...t);Ta[e.code]=e,vn[e.name]=e});function _2(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function it(t){if(typeof t=="number"){if(Ta[t]!=null)return Ta[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(vn[t]!=null)return vn[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var oE=it("ip4"),sE=it("ip6"),aE=it("ipcidr");function La(t,e){switch(it(t).code){case 4:case 41:return R2(e);case 42:return Rl(e);case 6:case 273:case 33:case 132:return Pl(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Rl(e);case 421:return N2(e);case 444:return kl(e);case 445:return kl(e);case 466:return D2(e);default:return st(e,"base16")}}function Ra(t,e){switch(it(t).code){case 4:return _l(e);case 41:return _l(e);case 42:return Ll(e);case 6:case 273:case 33:case 132:return ka(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Ll(e);case 421:return k2(e);case 444:return U2(e);case 445:return K2(e);case 466:return P2(e);default:return _t(e,"base16")}}var _a=Object.values(Pe).map(t=>t.decoder),L2=function(){let t=_a[0].or(_a[1]);return _a.slice(2).forEach(e=>t=t.or(e)),t}();function _l(t){if(!ho(t))throw new Error("invalid ip address");return Ia(t)}function R2(t){let e=Tl(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!ho(e))throw new Error("invalid ip address");return e}function ka(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Pl(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Ll(t){let e=_t(t),r=Uint8Array.from(Je(e.length));return yt([r,e],r.length+e.length)}function Rl(t){let e=de(t);if(t=t.slice(Xt(e)),t.length!==e)throw new Error("inconsistent lengths");return st(t)}function k2(t){let e;t[0]==="Q"||t[0]==="1"?e=lr(Tt.decode(`z${t}`)).bytes:e=we.parse(t).multihash.bytes;let r=Uint8Array.from(Je(e.length));return yt([r,e],r.length+e.length)}function P2(t){let e=L2.decode(t),r=Uint8Array.from(Je(e.length));return yt([r,e],r.length+e.length)}function D2(t){let e=de(t),r=t.slice(Xt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+st(r,"base64url")}function N2(t){let e=de(t),r=t.slice(Xt(e));if(r.length!==e)throw new Error("inconsistent lengths");return st(r,"base58btc")}function U2(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let r=be.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ka(n);return yt([r,i],r.length+i.length)}function K2(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let r=be.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ka(n);return yt([r,i],r.length+i.length)}function kl(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=st(e,"base32"),i=Pl(r);return`${n}:${i}`}function Dl(t){t=Pa(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=it(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Ul("invalid address: "+t);if(a.path===!0){n=Pa(i.slice(o).join("/")),e.push([a.code,Ra(a.code,n)]),r.push([a.code,n]);break}let c=Ra(a.code,i[o]);e.push([a.code,c]),r.push([a.code,La(a.code,c)])}return{string:Nl(r),bytes:Na(e),tuples:e,stringTuples:r,path:n}}function Da(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=de(t,i),s=Xt(o),a=it(o),c=O2(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let f=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw Ul("Invalid address Uint8Array: "+st(t,"base16"));e.push([o,f]);let u=La(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:Nl(r),tuples:e,stringTuples:r,path:n}}function Nl(t){let e=[];return t.map(r=>{let n=it(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Pa(e.join("/"))}function Na(t){return yt(t.map(e=>{let r=it(e[0]),n=Uint8Array.from(Je(r.code));return e.length>1&&e[1]!=null&&(n=yt([n,e[1]])),n}))}function O2(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=de(e instanceof Uint8Array?e:Uint8Array.from(e));return r+Xt(r)}}function Pa(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function Ul(t){return new Error("Error parsing address: "+t)}var M2=Symbol.for("nodejs.util.inspect.custom"),F2=[it("dns").code,it("dns4").code,it("dns6").code,it("dnsaddr").code],V2=new Map,Ol=Symbol.for("@multiformats/js-multiaddr/multiaddr");function q2(t){return!!t?.[Ol]}var Kl=class t{bytes;#e;#t;#r;#n;[Ol]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Da(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=Dl(e)}else if(q2(e))r=Da(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=it("tcp"),a=it("udp"),c=it("ip4"),f=it("ip6"),u=it("dns6"),l=it("ip6zone");for(let[g,d]of this.stringTuples())g===l.code&&(o=`%${d??""}`),F2.includes(g)&&(r=s.name,i=443,n=`${d??""}${o}`,e=g===u.code?6:4),(g===s.code||g===a.code)&&(r=it(g).name,i=parseInt(d??"")),(g===c.code||g===f.code)&&(r=it(g).name,n=`${d??""}${o}`,e=g===f.code?6:4);if(e==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:r,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},it(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>it(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(Na(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===vn.p2p.code&&e.push([n,i]),n===vn["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?st(Tt.decode(`z${n}`),"base58btc"):st(we.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Ct(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=V2.get(r.name);if(n==null)throw new at(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[M2](){return`Multiaddr(${this.#e})`}};var po=xn("libp2p:webtransport:stream");async function Ua(t,e,r,n,i){let o=t.writable.getWriter(),s=t.readable.getReader();await o.ready;function a(){let h=n.findIndex(g=>g===l);h!==-1&&(n.splice(h,1),l.timeline.close=Date.now(),i?.(l))}let c=!1,f=!1;(async function(){let h=await o.closed.catch(g=>g);if(h!=null){let g=h.message;g.includes("aborted by the remote server")||g.includes("STOP_SENDING")||po.error(`WebTransport writer closed unexpectedly: streamId=${e} err=${h.message}`)}c=!0,c&&f&&a()})().catch(()=>{po.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await s.closed.catch(g=>g);h!=null&&po.error(`WebTransport reader closed unexpectedly: streamId=${e} err=${h.message}`),f=!0,c&&f&&a()}().catch(()=>{po.error("WebTransport failed to cleanup closed stream")});let u=!1,l={id:e,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){c||(o.abort(h),c=!0),f=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),a()},async close(h){this.status="closing",await Promise.all([l.closeRead(h),l.closeWrite(h)]),a(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!f){this.readStatus="closing";try{await s.cancel()}catch(g){g.toString().includes("RESET_STREAM")===!0&&(c=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",f=!0}c&&a()},async closeWrite(h){if(!c){c=!0,this.writeStatus="closing";try{await o.close()}catch(g){g.toString().includes("RESET_STREAM")===!0&&(f=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}f&&a()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await s.read();if(h.done===!0){f=!0,c&&a();return}yield new Jt(h.value)}}(),sink:async function(h){if(u)throw new Error("sink already called on stream");u=!0;try{this.writeStatus="writing";for await(let g of h)if(g instanceof Uint8Array)await o.write(g);else for(let d of g)await o.write(d);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await l.closeWrite()}}};return l}function Ka(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async t=>new Promise(()=>{})}}function Ml(t,e){return e.filter(n=>!!t.find(i=>Ct(n,i))).length===e.length}var H2=Object.values(Pe).map(t=>t.decoder).reduce((t,e)=>t.or(e));function z2(t){return ke.decode(H2.decode(t))}function Fl(t){let e=t.stringTuples(),{url:r,certhashes:n,remotePeer:i}=e.reduce((o,[s,a])=>{switch(s){case it("ip6").code:case it("dns6").code:a?.includes(":")===!0&&(a=`[${a}]`);case it("ip4").code:case it("dns4").code:if(o.seenHost||o.seenPort)throw new Error("Invalid multiaddr, saw host and already saw the host or port");return{...o,url:`${o.url}${a??""}`,seenHost:!0};case it("quic").code:case it("quic-v1").code:case it("webtransport").code:if(!o.seenHost||!o.seenPort)throw new Error("Invalid multiaddr, Didn't see host and port, but saw quic/webtransport");return o;case it("udp").code:if(o.seenPort)throw new Error("Invalid multiaddr, saw port but already saw the port");return{...o,url:`${o.url}:${a??""}`,seenPort:!0};case it("certhash").code:if(!o.seenHost||!o.seenPort)throw new Error("Invalid multiaddr, saw the certhash before seeing the host and port");return{...o,certhashes:o.certhashes.concat([z2(a??"")])};case it("p2p").code:return{...o,remotePeer:xa(a??"")};default:throw new Error(`unexpected component in multiaddr: ${s} ${it(s).name} ${a??""} `)}},{url:"https://",seenHost:!1,seenPort:!1,certhashes:[]});return{url:r,certhashes:n,remotePeer:i}}var ie=xn("libp2p:webtransport"),Oa=class{components;config;constructor(e,r={}){this.components=e,this.config={maxInboundStreams:r.maxInboundStreams??1e3}}[Symbol.toStringTag]="@libp2p/webtransport";[wl]=!0;async dial(e,r){r?.signal?.throwIfAborted(),ie("dialing %s",e);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=Fl(e);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{};try{let u=!1,l=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{try{if(c!=null){if(c.timeline.close!=null)return;c.timeline.close=Date.now()}if(u)return;l.close(h)}catch(g){ie.error("error closing wt session",g)}finally{u=!0}},l.closed.then(async()=>{await c?.close()}).catch(h=>{ie.error("error on remote wt session close",h),c?.abort(h)}).finally(()=>{c==null&&f()}),a=()=>{a!=null&&r.signal?.removeEventListener("abort",a),f()},r.signal?.addEventListener("abort",a),await l.ready,!await this.authenticateWebTransport(l,n,s,o))throw new Error("Failed to authenticate webtransport");return c={close:async h=>{ie("Closing webtransport"),f()},abort:h=>{ie("aborting webtransport due to passed err",h),f({closeCode:0,reason:h.message})},remoteAddr:e,timeline:{open:Date.now()},...Ka()},r?.signal?.throwIfAborted(),await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(l,f),skipProtection:!0})}catch(u){throw ie.error("caught wt session err",u),f({closeCode:0,reason:u.message}),u}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(e,r,n,i){let o=await e.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done===!0)break}}(),sink:async function(l){for await(let h of l)await s.write(h)}},f=bl()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{ie.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{ie.error(`Failed to close authentication stream reader: ${l.message}`)}),!Ml(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(e,r){let n=0,i=this.config;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=e.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f===!0)break;if(s.length>=i.maxInboundStreams)u.writable.close().catch(l=>{ie.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{ie.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await Ua(u,String(n++),"inbound",s,o?.onStreamEnd);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{ie.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await e.createBidirectionalStream(),u=await Ua(f,String(n++),o?.direction??"outbound",s,o?.onStreamEnd);return s.push(u),u},close:async c=>{ie("Closing webtransport muxer"),r()},abort:c=>{ie("Aborting webtransport muxer with err:",c),r({closeCode:0,reason:c.message})},...Ka()}}}}createListener(e){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(e){return e.filter(r=>r.protoNames().includes("webtransport"))}};function G2(t={}){return e=>new Oa(e,t)}return th($2);})();
15
+ `+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function ip(t){return t.replace(/^\s+/,"")}});var Ic=tt((Ab,Cc)=>{var Ie=gt();Er();kt();var Sc=Cc.exports=Ie.sha256=Ie.sha256||{};Ie.md.sha256=Ie.md.algorithms.sha256=Sc;Sc.create=function(){Bc||op();var t=null,e=Ie.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Ie.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=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 e.putBytes(i),Ec(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Ie.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(fs.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};Ec(l,r,i);var h=Ie.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var fs=null,Bc=!1,Ac=null;function op(){fs=String.fromCharCode(128),fs+=Ie.util.fillString(String.fromCharCode(0),64),Ac=[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],Bc=!0}function Ec(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,E=r.length();E>=64;){for(f=0;f<16;++f)e[f]=r.getInt32();for(;f<64;++f)n=e[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[f]=n+e[f-7]+i+e[f-16]|0;for(u=t.h0,l=t.h1,h=t.h2,g=t.h3,d=t.h4,p=t.h5,y=t.h6,m=t.h7,f=0;f<64;++f)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=y^d&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|h&(u^l),n=m+s+a+Ac[f]+e[f],i=o+c,m=y,y=p,p=d,d=g+n>>>0,g=h,h=l,l=u,u=n+i>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+g|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+y|0,t.h7=t.h7+m|0,E-=64}}});var _c=tt((Cb,Tc)=>{var Te=gt();kt();var Oi=null;Te.util.isNodejs&&!Te.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Oi=Ni());var sp=Tc.exports=Te.prng=Te.prng||{};sp.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(f,u){if(!u)return e.generateSync(f);var l=e.plugin.cipher,h=e.plugin.increment,g=e.plugin.formatKey,d=e.plugin.formatSeed,p=Te.util.createBuffer();e.key=null,y();function y(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return Te.util.nextTick(function(){o(y)});var E=l(e.key,e.seed);e.generated+=E.length,p.putBytes(E),e.key=g(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Te.util.setImmediate(y)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,g=e.plugin.formatSeed;e.key=null;for(var d=Te.util.createBuffer();d.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=u(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(u(e.key,l(e.seed))),e.seed=g(u(e.key,e.seed))}return d.getBytes(f)};function o(f){if(e.pools[0].messageLength>=32)return a(),f();var u=32-e.pools[0].messageLength<<5;e.seedFile(u,function(l,h){if(l)return f(l);e.collect(h),a(),f()})}function s(){if(e.pools[0].messageLength>=32)return a();var f=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(f)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var f=e.plugin.md.create();f.update(e.keyBytes);for(var u=1,l=0;l<32;++l)e.reseeds%u===0&&(f.update(e.pools[l].digest().getBytes()),e.pools[l].start()),u=u<<1;e.keyBytes=f.digest().getBytes(),f.start(),f.update(e.keyBytes);var h=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(f){var u=null,l=Te.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(w){return h.getRandomValues(w)});var g=Te.util.createBuffer();if(u)for(;g.length()<f;){var d=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(w){if(!(typeof QuotaExceededError<"u"&&w instanceof QuotaExceededError))throw w}}if(g.length()<f)for(var m,E,x,A=Math.floor(Math.random()*65536);g.length()<f;){E=16807*(A&65535),m=16807*(A>>16),E+=(m&32767)<<16,E+=m>>15,E=(E&2147483647)+(E>>31),A=E&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 Oi?(e.seedFile=function(f,u){Oi.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},e.seedFileSync=function(f){return Oi.randomBytes(f).toString()}):(e.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},e.seedFileSync=c),e.collect=function(f){for(var u=f.length,l=0;l<u;++l)e.pools[e.pool].update(f.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(f,u){for(var l="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,h){function g(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var h=l.data;h.forge&&h.forge.prng&&e.seedFile(h.forge.prng.needed,function(g,d){f.postMessage({forge:{prng:{err:g,bytes:d}}})})};f.addEventListener("message",u)}},e}});var Mn=tt((Ib,us)=>{var Ot=gt();cs();Ic();_c();kt();(function(){if(Ot.random&&Ot.random.getBytes){us.exports=Ot.random;return}(function(t){var e={},r=new Array(4),n=Ot.util.createBuffer();e.formatKey=function(l){var h=Ot.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Ot.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=Ot.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return Ot.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=Ot.md.sha256;function i(){var l=Ot.prng.create(e);return l.getBytes=function(h,g){return l.generate(h,g)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=Ot.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ot.options.usePureJavaScript||!Ot.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ot.random)Ot.random=o;else for(var u in o)Ot.random[u]=o[u];Ot.random.createInstance=i,us.exports=Ot.random})(typeof jQuery<"u"?jQuery:null)})()});var Pc=tt((Tb,kc)=>{var Qt=gt();kt();var ls=[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],Lc=[1,2,3,5],ap=function(t,e){return t<<e&65535|(t&65535)>>16-e},cp=function(t,e){return(t&65535)>>e|t<<16-e&65535};kc.exports=Qt.rc2=Qt.rc2||{};Qt.rc2.expandKey=function(t,e){typeof t=="string"&&(t=Qt.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(ls[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,ls[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,ls[r.at(a+1)^r.at(a+o)]);return r};var Rc=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(t=Qt.rc2.expandKey(t,e),f=0;f<64;f++)l.push(t.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=ap(d[f],Lc[f]),u++},c=function(d){for(f=0;f<4;f++)d[f]+=l[d[(f+3)%4]&63]}):(a=function(d){for(f=3;f>=0;f--)d[f]=cp(d[f],Lc[f]),d[f]-=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),u--},c=function(d){for(f=3;f>=0;f--)d[f]-=l[d[(f+3)%4]&63]});var h=function(d){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var m=0;m<d.length;m++)for(var E=0;E<d[m][0];E++)d[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(d,p){d&&typeof d=="string"&&(d=Qt.util.createBuffer(d)),n=!1,i=Qt.util.createBuffer(),o=p||new Qt.util.createBuffer,s=d,g.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),E=o.at(m-1);E>m?p=!1:o.truncate(E)}return p}},g};Qt.rc2.startEncrypting=function(t,e,r){var n=Qt.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};Qt.rc2.createEncryptionCipher=function(t,e){return Rc(t,e,!0)};Qt.rc2.startDecrypting=function(t,e,r){var n=Qt.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};Qt.rc2.createDecryptionCipher=function(t,e){return Rc(t,e,!1)}});var Vi=tt((_b,Vc)=>{var hs=gt();Vc.exports=hs.jsbn=hs.jsbn||{};var $e,fp=0xdeadbeefcafe,Dc=(fp&16777215)==15715070;function P(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}hs.jsbn.BigInteger=P;function ft(){return new P(null)}function up(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function lp(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,f=this.data[t++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function Nc(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,f=this.data[t++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(P.prototype.am=Nc,$e=28):Dc&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=lp,$e=30):Dc&&navigator.appName!="Netscape"?(P.prototype.am=up,$e=26):(P.prototype.am=Nc,$e=28);P.prototype.DB=$e;P.prototype.DM=(1<<$e)-1;P.prototype.DV=1<<$e;var ds=52;P.prototype.FV=Math.pow(2,ds);P.prototype.F1=ds-$e;P.prototype.F2=2*$e-ds;var hp="0123456789abcdefghijklmnopqrstuvwxyz",Mi=new Array,Jr,ce;Jr="0".charCodeAt(0);for(ce=0;ce<=9;++ce)Mi[Jr++]=ce;Jr="a".charCodeAt(0);for(ce=10;ce<36;++ce)Mi[Jr++]=ce;Jr="A".charCodeAt(0);for(ce=10;ce<36;++ce)Mi[Jr++]=ce;function Uc(t){return hp.charAt(t)}function Kc(t,e){var r=Mi[t.charCodeAt(e)];return r??-1}function dp(t){for(var e=this.t-1;e>=0;--e)t.data[e]=this.data[e];t.t=this.t,t.s=this.s}function pp(t){this.t=1,this.s=t<0?-1:0,t>0?this.data[0]=t:t<-1?this.data[0]=t+this.DV:this.t=0}function cr(t){var e=ft();return e.fromInt(t),e}function yp(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=r==8?t[n]&255:Kc(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&P.ZERO.subTo(this,this)}function gp(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function mp(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=Uc(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=Uc(n));return i?o:"0"}function xp(){var t=ft();return P.ZERO.subTo(this,t),t}function bp(){return this.s<0?this.negate():this}function vp(t){var e=this.s-t.s;if(e!=0)return e;var r=this.t;if(e=r-t.t,e!=0)return this.s<0?-e:e;for(;--r>=0;)if((e=this.data[r]-t.data[r])!=0)return e;return 0}function Fi(t){var e=1,r;return(r=t>>>16)!=0&&(t=r,e+=16),(r=t>>8)!=0&&(t=r,e+=8),(r=t>>4)!=0&&(t=r,e+=4),(r=t>>2)!=0&&(t=r,e+=2),(r=t>>1)!=0&&(t=r,e+=1),e}function wp(){return this.t<=0?0:this.DB*(this.t-1)+Fi(this.data[this.t-1]^this.s&this.DM)}function Ep(t,e){var r;for(r=this.t-1;r>=0;--r)e.data[r+t]=this.data[r];for(r=t-1;r>=0;--r)e.data[r]=0;e.t=this.t+t,e.s=this.s}function Sp(t,e){for(var r=t;r<this.t;++r)e.data[r-t]=this.data[r];e.t=Math.max(this.t-t,0),e.s=this.s}function Bp(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function Ap(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function Cp(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function Ip(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&P.ZERO.subTo(e,e)}function Tp(t){for(var e=this.abs(),r=t.t=2*e.t;--r>=0;)t.data[r]=0;for(r=0;r<e.t-1;++r){var n=e.am(r,e.data[r],t,2*r,0,1);(t.data[r+e.t]+=e.am(r+1,2*e.data[r],t,2*r+1,n,e.t-r-1))>=e.DV&&(t.data[r+e.t]-=e.DV,t.data[r+e.t+1]=1)}t.t>0&&(t.data[t.t-1]+=e.am(r,e.data[r],t,2*r,0,1)),t.s=0,t.clamp()}function _p(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=ft());var o=ft(),s=this.s,a=t.s,c=this.DB-Fi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,g=(1<<this.F1)/l,d=1<<this.F2,p=r.t,y=p-f,m=e??ft();for(o.dlShiftTo(y,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),P.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var E=r.data[--p]==u?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*g);if((r.data[p]+=o.am(0,E,r,y,0,f))<E)for(o.dlShiftTo(y,m),r.subTo(m,r);r.data[p]<--E;)r.subTo(m,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&P.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function Lp(t){var e=ft();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(P.ZERO)>0&&t.subTo(e,e),e}function Sr(t){this.m=t}function Rp(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function kp(t){return t}function Pp(t){t.divRemTo(this.m,null,t)}function Dp(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function Np(t,e){t.squareTo(e),this.reduce(e)}Sr.prototype.convert=Rp;Sr.prototype.revert=kp;Sr.prototype.reduce=Pp;Sr.prototype.mulTo=Dp;Sr.prototype.sqrTo=Np;function Up(){if(this.t<1)return 0;var t=this.data[0];if(!(t&1))return 0;var e=t&3;return e=e*(2-(t&15)*e)&15,e=e*(2-(t&255)*e)&255,e=e*(2-((t&65535)*e&65535))&65535,e=e*(2-t*e%this.DV)%this.DV,e>0?this.DV-e:-e}function Br(t){this.m=t,this.mp=t.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}function Kp(t){var e=ft();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(P.ZERO)>0&&this.m.subTo(e,e),e}function Op(t){var e=ft();return t.copyTo(e),this.reduce(e),e}function Mp(t){for(;t.t<=this.mt2;)t.data[t.t++]=0;for(var e=0;e<this.m.t;++e){var r=t.data[e]&32767,n=r*this.mpl+((r*this.mph+(t.data[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(r=e+this.m.t,t.data[r]+=this.m.am(0,n,t,e,0,this.m.t);t.data[r]>=t.DV;)t.data[r]-=t.DV,t.data[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)}function Fp(t,e){t.squareTo(e),this.reduce(e)}function Vp(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Br.prototype.convert=Kp;Br.prototype.revert=Op;Br.prototype.reduce=Mp;Br.prototype.mulTo=Vp;Br.prototype.sqrTo=Fp;function qp(){return(this.t>0?this.data[0]&1:this.s)==0}function Hp(t,e){if(t>4294967295||t<1)return P.ONE;var r=ft(),n=ft(),i=e.convert(this),o=Fi(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function zp(t,e){var r;return t<256||e.isEven()?r=new Sr(e):r=new Br(e),this.exp(t,r)}P.prototype.copyTo=dp;P.prototype.fromInt=pp;P.prototype.fromString=yp;P.prototype.clamp=gp;P.prototype.dlShiftTo=Ep;P.prototype.drShiftTo=Sp;P.prototype.lShiftTo=Bp;P.prototype.rShiftTo=Ap;P.prototype.subTo=Cp;P.prototype.multiplyTo=Ip;P.prototype.squareTo=Tp;P.prototype.divRemTo=_p;P.prototype.invDigit=Up;P.prototype.isEven=qp;P.prototype.exp=Hp;P.prototype.toString=mp;P.prototype.negate=xp;P.prototype.abs=bp;P.prototype.compareTo=vp;P.prototype.bitLength=wp;P.prototype.mod=Lp;P.prototype.modPowInt=zp;P.ZERO=cr(0);P.ONE=cr(1);function Gp(){var t=ft();return this.copyTo(t),t}function $p(){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 Wp(){return this.t==0?this.s:this.data[0]<<24>>24}function Yp(){return this.t==0?this.s:this.data[0]<<16>>16}function Zp(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Xp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Qp(t){if(t==null&&(t=10),this.signum()==0||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=cr(r),i=ft(),o=ft(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function jp(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=Kc(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&P.ZERO.subTo(this,this)}function Jp(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(P.ONE.shiftLeft(t-1),ps,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(P.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function ty(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function ey(t){return this.compareTo(t)==0}function ry(t){return this.compareTo(t)<0?this:t}function ny(t){return this.compareTo(t)>0?this:t}function iy(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function oy(t,e){return t&e}function sy(t){var e=ft();return this.bitwiseTo(t,oy,e),e}function ps(t,e){return t|e}function ay(t){var e=ft();return this.bitwiseTo(t,ps,e),e}function Oc(t,e){return t^e}function cy(t){var e=ft();return this.bitwiseTo(t,Oc,e),e}function Mc(t,e){return t&~e}function fy(t){var e=ft();return this.bitwiseTo(t,Mc,e),e}function uy(){for(var t=ft(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function ly(t){var e=ft();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function hy(t){var e=ft();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function dy(t){if(t==0)return-1;var e=0;return t&65535||(t>>=16,e+=16),t&255||(t>>=8,e+=8),t&15||(t>>=4,e+=4),t&3||(t>>=2,e+=2),t&1||++e,e}function py(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+dy(this.data[t]);return this.s<0?this.t*this.DB:-1}function yy(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function gy(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=yy(this.data[r]^e);return t}function my(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function xy(t,e){var r=P.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function by(t){return this.changeBit(t,ps)}function vy(t){return this.changeBit(t,Mc)}function wy(t){return this.changeBit(t,Oc)}function Ey(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function Sy(t){var e=ft();return this.addTo(t,e),e}function By(t){var e=ft();return this.subTo(t,e),e}function Ay(t){var e=ft();return this.multiplyTo(t,e),e}function Cy(t){var e=ft();return this.divRemTo(t,e,null),e}function Iy(t){var e=ft();return this.divRemTo(t,null,e),e}function Ty(t){var e=ft(),r=ft();return this.divRemTo(t,e,r),new Array(e,r)}function _y(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function Ly(t,e){if(t!=0){for(;this.t<=e;)this.data[this.t++]=0;for(this.data[e]+=t;this.data[e]>=this.DV;)this.data[e]-=this.DV,++e>=this.t&&(this.data[this.t++]=0),++this.data[e]}}function Fn(){}function Fc(t){return t}function Ry(t,e,r){t.multiplyTo(e,r)}function ky(t,e){t.squareTo(e)}Fn.prototype.convert=Fc;Fn.prototype.revert=Fc;Fn.prototype.mulTo=Ry;Fn.prototype.sqrTo=ky;function Py(t){return this.exp(t,new Fn)}function Dy(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function Ny(t,e,r){--e;var n=r.t=this.t+t.t-e;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(e-this.t,0);n<t.t;++n)r.data[this.t+n-e]=this.am(e-n,t.data[n],r,0,0,this.t+n-e);r.clamp(),r.drShiftTo(1,r)}function tn(t){this.r2=ft(),this.q3=ft(),P.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function Uy(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=ft();return t.copyTo(e),this.reduce(e),e}function Ky(t){return t}function Oy(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)}function My(t,e){t.squareTo(e),this.reduce(e)}function Fy(t,e,r){t.multiplyTo(e,r),this.reduce(r)}tn.prototype.convert=Uy;tn.prototype.revert=Ky;tn.prototype.reduce=Oy;tn.prototype.mulTo=Fy;tn.prototype.sqrTo=My;function Vy(t,e){var r=t.bitLength(),n,i=cr(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 Sr(e):e.isEven()?o=new tn(e):o=new Br(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=ft();for(o.sqrTo(s[1],u);a<=f;)s[a]=ft(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,h,g=!0,d=ft(),p;for(r=Fi(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&f:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[h].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function qy(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function Hy(t){if(t<=0)return 0;var e=this.DV%t,r=this.s<0?t-1:0;if(this.t>0)if(e==0)r=this.data[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this.data[n])%t;return r}function zy(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return P.ZERO;for(var r=t.clone(),n=this.clone(),i=cr(1),o=cr(0),s=cr(0),a=cr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(P.ONE)!=0)return P.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var xe=[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],Gy=(1<<26)/xe[xe.length-1];function $y(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=xe[xe.length-1]){for(e=0;e<xe.length;++e)if(r.data[0]==xe[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<xe.length;){for(var n=xe[e],i=e+1;i<xe.length&&n<Gy;)n*=xe[i++];for(n=r.modInt(n);e<i;)if(n%xe[e++]==0)return!1}return r.millerRabin(t)}function Wy(t){var e=this.subtract(P.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Yy(),o,s=0;s<t;++s){do o=new P(this.bitLength(),i);while(o.compareTo(P.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(P.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(P.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function Yy(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Zp;P.prototype.toRadix=Qp;P.prototype.fromRadix=jp;P.prototype.fromNumber=Jp;P.prototype.bitwiseTo=iy;P.prototype.changeBit=xy;P.prototype.addTo=Ey;P.prototype.dMultiply=_y;P.prototype.dAddOffset=Ly;P.prototype.multiplyLowerTo=Dy;P.prototype.multiplyUpperTo=Ny;P.prototype.modInt=Hy;P.prototype.millerRabin=Wy;P.prototype.clone=Gp;P.prototype.intValue=$p;P.prototype.byteValue=Wp;P.prototype.shortValue=Yp;P.prototype.signum=Xp;P.prototype.toByteArray=ty;P.prototype.equals=ey;P.prototype.min=ry;P.prototype.max=ny;P.prototype.and=sy;P.prototype.or=ay;P.prototype.xor=cy;P.prototype.andNot=fy;P.prototype.not=uy;P.prototype.shiftLeft=ly;P.prototype.shiftRight=hy;P.prototype.getLowestSetBit=py;P.prototype.bitCount=gy;P.prototype.testBit=my;P.prototype.setBit=by;P.prototype.clearBit=vy;P.prototype.flipBit=wy;P.prototype.add=Sy;P.prototype.subtract=By;P.prototype.multiply=Ay;P.prototype.divide=Cy;P.prototype.remainder=Iy;P.prototype.divideAndRemainder=Ty;P.prototype.modPow=Vy;P.prototype.modInverse=zy;P.prototype.pow=Py;P.prototype.gcd=qy;P.prototype.isProbablePrime=$y});var $c=tt((Lb,Gc)=>{var _e=gt();Er();kt();var Hc=Gc.exports=_e.sha1=_e.sha1||{};_e.md.sha1=_e.md.algorithms.sha1=Hc;Hc.create=function(){zc||Zy();var t=null,e=_e.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=_e.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=_e.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),qc(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=_e.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(ys.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};qc(l,r,i);var h=_e.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var ys=null,zc=!1;function Zy(){ys=String.fromCharCode(128),ys+=_e.util.fillString(String.fromCharCode(0),64),zc=!0}function qc(t,e,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,u=0;u<16;++u)n=r.getInt32(),e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var Zc=tt((Rb,Yc)=>{var Le=gt();kt();Mn();$c();var Wc=Yc.exports=Le.pkcs1=Le.pkcs1||{};Wc.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Le.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=e.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",h=c-e.length,g=0;g<h;g++)l+="\0";var d=u.getBytes()+l+""+e;if(!i)i=Le.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=qi(i,a-o.digestLength-1,s),y=Le.util.xorBytes(d,p,d.length),m=qi(y,o.digestLength,s),E=Le.util.xorBytes(i,m,i.length);return"\0"+E+y};Wc.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=e.length,y.expectedLength=s,y}if(i===void 0?i=Le.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),f=e.substring(1,i.digestLength+1),u=e.substring(1+i.digestLength),l=qi(u,i.digestLength,o),h=Le.util.xorBytes(f,l,f.length),g=qi(h,s-i.digestLength-1,o),d=Le.util.xorBytes(u,g,u.length),p=d.substring(0,i.digestLength),y=c!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==p.charAt(m);for(var E=1,x=i.digestLength,A=i.digestLength;A<d.length;A++){var w=d.charCodeAt(A),v=w&1^1,L=E?65534:0;y|=w&L,E=E&v,x+=E}if(y||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function qi(t,e,r){r||(r=Le.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var Xc=tt((kb,gs)=>{var fr=gt();kt();Vi();Mn();(function(){if(fr.prime){gs.exports=fr.prime;return}var t=gs.exports=fr.prime=fr.prime||{},e=fr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,g){typeof h=="function"&&(g=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||fr.random,y={nextBytes:function(m){for(var E=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=E.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,y,d.options,g);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,g,d){return"workers"in g?c(l,h,g,d):s(l,h,g,d)}function s(l,h,g,d){var p=f(l,h),y=0,m=u(p.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var E=10;"maxBlockTime"in g&&(E=g.maxBlockTime),a(p,l,h,y,m,E,d)}function a(l,h,g,d,p,y,m){var E=+new Date;do{if(l.bitLength()>h&&(l=f(h,g)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(y<0||+new Date-E<y);fr.util.setImmediate(function(){a(l,h,g,d,p,y,m)})}function c(l,h,g,d){if(typeof Worker>"u")return s(l,h,g,d);var p=f(l,h),y=g.workers,m=g.workLoad||100,E=m*30/8,x=g.workerScript||"forge/prime.worker.js";if(y===-1)return fr.util.estimateCores(function(w,v){w&&(v=2),y=v-1,A()});A();function A(){y=Math.max(1,y);for(var w=[],v=0;v<y;++v)w[v]=new Worker(x);for(var L=y,v=0;v<y;++v)w[v].addEventListener("message",N);var _=!1;function N(M){if(!_){--L;var K=M.data;if(K.found){for(var F=0;F<w.length;++F)w[F].terminate();return _=!0,d(null,new e(K.prime,16))}p.bitLength()>l&&(p=f(l,h));var H=p.toString(16);M.target.postMessage({hex:H,workLoad:m}),p.dAddOffset(E,0)}}}}function f(l,h){var g=new e(l,h),d=l-1;return g.testBit(d)||g.bitwiseTo(e.ONE.shiftLeft(d),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var zi=tt((Pb,nf)=>{var W=gt();On();Vi();Ti();Zc();Xc();Mn();kt();typeof ct>"u"&&(ct=W.jsbn.BigInteger);var ct,ms=W.util.isNodejs?Ni():null,B=W.asn1,fe=W.util;W.pki=W.pki||{};nf.exports=W.pki.rsa=W.rsa=W.rsa||{};var j=W.pki,Xy=[6,4,2,4,2,4,6,2],Qy={name:"PrivateKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},jy={name:"RSAPrivateKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Jy={name:"RSAPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},t1=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},e1={name:"DigestInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:B.Class.UNIVERSAL,type:B.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},r1=function(t){var e;if(t.algorithm in j.oids)e=j.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=B.oidToDer(e).getBytes(),i=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[]),o=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[]);o.value.push(B.create(B.Class.UNIVERSAL,B.Type.OID,!1,n)),o.value.push(B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,""));var s=B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),B.toDer(i).getBytes()},ef=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(ct.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(ct.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new ct(W.util.bytesToHex(W.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(ct.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};j.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=rf(t,e,r)):(i=W.util.createBuffer(),i.putBytes(t));for(var s=new ct(i.toHex(),16),a=ef(s,e,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};j.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new ct(W.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=ef(s,e,r),c=a.toString(16),f=W.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),n!==!1?Hi(f.getBytes(),e,r):f.getBytes()};j.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||W.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:t,rng:i,eInt:e||65537,e:new ct(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};j.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new ct(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,f=c-1;t.pqState===0?(t.num=new ct(c,t.rng),t.num.testBit(f)||t.num.bitwiseTo(ct.ONE.shiftLeft(f),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(i1(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Xy[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(ct.ONE).gcd(t.e).compareTo(ct.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(ct.ONE),t.q1=t.q.subtract(ct.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(ct.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var u=t.e.modInverse(t.phi);t.keys={privateKey:j.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:j.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};j.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(Qc("generateKeyPair"))return ms.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:j.privateKeyFromPem(f),publicKey:j.publicKeyFromPem(c)})});if(jc("generateKey")&&jc("exportKey"))return fe.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:tf(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return fe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=j.privateKeyFromAsn1(B.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:j.setRsaPublicKey(c.n,c.e)})}});if(Jc("generateKey")&&Jc("exportKey")){var i=fe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:tf(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=fe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=j.privateKeyFromAsn1(B.fromDer(W.util.createBuffer(l)));n(null,{privateKey:h,publicKey:j.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(Qc("generateKeyPairSync")){var o=ms.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:j.privateKeyFromPem(o.privateKey),publicKey:j.publicKeyFromPem(o.publicKey)}}}var s=j.rsa.createKeyPairGenerationState(t,e,r);if(!n)return j.rsa.stepKeyPairGenerationState(s,0),s.keys;n1(s,r,n)};j.setRsaPublicKey=j.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return rf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return j.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=Hi(f,r,!0);var u=B.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!B.validate(u,e1,l,h)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=h,g}var d=B.derToOid(l.algorithmIdentifier);if(!(d===W.oids.md2||d===W.oids.md5||d===W.oids.sha1||d===W.oids.sha224||d===W.oids.sha256||d===W.oids.sha384||d===W.oids.sha512||d===W.oids["sha512-224"]||d===W.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=d,g}if((d===W.oids.md2||d===W.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Hi(f,r,!0),c===f}});var a=j.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};j.setRsaPrivateKey=j.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var h=j.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Hi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,d){return W.pkcs1.decode_rsa_oaep(d,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(h,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:r1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return j.rsa.encrypt(h,c,l)},c};j.wrapRsaPrivateKey=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,B.integerToDer(0).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(j.oids.rsaEncryption).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,"")]),B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,B.toDer(t).getBytes())])};j.privateKeyFromAsn1=function(t){var e={},r=[];if(B.validate(t,Qy,e,r)&&(t=B.fromDer(W.util.createBuffer(e.privateKey))),e={},r=[],!B.validate(t,jy,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(e.privateKeyModulus).toHex(),o=W.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(e.privateKeyPrime1).toHex(),c=W.util.createBuffer(e.privateKeyPrime2).toHex(),f=W.util.createBuffer(e.privateKeyExponent1).toHex(),u=W.util.createBuffer(e.privateKeyExponent2).toHex(),l=W.util.createBuffer(e.privateKeyCoefficient).toHex(),j.setRsaPrivateKey(new ct(i,16),new ct(o,16),new ct(s,16),new ct(a,16),new ct(c,16),new ct(f,16),new ct(u,16),new ct(l,16))};j.privateKeyToAsn1=j.privateKeyToRSAPrivateKey=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,B.integerToDer(0).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.n)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.e)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.d)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.p)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.q)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.dP)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.dQ)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.qInv))])};j.publicKeyFromAsn1=function(t){var e={},r=[];if(B.validate(t,t1,e,r)){var n=B.derToOid(e.publicKeyOid);if(n!==j.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!B.validate(t,Jy,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(e.publicKeyModulus).toHex(),s=W.util.createBuffer(e.publicKeyExponent).toHex();return j.setRsaPublicKey(new ct(o,16),new ct(s,16))};j.publicKeyToAsn1=j.publicKeyToSubjectPublicKeyInfo=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(j.oids.rsaEncryption).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,"")]),B.create(B.Class.UNIVERSAL,B.Type.BITSTRING,!1,[j.publicKeyToRSAPublicKey(t)])])};j.publicKeyToRSAPublicKey=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.n)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Re(t.e))])};function rf(t,e,r){var n=W.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=W.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(t),n}function Hi(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=W.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function n1(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(t.q=c,t.p.compareTo(t.q)<0){var f=t.p;t.p=t.q,t.q=f}if(t.p.subtract(ct.ONE).gcd(t.e).compareTo(ct.ONE)!==0){t.p=null,i();return}if(t.q.subtract(ct.ONE).gcd(t.e).compareTo(ct.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(ct.ONE),t.q1=t.q.subtract(ct.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(ct.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var u=t.e.modInverse(t.phi);t.keys={privateKey:j.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:j.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Re(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=W.util.hexToBytes(e);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function i1(t){return t<=100?27:t<=150?18:t<=200?15:t<=250?12:t<=300?9:t<=350?8:t<=400?7:t<=500?6:t<=600?5:t<=800?4:t<=1250?3:2}function Qc(t){return W.util.isNodejs&&typeof ms[t]=="function"}function jc(t){return typeof fe.globalScope<"u"&&typeof fe.globalScope.crypto=="object"&&typeof fe.globalScope.crypto.subtle=="object"&&typeof fe.globalScope.crypto.subtle[t]=="function"}function Jc(t){return typeof fe.globalScope<"u"&&typeof fe.globalScope.msCrypto=="object"&&typeof fe.globalScope.msCrypto.subtle=="object"&&typeof fe.globalScope.msCrypto.subtle[t]=="function"}function tf(t){for(var e=W.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var uf=tt((Db,ff)=>{var z=gt();cs();On();dc();Er();Ti();xc();wc();Mn();Pc();zi();kt();typeof of>"u"&&(of=z.jsbn.BigInteger);var of,I=z.asn1,rt=z.pki=z.pki||{};ff.exports=rt.pbe=z.pbe=z.pbe||{};var Ar=rt.oids,o1={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"}]},s1={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"}]}]},a1={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"}]};rt.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=z.random.getBytesSync(r.saltSize),i=r.count,o=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=Ar["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Ar["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Ar["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Ar.desCBC,l=z.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),d=cf(g),p=z.pkcs5.pbkdf2(e,n,i,s,d),y=z.random.getBytesSync(f),m=l(p);m.start(y),m.update(I.toDer(t)),m.finish(),c=m.output.getBytes();var E=c1(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(Ar.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(Ar.pkcs5PBKDF2).getBytes()),E]),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 z.util.ByteBuffer(n),p=rt.pbe.generatePkcs12Key(e,x,1,i,s),y=rt.pbe.generatePkcs12Key(e,x,2,i,s),m=z.des.createEncryptionCipher(p);m.start(y),m.update(I.toDer(t)),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(Ar["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 h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var A=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return A};rt.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!I.validate(t,o1,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=rt.pbe.getCipher(s,n.encryptionParams,e),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};rt.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(t).getBytes()};return z.pem.encode(r,{maxline:e})};rt.encryptedPrivateKeyFromPem=function(t){var e=z.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return I.fromDer(e.body)};rt.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=rt.wrapRsaPrivateKey(rt.privateKeyToAsn1(t));return n=rt.encryptPrivateKeyInfo(n,e,r),rt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=z.pbe.opensslDeriveBytes(e,o.substr(0,8),s),u=a(f);u.start(o),u.update(I.toDer(rt.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:z.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return z.pem.encode(l)};rt.decryptRsaPrivateKey=function(t,e){var r=null,n=z.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(e,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(z.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=rt.decryptPrivateKeyInfo(I.fromDer(r),e):r=I.fromDer(r),r!==null&&(r=rt.privateKeyFromAsn1(r)),r};rt.pbe.generatePkcs12Key=function(t,e,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),g=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new z.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(e.at(a%g));var m=f*Math.ceil(h/f),E=new z.util.ByteBuffer;for(a=0;a<m;a++)E.putByte(l.at(a%h));var x=y;x.putBuffer(E);for(var A=Math.ceil(i/c),w=1;w<=A;w++){var v=new z.util.ByteBuffer;v.putBytes(d.bytes()),v.putBytes(x.bytes());for(var L=0;L<n;L++)o.start(),o.update(v.getBytes()),v=o.digest();var _=new z.util.ByteBuffer;for(a=0;a<f;a++)_.putByte(v.at(a%c));var N=Math.ceil(g/f)+Math.ceil(h/f),M=new z.util.ByteBuffer;for(s=0;s<N;s++){var K=new z.util.ByteBuffer(x.getBytes(f)),F=511;for(a=_.length()-1;a>=0;a--)F=F>>8,F+=_.at(a)+K.at(a),K.setAt(a,F&255);M.putBuffer(K)}x=M,u.putBuffer(v)}return u.truncate(u.length()-i),u};rt.pbe.getCipher=function(t,e,r){switch(t){case rt.oids.pkcs5PBES2:return rt.pbe.getCipherForPBES2(t,e,r);case rt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case rt.oids["pbewithSHAAnd40BitRC2-CBC"]:return rt.pbe.getCipherForPKCS12PBE(t,e,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=t,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};rt.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!I.validate(e,s1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=I.derToOid(n.kdfOid),t!==rt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}if(t=I.derToOid(n.encOid),t!==rt.oids["aes128-CBC"]&&t!==rt.oids["aes192-CBC"]&&t!==rt.oids["aes256-CBC"]&&t!==rt.oids["des-EDE3-CBC"]&&t!==rt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(rt.oids[t]){case"aes128-CBC":c=16,f=z.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=z.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=z.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=z.des.createDecryptionCipher;break;case"desCBC":c=8,f=z.des.createDecryptionCipher;break}var u=af(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,g=f(l);return g.start(h),g};rt.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!I.validate(e,a1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=z.util.createBuffer(n.salt),a=z.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case rt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=z.des.startDecrypting;break;case rt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var m=z.rc2.createDecryptionCipher(p,40);return m.start(y,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=af(n.prfOid),h=rt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=rt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,g)};rt.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[sf(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(sf(n,i[s-1]+t+e));return i.join("").substr(0,r)};function sf(t,e){return t.start().update(e).digest().getBytes()}function af(t){var e;if(!t)e="hmacWithSHA1";else if(e=rt.oids[I.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return cf(e)}function cf(t){var e=z.md;switch(t){case"hmacWithSHA224":e=z.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function c1(t,e,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,t),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,z.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(rt.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var Kf=tt((_v,Uf)=>{"use strict";Uf.exports=yg;function yg(t,e){for(var r=new Array(arguments.length-1),n=0,i=2,o=!0;i<arguments.length;)r[n++]=arguments[i++];return new Promise(function(a,c){r[n]=function(u){if(o)if(o=!1,u)c(u);else{for(var l=new Array(arguments.length-1),h=0;h<l.length;)l[h++]=arguments[h];a.apply(null,l)}};try{t.apply(e||null,r)}catch(f){o&&(o=!1,c(f))}})}});var Vf=tt(Ff=>{"use strict";var Yi=Ff;Yi.length=function(e){var r=e.length;if(!r)return 0;for(var n=0;--r%4>1&&e.charAt(r)==="=";)++n;return Math.ceil(e.length*3)/4-n};var cn=new Array(64),Mf=new Array(123);for(Ee=0;Ee<64;)Mf[cn[Ee]=Ee<26?Ee+65:Ee<52?Ee+71:Ee<62?Ee-4:Ee-59|43]=Ee++;var Ee;Yi.encode=function(e,r,n){for(var i=null,o=[],s=0,a=0,c;r<n;){var f=e[r++];switch(a){case 0:o[s++]=cn[f>>2],c=(f&3)<<4,a=1;break;case 1:o[s++]=cn[c|f>>4],c=(f&15)<<2,a=2;break;case 2:o[s++]=cn[c|f>>6],o[s++]=cn[f&63],a=0;break}s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),s=0)}return a&&(o[s++]=cn[c],o[s++]=61,a===1&&(o[s++]=61)),i?(s&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))};var Of="invalid encoding";Yi.decode=function(e,r,n){for(var i=n,o=0,s,a=0;a<e.length;){var c=e.charCodeAt(a++);if(c===61&&o>1)break;if((c=Mf[c])===void 0)throw Error(Of);switch(o){case 0:s=c,o=1;break;case 1:r[n++]=s<<2|(c&48)>>4,s=c,o=2;break;case 2:r[n++]=(s&15)<<4|(c&60)>>2,s=c,o=3;break;case 3:r[n++]=(s&3)<<6|c,o=0;break}}if(o===1)throw Error(Of);return n-i};Yi.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}});var Hf=tt((Rv,qf)=>{"use strict";qf.exports=Zi;function Zi(){this._listeners={}}Zi.prototype.on=function(e,r,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:r,ctx:n||this}),this};Zi.prototype.off=function(e,r){if(e===void 0)this._listeners={};else if(r===void 0)this._listeners[e]=[];else for(var n=this._listeners[e],i=0;i<n.length;)n[i].fn===r?n.splice(i,1):++i;return this};Zi.prototype.emit=function(e){var r=this._listeners[e];if(r){for(var n=[],i=1;i<arguments.length;)n.push(arguments[i++]);for(i=0;i<r.length;)r[i].fn.apply(r[i++].ctx,n)}return this}});var Xf=tt((kv,Zf)=>{"use strict";Zf.exports=zf(zf);function zf(t){return typeof Float32Array<"u"?function(){var e=new Float32Array([-0]),r=new Uint8Array(e.buffer),n=r[3]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3]}function o(c,f,u){e[0]=c,f[u]=r[3],f[u+1]=r[2],f[u+2]=r[1],f[u+3]=r[0]}t.writeFloatLE=n?i:o,t.writeFloatBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],e[0]}function a(c,f){return r[3]=c[f],r[2]=c[f+1],r[1]=c[f+2],r[0]=c[f+3],e[0]}t.readFloatLE=n?s:a,t.readFloatBE=n?a:s}():function(){function e(n,i,o,s){var a=i<0?1:0;if(a&&(i=-i),i===0)n(1/i>0?0:2147483648,o,s);else if(isNaN(i))n(2143289344,o,s);else if(i>34028234663852886e22)n((a<<31|2139095040)>>>0,o,s);else if(i<11754943508222875e-54)n((a<<31|Math.round(i/1401298464324817e-60))>>>0,o,s);else{var c=Math.floor(Math.log(i)/Math.LN2),f=Math.round(i*Math.pow(2,-c)*8388608)&8388607;n((a<<31|c+127<<23|f)>>>0,o,s)}}t.writeFloatLE=e.bind(null,Gf),t.writeFloatBE=e.bind(null,$f);function r(n,i,o){var s=n(i,o),a=(s>>31)*2+1,c=s>>>23&255,f=s&8388607;return c===255?f?NaN:a*(1/0):c===0?a*1401298464324817e-60*f:a*Math.pow(2,c-150)*(f+8388608)}t.readFloatLE=r.bind(null,Wf),t.readFloatBE=r.bind(null,Yf)}(),typeof Float64Array<"u"?function(){var e=new Float64Array([-0]),r=new Uint8Array(e.buffer),n=r[7]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3],f[u+4]=r[4],f[u+5]=r[5],f[u+6]=r[6],f[u+7]=r[7]}function o(c,f,u){e[0]=c,f[u]=r[7],f[u+1]=r[6],f[u+2]=r[5],f[u+3]=r[4],f[u+4]=r[3],f[u+5]=r[2],f[u+6]=r[1],f[u+7]=r[0]}t.writeDoubleLE=n?i:o,t.writeDoubleBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],r[4]=c[f+4],r[5]=c[f+5],r[6]=c[f+6],r[7]=c[f+7],e[0]}function a(c,f){return r[7]=c[f],r[6]=c[f+1],r[5]=c[f+2],r[4]=c[f+3],r[3]=c[f+4],r[2]=c[f+5],r[1]=c[f+6],r[0]=c[f+7],e[0]}t.readDoubleLE=n?s:a,t.readDoubleBE=n?a:s}():function(){function e(n,i,o,s,a,c){var f=s<0?1:0;if(f&&(s=-s),s===0)n(0,a,c+i),n(1/s>0?0:2147483648,a,c+o);else if(isNaN(s))n(0,a,c+i),n(2146959360,a,c+o);else if(s>17976931348623157e292)n(0,a,c+i),n((f<<31|2146435072)>>>0,a,c+o);else{var u;if(s<22250738585072014e-324)u=s/5e-324,n(u>>>0,a,c+i),n((f<<31|u/4294967296)>>>0,a,c+o);else{var l=Math.floor(Math.log(s)/Math.LN2);l===1024&&(l=1023),u=s*Math.pow(2,-l),n(u*4503599627370496>>>0,a,c+i),n((f<<31|l+1023<<20|u*1048576&1048575)>>>0,a,c+o)}}}t.writeDoubleLE=e.bind(null,Gf,0,4),t.writeDoubleBE=e.bind(null,$f,4,0);function r(n,i,o,s,a){var c=n(s,a+i),f=n(s,a+o),u=(f>>31)*2+1,l=f>>>20&2047,h=4294967296*(f&1048575)+c;return l===2047?h?NaN:u*(1/0):l===0?u*5e-324*h:u*Math.pow(2,l-1075)*(h+4503599627370496)}t.readDoubleLE=r.bind(null,Wf,0,4),t.readDoubleBE=r.bind(null,Yf,4,0)}(),t}function Gf(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}function $f(t,e,r){e[r]=t>>>24,e[r+1]=t>>>16&255,e[r+2]=t>>>8&255,e[r+3]=t&255}function Wf(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16|t[e+3]<<24)>>>0}function Yf(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}});var Qf=tt((exports,module)=>{"use strict";module.exports=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(t){}return null}});var Jf=tt(jf=>{"use strict";var qs=jf;qs.length=function(e){for(var r=0,n=0,i=0;i<e.length;++i)n=e.charCodeAt(i),n<128?r+=1:n<2048?r+=2:(n&64512)===55296&&(e.charCodeAt(i+1)&64512)===56320?(++i,r+=4):r+=3;return r};qs.read=function(e,r,n){var i=n-r;if(i<1)return"";for(var o=null,s=[],a=0,c;r<n;)c=e[r++],c<128?s[a++]=c:c>191&&c<224?s[a++]=(c&31)<<6|e[r++]&63:c>239&&c<365?(c=((c&7)<<18|(e[r++]&63)<<12|(e[r++]&63)<<6|e[r++]&63)-65536,s[a++]=55296+(c>>10),s[a++]=56320+(c&1023)):s[a++]=(c&15)<<12|(e[r++]&63)<<6|e[r++]&63,a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,s)),a=0);return o?(a&&o.push(String.fromCharCode.apply(String,s.slice(0,a))),o.join("")):String.fromCharCode.apply(String,s.slice(0,a))};qs.write=function(e,r,n){for(var i=n,o,s,a=0;a<e.length;++a)o=e.charCodeAt(a),o<128?r[n++]=o:o<2048?(r[n++]=o>>6|192,r[n++]=o&63|128):(o&64512)===55296&&((s=e.charCodeAt(a+1))&64512)===56320?(o=65536+((o&1023)<<10)+(s&1023),++a,r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=o&63|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=o&63|128);return n-i}});var eu=tt((Dv,tu)=>{"use strict";tu.exports=gg;function gg(t,e,r){var n=r||8192,i=n>>>1,o=null,s=n;return function(c){if(c<1||c>i)return t(c);s+c>n&&(o=t(n),s=0);var f=e.call(o,s,s+=c);return s&7&&(s=(s|7)+1),f}}});var nu=tt((Nv,ru)=>{"use strict";ru.exports=Mt;var zn=Tr();function Mt(t,e){this.lo=t>>>0,this.hi=e>>>0}var Ir=Mt.zero=new Mt(0,0);Ir.toNumber=function(){return 0};Ir.zzEncode=Ir.zzDecode=function(){return this};Ir.length=function(){return 1};var mg=Mt.zeroHash="\0\0\0\0\0\0\0\0";Mt.fromNumber=function(e){if(e===0)return Ir;var r=e<0;r&&(e=-e);var n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new Mt(n,i)};Mt.from=function(e){if(typeof e=="number")return Mt.fromNumber(e);if(zn.isString(e))if(zn.Long)e=zn.Long.fromString(e);else return Mt.fromNumber(parseInt(e,10));return e.low||e.high?new Mt(e.low>>>0,e.high>>>0):Ir};Mt.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var r=~this.lo+1>>>0,n=~this.hi>>>0;return r||(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296};Mt.prototype.toLong=function(e){return zn.Long?new zn.Long(this.lo|0,this.hi|0,!!e):{low:this.lo|0,high:this.hi|0,unsigned:!!e}};var dr=String.prototype.charCodeAt;Mt.fromHash=function(e){return e===mg?Ir:new Mt((dr.call(e,0)|dr.call(e,1)<<8|dr.call(e,2)<<16|dr.call(e,3)<<24)>>>0,(dr.call(e,4)|dr.call(e,5)<<8|dr.call(e,6)<<16|dr.call(e,7)<<24)>>>0)};Mt.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)};Mt.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this};Mt.prototype.zzDecode=function(){var e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this};Mt.prototype.length=function(){var e=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?e<16384?e<128?1:2:e<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}});var Tr=tt(Hs=>{"use strict";var $=Hs;$.asPromise=Kf();$.base64=Vf();$.EventEmitter=Hf();$.float=Xf();$.inquire=Qf();$.utf8=Jf();$.pool=eu();$.LongBits=nu();$.isNode=!!(typeof globalThis<"u"&&globalThis&&globalThis.process&&globalThis.process.versions&&globalThis.process.versions.node);$.global=$.isNode&&globalThis||typeof window<"u"&&window||typeof self<"u"&&self||Hs;$.emptyArray=Object.freeze?Object.freeze([]):[];$.emptyObject=Object.freeze?Object.freeze({}):{};$.isInteger=Number.isInteger||function(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e};$.isString=function(e){return typeof e=="string"||e instanceof String};$.isObject=function(e){return e&&typeof e=="object"};$.isset=$.isSet=function(e,r){var n=e[r];return n!=null&&e.hasOwnProperty(r)?typeof n!="object"||(Array.isArray(n)?n.length:Object.keys(n).length)>0:!1};$.Buffer=function(){try{var t=$.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch{return null}}();$._Buffer_from=null;$._Buffer_allocUnsafe=null;$.newBuffer=function(e){return typeof e=="number"?$.Buffer?$._Buffer_allocUnsafe(e):new $.Array(e):$.Buffer?$._Buffer_from(e):typeof Uint8Array>"u"?e:new Uint8Array(e)};$.Array=typeof Uint8Array<"u"?Uint8Array:Array;$.Long=$.global.dcodeIO&&$.global.dcodeIO.Long||$.global.Long||$.inquire("long");$.key2Re=/^true|false|0|1$/;$.key32Re=/^-?(?:0|[1-9][0-9]*)$/;$.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;$.longToHash=function(e){return e?$.LongBits.from(e).toHash():$.LongBits.zeroHash};$.longFromHash=function(e,r){var n=$.LongBits.fromHash(e);return $.Long?$.Long.fromBits(n.lo,n.hi,r):n.toNumber(!!r)};function iu(t,e,r){for(var n=Object.keys(e),i=0;i<n.length;++i)(t[n[i]]===void 0||!r)&&(t[n[i]]=e[n[i]]);return t}$.merge=iu;$.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)};function ou(t){function e(r,n){if(!(this instanceof e))return new e(r,n);Object.defineProperty(this,"message",{get:function(){return r}}),Error.captureStackTrace?Error.captureStackTrace(this,e):Object.defineProperty(this,"stack",{value:new Error().stack||""}),n&&iu(this,n)}return e.prototype=Object.create(Error.prototype,{constructor:{value:e,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return t},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),e}$.newError=ou;$.ProtocolError=ou("ProtocolError");$.oneOfGetter=function(e){for(var r={},n=0;n<e.length;++n)r[e[n]]=1;return function(){for(var i=Object.keys(this),o=i.length-1;o>-1;--o)if(r[i[o]]===1&&this[i[o]]!==void 0&&this[i[o]]!==null)return i[o]}};$.oneOfSetter=function(e){return function(r){for(var n=0;n<e.length;++n)e[n]!==r&&delete this[e[n]]}};$.toJSONOptions={longs:String,enums:String,bytes:String,json:!0};$._configure=function(){var t=$.Buffer;if(!t){$._Buffer_from=$._Buffer_allocUnsafe=null;return}$._Buffer_from=t.from!==Uint8Array.from&&t.from||function(r,n){return new t(r,n)},$._Buffer_allocUnsafe=t.allocUnsafe||function(r){return new t(r)}}});var $s=tt((Kv,uu)=>{"use strict";uu.exports=Lt;var Se=Tr(),Gs,cu=Se.LongBits,xg=Se.utf8;function Be(t,e){return RangeError("index out of range: "+t.pos+" + "+(e||1)+" > "+t.len)}function Lt(t){this.buf=t,this.pos=0,this.len=t.length}var su=typeof Uint8Array<"u"?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new Lt(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new Lt(e);throw Error("illegal buffer")},fu=function(){return Se.Buffer?function(r){return(Lt.create=function(i){return Se.Buffer.isBuffer(i)?new Gs(i):su(i)})(r)}:su};Lt.create=fu();Lt.prototype._slice=Se.Array.prototype.subarray||Se.Array.prototype.slice;Lt.prototype.uint32=function(){var e=4294967295;return function(){if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,Be(this,10);return e}}();Lt.prototype.int32=function(){return this.uint32()|0};Lt.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(e&1)|0};function zs(){var t=new cu(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Be(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Be(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}Lt.prototype.bool=function(){return this.uint32()!==0};function Xi(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}Lt.prototype.fixed32=function(){if(this.pos+4>this.len)throw Be(this,4);return Xi(this.buf,this.pos+=4)};Lt.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Be(this,4);return Xi(this.buf,this.pos+=4)|0};function au(){if(this.pos+8>this.len)throw Be(this,8);return new cu(Xi(this.buf,this.pos+=4),Xi(this.buf,this.pos+=4))}Lt.prototype.float=function(){if(this.pos+4>this.len)throw Be(this,4);var e=Se.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e};Lt.prototype.double=function(){if(this.pos+8>this.len)throw Be(this,4);var e=Se.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e};Lt.prototype.bytes=function(){var e=this.uint32(),r=this.pos,n=this.pos+e;if(n>this.len)throw Be(this,e);if(this.pos+=e,Array.isArray(this.buf))return this.buf.slice(r,n);if(r===n){var i=Se.Buffer;return i?i.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,r,n)};Lt.prototype.string=function(){var e=this.bytes();return xg.read(e,0,e.length)};Lt.prototype.skip=function(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Be(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Be(this);while(this.buf[this.pos++]&128);return this};Lt.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this};Lt._configure=function(t){Gs=t,Lt.create=fu(),Gs._configure();var e=Se.Long?"toLong":"toNumber";Se.merge(Lt.prototype,{int64:function(){return zs.call(this)[e](!1)},uint64:function(){return zs.call(this)[e](!0)},sint64:function(){return zs.call(this).zzDecode()[e](!1)},fixed64:function(){return au.call(this)[e](!0)},sfixed64:function(){return au.call(this)[e](!1)}})}});var pu=tt((Ov,du)=>{"use strict";du.exports=_r;var hu=$s();(_r.prototype=Object.create(hu.prototype)).constructor=_r;var lu=Tr();function _r(t){hu.call(this,t)}_r._configure=function(){lu.Buffer&&(_r.prototype._slice=lu.Buffer.prototype.slice)};_r.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))};_r._configure()});var Js=tt((Mv,xu)=>{"use strict";xu.exports=ut;var ue=Tr(),Ws,Qi=ue.LongBits,yu=ue.base64,gu=ue.utf8;function Gn(t,e,r){this.fn=t,this.len=e,this.next=void 0,this.val=r}function Zs(){}function bg(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function ut(){this.len=0,this.head=new Gn(Zs,0,0),this.tail=this.head,this.states=null}var mu=function(){return ue.Buffer?function(){return(ut.create=function(){return new Ws})()}:function(){return new ut}};ut.create=mu();ut.alloc=function(e){return new ue.Array(e)};ue.Array!==Array&&(ut.alloc=ue.pool(ut.alloc,ue.Array.prototype.subarray));ut.prototype._push=function(e,r,n){return this.tail=this.tail.next=new Gn(e,r,n),this.len+=r,this};function Xs(t,e,r){e[r]=t&255}function vg(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}function Qs(t,e){this.len=t,this.next=void 0,this.val=e}Qs.prototype=Object.create(Gn.prototype);Qs.prototype.fn=vg;ut.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new Qs((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this};ut.prototype.int32=function(e){return e<0?this._push(js,10,Qi.fromNumber(e)):this.uint32(e)};ut.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)};function js(t,e,r){for(;t.hi;)e[r++]=t.lo&127|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[r++]=t.lo&127|128,t.lo=t.lo>>>7;e[r++]=t.lo}ut.prototype.uint64=function(e){var r=Qi.from(e);return this._push(js,r.length(),r)};ut.prototype.int64=ut.prototype.uint64;ut.prototype.sint64=function(e){var r=Qi.from(e).zzEncode();return this._push(js,r.length(),r)};ut.prototype.bool=function(e){return this._push(Xs,1,e?1:0)};function Ys(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}ut.prototype.fixed32=function(e){return this._push(Ys,4,e>>>0)};ut.prototype.sfixed32=ut.prototype.fixed32;ut.prototype.fixed64=function(e){var r=Qi.from(e);return this._push(Ys,4,r.lo)._push(Ys,4,r.hi)};ut.prototype.sfixed64=ut.prototype.fixed64;ut.prototype.float=function(e){return this._push(ue.float.writeFloatLE,4,e)};ut.prototype.double=function(e){return this._push(ue.float.writeDoubleLE,8,e)};var wg=ue.Array.prototype.set?function(e,r,n){r.set(e,n)}:function(e,r,n){for(var i=0;i<e.length;++i)r[n+i]=e[i]};ut.prototype.bytes=function(e){var r=e.length>>>0;if(!r)return this._push(Xs,1,0);if(ue.isString(e)){var n=ut.alloc(r=yu.length(e));yu.decode(e,n,0),e=n}return this.uint32(r)._push(wg,r,e)};ut.prototype.string=function(e){var r=gu.length(e);return r?this.uint32(r)._push(gu.write,r,e):this._push(Xs,1,0)};ut.prototype.fork=function(){return this.states=new bg(this),this.head=this.tail=new Gn(Zs,0,0),this.len=0,this};ut.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Gn(Zs,0,0),this.len=0),this};ut.prototype.ldelim=function(){var e=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=r,this.len+=n),this};ut.prototype.finish=function(){for(var e=this.head.next,r=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r};ut._configure=function(t){Ws=t,ut.create=mu(),Ws._configure()}});var wu=tt((Fv,vu)=>{"use strict";vu.exports=De;var bu=Js();(De.prototype=Object.create(bu.prototype)).constructor=De;var pr=Tr();function De(){bu.call(this)}De._configure=function(){De.alloc=pr._Buffer_allocUnsafe,De.writeBytesBuffer=pr.Buffer&&pr.Buffer.prototype instanceof Uint8Array&&pr.Buffer.prototype.set.name==="set"?function(e,r,n){r.set(e,n)}:function(e,r,n){if(e.copy)e.copy(r,n,0,e.length);else for(var i=0;i<e.length;)r[n++]=e[i++]}};De.prototype.bytes=function(e){pr.isString(e)&&(e=pr._Buffer_from(e,"base64"));var r=e.length>>>0;return this.uint32(r),r&&this._push(De.writeBytesBuffer,r,e),this};function Eg(t,e,r){t.length<40?pr.utf8.write(t,e,r):e.utf8Write?e.utf8Write(t,r):e.write(t,r)}De.prototype.string=function(e){var r=pr.Buffer.byteLength(e);return this.uint32(r),r&&this._push(Eg,r,e),this};De._configure()});var Pu=tt((Fw,ku)=>{var Et=gt();Er();kt();var Wn=ku.exports=Et.sha512=Et.sha512||{};Et.md.sha512=Et.md.algorithms.sha512=Wn;var Lu=Et.sha384=Et.sha512.sha384=Et.sha512.sha384||{};Lu.create=function(){return Wn.create("SHA-384")};Et.md.sha384=Et.md.algorithms.sha384=Lu;Et.sha512.sha256=Et.sha512.sha256||{create:function(){return Wn.create("SHA-512/256")}};Et.md["sha512/256"]=Et.md.algorithms["sha512/256"]=Et.sha512.sha256;Et.sha512.sha224=Et.sha512.sha224||{create:function(){return Wn.create("SHA-512/224")}};Et.md["sha512/224"]=Et.md.algorithms["sha512/224"]=Et.sha512.sha224;Wn.create=function(t){if(Ru||kg(),typeof t>"u"&&(t="SHA-512"),!(t in Dr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Dr[t],r=null,n=Et.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=Et.util.createBuffer(),r=new Array(e.length);for(var f=0;f<e.length;++f)r[f]=e[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=Et.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),_u(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Et.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(aa.substr(0,a.blockLength-u));for(var l,h,g=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,g+=h,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);_u(p,i,c);var y=Et.util.createBuffer(),m;t==="SHA-512"?m=p.length:t==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)y.putInt32(p[d][0]),(d!==m-1||t!=="SHA-512/224")&&y.putInt32(p[d][1]);return y},a};var aa=null,Ru=!1,ca=null,Dr=null;function kg(){aa=String.fromCharCode(128),aa+=Et.util.fillString(String.fromCharCode(0),128),ca=[[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]],Dr={},Dr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Dr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Dr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Dr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Ru=!0}function _u(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,E,x,A,w,v,L,_,N,M,K,F,H,X,C,k,T,R,S,U,O,q=r.length();q>=128;){for(C=0;C<16;++C)e[C][0]=r.getInt32()>>>0,e[C][1]=r.getInt32()>>>0;for(;C<80;++C)R=e[C-2],k=R[0],T=R[1],n=((k>>>19|T<<13)^(T>>>29|k<<3)^k>>>6)>>>0,i=((k<<13|T>>>19)^(T<<3|k>>>29)^(k<<26|T>>>6))>>>0,U=e[C-15],k=U[0],T=U[1],o=((k>>>1|T<<31)^(k>>>8|T<<24)^k>>>7)>>>0,s=((k<<31|T>>>1)^(k<<24|T>>>8)^(k<<25|T>>>7))>>>0,S=e[C-7],O=e[C-16],T=i+S[1]+s+O[1],e[C][0]=n+S[0]+o+O[0]+(T/4294967296>>>0)>>>0,e[C][1]=T>>>0;for(p=t[0][0],y=t[0][1],m=t[1][0],E=t[1][1],x=t[2][0],A=t[2][1],w=t[3][0],v=t[3][1],L=t[4][0],_=t[4][1],N=t[5][0],M=t[5][1],K=t[6][0],F=t[6][1],H=t[7][0],X=t[7][1],C=0;C<80;++C)f=((L>>>14|_<<18)^(L>>>18|_<<14)^(_>>>9|L<<23))>>>0,u=((L<<18|_>>>14)^(L<<14|_>>>18)^(_<<23|L>>>9))>>>0,l=(K^L&(N^K))>>>0,h=(F^_&(M^F))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&m|x&(p^m))>>>0,d=(y&E|A&(y^E))>>>0,T=X+u+h+ca[C][1]+e[C][1],n=H+f+l+ca[C][0]+e[C][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+d,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,H=K,X=F,K=N,F=M,N=L,M=_,T=v+i,L=w+n+(T/4294967296>>>0)>>>0,_=T>>>0,w=x,v=A,x=m,A=E,m=p,E=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=t[0][1]+y,t[0][0]=t[0][0]+p+(T/4294967296>>>0)>>>0,t[0][1]=T>>>0,T=t[1][1]+E,t[1][0]=t[1][0]+m+(T/4294967296>>>0)>>>0,t[1][1]=T>>>0,T=t[2][1]+A,t[2][0]=t[2][0]+x+(T/4294967296>>>0)>>>0,t[2][1]=T>>>0,T=t[3][1]+v,t[3][0]=t[3][0]+w+(T/4294967296>>>0)>>>0,t[3][1]=T>>>0,T=t[4][1]+_,t[4][0]=t[4][0]+L+(T/4294967296>>>0)>>>0,t[4][1]=T>>>0,T=t[5][1]+M,t[5][0]=t[5][0]+N+(T/4294967296>>>0)>>>0,t[5][1]=T>>>0,T=t[6][1]+F,t[6][0]=t[6][0]+K+(T/4294967296>>>0)>>>0,t[6][1]=T>>>0,T=t[7][1]+X,t[7][0]=t[7][0]+H+(T/4294967296>>>0)>>>0,t[7][1]=T>>>0,q-=128}}});var ll=tt((S4,ul)=>{var yn=1e3,gn=yn*60,mn=gn*60,Or=mn*24,a2=Or*7,c2=Or*365.25;ul.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return f2(t);if(r==="number"&&isFinite(t))return e.long?l2(t):u2(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function f2(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*c2;case"weeks":case"week":case"w":return r*a2;case"days":case"day":case"d":return r*Or;case"hours":case"hour":case"hrs":case"hr":case"h":return r*mn;case"minutes":case"minute":case"mins":case"min":case"m":return r*gn;case"seconds":case"second":case"secs":case"sec":case"s":return r*yn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function u2(t){var e=Math.abs(t);return e>=Or?Math.round(t/Or)+"d":e>=mn?Math.round(t/mn)+"h":e>=gn?Math.round(t/gn)+"m":e>=yn?Math.round(t/yn)+"s":t+"ms"}function l2(t){var e=Math.abs(t);return e>=Or?no(t,e,Or,"day"):e>=mn?no(t,e,mn,"hour"):e>=gn?no(t,e,gn,"minute"):e>=yn?no(t,e,yn,"second"):t+" ms"}function no(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var dl=tt((B4,hl)=>{function h2(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=ll(),r.destroy=f,Object.keys(t).forEach(u=>{r[u]=t[u]}),r.names=[],r.skips=[],r.formatters={};function e(u){let l=0;for(let h=0;h<u.length;h++)l=(l<<5)-l+u.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=e;function r(u){let l,h=null,g,d;function p(...y){if(!p.enabled)return;let m=p,E=Number(new Date),x=E-(l||E);m.diff=x,m.prev=l,m.curr=E,l=E,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,(v,L)=>{if(v==="%%")return"%";A++;let _=r.formatters[L];if(typeof _=="function"){let N=y[A];v=_.call(m,N),y.splice(A,1),A--}return v}),r.formatArgs.call(m,y),(m.log||r.log).apply(m,y)}return p.namespace=u,p.useColors=r.useColors(),p.color=r.selectColor(u),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(g!==r.namespaces&&(g=r.namespaces,d=r.enabled(u)),d),set:y=>{h=y}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let h=r(this.namespace+(typeof l>"u"?":":l)+u);return h.log=this.log,h}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,h=(typeof u=="string"?u:"").split(/[\s,]+/),g=h.length;for(l=0;l<g;l++)h[l]&&(u=h[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.slice(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function o(){let u=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,h;for(l=0,h=r.skips.length;l<h;l++)if(r.skips[l].test(u))return!1;for(l=0,h=r.names.length;l<h;l++)if(r.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(u){return u instanceof Error?u.stack||u.message:u}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}hl.exports=h2});var pl=tt((re,io)=>{re.formatArgs=p2;re.save=y2;re.load=g2;re.useColors=d2;re.storage=m2();re.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();re.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 d2(){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 p2(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+io.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}re.log=console.debug||console.log||(()=>{});function y2(t){try{t?re.storage.setItem("debug",t):re.storage.removeItem("debug")}catch{}}function g2(){let t;try{t=re.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function m2(){try{return localStorage}catch{}}io.exports=dl()(re);var{formatters:x2}=io.exports;x2.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var $2={};Dt($2,{webTransport:()=>G2});function je(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Oe(t=0){return globalThis.Buffer?.alloc!=null?je(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function oe(t=0){return globalThis.Buffer?.allocUnsafe!=null?je(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var eh=Math.pow(2,7),rh=Math.pow(2,14),nh=Math.pow(2,21),go=Math.pow(2,28),mo=Math.pow(2,35),xo=Math.pow(2,42),bo=Math.pow(2,49),ht=128,$t=127;function Xt(t){if(t<eh)return 1;if(t<rh)return 2;if(t<nh)return 3;if(t<go)return 4;if(t<mo)return 5;if(t<xo)return 6;if(t<bo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ih(t,e,r=0){switch(Xt(t)){case 8:e[r++]=t&255|ht,t/=128;case 7:e[r++]=t&255|ht,t/=128;case 6:e[r++]=t&255|ht,t/=128;case 5:e[r++]=t&255|ht,t/=128;case 4:e[r++]=t&255|ht,t>>>=7;case 3:e[r++]=t&255|ht,t>>>=7;case 2:e[r++]=t&255|ht,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function oh(t,e,r=0){switch(Xt(t)){case 8:e.set(r++,t&255|ht),t/=128;case 7:e.set(r++,t&255|ht),t/=128;case 6:e.set(r++,t&255|ht),t/=128;case 5:e.set(r++,t&255|ht),t/=128;case 4:e.set(r++,t&255|ht),t>>>=7;case 3:e.set(r++,t&255|ht),t>>>=7;case 2:e.set(r++,t&255|ht),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function sh(t,e){let r=t[e],n=0;if(n+=r&$t,r<ht||(r=t[e+1],n+=(r&$t)<<7,r<ht)||(r=t[e+2],n+=(r&$t)<<14,r<ht)||(r=t[e+3],n+=(r&$t)<<21,r<ht)||(r=t[e+4],n+=(r&$t)*go,r<ht)||(r=t[e+5],n+=(r&$t)*mo,r<ht)||(r=t[e+6],n+=(r&$t)*xo,r<ht)||(r=t[e+7],n+=(r&$t)*bo,r<ht))return n;throw new RangeError("Could not decode varint")}function ah(t,e){let r=t.get(e),n=0;if(n+=r&$t,r<ht||(r=t.get(e+1),n+=(r&$t)<<7,r<ht)||(r=t.get(e+2),n+=(r&$t)<<14,r<ht)||(r=t.get(e+3),n+=(r&$t)<<21,r<ht)||(r=t.get(e+4),n+=(r&$t)*go,r<ht)||(r=t.get(e+5),n+=(r&$t)*mo,r<ht)||(r=t.get(e+6),n+=(r&$t)*xo,r<ht)||(r=t.get(e+7),n+=(r&$t)*bo,r<ht))return n;throw new RangeError("Could not decode varint")}function Je(t,e,r=0){return e==null&&(e=oe(Xt(t))),e instanceof Uint8Array?ih(t,e,r):oh(t,e,r)}function de(t,e=0){return t instanceof Uint8Array?sh(t,e):ah(t,e)}function yt(t,e){e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=oe(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return je(r)}function Ct(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var Za=Symbol.for("@achingbrain/uint8arraylist");function Ya(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function ni(t){return!!t?.[Za]}var Jt=class t{constructor(...e){Object.defineProperty(this,Za,{value:!0}),this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ni(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(ni(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=Ya(this.bufs,e);return r.buf[r.index]}set(e,r){let n=Ya(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(ni(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return yt(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:yt(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=n,o}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let f=e>=a&&e<c,u=r>a&&r<=c;if(f&&u){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(f){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!ni(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let h=f;h>=0;h--){let g=this.get(l+h);if(n[h]!==g){u=Math.max(1,h-a[g]);break}}if(u===0)return l}return-1}getInt8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(e,r){let n=oe(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=Oe(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=Oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=Oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=oe(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=Oe(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=Oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=Oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=Oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=Oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Ct(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function ii(t){return t[Symbol.asyncIterator]!=null}var oi=t=>{let e=Xt(t),r=oe(e);return Je(t,r),oi.bytes=e,r};oi.bytes=0;function si(t,e){e=e??{};let r=e.lengthEncoder??oi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ii(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}si.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??oi;return new Jt(r(t.byteLength),t)};var Mr=Rt(ja(),1);var fh=8,uh=1024*1024*4,gr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(gr||(gr={}));var vo=t=>{let e=de(t);return vo.bytes=Xt(e),e};vo.bytes=0;function Sn(t,e){let r=new Jt,n=gr.LENGTH,i=-1,o=e?.lengthDecoder??vo,s=e?.maxLengthLength??fh,a=e?.maxDataLength??uh;function*c(){for(;r.byteLength>0;){if(n===gr.LENGTH)try{if(i=o(r),i<0)throw(0,Mr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Mr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),e?.onLength!=null&&e.onLength(i),n=gr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Mr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===gr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(f),yield f,n=gr.LENGTH}}}return ii(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Mr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Mr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}Sn.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return Sn(n,{...e??{},onLength:o=>{r=o}})};function Fr(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var ai=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Vr=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new ai(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let r=this.head;this.head=r.next=new ai(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var wo=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function qr(t={}){return hh(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},t)}function hh(t,e){e=e??{};let r=e.onEnd,n=new Vr,i,o,s,a=Fr(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,m)=>{o=E=>{o=null,n.push(E);try{y(t(n))}catch(x){m(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Fr()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Vr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(e?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},h=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Vr,h(),{done:!0}),d=y=>(h(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let E,x;m!=null&&(E=new Promise((A,w)=>{x=()=>{w(new wo)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,E])}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 ci=class extends Error{code;constructor(e,r){super(e),this.code=r}},Eo=class extends ci{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function Ja(t){let e=qr();t.sink(e).catch(o=>{e.end(o)}),t.sink=async o=>{for await(let s of o)e.push(s);e.end()};let r=t.source;t.source[Symbol.iterator]!=null?r=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(r=t.source[Symbol.asyncIterator]());let n=new Jt;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new Eo("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 Jt:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new ci("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(u)}let f=n.sublist(0,o);return n.consume(o),f}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?e.push(o):e.push(o.subarray()),await e.onEmpty(s)},unwrap:()=>{let o=t.source;return t.source=async function*(){yield*n,yield*o}(),t}}}var fi=class extends Error{code;constructor(e,r){super(e),this.code=r}},t0=t=>de(t);t0.bytes=0;function So(t,e){let r=Ja(t);return{read:async i=>{let o=-1,s=new Jt,a=e?.lengthDecoder??t0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new fi("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new fi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(si.single(i,e),o)},unwrap:()=>r.unwrap()}}function Bo(){let t=Fr(),e=!1;return{sink:async r=>{if(e)throw new Error("already piped");e=!0,t.resolve(r)},source:async function*(){yield*await t.promise}()}}function e0(){let t=Bo(),e=Bo();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function dh(t){return t[Symbol.asyncIterator]!=null}function ph(...t){let e=[];for(let r of t)dh(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=qr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var r0=ph;function n0(t,...e){if(t==null)throw new Error("Empty pipeline");if(Ao(t)){let n=t;t=()=>n.source}else if(o0(t)||i0(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Ao(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++)Ao(r[n])&&(r[n]=gh(r[n]));return yh(...r)}var yh=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},i0=t=>t?.[Symbol.asyncIterator]!=null,o0=t=>t?.[Symbol.iterator]!=null,Ao=t=>t==null?!1:t.sink!=null&&t.source!=null,gh=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=qr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(i0(o))i=async function*(){yield*o,n.end()};else if(o0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return r0(n,i())}return t.source};var s0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var mh=t=>t instanceof Uint8Array;var se=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),a0=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),xh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!xh)throw new Error("Non little-endian hardware is not supported");function ui(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function li(t){if(typeof t=="string"&&(t=ui(t)),!mh(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var bh=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function c0(t,e){if(e!==void 0&&(typeof e!="object"||!bh(e)))throw new Error("Options should be object or undefined");return Object.assign(t,e)}function Bn(t,e){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function f0(t,e){if(t.length!==e.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<t.length;n++)r&&(r=t[n]===e[n]);return r}function Co(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}function Io(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function vh(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function u0(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function wh(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Io(t.outputLen),Io(t.blockLen)}function Eh(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Sh(t,e){u0(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Bh={number:Io,bool:vh,bytes:u0,hash:wh,exists:Eh,output:Sh},Wt=Bh;var Ht=(t,e)=>t[e++]&255|(t[e++]&255)<<8,To=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=li(e),Bn(e,32);let r=Ht(e,0),n=Ht(e,2),i=Ht(e,4),o=Ht(e,6),s=Ht(e,8),a=Ht(e,10),c=Ht(e,12),f=Ht(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Ht(e,16+2*u)}process(e,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],h=s[5],g=s[6],d=s[7],p=s[8],y=s[9],m=Ht(e,r+0),E=Ht(e,r+2),x=Ht(e,r+4),A=Ht(e,r+6),w=Ht(e,r+8),v=Ht(e,r+10),L=Ht(e,r+12),_=Ht(e,r+14),N=o[0]+(m&8191),M=o[1]+((m>>>13|E<<3)&8191),K=o[2]+((E>>>10|x<<6)&8191),F=o[3]+((x>>>7|A<<9)&8191),H=o[4]+((A>>>4|w<<12)&8191),X=o[5]+(w>>>1&8191),C=o[6]+((w>>>14|v<<2)&8191),k=o[7]+((v>>>11|L<<5)&8191),T=o[8]+((L>>>8|_<<8)&8191),R=o[9]+(_>>>5|i),S=0,U=S+N*a+M*(5*y)+K*(5*p)+F*(5*d)+H*(5*g);S=U>>>13,U&=8191,U+=X*(5*h)+C*(5*l)+k*(5*u)+T*(5*f)+R*(5*c),S+=U>>>13,U&=8191;let O=S+N*c+M*a+K*(5*y)+F*(5*p)+H*(5*d);S=O>>>13,O&=8191,O+=X*(5*g)+C*(5*h)+k*(5*l)+T*(5*u)+R*(5*f),S+=O>>>13,O&=8191;let q=S+N*f+M*c+K*a+F*(5*y)+H*(5*p);S=q>>>13,q&=8191,q+=X*(5*d)+C*(5*g)+k*(5*h)+T*(5*l)+R*(5*u),S+=q>>>13,q&=8191;let Y=S+N*u+M*f+K*c+F*a+H*(5*y);S=Y>>>13,Y&=8191,Y+=X*(5*p)+C*(5*d)+k*(5*g)+T*(5*h)+R*(5*l),S+=Y>>>13,Y&=8191;let Z=S+N*l+M*u+K*f+F*c+H*a;S=Z>>>13,Z&=8191,Z+=X*(5*y)+C*(5*p)+k*(5*d)+T*(5*g)+R*(5*h),S+=Z>>>13,Z&=8191;let nt=S+N*h+M*l+K*u+F*f+H*c;S=nt>>>13,nt&=8191,nt+=X*a+C*(5*y)+k*(5*p)+T*(5*d)+R*(5*g),S+=nt>>>13,nt&=8191;let Q=S+N*g+M*h+K*l+F*u+H*f;S=Q>>>13,Q&=8191,Q+=X*c+C*a+k*(5*y)+T*(5*p)+R*(5*d),S+=Q>>>13,Q&=8191;let J=S+N*d+M*g+K*h+F*l+H*u;S=J>>>13,J&=8191,J+=X*f+C*c+k*a+T*(5*y)+R*(5*p),S+=J>>>13,J&=8191;let mt=S+N*p+M*d+K*g+F*h+H*l;S=mt>>>13,mt&=8191,mt+=X*u+C*f+k*c+T*a+R*(5*y),S+=mt>>>13,mt&=8191;let pt=S+N*y+M*p+K*d+F*g+H*h;S=pt>>>13,pt&=8191,pt+=X*l+C*u+k*f+T*c+R*a,S+=pt>>>13,pt&=8191,S=(S<<2)+S|0,S=S+U|0,U=S&8191,S=S>>>13,O+=S,o[0]=U,o[1]=O,o[2]=q,o[3]=Y,o[4]=Z,o[5]=nt,o[6]=Q,o[7]=J,o[8]=mt,o[9]=pt}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=i,i=e[a]>>>13,e[a]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,n[0]=e[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)e[a]=e[a]&o|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+r[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+r[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){Wt.exists(this);let{buffer:r,blockLen:n}=this;e=li(e);let i=e.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(e,o);continue}r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){Wt.exists(this),Wt.output(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)e[o++]=n[s]>>>0,e[o++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}};function Ah(t){let e=(n,i)=>t(i).update(li(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var l0=Ah(t=>new To(t));var Ch=ui("expand 16-byte k"),Ih=ui("expand 32-byte k"),Th=se(Ch),_h=se(Ih),h0=t=>!(t.byteOffset%4),Hr=t=>{let{core:e,rounds:r,counterRight:n,counterLen:i,allow128bitKeys:o,extendNonceFn:s,blockLen:a}=c0({rounds:20,counterRight:!1,counterLen:8,allow128bitKeys:!0,blockLen:64},t);Wt.number(i),Wt.number(r),Wt.number(a),Wt.bool(n),Wt.bool(o);let c=a/4;if(a%4!==0)throw new Error("Salsa/ChaCha: blockLen should be aligned to 4 bytes");return(f,u,l,h,g=0)=>{if(Wt.bytes(f),Wt.bytes(u),Wt.bytes(l),h||(h=new Uint8Array(l.length)),Wt.bytes(h),Wt.number(g),g<0||g>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");if(h.length<l.length)throw new Error(`Salsa/ChaCha: output (${h.length}) is shorter than data (${l.length})`);let d=[],p,y;if(f.length===32)p=f,y=_h;else if(f.length===16&&o)p=new Uint8Array(32),p.set(f),p.set(f,16),y=Th,d.push(p);else throw new Error(`Salsa/ChaCha: wrong key length=${f.length}, expected`);if(s){if(u.length<=16)throw new Error("Salsa/ChaCha: extended nonce should be bigger than 16 bytes");p=s(y,p,u.subarray(0,16),new Uint8Array(32)),d.push(p),u=u.subarray(16)}let m=16-i;if(u.length!==m)throw new Error(`Salsa/ChaCha: nonce should be ${m} or 16 bytes`);if(m!==12){let N=new Uint8Array(12);N.set(u,n?0:12-u.length),d.push(u=N)}let E=new Uint8Array(a),x=se(E),A=se(p),w=se(u),v=h0(l)&&se(l),L=h0(h)&&se(h);d.push(x);let _=l.length;for(let N=0,M=g;N<_;M++){if(e(y,A,w,x,M,r),M>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");let K=Math.min(a,_-N);if(K===a&&L&&v){let F=N/4;if(N%4!==0)throw new Error("Salsa/ChaCha: wrong block position");for(let H=0;H<c;H++)L[F+H]=v[F+H]^x[H];N+=a;continue}for(let F=0;F<K;F++)h[N+F]=l[N+F]^E[F];N+=K}for(let N=0;N<d.length;N++)d[N].fill(0);return h}};var G=(t,e)=>t<<e|t>>>32-e;function An(t,e,r,n,i,o=20){let s=t[0],a=t[1],c=t[2],f=t[3],u=e[0],l=e[1],h=e[2],g=e[3],d=e[4],p=e[5],y=e[6],m=e[7],E=i,x=r[0],A=r[1],w=r[2],v=s,L=a,_=c,N=f,M=u,K=l,F=h,H=g,X=d,C=p,k=y,T=m,R=E,S=x,U=A,O=w;for(let Y=0;Y<o;Y+=2)v=v+M|0,R=G(R^v,16),X=X+R|0,M=G(M^X,12),v=v+M|0,R=G(R^v,8),X=X+R|0,M=G(M^X,7),L=L+K|0,S=G(S^L,16),C=C+S|0,K=G(K^C,12),L=L+K|0,S=G(S^L,8),C=C+S|0,K=G(K^C,7),_=_+F|0,U=G(U^_,16),k=k+U|0,F=G(F^k,12),_=_+F|0,U=G(U^_,8),k=k+U|0,F=G(F^k,7),N=N+H|0,O=G(O^N,16),T=T+O|0,H=G(H^T,12),N=N+H|0,O=G(O^N,8),T=T+O|0,H=G(H^T,7),v=v+K|0,O=G(O^v,16),k=k+O|0,K=G(K^k,12),v=v+K|0,O=G(O^v,8),k=k+O|0,K=G(K^k,7),L=L+F|0,R=G(R^L,16),T=T+R|0,F=G(F^T,12),L=L+F|0,R=G(R^L,8),T=T+R|0,F=G(F^T,7),_=_+H|0,S=G(S^_,16),X=X+S|0,H=G(H^X,12),_=_+H|0,S=G(S^_,8),X=X+S|0,H=G(H^X,7),N=N+M|0,U=G(U^N,16),C=C+U|0,M=G(M^C,12),N=N+M|0,U=G(U^N,8),C=C+U|0,M=G(M^C,7);let q=0;n[q++]=s+v|0,n[q++]=a+L|0,n[q++]=c+_|0,n[q++]=f+N|0,n[q++]=u+M|0,n[q++]=l+K|0,n[q++]=h+F|0,n[q++]=g+H|0,n[q++]=d+X|0,n[q++]=p+C|0,n[q++]=y+k|0,n[q++]=m+T|0,n[q++]=E+R|0,n[q++]=x+S|0,n[q++]=A+U|0,n[q++]=w+O|0}function Lh(t,e,r,n){let i=se(e),o=se(r),s=se(n),a=t[0],c=t[1],f=t[2],u=t[3],l=i[0],h=i[1],g=i[2],d=i[3],p=i[4],y=i[5],m=i[6],E=i[7],x=o[0],A=o[1],w=o[2],v=o[3];for(let L=0;L<20;L+=2)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),c=c+h|0,A=G(A^c,16),y=y+A|0,h=G(h^y,12),c=c+h|0,A=G(A^c,8),y=y+A|0,h=G(h^y,7),f=f+g|0,w=G(w^f,16),m=m+w|0,g=G(g^m,12),f=f+g|0,w=G(w^f,8),m=m+w|0,g=G(g^m,7),u=u+d|0,v=G(v^u,16),E=E+v|0,d=G(d^E,12),u=u+d|0,v=G(v^u,8),E=E+v|0,d=G(d^E,7),a=a+h|0,v=G(v^a,16),m=m+v|0,h=G(h^m,12),a=a+h|0,v=G(v^a,8),m=m+v|0,h=G(h^m,7),c=c+g|0,x=G(x^c,16),E=E+x|0,g=G(g^E,12),c=c+g|0,x=G(x^c,8),E=E+x|0,g=G(g^E,7),f=f+d|0,A=G(A^f,16),p=p+A|0,d=G(d^p,12),f=f+d|0,A=G(A^f,8),p=p+A|0,d=G(d^p,7),u=u+l|0,w=G(w^u,16),y=y+w|0,l=G(l^y,12),u=u+l|0,w=G(w^u,8),y=y+w|0,l=G(l^y,7);return s[0]=a,s[1]=c,s[2]=f,s[3]=u,s[4]=x,s[5]=A,s[6]=w,s[7]=v,n}var Zm=Hr({core:An,counterRight:!1,counterLen:8}),Rh=Hr({core:An,counterRight:!1,counterLen:4,allow128bitKeys:!1}),kh=Hr({core:An,counterRight:!1,counterLen:8,extendNonceFn:Lh,allow128bitKeys:!1}),Xm=Hr({core:An,counterRight:!1,counterLen:4,rounds:8}),Qm=Hr({core:An,counterRight:!1,counterLen:4,rounds:12}),Ph=new Uint8Array(16),d0=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(Ph.subarray(r))},p0=(t,e,r,n,i)=>{let o=t(e,r,new Uint8Array(32)),s=l0.create(o);i&&d0(s,i),d0(s,n);let a=new Uint8Array(16),c=a0(a);Co(c,0,BigInt(i?i.length:0),!0),Co(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f},y0=t=>(e,r,n)=>(Bn(e,32),Bn(r),{tagLength:16,encrypt:o=>{let s=new Uint8Array(o.length+16);t(e,r,o,s,1);let a=p0(t,e,r,s.subarray(0,-16),n);return s.set(a,o.length),s},decrypt:o=>{if(o.length<16)throw new Error("Encrypted data should be at least 16");let s=o.subarray(-16),a=o.subarray(0,-16),c=p0(t,e,r,a,n);if(!f0(s,c))throw new Error("Wrong tag");return t(e,r,a,void 0,1)}}),_o=y0(Rh),jm=y0(kh);function hi(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Lo(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Cn(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");hi(t.outputLen),hi(t.blockLen)}function zr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function g0(t,e){Lo(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var di=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var m0=t=>t instanceof Uint8Array;var pi=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),pe=(t,e)=>t<<32-e|t>>>e,Dh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Dh)throw new Error("Non little-endian hardware is not supported");function Ro(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function tr(t){if(typeof t=="string"&&(t=Ro(t)),!m0(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function yi(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!m0(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Gr=class{clone(){return this._cloneInto()}},nx={}.toString;function gi(t){let e=n=>t().update(tr(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function mr(t=32){if(di&&typeof di.getRandomValues=="function")return di.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function Nh(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}var $r=class extends Gr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=pi(this.buffer)}update(e){zr(this);let{view:r,buffer:n,blockLen:i}=this;e=tr(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=pi(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){zr(this),g0(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;Nh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=pi(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var mi=BigInt(4294967295),ko=BigInt(32);function x0(t,e=!1){return e?{h:Number(t&mi),l:Number(t>>ko&mi)}:{h:Number(t>>ko&mi)|0,l:Number(t&mi)|0}}function Uh(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=x0(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var Kh=(t,e)=>BigInt(t>>>0)<<ko|BigInt(e>>>0),Oh=(t,e,r)=>t>>>r,Mh=(t,e,r)=>t<<32-r|e>>>r,Fh=(t,e,r)=>t>>>r|e<<32-r,Vh=(t,e,r)=>t<<32-r|e>>>r,qh=(t,e,r)=>t<<64-r|e>>>r-32,Hh=(t,e,r)=>t>>>r-32|e<<64-r,zh=(t,e)=>e,Gh=(t,e)=>t,$h=(t,e,r)=>t<<r|e>>>32-r,Wh=(t,e,r)=>e<<r|t>>>32-r,Yh=(t,e,r)=>e<<r-32|t>>>64-r,Zh=(t,e,r)=>t<<r-32|e>>>64-r;function Xh(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Qh=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),jh=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Jh=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),td=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,ed=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),rd=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var nd={fromBig:x0,split:Uh,toBig:Kh,shrSH:Oh,shrSL:Mh,rotrSH:Fh,rotrSL:Vh,rotrBH:qh,rotrBL:Hh,rotr32H:zh,rotr32L:Gh,rotlSH:$h,rotlSL:Wh,rotlBH:Yh,rotlBL:Zh,add:Xh,add3L:Qh,add3H:jh,add4L:Jh,add4H:td,add5H:rd,add5L:ed},et=nd;var[id,od]=(()=>et.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),er=new Uint32Array(80),rr=new Uint32Array(80),Po=class extends $r{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:h,Gh:g,Gl:d,Hh:p,Hl:y}=this;return[e,r,n,i,o,s,a,c,f,u,l,h,g,d,p,y]}set(e,r,n,i,o,s,a,c,f,u,l,h,g,d,p,y){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=h|0,this.Gh=g|0,this.Gl=d|0,this.Hh=p|0,this.Hl=y|0}process(e,r){for(let x=0;x<16;x++,r+=4)er[x]=e.getUint32(r),rr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let A=er[x-15]|0,w=rr[x-15]|0,v=et.rotrSH(A,w,1)^et.rotrSH(A,w,8)^et.shrSH(A,w,7),L=et.rotrSL(A,w,1)^et.rotrSL(A,w,8)^et.shrSL(A,w,7),_=er[x-2]|0,N=rr[x-2]|0,M=et.rotrSH(_,N,19)^et.rotrBH(_,N,61)^et.shrSH(_,N,6),K=et.rotrSL(_,N,19)^et.rotrBL(_,N,61)^et.shrSL(_,N,6),F=et.add4L(L,K,rr[x-7],rr[x-16]),H=et.add4H(F,v,M,er[x-7],er[x-16]);er[x]=H|0,rr[x]=F|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:g,Fl:d,Gh:p,Gl:y,Hh:m,Hl:E}=this;for(let x=0;x<80;x++){let A=et.rotrSH(l,h,14)^et.rotrSH(l,h,18)^et.rotrBH(l,h,41),w=et.rotrSL(l,h,14)^et.rotrSL(l,h,18)^et.rotrBL(l,h,41),v=l&g^~l&p,L=h&d^~h&y,_=et.add5L(E,w,L,od[x],rr[x]),N=et.add5H(_,m,A,v,id[x],er[x]),M=_|0,K=et.rotrSH(n,i,28)^et.rotrBH(n,i,34)^et.rotrBH(n,i,39),F=et.rotrSL(n,i,28)^et.rotrBL(n,i,34)^et.rotrBL(n,i,39),H=n&o^n&a^o&a,X=i&s^i&c^s&c;m=p|0,E=y|0,p=g|0,y=d|0,g=l|0,d=h|0,{h:l,l:h}=et.add(f|0,u|0,N|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let C=et.add3L(M,F,X);n=et.add3H(C,N,K,H),i=C|0}({h:n,l:i}=et.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=et.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=et.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=et.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:h}=et.add(this.Eh|0,this.El|0,l|0,h|0),{h:g,l:d}=et.add(this.Fh|0,this.Fl|0,g|0,d|0),{h:p,l:y}=et.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:m,l:E}=et.add(this.Hh|0,this.Hl|0,m|0,E|0),this.set(n,i,o,s,a,c,f,u,l,h,g,d,p,y,m,E)}roundClean(){er.fill(0),rr.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 Do=gi(()=>new Po);var vi={};Dt(vi,{bitGet:()=>hd,bitLen:()=>ld,bitMask:()=>In,bitSet:()=>dd,bytesToHex:()=>Me,bytesToNumberBE:()=>Fe,bytesToNumberLE:()=>ye,concatBytes:()=>qe,createHmacDrbg:()=>Ko,ensureBytes:()=>bt,equalBytes:()=>fd,hexToBytes:()=>xr,hexToNumber:()=>Uo,numberToBytesBE:()=>nr,numberToBytesLE:()=>Ve,numberToHexUnpadded:()=>w0,numberToVarBytesBE:()=>cd,utf8ToBytes:()=>ud,validateObject:()=>ae});var v0=BigInt(0),xi=BigInt(1),sd=BigInt(2),bi=t=>t instanceof Uint8Array,ad=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Me(t){if(!bi(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=ad[t[r]];return e}function w0(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Uo(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function xr(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let r=new Uint8Array(e/2);for(let n=0;n<r.length;n++){let i=n*2,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function Fe(t){return Uo(Me(t))}function ye(t){if(!bi(t))throw new Error("Uint8Array expected");return Uo(Me(Uint8Array.from(t).reverse()))}function nr(t,e){return xr(t.toString(16).padStart(e*2,"0"))}function Ve(t,e){return nr(t,e).reverse()}function cd(t){return xr(w0(t))}function bt(t,e,r){let n;if(typeof e=="string")try{n=xr(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(bi(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function qe(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!bi(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function fd(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function ud(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function ld(t){let e;for(e=0;t>v0;t>>=xi,e+=1);return e}function hd(t,e){return t>>BigInt(e)&xi}var dd=(t,e,r)=>t|(r?xi:v0)<<BigInt(e),In=t=>(sd<<BigInt(t-1))-xi,No=t=>new Uint8Array(t),b0=t=>Uint8Array.from(t);function Ko(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=No(t),i=No(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=No())=>{i=a(b0([0]),l),n=a(),l.length!==0&&(i=a(b0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let g=n.slice();h.push(g),l+=n.length}return qe(...h)};return(l,h)=>{s(),c(l);let g;for(;!(g=h(f()));)c();return s(),g}}var pd={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function ae(t,e,r={}){let n=(i,o,s)=>{let a=pd[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var Nt=BigInt(0),St=BigInt(1),br=BigInt(2),yd=BigInt(3),Oo=BigInt(4),E0=BigInt(5),S0=BigInt(8),gd=BigInt(9),md=BigInt(16);function lt(t,e){let r=t%e;return r>=Nt?r:e+r}function Mo(t,e,r){if(r<=Nt||e<Nt)throw new Error("Expected power/modulo > 0");if(r===St)return Nt;let n=St;for(;e>Nt;)e&St&&(n=n*t%r),t=t*t%r,e>>=St;return n}function vt(t,e,r){let n=t;for(;e-- >Nt;)n*=n,n%=r;return n}function wi(t,e){if(t===Nt||e<=Nt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=lt(t,e),n=e,i=Nt,o=St,s=St,a=Nt;for(;r!==Nt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==St)throw new Error("invert: does not exist");return lt(i,e)}function xd(t){let e=(t-St)/br,r,n,i;for(r=t-St,n=0;r%br===Nt;r/=br,n++);for(i=br;i<t&&Mo(i,e,t)!==t-St;i++);if(n===1){let s=(t+St)/Oo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+St)/br;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(h);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let d=a.pow(u,St<<BigInt(f-g-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=g}return l}}function bd(t){if(t%Oo===yd){let e=(t+St)/Oo;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%S0===E0){let e=(t-E0)/S0;return function(n,i){let o=n.mul(i,br),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,br),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return t%md,xd(t)}var B0=(t,e)=>(lt(t,e)&St)===St,vd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Fo(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=vd.reduce((n,i)=>(n[i]="function",n),e);return ae(t,r)}function wd(t,e,r){if(r<Nt)throw new Error("Expected power > 0");if(r===Nt)return t.ONE;if(r===St)return e;let n=t.ONE,i=e;for(;r>Nt;)r&St&&(n=t.mul(n,i)),i=t.sqr(i),r>>=St;return n}function Ed(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function Vo(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ei(t,e,r=!1,n={}){if(t<=Nt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Vo(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=bd(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:In(i),ZERO:Nt,ONE:St,create:c=>lt(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Nt<=c&&c<t},is0:c=>c===Nt,isOdd:c=>(c&St)===St,neg:c=>lt(-c,t),eql:(c,f)=>c===f,sqr:c=>lt(c*c,t),add:(c,f)=>lt(c+f,t),sub:(c,f)=>lt(c-f,t),mul:(c,f)=>lt(c*f,t),pow:(c,f)=>wd(a,c,f),div:(c,f)=>lt(c*wi(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>wi(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Ed(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Ve(c,o):nr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?ye(c):Fe(c)}});return Object.freeze(a)}function A0(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}function C0(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function qo(t){let e=C0(t);return e+Math.ceil(e/2)}function I0(t,e,r=!1){let n=t.length,i=C0(e),o=qo(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Fe(t):ye(t),a=lt(s,e-St)+St;return r?Ve(a,i):nr(a,i)}var Bd=BigInt(0),Ho=BigInt(1);function Si(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>Bd;)o&Ho&&(s=s.add(a)),a=a.double(),o>>=Ho;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=t.ZERO,u=t.BASE,l=BigInt(2**i-1),h=2**i,g=BigInt(i);for(let d=0;d<a;d++){let p=d*c,y=Number(s&l);s>>=g,y>c&&(y-=h,s+=Ho);let m=p,E=p+Math.abs(y)-1,x=d%2!==0,A=y<0;y===0?u=u.add(r(x,o[m])):f=f.add(r(A,o[E]))}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 Tn(t){return Fo(t.Fp),ae(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Vo(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var ge=BigInt(0),te=BigInt(1),Bi=BigInt(2),Ad=BigInt(8),Cd={zip215:!0};function Id(t){let e=Tn(t);return ae(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Ai(t){let e=Id(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,f=Bi<<BigInt(a*8)-te,u=r.create,l=e.uvRatio||((R,S)=>{try{return{isValid:!0,value:r.sqrt(R*r.inv(S))}}catch{return{isValid:!1,value:ge}}}),h=e.adjustScalarBytes||(R=>R),g=e.domain||((R,S,U)=>{if(S.length||U)throw new Error("Contexts/pre-hash are not supported");return R}),d=R=>typeof R=="bigint"&&ge<R,p=(R,S)=>d(R)&&d(S)&&R<S,y=R=>R===ge||p(R,f);function m(R,S){if(p(R,S))return R;throw new Error(`Expected valid scalar < ${S}, got ${typeof R} ${R}`)}function E(R){return R===ge?R:m(R,n)}let x=new Map;function A(R){if(!(R instanceof w))throw new Error("ExtendedPoint expected")}class w{constructor(S,U,O,q){if(this.ex=S,this.ey=U,this.ez=O,this.et=q,!y(S))throw new Error("x required");if(!y(U))throw new Error("y required");if(!y(O))throw new Error("z required");if(!y(q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(S){if(S instanceof w)throw new Error("extended point not allowed");let{x:U,y:O}=S||{};if(!y(U)||!y(O))throw new Error("invalid affine point");return new w(U,O,te,u(U*O))}static normalizeZ(S){let U=r.invertBatch(S.map(O=>O.ez));return S.map((O,q)=>O.toAffine(U[q])).map(w.fromAffine)}_setWindowSize(S){this._WINDOW_SIZE=S,x.delete(this)}assertValidity(){let{a:S,d:U}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:O,ey:q,ez:Y,et:Z}=this,nt=u(O*O),Q=u(q*q),J=u(Y*Y),mt=u(J*J),pt=u(nt*S),Vt=u(J*u(pt+Q)),qt=u(mt+u(U*u(nt*Q)));if(Vt!==qt)throw new Error("bad point: equation left != right (1)");let Pt=u(O*q),Gt=u(Y*Z);if(Pt!==Gt)throw new Error("bad point: equation left != right (2)")}equals(S){A(S);let{ex:U,ey:O,ez:q}=this,{ex:Y,ey:Z,ez:nt}=S,Q=u(U*nt),J=u(Y*q),mt=u(O*nt),pt=u(Z*q);return Q===J&&mt===pt}is0(){return this.equals(w.ZERO)}negate(){return new w(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:S}=e,{ex:U,ey:O,ez:q}=this,Y=u(U*U),Z=u(O*O),nt=u(Bi*u(q*q)),Q=u(S*Y),J=U+O,mt=u(u(J*J)-Y-Z),pt=Q+Z,Vt=pt-nt,qt=Q-Z,Pt=u(mt*Vt),Gt=u(pt*qt),Ke=u(mt*qt),yr=u(Vt*pt);return new w(Pt,Gt,yr,Ke)}add(S){A(S);let{a:U,d:O}=e,{ex:q,ey:Y,ez:Z,et:nt}=this,{ex:Q,ey:J,ez:mt,et:pt}=S;if(U===BigInt(-1)){let Fa=u((Y-q)*(J+Q)),Va=u((Y+q)*(J-Q)),yo=u(Va-Fa);if(yo===ge)return this.double();let qa=u(Z*Bi*pt),Ha=u(nt*Bi*mt),za=Ha+qa,Ga=Va+Fa,$a=Ha-qa,Gl=u(za*yo),$l=u(Ga*$a),Wl=u(za*$a),Yl=u(yo*Ga);return new w(Gl,$l,Yl,Wl)}let Vt=u(q*Q),qt=u(Y*J),Pt=u(nt*O*pt),Gt=u(Z*mt),Ke=u((q+Y)*(Q+J)-Vt-qt),yr=Gt-Pt,wn=Gt+Pt,Ma=u(qt-U*Vt),Vl=u(Ke*yr),ql=u(wn*Ma),Hl=u(Ke*Ma),zl=u(yr*wn);return new w(Vl,ql,zl,Hl)}subtract(S){return this.add(S.negate())}wNAF(S){return _.wNAFCached(this,x,S,w.normalizeZ)}multiply(S){let{p:U,f:O}=this.wNAF(m(S,n));return w.normalizeZ([U,O])[0]}multiplyUnsafe(S){let U=E(S);return U===ge?L:this.equals(L)||U===te?this:this.equals(v)?this.wNAF(U).p:_.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(S){let{ex:U,ey:O,ez:q}=this,Y=this.is0();S==null&&(S=Y?Ad:r.inv(q));let Z=u(U*S),nt=u(O*S),Q=u(q*S);if(Y)return{x:ge,y:te};if(Q!==te)throw new Error("invZ was invalid");return{x:Z,y:nt}}clearCofactor(){let{h:S}=e;return S===te?this:this.multiplyUnsafe(S)}static fromHex(S,U=!1){let{d:O,a:q}=e,Y=r.BYTES;S=bt("pointHex",S,Y);let Z=S.slice(),nt=S[Y-1];Z[Y-1]=nt&-129;let Q=ye(Z);Q===ge||(U?m(Q,f):m(Q,r.ORDER));let J=u(Q*Q),mt=u(J-te),pt=u(O*J-q),{isValid:Vt,value:qt}=l(mt,pt);if(!Vt)throw new Error("Point.fromHex: invalid y coordinate");let Pt=(qt&te)===te,Gt=(nt&128)!==0;if(!U&&qt===ge&&Gt)throw new Error("Point.fromHex: x=0 and x_0=1");return Gt!==Pt&&(qt=u(-qt)),w.fromAffine({x:qt,y:Q})}static fromPrivateKey(S){return K(S).point}toRawBytes(){let{x:S,y:U}=this.toAffine(),O=Ve(U,r.BYTES);return O[O.length-1]|=S&te?128:0,O}toHex(){return Me(this.toRawBytes())}}w.BASE=new w(e.Gx,e.Gy,te,u(e.Gx*e.Gy)),w.ZERO=new w(ge,te,te,ge);let{BASE:v,ZERO:L}=w,_=Si(w,a*8);function N(R){return lt(R,n)}function M(R){return N(ye(R))}function K(R){let S=a;R=bt("private key",R,S);let U=bt("hashed private key",o(R),2*S),O=h(U.slice(0,S)),q=U.slice(S,2*S),Y=M(O),Z=v.multiply(Y),nt=Z.toRawBytes();return{head:O,prefix:q,scalar:Y,point:Z,pointBytes:nt}}function F(R){return K(R).pointBytes}function H(R=new Uint8Array,...S){let U=qe(...S);return M(o(g(U,bt("context",R),!!i)))}function X(R,S,U={}){R=bt("message",R),i&&(R=i(R));let{prefix:O,scalar:q,pointBytes:Y}=K(S),Z=H(U.context,O,R),nt=v.multiply(Z).toRawBytes(),Q=H(U.context,nt,Y,R),J=N(Z+Q*q);E(J);let mt=qe(nt,Ve(J,r.BYTES));return bt("result",mt,a*2)}let C=Cd;function k(R,S,U,O=C){let{context:q,zip215:Y}=O,Z=r.BYTES;R=bt("signature",R,2*Z),S=bt("message",S),i&&(S=i(S));let nt=ye(R.slice(Z,2*Z)),Q,J,mt;try{Q=w.fromHex(U,Y),J=w.fromHex(R.slice(0,Z),Y),mt=v.multiplyUnsafe(nt)}catch{return!1}if(!Y&&Q.isSmallOrder())return!1;let pt=H(q,J.toRawBytes(),Q.toRawBytes(),S);return J.add(Q.multiplyUnsafe(pt)).subtract(mt).clearCofactor().equals(w.ZERO)}return v._setWindowSize(8),{CURVE:e,getPublicKey:F,sign:X,verify:k,ExtendedPoint:w,utils:{getExtendedPublicKey:K,randomPrivateKey:()=>s(r.BYTES),precompute(R=8,S=w.BASE){return S._setWindowSize(R),S.multiply(BigInt(3)),S}}}}var _n=BigInt(0),zo=BigInt(1);function Td(t){return ae(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function T0(t){let e=Td(t),{P:r}=e,n=x=>lt(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>Mo(x,r-BigInt(2),r));function f(x,A,w){let v=n(x*(A-w));return A=n(A-v),w=n(w+v),[A,w]}function u(x){if(typeof x=="bigint"&&_n<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function h(x,A){let w=u(x),v=u(A),L=w,_=zo,N=_n,M=w,K=zo,F=_n,H;for(let C=BigInt(i-1);C>=_n;C--){let k=v>>C&zo;F^=k,H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1],F=k;let T=_+N,R=n(T*T),S=_-N,U=n(S*S),O=R-U,q=M+K,Y=M-K,Z=n(Y*T),nt=n(q*S),Q=Z+nt,J=Z-nt;M=n(Q*Q),K=n(L*n(J*J)),_=n(R*U),N=n(O*(R+n(l*O)))}H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1];let X=c(N);return n(_*X)}function g(x){return Ve(n(x),o)}function d(x){let A=bt("u coordinate",x,o);return s===o&&(A[s-1]&=127),ye(A)}function p(x){let A=bt("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return ye(a(A))}function y(x,A){let w=d(A),v=p(x),L=h(w,v);if(L===_n)throw new Error("Invalid private or public key received");return g(L)}let m=g(e.Gu);function E(x){return y(x,m)}return{scalarMult:y,scalarMultBase:E,getSharedSecret:(x,A)=>y(x,A),getPublicKey:x=>E(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:m}}var Ln=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),_0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),_x=BigInt(0),_d=BigInt(1),Go=BigInt(2),Ld=BigInt(5),L0=BigInt(10),Rd=BigInt(20),kd=BigInt(40),R0=BigInt(80);function k0(t){let e=Ln,n=t*t%e*t%e,i=vt(n,Go,e)*n%e,o=vt(i,_d,e)*t%e,s=vt(o,Ld,e)*o%e,a=vt(s,L0,e)*s%e,c=vt(a,Rd,e)*a%e,f=vt(c,kd,e)*c%e,u=vt(f,R0,e)*f%e,l=vt(u,R0,e)*f%e,h=vt(l,L0,e)*s%e;return{pow_p_5_8:vt(h,Go,e)*t%e,b2:n}}function P0(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function Pd(t,e){let r=Ln,n=lt(e*e*e,r),i=lt(n*n*e,r),o=k0(t*i).pow_p_5_8,s=lt(t*n*o,r),a=lt(e*s*s,r),c=s,f=lt(s*_0,r),u=a===t,l=a===lt(-t,r),h=a===lt(-t*_0,r);return u&&(s=c),(l||h)&&(s=f),B0(s,r)&&(s=lt(-s,r)),{isValid:u||l,value:s}}var He=Ei(Ln,void 0,!0),$o={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:He,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Do,randomBytes:mr,adjustScalarBytes:P0,uvRatio:Pd},Wr=Ai($o);function D0(t,e,r){if(e.length>255)throw new Error("Context is too big");return yi(Ro("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Lx=Ai({...$o,domain:D0}),Rx=Ai({...$o,domain:D0,prehash:Do}),Rn=(()=>T0({P:Ln,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Ln,{pow_p_5_8:r,b2:n}=k0(t);return lt(vt(r,BigInt(3),e)*n,e)},adjustScalarBytes:P0,randomBytes:mr}))();var Dd=(He.ORDER+BigInt(3))/BigInt(8),kx=He.pow(Go,Dd),Px=He.sqrt(He.neg(He.ONE)),Dx=(He.ORDER-BigInt(5))/BigInt(8),Nx=BigInt(486662);var Ux=A0(He,He.neg(BigInt(486664)));var Kx=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),Ox=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),Mx=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),Fx=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Vx=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ci=class extends Gr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Cn(e);let n=tr(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return zr(this),this.iHash.update(e),this}digestInto(e){zr(this),Lo(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Yr=(t,e,r)=>new Ci(t,e).update(r).digest();Yr.create=(t,e)=>new Ci(t,e);function U0(t,e,r){return Cn(t),r===void 0&&(r=new Uint8Array(t.outputLen)),Yr(t,tr(r),tr(e))}var Wo=new Uint8Array([0]),N0=new Uint8Array;function K0(t,e,r,n=32){if(Cn(t),hi(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=N0);let o=new Uint8Array(i*t.outputLen),s=Yr.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)Wo[0]=f+1,a.update(f===0?N0:c).update(r).update(Wo).digestInto(c),o.set(c,t.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),Wo.fill(0),o.slice(0,n)}var Nd=(t,e,r)=>t&e^~t&r,Ud=(t,e,r)=>t&e^t&r^e&r,Kd=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]),ir=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),or=new Uint32Array(64),Yo=class extends $r{constructor(){super(64,32,8,!1),this.A=ir[0]|0,this.B=ir[1]|0,this.C=ir[2]|0,this.D=ir[3]|0,this.E=ir[4]|0,this.F=ir[5]|0,this.G=ir[6]|0,this.H=ir[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)or[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=or[l-15],g=or[l-2],d=pe(h,7)^pe(h,18)^h>>>3,p=pe(g,17)^pe(g,19)^g>>>10;or[l]=p+or[l-7]+d+or[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=pe(a,6)^pe(a,11)^pe(a,25),g=u+h+Nd(a,c,f)+Kd[l]+or[l]|0,p=(pe(n,2)^pe(n,13)^pe(n,22))+Ud(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(){or.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Zr=gi(()=>new Yo);var Zo={hashSHA256(t){return Zr(t)},getHKDF(t,e){let r=U0(Zr,e,t),i=K0(Zr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let t=Rn.utils.randomPrivateKey();return{publicKey:Rn.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Rn.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Rn.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return _o(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){let o=_o(n,e,r).decrypt(t);return i&&i.set(o),o}};var Od=t=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t),Xr=t=>{let e=Od(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};Xr.bytes=2;var kn=t=>{if(t.length<2)throw RangeError("Could not decode int16BE");return t instanceof Uint8Array?new DataView(t.buffer,t.byteOffset,t.byteLength).getUint16(0,!1):t.getUint16(0)};kn.bytes=2;function O0(t){return yt([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function M0(t){return yt([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function F0(t){return yt([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function V0(t){if(t.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:t.subarray(0,32),ciphertext:t.subarray(32,t.length),ns:new Uint8Array(0)}}function q0(t){if(t.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:t.subarray(0,32),ns:t.subarray(32,80),ciphertext:t.subarray(80,t.length)}}function H0(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var G0=16;function $0(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=t.encrypt(n.subarray(i,o),t.session);e?.encryptedPackets.increment(),yield Xr(s.byteLength),yield s}}}function W0(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-G0<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-G0),{plaintext:c,valid:f}=t.decrypt(s,t.session,a);if(!f)throw e?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");e?.decryptedPackets.increment(),yield c}}}var at=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},Dn=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},vr=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var O8=Rt(On(),1),M8=Rt(uf(),1);var e2=Rt(gt(),1);var Es={};Dt(Es,{base10:()=>p1});function f1(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,y=0,m=0,E=d.length;m!==E&&d[m]===0;)m++,p++;for(var x=(E-m)*u+1>>>0,A=new Uint8Array(x);m!==E;){for(var w=d[m],v=0,L=x-1;(w!==0||v<y)&&L!==-1;L--,v++)w+=256*A[L]>>>0,A[L]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");y=v,m++}for(var _=x-y;_!==x&&A[_]===0;)_++;for(var N=c.repeat(p);_<x;++_)N+=t.charAt(A[_]);return N}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var y=0,m=0;d[p]===c;)y++,p++;for(var E=(d.length-p)*f+1>>>0,x=new Uint8Array(E);d[p];){var A=r[d.charCodeAt(p)];if(A===255)return;for(var w=0,v=E-1;(A!==0||w<m)&&v!==-1;v--,w++)A+=a*x[v]>>>0,x[v]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");m=w,p++}if(d[p]!==" "){for(var L=E-m;L!==E&&x[L]===0;)L++;for(var _=new Uint8Array(y+(E-L)),N=y;L!==E;)_[N++]=x[L++];return _}}}function g(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:g}}var u1=f1,l1=u1,lf=l1;var Ub=new Uint8Array(0);var hf=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},We=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var df=t=>new TextEncoder().encode(t),pf=t=>new TextDecoder().decode(t);var xs=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},bs=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return gf(this,e)}},vs=class{constructor(e){this.decoders=e}or(e){return gf(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},gf=(t,e)=>new vs({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),ws=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new xs(e,r,n),this.decoder=new bs(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},en=({name:t,prefix:e,encode:r,decode:n})=>new ws(t,e,r,n),ur=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=lf(r,e);return en({prefix:t,name:e,encode:n,decode:o=>We(i(o))})},h1=(t,e,r,n)=>{let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[t[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},d1=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},It=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>en({prefix:e,name:t,encode(i){return d1(i,n,r)},decode(i){return h1(i,n,r,t)}});var p1=ur({prefix:"9",name:"base10",alphabet:"0123456789"});var Ss={};Dt(Ss,{base16:()=>y1,base16upper:()=>g1});var y1=It({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),g1=It({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Bs={};Dt(Bs,{base2:()=>m1});var m1=It({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var As={};Dt(As,{base256emoji:()=>E1});var mf=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}"),x1=mf.reduce((t,e,r)=>(t[r]=e,t),[]),b1=mf.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function v1(t){return t.reduce((e,r)=>(e+=x1[r],e),"")}function w1(t){let e=[];for(let r of t){let n=b1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var E1=en({prefix:"\u{1F680}",name:"base256emoji",encode:v1,decode:w1});var Cs={};Dt(Cs,{base32:()=>be,base32hex:()=>C1,base32hexpad:()=>T1,base32hexpadupper:()=>_1,base32hexupper:()=>I1,base32pad:()=>B1,base32padupper:()=>A1,base32upper:()=>S1,base32z:()=>L1});var be=It({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),S1=It({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),B1=It({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),A1=It({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),C1=It({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),I1=It({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),T1=It({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),_1=It({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),L1=It({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Is={};Dt(Is,{base36:()=>R1,base36upper:()=>k1});var R1=ur({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),k1=ur({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ts={};Dt(Ts,{base58btc:()=>Tt,base58flickr:()=>P1});var Tt=ur({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),P1=ur({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var _s={};Dt(_s,{base64:()=>rn,base64pad:()=>D1,base64url:()=>N1,base64urlpad:()=>U1});var rn=It({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),D1=It({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),N1=It({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),U1=It({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Ls={};Dt(Ls,{base8:()=>K1});var K1=It({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Rs={};Dt(Rs,{identity:()=>O1});var O1=en({prefix:"\0",name:"identity",encode:t=>pf(t),decode:t=>df(t)});var Qb=new TextEncoder,jb=new TextDecoder;var Ds={};Dt(Ds,{identity:()=>hr});var ke={};Dt(ke,{Digest:()=>Cr,create:()=>ve,decode:()=>lr,equals:()=>Ps});var V1=vf,xf=128,q1=127,H1=~q1,z1=Math.pow(2,31);function vf(t,e,r){e=e||[],r=r||0;for(var n=r;t>=z1;)e[r++]=t&255|xf,t/=128;for(;t&H1;)e[r++]=t&255|xf,t>>>=7;return e[r]=t|0,vf.bytes=r-n+1,e}var G1=ks,$1=128,bf=127;function ks(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw ks.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&bf)<<i:(s&bf)*Math.pow(2,i),i+=7}while(s>=$1);return ks.bytes=o-n,r}var W1=Math.pow(2,7),Y1=Math.pow(2,14),Z1=Math.pow(2,21),X1=Math.pow(2,28),Q1=Math.pow(2,35),j1=Math.pow(2,42),J1=Math.pow(2,49),tg=Math.pow(2,56),eg=Math.pow(2,63),rg=function(t){return t<W1?1:t<Y1?2:t<Z1?3:t<X1?4:t<Q1?5:t<j1?6:t<J1?7:t<tg?8:t<eg?9:10},ng={encode:V1,decode:G1,encodingLength:rg},ig=ng,Vn=ig;var qn=(t,e=0)=>[Vn.decode(t,e),Vn.decode.bytes],nn=(t,e,r=0)=>(Vn.encode(t,e,r),e),on=t=>Vn.encodingLength(t);var ve=(t,e)=>{let r=e.byteLength,n=on(t),i=n+on(r),o=new Uint8Array(i+r);return nn(t,o,0),nn(r,o,n),o.set(e,i),new Cr(t,r,e,o)},lr=t=>{let e=We(t),[r,n]=qn(e),[i,o]=qn(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Cr(r,i,s,e)},Ps=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&hf(t.bytes,r.bytes)}},Cr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var wf=0,og="identity",Ef=We,sg=t=>ve(wf,Ef(t)),hr={code:wf,name:og,encode:Ef,digest:sg};var Ks={};Dt(Ks,{sha256:()=>zt,sha512:()=>ag});var Us=({name:t,code:e,encode:r})=>new Ns(t,e,r),Ns=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?ve(this.code,r):r.then(n=>ve(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Bf=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),zt=Us({name:"sha2-256",code:18,encode:Bf("SHA-256")}),ag=Us({name:"sha2-512",code:19,encode:Bf("SHA-512")});var Af=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return fg(r,Os(t),e||Tt.encoder);default:return ug(r,Os(t),e||be.encoder)}};var Cf=new WeakMap,Os=t=>{let e=Cf.get(t);if(e==null){let r=new Map;return Cf.set(t,r),r}return e},we=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==Hn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==lg)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=ve(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Ps(e.multihash,n.multihash)}toString(e){return Af(this,e)}toJSON(){return{"/":Af(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s||If(n,i,o.bytes))}else if(r[hg]===!0){let{version:n,multihash:i,code:o}=r,s=lr(i);return t.create(n,o,s)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==Hn)throw new Error(`Version 0 CID must use dag-pb (code: ${Hn}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=If(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Hn,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=We(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Cr(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=qn(e.subarray(r));return r+=h,l},i=n(),o=Hn;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,i]=cg(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Os(o).set(n,e),o}},cg=(t,e)=>{switch(t[0]){case"Q":{let r=e||Tt;return[Tt.prefix,r.decode(`${Tt.prefix}${t}`)]}case Tt.prefix:{let r=e||Tt;return[Tt.prefix,r.decode(t)]}case be.prefix:{let r=e||be;return[be.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},fg=(t,e,r)=>{let{prefix:n}=r;if(n!==Tt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},ug=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},Hn=112,lg=18,If=(t,e,r)=>{let n=on(t),i=n+on(e),o=new Uint8Array(i+r.byteLength);return nn(t,o,0),nn(e,o,n),o.set(r,i),o},hg=Symbol.for("@ipld/js-cid/CID");var Pe={...Rs,...Bs,...Ls,...Es,...Ss,...Cs,...Is,...Ts,..._s,...As},pv={...Ks,...Ds};function _f(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var Tf=_f("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Ms=_f("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=oe(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),dg={utf8:Tf,"utf-8":Tf,hex:Pe.base16,latin1:Ms,ascii:Ms,binary:Ms,...Pe},$i=dg;function _t(t,e="utf8"){let r=$i[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?je(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var sa={};Dt(sa,{Ed25519PrivateKey:()=>Pr,Ed25519PublicKey:()=>$n,generateKeyPair:()=>Tg,generateKeyPairFromSeed:()=>Cu,unmarshalEd25519PrivateKey:()=>Cg,unmarshalEd25519PublicKey:()=>Ig});var sn=32,Ye=64,Wi=32;async function Lf(){let t=Wr.utils.randomPrivateKey(),e=Wr.getPublicKey(t);return{privateKey:Df(t,e),publicKey:e}}async function Rf(t){if(t.length!==Wi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=Wr.getPublicKey(e);return{privateKey:Df(e,r),publicKey:r}}async function kf(t,e){let r=t.subarray(0,Wi);return Wr.sign(e,r)}async function Pf(t,e,r){return Wr.verify(e,r,t)}function Df(t,e){let r=new Uint8Array(Ye);for(let n=0;n<Wi;n++)r[n]=t[n],r[Wi+n]=e[n];return r}var jt={get(t=globalThis){let e=t.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var Fs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Vs(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=jt.get();r*=8;async function c(l,h){let g=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=_t(h));let y;if(h.length===0){y=await a.subtle.importKey("jwk",Fs,{name:"AES-GCM"},!0,["encrypt"]);try{let E={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(E,x,{name:e,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",Fs,{name:"AES-GCM"},!0,["encrypt"])}}else{let E={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(E,x,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,y,l);return yt([g,p.iv,new Uint8Array(m)])}async function f(l,h){let g=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),y={name:e,iv:d};typeof h=="string"&&(h=_t(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",Fs,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:e,length:r},!0,["decrypt"])}let E=await a.subtle.decrypt(y,m,p);return new Uint8Array(E)}return{encrypt:c,decrypt:f}}async function an(t,e){let n=await Vs().encrypt(t,e);return rn.encode(n)}var ta=Rt($s(),1),Eu=Rt(pu(),1),Su=Rt(Tr(),1),ea=Rt(Js(),1),Bu=Rt(wu(),1);function Sg(){Su.default._configure(),ta.default._configure(Eu.default),ea.default._configure(Bu.default)}Sg();var Au=["uint64","int64","sint64","fixed64","sfixed64"];function Bg(t){for(let e of Au){if(t[e]==null)continue;let r=t[e];t[e]=function(){return BigInt(r.call(this).toString())}}return t}function ra(t){return Bg(new ta.default(t))}function Ag(t){for(let e of Au){if(t[e]==null)continue;let r=t[e];t[e]=function(n){return r.call(this,n.toString())}}return t}function na(){return Ag(ea.default.create())}function Lr(t,e){let r=ra(t instanceof Uint8Array?t:t.subarray());return e.decode(r)}function Rr(t,e){let r=na();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var fn;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(fn||(fn={}));function ji(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function ia(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return ji("enum",fn.VARINT,r,n)}function kr(t,e){return ji("message",fn.LENGTH_DELIMITED,t,e)}var At;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(At||(At={}));var oa;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(oa||(oa={}));(function(t){t.codec=()=>ia(oa)})(At||(At={}));var Ne;(function(t){let e;t.codec=()=>(e==null&&(e=kr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Rr(r,t.codec()),t.decode=r=>Lr(r,t.codec())})(Ne||(Ne={}));var Ue;(function(t){let e;t.codec=()=>(e==null&&(e=kr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Rr(r,t.codec()),t.decode=r=>Lr(r,t.codec())})(Ue||(Ue={}));var $n=class{_key;constructor(e){this._key=un(e,sn)}async verify(e,r){return Pf(this._key,r,e)}marshal(){return this._key}get bytes(){return Ne.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}},Pr=class{_key;_publicKey;constructor(e,r){this._key=un(e,Ye),this._publicKey=un(r,sn)}async sign(e){return kf(this._key,e)}get public(){return new $n(this._publicKey)}marshal(){return this._key}get bytes(){return Ue.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}async id(){let e=hr.digest(this.public.bytes);return Tt.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return an(this.bytes,e);throw new at(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Cg(t){if(t.length>Ye){t=un(t,Ye+sn);let n=t.subarray(0,Ye),i=t.subarray(Ye,t.length);return new Pr(n,i)}t=un(t,Ye);let e=t.subarray(0,Ye),r=t.subarray(sn);return new Pr(e,r)}function Ig(t){return t=un(t,sn),new $n(t)}async function Tg(){let{privateKey:t,publicKey:e}=await Lf();return new Pr(t,e)}async function Cu(t){let{privateKey:e,publicKey:r}=await Rf(t);return new Pr(e,r)}function un(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new at(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}function st(t,e="utf8"){let r=$i[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var hw=Rt(kt(),1),dw=Rt(Vi(),1),Iu=Rt(gt(),1);function Ae(t,e){let r=Uint8Array.from(t.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return st(r,"base64url")}function ee(t){let e=Tu(t);return new Iu.default.jsbn.BigInteger(st(e,"base16"),16)}function Tu(t,e){let r=_t(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return r}var _g={"P-256":256,"P-384":384,"P-521":521},Lg=Object.keys(_g),Bw=Lg.join(" / ");var la={};Dt(la,{MAX_KEY_SIZE:()=>Xn,RsaPrivateKey:()=>ln,RsaPublicKey:()=>Zn,fromJwk:()=>Vg,generateKeyPair:()=>qg,unmarshalRsaPrivateKey:()=>Mg,unmarshalRsaPublicKey:()=>Fg});var Yn=Rt(gt(),1);var c8=Rt(Pu(),1);function to(t){if(isNaN(t)||t<=0)throw new at("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return mr(t)}var zw=Rt(zi(),1),fa=Rt(gt(),1);function Du(t,e){return e.map(r=>ee(t[r]))}function Nu(t){return fa.default.pki.setRsaPrivateKey(...Du(t,["n","e","d","p","q","dp","dq","qi"]))}function Uu(t){return fa.default.pki.setRsaPublicKey(...Du(t,["n","e"]))}var Nr={};Dt(Nr,{jwkToPkcs1:()=>Dg,jwkToPkix:()=>Ug,pkcs1ToJwk:()=>Pg,pkixToJwk:()=>Ng});var Ww=Rt(On(),1),Yw=Rt(zi(),1);var Ze=Rt(gt(),1);function Pg(t){let e=Ze.default.asn1.fromDer(st(t,"ascii")),r=Ze.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Ae(r.n),e:Ae(r.e),d:Ae(r.d),p:Ae(r.p),q:Ae(r.q),dp:Ae(r.dP),dq:Ae(r.dQ),qi:Ae(r.qInv),alg:"RS256"}}function Dg(t){if(t.n==null||t.e==null||t.d==null||t.p==null||t.q==null||t.dp==null||t.dq==null||t.qi==null)throw new at("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Ze.default.pki.privateKeyToAsn1({n:ee(t.n),e:ee(t.e),d:ee(t.d),p:ee(t.p),q:ee(t.q),dP:ee(t.dp),dQ:ee(t.dq),qInv:ee(t.qi)});return _t(Ze.default.asn1.toDer(e).getBytes(),"ascii")}function Ng(t){let e=Ze.default.asn1.fromDer(st(t,"ascii")),r=Ze.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Ae(r.n),e:Ae(r.e)}}function Ug(t){if(t.n==null||t.e==null)throw new at("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Ze.default.pki.publicKeyToAsn1({n:ee(t.n),e:ee(t.e)});return _t(Ze.default.asn1.toDer(e).getBytes(),"ascii")}async function Ku(t){let e=await jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await Fu(e);return{privateKey:r[0],publicKey:r[1]}}async function ua(t){let r=[await jt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Kg(t)],n=await Fu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Ou(t,e){let r=await jt.get().subtle.importKey("jwk",t,{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(e));return new Uint8Array(n,0,n.byteLength)}async function Mu(t,e,r){let n=await jt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r)}async function Fu(t){if(t.privateKey==null||t.publicKey==null)throw new at("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([jt.get().subtle.exportKey("jwk",t.privateKey),jt.get().subtle.exportKey("jwk",t.publicKey)])}async function Kg(t){return jt.get().subtle.importKey("jwk",{kty:t.kty,n:t.n,e:t.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function Vu(t,e,r,n){let i=e?Uu(t):Nu(t),o=st(Uint8Array.from(r),"ascii"),s=n(o,i);return _t(s,"ascii")}function qu(t,e){return Vu(t,!0,e,(r,n)=>n.encrypt(r))}function Hu(t,e){return Vu(t,!1,e,(r,n)=>n.decrypt(r))}function eo(t){if(t.kty!=="RSA")throw new at("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new at("invalid key modulus","ERR_INVALID_KEY_MODULUS");return _t(t.n,"base64url").length*8}var Xn=8192,Zn=class{_key;constructor(e){this._key=e}async verify(e,r){return Mu(this._key,r,e)}marshal(){return Nr.jwkToPkix(this._key)}get bytes(){return Ne.encode({Type:At.RSA,Data:this.marshal()}).subarray()}encrypt(e){return qu(this._key,e)}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}},ln=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return to(16)}async sign(e){return Ou(this._key,e)}get public(){if(this._publicKey==null)throw new at("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Zn(this._publicKey)}decrypt(e){return Hu(this._key,e)}marshal(){return Nr.jwkToPkcs1(this._key)}get bytes(){return Ue.encode({Type:At.RSA,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}async id(){let e=await this.public.hash();return st(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new Yn.default.util.ByteBuffer(this.marshal()),i=Yn.default.asn1.fromDer(n),o=Yn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Yn.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return an(this.bytes,e);throw new at(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Mg(t){let e=Nr.pkcs1ToJwk(t);if(eo(e)>Xn)throw new at("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await ua(e);return new ln(r.privateKey,r.publicKey)}function Fg(t){let e=Nr.pkixToJwk(t);if(eo(e)>Xn)throw new at("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Zn(e)}async function Vg(t){if(eo(t)>Xn)throw new at("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await ua(t);return new ln(e.privateKey,e.publicKey)}async function qg(t){if(t>Xn)throw new at("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Ku(t);return new ln(e.privateKey,e.publicKey)}var ya={};Dt(ya,{Secp256k1PrivateKey:()=>jn,Secp256k1PublicKey:()=>Qn,generateKeyPair:()=>t2,unmarshalSecp256k1PrivateKey:()=>jg,unmarshalSecp256k1PublicKey:()=>Jg});function Hg(t){let e=Tn(t);ae(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:zg,hexToBytes:Gg}=vi,Ur={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Ur;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:zg(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Ur,r=typeof t=="string"?Gg(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=Ur._parseInt(r.subarray(2)),{d:s,l:a}=Ur._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Xe=BigInt(0),le=BigInt(1),p8=BigInt(2),zu=BigInt(3),y8=BigInt(4);function $g(t){let e=Hg(t),{Fp:r}=e,n=e.toBytes||((d,p,y)=>{let m=p.toAffine();return qe(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:m}});function o(d){let{a:p,b:y}=e,m=r.sqr(d),E=r.mul(m,d);return r.add(r.add(E,r.mul(d,p)),y)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&Xe<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:m,n:E}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Me(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(y*2,"0")}let x;try{x=typeof d=="bigint"?d:Fe(bt("private key",d,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=lt(x,E)),a(x),x}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,m){if(this.px=p,this.py=y,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:y,y:m}=p||{};if(!p||!r.isValid(y)||!r.isValid(m))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let E=x=>r.eql(x,r.ZERO);return E(y)&&E(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,E)=>m.toAffine(y[E])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(bt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let m=r.sqr(y),E=o(p);if(!r.eql(m,E))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:E}=this,{px:x,py:A,pz:w}=p,v=r.eql(r.mul(y,w),r.mul(x,E)),L=r.eql(r.mul(m,w),r.mul(A,E));return v&&L}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=e,m=r.mul(y,zu),{px:E,py:x,pz:A}=this,w=r.ZERO,v=r.ZERO,L=r.ZERO,_=r.mul(E,E),N=r.mul(x,x),M=r.mul(A,A),K=r.mul(E,x);return K=r.add(K,K),L=r.mul(E,A),L=r.add(L,L),w=r.mul(p,L),v=r.mul(m,M),v=r.add(w,v),w=r.sub(N,v),v=r.add(N,v),v=r.mul(w,v),w=r.mul(K,w),L=r.mul(m,L),M=r.mul(p,M),K=r.sub(_,M),K=r.mul(p,K),K=r.add(K,L),L=r.add(_,_),_=r.add(L,_),_=r.add(_,M),_=r.mul(_,K),v=r.add(v,_),M=r.mul(x,A),M=r.add(M,M),_=r.mul(M,K),w=r.sub(w,_),L=r.mul(M,N),L=r.add(L,L),L=r.add(L,L),new l(w,v,L)}add(p){u(p);let{px:y,py:m,pz:E}=this,{px:x,py:A,pz:w}=p,v=r.ZERO,L=r.ZERO,_=r.ZERO,N=e.a,M=r.mul(e.b,zu),K=r.mul(y,x),F=r.mul(m,A),H=r.mul(E,w),X=r.add(y,m),C=r.add(x,A);X=r.mul(X,C),C=r.add(K,F),X=r.sub(X,C),C=r.add(y,E);let k=r.add(x,w);return C=r.mul(C,k),k=r.add(K,H),C=r.sub(C,k),k=r.add(m,E),v=r.add(A,w),k=r.mul(k,v),v=r.add(F,H),k=r.sub(k,v),_=r.mul(N,C),v=r.mul(M,H),_=r.add(v,_),v=r.sub(F,_),_=r.add(F,_),L=r.mul(v,_),F=r.add(K,K),F=r.add(F,K),H=r.mul(N,H),C=r.mul(M,C),F=r.add(F,H),H=r.sub(K,H),H=r.mul(N,H),C=r.add(C,H),K=r.mul(F,C),L=r.add(L,K),K=r.mul(k,C),v=r.mul(X,v),v=r.sub(v,K),K=r.mul(X,F),_=r.mul(k,_),_=r.add(_,K),new l(v,L,_)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let m=r.invertBatch(y.map(E=>E.pz));return y.map((E,x)=>E.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Xe)return y;if(a(p),p===le)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,p);let{k1neg:E,k1:x,k2neg:A,k2:w}=m.splitScalar(p),v=y,L=y,_=this;for(;x>Xe||w>Xe;)x&le&&(v=v.add(_)),w&le&&(L=L.add(_)),_=_.double(),x>>=le,w>>=le;return E&&(v=v.negate()),A&&(L=L.negate()),L=new l(r.mul(L.px,m.beta),L.py,L.pz),v.add(L)}multiply(p){a(p);let y=p,m,E,{endo:x}=e;if(x){let{k1neg:A,k1:w,k2neg:v,k2:L}=x.splitScalar(y),{p:_,f:N}=this.wNAF(w),{p:M,f:K}=this.wNAF(L);_=g.constTimeNegate(A,_),M=g.constTimeNegate(v,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),m=_.add(M),E=N.add(K)}else{let{p:A,f:w}=this.wNAF(y);m=A,E=w}return l.normalizeZ([m,E])[0]}multiplyAndAddUnsafe(p,y,m){let E=l.BASE,x=(w,v)=>v===Xe||v===le||!w.equals(E)?w.multiplyUnsafe(v):w.multiply(v),A=x(this,y).add(x(p,m));return A.is0()?void 0:A}toAffine(p){let{px:y,py:m,pz:E}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(E));let A=r.mul(y,p),w=r.mul(m,p),v=r.mul(E,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(v,r.ONE))throw new Error("invZ was invalid");return{x:A,y:w}}isTorsionFree(){let{h:p,isTorsionFree:y}=e;if(p===le)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=e;return p===le?this:y?y(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Me(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,g=Si(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Wg(t){let e=Tn(t);return ae(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Gu(t){let e=Wg(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return Xe<C&&C<r.ORDER}function a(C){return lt(C,n)}function c(C){return wi(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=$g({...e,toBytes(C,k,T){let R=k.toAffine(),S=r.toBytes(R.x),U=qe;return T?U(Uint8Array.from([k.hasEvenY()?2:3]),S):U(Uint8Array.from([4]),S,r.toBytes(R.y))},fromBytes(C){let k=C.length,T=C[0],R=C.subarray(1);if(k===i&&(T===2||T===3)){let S=Fe(R);if(!s(S))throw new Error("Point is not on curve");let U=l(S),O=r.sqrt(U),q=(O&le)===le;return(T&1)===1!==q&&(O=r.neg(O)),{x:S,y:O}}else if(k===o&&T===4){let S=r.fromBytes(R.subarray(0,r.BYTES)),U=r.fromBytes(R.subarray(r.BYTES,2*r.BYTES));return{x:S,y:U}}else throw new Error(`Point of length ${k} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=C=>Me(nr(C,e.nByteLength));function d(C){let k=n>>le;return C>k}function p(C){return d(C)?a(-C):C}let y=(C,k,T)=>Fe(C.slice(k,T));class m{constructor(k,T,R){this.r=k,this.s=T,this.recovery=R,this.assertValidity()}static fromCompact(k){let T=e.nByteLength;return k=bt("compactSignature",k,T*2),new m(y(k,0,T),y(k,T,2*T))}static fromDER(k){let{r:T,s:R}=Ur.toSig(bt("DER",k));return new m(T,R)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(k){return new m(this.r,this.s,k)}recoverPublicKey(k){let{r:T,s:R,recovery:S}=this,U=L(bt("msgHash",k));if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");let O=S===2||S===3?T+e.n:T;if(O>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=S&1?"03":"02",Y=f.fromHex(q+g(O)),Z=c(O),nt=a(-U*Z),Q=a(R*Z),J=f.BASE.multiplyAndAddUnsafe(Y,nt,Q);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return xr(this.toDERHex())}toDERHex(){return Ur.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return xr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let E={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=qo(e.n);return I0(e.randomBytes(C),e.n)},precompute(C=8,k=f.BASE){return k._setWindowSize(C),k.multiply(BigInt(3)),k}};function x(C,k=!0){return f.fromPrivateKey(C).toRawBytes(k)}function A(C){let k=C instanceof Uint8Array,T=typeof C=="string",R=(k||T)&&C.length;return k?R===i||R===o:T?R===2*i||R===2*o:C instanceof f}function w(C,k,T=!0){if(A(C))throw new Error("first arg must be private key");if(!A(k))throw new Error("second arg must be public key");return f.fromHex(k).multiply(u(C)).toRawBytes(T)}let v=e.bits2int||function(C){let k=Fe(C),T=C.length*8-e.nBitLength;return T>0?k>>BigInt(T):k},L=e.bits2int_modN||function(C){return a(v(C))},_=In(e.nBitLength);function N(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Xe<=C&&C<_))throw new Error(`bigint expected < 2^${e.nBitLength}`);return nr(C,e.nByteLength)}function M(C,k,T=K){if(["recovered","canonical"].some(pt=>pt in T))throw new Error("sign() legacy options not supported");let{hash:R,randomBytes:S}=e,{lowS:U,prehash:O,extraEntropy:q}=T;U==null&&(U=!0),C=bt("msgHash",C),O&&(C=bt("prehashed msgHash",R(C)));let Y=L(C),Z=u(k),nt=[N(Z),N(Y)];if(q!=null){let pt=q===!0?S(r.BYTES):q;nt.push(bt("extraEntropy",pt))}let Q=qe(...nt),J=Y;function mt(pt){let Vt=v(pt);if(!h(Vt))return;let qt=c(Vt),Pt=f.BASE.multiply(Vt).toAffine(),Gt=a(Pt.x);if(Gt===Xe)return;let Ke=a(qt*a(J+Gt*Z));if(Ke===Xe)return;let yr=(Pt.x===Gt?0:2)|Number(Pt.y&le),wn=Ke;return U&&d(Ke)&&(wn=p(Ke),yr^=1),new m(Gt,wn,yr)}return{seed:Q,k2sig:mt}}let K={lowS:e.lowS,prehash:!1},F={lowS:e.lowS,prehash:!1};function H(C,k,T=K){let{seed:R,k2sig:S}=M(C,k,T),U=e;return Ko(U.hash.outputLen,U.nByteLength,U.hmac)(R,S)}f.BASE._setWindowSize(8);function X(C,k,T,R=F){let S=C;if(k=bt("msgHash",k),T=bt("publicKey",T),"strict"in R)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:O}=R,q,Y;try{if(typeof S=="string"||S instanceof Uint8Array)try{q=m.fromDER(S)}catch(Pt){if(!(Pt instanceof Ur.Err))throw Pt;q=m.fromCompact(S)}else if(typeof S=="object"&&typeof S.r=="bigint"&&typeof S.s=="bigint"){let{r:Pt,s:Gt}=S;q=new m(Pt,Gt)}else throw new Error("PARSE");Y=f.fromHex(T)}catch(Pt){if(Pt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&q.hasHighS())return!1;O&&(k=e.hash(k));let{r:Z,s:nt}=q,Q=L(k),J=c(nt),mt=a(Q*J),pt=a(Z*J),Vt=f.BASE.multiplyAndAddUnsafe(Y,mt,pt)?.toAffine();return Vt?a(Vt.x)===Z:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:w,sign:H,verify:X,ProjectivePoint:f,Signature:m,utils:E}}function Yg(t){return{hash:t,hmac:(e,...r)=>Yr(t,e,yi(...r)),randomBytes:mr}}function $u(t,e){let r=n=>Gu({...t,...Yg(n)});return Object.freeze({...r(e),create:r})}var Zu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Wu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Zg=BigInt(1),ha=BigInt(2),Yu=(t,e)=>(t+e/ha)/e;function Xg(t){let e=Zu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=t*t*t%e,u=f*f*t%e,l=vt(u,r,e)*u%e,h=vt(l,r,e)*u%e,g=vt(h,ha,e)*f%e,d=vt(g,i,e)*g%e,p=vt(d,o,e)*d%e,y=vt(p,a,e)*p%e,m=vt(y,c,e)*y%e,E=vt(m,a,e)*p%e,x=vt(E,r,e)*u%e,A=vt(x,s,e)*d%e,w=vt(A,n,e)*f%e,v=vt(w,ha,e);if(!da.eql(da.sqr(v),t))throw new Error("Cannot find square root");return v}var da=Ei(Zu,void 0,void 0,{sqrt:Xg}),Qe=$u({a:BigInt(0),b:BigInt(7),Fp:da,n:Wu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=Wu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Zg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Yu(o*t,e),c=Yu(-n*t,e),f=lt(t-a*r-c*i,e),u=lt(-a*n-c*o,e),l=f>s,h=u>s;if(l&&(f=e-f),h&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},Zr),B8=BigInt(0);var A8=Qe.ProjectivePoint;function Xu(){return Qe.utils.randomPrivateKey()}async function Qu(t,e){let{digest:r}=await zt.digest(e);try{return Qe.sign(r,t).toDERRawBytes()}catch(n){throw new at(String(n),"ERR_INVALID_INPUT")}}async function ju(t,e,r){try{let{digest:n}=await zt.digest(r);return Qe.verify(e,n,t)}catch(n){throw new at(String(n),"ERR_INVALID_INPUT")}}function Ju(t){return Qe.ProjectivePoint.fromHex(t).toRawBytes(!0)}function tl(t){try{Qe.getPublicKey(t,!0)}catch(e){throw new at(String(e),"ERR_INVALID_PRIVATE_KEY")}}function pa(t){try{Qe.ProjectivePoint.fromHex(t)}catch(e){throw new at(String(e),"ERR_INVALID_PUBLIC_KEY")}}function el(t){try{return Qe.getPublicKey(t,!0)}catch(e){throw new at(String(e),"ERR_INVALID_PRIVATE_KEY")}}var Qn=class{_key;constructor(e){pa(e),this._key=e}async verify(e,r){return ju(this._key,r,e)}marshal(){return Ju(this._key)}get bytes(){return Ne.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}},jn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??el(e),tl(this._key),pa(this._publicKey)}async sign(e){return Qu(this._key,e)}get public(){return new Qn(this._publicKey)}marshal(){return this._key}get bytes(){return Ue.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Ct(this.bytes,e.bytes)}async hash(){let{bytes:e}=await zt.digest(this.bytes);return e}async id(){let e=await this.public.hash();return st(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return an(this.bytes,e);throw new at(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function jg(t){return new jn(t)}function Jg(t){return new Qn(t)}async function t2(){let t=Xu();return new jn(t)}var Kr={rsa:la,ed25519:sa,secp256k1:ya};function rl(t){let e=Object.keys(Kr).join(" / ");return new at(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function nl(t){let e=Ne.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return Kr.rsa.unmarshalRsaPublicKey(r);case At.Ed25519:return Kr.ed25519.unmarshalEd25519PublicKey(r);case At.Secp256k1:return Kr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw rl(e.Type??"RSA")}}async function il(t){let e=Ue.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return Kr.rsa.unmarshalRsaPrivateKey(r);case At.Ed25519:return Kr.ed25519.unmarshalEd25519PrivateKey(r);case At.Secp256k1:return Kr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw rl(e.Type??"RSA")}}var ol=Symbol.for("@libp2p/peer-id");var r2=Symbol.for("nodejs.util.inspect.custom"),sl=Object.values(Pe).map(t=>t.decoder).reduce((t,e)=>t.or(e),Pe.identity.decoder),al=114,ga=36,ma=37,Jn=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[ol]=!0;toString(){return this.string==null&&(this.string=Tt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return we.createV1(al,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Ct(this.multihash.bytes,e);if(typeof e=="string")return xa(e).equals(this);if(e?.multihash?.bytes!=null)return Ct(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[r2](){return`PeerId(${this.toString()})`}},hn=class extends Jn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},dn=class extends Jn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},pn=class extends Jn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function xa(t,e){if(e=e??sl,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=lr(Tt.decode(`z${t}`));return t.startsWith("12D")?new dn({multihash:r}):t.startsWith("16U")?new pn({multihash:r}):new hn({multihash:r})}return n2(sl.decode(t))}function n2(t){try{let e=lr(t);if(e.code===hr.code){if(e.digest.length===ga)return new dn({multihash:e});if(e.digest.length===ma)return new pn({multihash:e})}if(e.code===zt.code)return new hn({multihash:e})}catch{return i2(we.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function i2(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==al)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===zt.code)return new hn({multihash:t.multihash});if(e.code===hr.code){if(e.digest.length===ga)return new dn({multihash:t.multihash});if(e.digest.length===ma)return new pn({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function ba(t,e){return t.length===ga?new dn({multihash:ve(hr.code,t),privateKey:e}):t.length===ma?new pn({multihash:ve(hr.code,t),privateKey:e}):new hn({multihash:await zt.digest(t),publicKey:t,privateKey:e})}var ro;(function(t){let e;t.codec=()=>(e==null&&(e=kr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.webtransportCerthashes.push(r.bytes());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Rr(r,t.codec()),t.decode=r=>Lr(r,t.codec())})(ro||(ro={}));var ti;(function(t){let e;t.codec=()=>(e==null&&(e=kr((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),ro.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=ro.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Rr(r,t.codec()),t.decode=r=>Lr(r,t.codec())})(ti||(ti={}));async function cl(t,e,r){let n=await s2(t,fl(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return o2(t.publicKey,n,r)}function o2(t,e,r){return ti.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function s2(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await il(t.privateKey)).sign(e)}async function va(t){return ba(t.identityKey)}function wa(t){return ti.decode(t)}function fl(t){let e=_t("noise-libp2p-static-key:");return yt([e,t],e.length+t.length)}async function Ea(t,e,r){let n=await ba(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=fl(t);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(e.identitySig==null)throw new Error("Signature was missing from message");if(!await nl(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function ei(t){return!(!(t instanceof Uint8Array)||t.length!==32)}var ne=Rt(pl(),1);ne.default.formatters.b=t=>t==null?"undefined":Tt.baseEncode(t);ne.default.formatters.t=t=>t==null?"undefined":be.baseEncode(t);ne.default.formatters.m=t=>t==null?"undefined":rn.baseEncode(t);ne.default.formatters.p=t=>t==null?"undefined":t.toString();ne.default.formatters.c=t=>t==null?"undefined":t.toString();ne.default.formatters.k=t=>t==null?"undefined":t.toString();ne.default.formatters.a=t=>t==null?"undefined":t.toString();function b2(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function xn(t){let e=b2(`${t}:trace`);return ne.default.enabled(`${t}:trace`)&&ne.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,ne.default)(`${t}:trace`)),Object.assign((0,ne.default)(t),{error:(0,ne.default)(`${t}:error`),trace:e})}var Ft=xn("libp2p:noise");var he;s0?he=Ft:he=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function yl(t){he(`LOCAL_STATIC_PUBLIC_KEY ${st(t.publicKey,"hex")}`),he(`LOCAL_STATIC_PRIVATE_KEY ${st(t.privateKey,"hex")}`)}function Sa(t){t?(he(`LOCAL_PUBLIC_EPHEMERAL_KEY ${st(t.publicKey,"hex")}`),he(`LOCAL_PRIVATE_EPHEMERAL_KEY ${st(t.privateKey,"hex")}`)):he("Missing local ephemeral keys.")}function gl(t){he(`REMOTE_STATIC_PUBLIC_KEY ${st(t,"hex")}`)}function Ba(t){he(`REMOTE_EPHEMERAL_PUBLIC_KEY ${st(t,"hex")}`)}function ml(t){t.cs1&&t.cs2?(he(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${st(t.cs1.k,"hex")}`),he(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${st(t.cs2.k,"hex")}`)):he("Missing cipher state.")}var v2="Cipherstate has reached maximum n, a new handshake must be performed",oo=class{n;bytes;view;constructor(e=0){this.n=e,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,e,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>4294967295)throw new Error(v2)}};var so=class{crypto;constructor(e){this.crypto=e}encryptWithAd(e,r,n){let i=this.encrypt(e.k,e.n,r,n);return e.n.increment(),i}decryptWithAd(e,r,n,i){let{plaintext:o,valid:s}=this.decrypt(e.k,e.n,r,n,i);return s&&e.n.increment(),{plaintext:o,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(e){let r=this.createEmptyKey();return Ct(r,e)}encrypt(e,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,e)}encryptAndHash(e,r){let n;return this.hasKey(e.cs)?n=this.encryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,n),n}decrypt(e,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,e,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(e,r){let n,i=!0;return this.hasKey(e.cs)?{plaintext:n,valid:i}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:i}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Ft.error(i),new Uint8Array(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(yt([e,r],e.length+r.length))}mixKey(e,r){let[n,i]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(i),e.ck=n}initializeKey(e){return{k:e,n:new oo}}initializeSymmetric(e){let r=_t(e,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(e){if(e.length<=32){let r=new Uint8Array(32);return r.set(e),r}else return this.getHash(e,new Uint8Array(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,new Uint8Array(0),r.ciphertext)}};var ao=class extends so{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=new Uint8Array(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let o=e.e.publicKey;this.mixHash(e.ss,o);let s=this.encryptAndHash(e.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(e,r){e.e=this.crypto.generateX25519KeyPair();let n=e.e.publicKey;this.mixHash(e.ss,n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let i=e.s.publicKey,o=this.encryptAndHash(e.ss,i);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,i=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let o=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(e,r){return ei(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(ei(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&ei(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&ei(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return e?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let i;if(e.mc===0)i=this.writeMessageA(e.hs,r,n);else if(e.mc===1)i=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);i=s,e.h=o,e.cs1=a,e.cs2=c}else if(e.mc>2)if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,i}recvMessage(e,r){let n=new Uint8Array(0),i=!1;if(e.mc===0)({plaintext:n,valid:i}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:i}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(e.hs,r);n=s,i=a,e.h=o,e.cs1=c,e.cs2=f}return e.mc++,{plaintext:n,valid:i}}};var co=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(e,r,n,i,o,s,a,c){this.isInitiator=e,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new ao(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(yl(this.session.hs.s),this.isInitiator){Ft.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(O0(e)),Ft.trace("Stage 0 - Initiator finished sending first message."),Sa(this.session.hs.e)}else{Ft.trace("Stage 0 - Responder waiting to receive first message...");let e=V0((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new vr("xx handshake stage 0 validation fail");Ft.trace("Stage 0 - Responder received first message."),Ba(this.session.hs.re)}}async exchange(){if(this.isInitiator){Ft.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=q0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new vr("xx handshake stage 1 validation fail");Ft.trace("Stage 1 - Initiator received the message."),Ba(this.session.hs.re),gl(this.session.hs.rs),Ft.trace("Initiator going to check remote's signature...");try{let i=wa(r);this.remotePeer=this.remotePeer||await va(i),await Ea(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Dn(`Error occurred while verifying signed payload: ${o.message}`)}Ft.trace("All good with the signature!")}else{Ft.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(M0(e)),Ft.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Sa(this.session.hs.e)}}async finish(){if(this.isInitiator){Ft.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(F0(e)),Ft.trace("Stage 2 - Initiator sent message with signed payload.")}else{Ft.trace("Stage 2 - Responder waiting for third handshake message...");let e=H0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new vr("xx handshake stage 2 validation fail");Ft.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=wa(r);this.remotePeer=this.remotePeer||await va(i),await Ea(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Dn(`Error occurred while verifying signed payload: ${o.message}`)}}ml(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new vr("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?e.cs1:e.cs2:r?e.cs2:e.cs1}setRemoteNoiseExtension(e){e&&(this.remoteExtensions=e)}};function xl(t){return{xxHandshakeSuccesses:t.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:t.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:t.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:t.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:t.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var fo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(e={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=e;this.crypto=i??Zo,this.extensions=n,this.metrics=s?xl(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(e,r,n){let i=So(r,{lengthEncoder:Xr,lengthDecoder:kn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(e,r,n){let i=So(r,{lengthEncoder:Xr,lengthDecoder:kn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(e){let r=await cl(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:i,connection:o}=e,s=new co(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(e,r){let[n,i]=e0(),o=e.unwrap();return await n0(n,$0(r,this.metrics),o,s=>Sn(s,{lengthDecoder:kn}),W0(r,this.metrics),n),i}};function bl(t={}){return()=>new fo(t)}var wl=Symbol.for("@libp2p/transport");var vl;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(vl||(vl={}));var uo=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(o*=e,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var El=45,w2=15,bn=new uo;function Aa(t){if(!(t.length>w2))return bn.new(t).parseWith(()=>bn.readIPv4Addr())}function Ca(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>El))return bn.new(t).parseWith(()=>bn.readIPv6Addr())}function lo(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>El))return bn.new(t).parseWith(()=>bn.readIPAddr())}var w3=parseInt("0xFFFF",16),E3=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Al(t){return!!Aa(t)}function Cl(t){return!!Ca(t)}function ho(t){return!!lo(t)}var Il=Al,C2=Cl,Ia=function(t){let e=0;if(t=t.toString().trim(),Il(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(C2(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=Il(r[n]),s;o&&(s=Ia(r[n]),r[n]=st(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,st(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},Tl=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var vn={},Ta={},T2=[[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"]];T2.forEach(t=>{let e=_2(...t);Ta[e.code]=e,vn[e.name]=e});function _2(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function it(t){if(typeof t=="number"){if(Ta[t]!=null)return Ta[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(vn[t]!=null)return vn[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var oE=it("ip4"),sE=it("ip6"),aE=it("ipcidr");function La(t,e){switch(it(t).code){case 4:case 41:return R2(e);case 42:return Rl(e);case 6:case 273:case 33:case 132:return Pl(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Rl(e);case 421:return N2(e);case 444:return kl(e);case 445:return kl(e);case 466:return D2(e);default:return st(e,"base16")}}function Ra(t,e){switch(it(t).code){case 4:return _l(e);case 41:return _l(e);case 42:return Ll(e);case 6:case 273:case 33:case 132:return ka(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Ll(e);case 421:return k2(e);case 444:return U2(e);case 445:return K2(e);case 466:return P2(e);default:return _t(e,"base16")}}var _a=Object.values(Pe).map(t=>t.decoder),L2=function(){let t=_a[0].or(_a[1]);return _a.slice(2).forEach(e=>t=t.or(e)),t}();function _l(t){if(!ho(t))throw new Error("invalid ip address");return Ia(t)}function R2(t){let e=Tl(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!ho(e))throw new Error("invalid ip address");return e}function ka(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Pl(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Ll(t){let e=_t(t),r=Uint8Array.from(Je(e.length));return yt([r,e],r.length+e.length)}function Rl(t){let e=de(t);if(t=t.slice(Xt(e)),t.length!==e)throw new Error("inconsistent lengths");return st(t)}function k2(t){let e;t[0]==="Q"||t[0]==="1"?e=lr(Tt.decode(`z${t}`)).bytes:e=we.parse(t).multihash.bytes;let r=Uint8Array.from(Je(e.length));return yt([r,e],r.length+e.length)}function P2(t){let e=L2.decode(t),r=Uint8Array.from(Je(e.length));return yt([r,e],r.length+e.length)}function D2(t){let e=de(t),r=t.slice(Xt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+st(r,"base64url")}function N2(t){let e=de(t),r=t.slice(Xt(e));if(r.length!==e)throw new Error("inconsistent lengths");return st(r,"base58btc")}function U2(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let r=be.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ka(n);return yt([r,i],r.length+i.length)}function K2(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let r=be.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=ka(n);return yt([r,i],r.length+i.length)}function kl(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=st(e,"base32"),i=Pl(r);return`${n}:${i}`}function Dl(t){t=Pa(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=it(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Ul("invalid address: "+t);if(a.path===!0){n=Pa(i.slice(o).join("/")),e.push([a.code,Ra(a.code,n)]),r.push([a.code,n]);break}let c=Ra(a.code,i[o]);e.push([a.code,c]),r.push([a.code,La(a.code,c)])}return{string:Nl(r),bytes:Na(e),tuples:e,stringTuples:r,path:n}}function Da(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=de(t,i),s=Xt(o),a=it(o),c=O2(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let f=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw Ul("Invalid address Uint8Array: "+st(t,"base16"));e.push([o,f]);let u=La(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:Nl(r),tuples:e,stringTuples:r,path:n}}function Nl(t){let e=[];return t.map(r=>{let n=it(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Pa(e.join("/"))}function Na(t){return yt(t.map(e=>{let r=it(e[0]),n=Uint8Array.from(Je(r.code));return e.length>1&&e[1]!=null&&(n=yt([n,e[1]])),n}))}function O2(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=de(e instanceof Uint8Array?e:Uint8Array.from(e));return r+Xt(r)}}function Pa(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function Ul(t){return new Error("Error parsing address: "+t)}var M2=Symbol.for("nodejs.util.inspect.custom"),F2=[it("dns").code,it("dns4").code,it("dns6").code,it("dnsaddr").code],V2=new Map,Ol=Symbol.for("@multiformats/js-multiaddr/multiaddr");function q2(t){return!!t?.[Ol]}var Kl=class t{bytes;#e;#t;#r;#n;[Ol]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Da(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=Dl(e)}else if(q2(e))r=Da(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=it("tcp"),a=it("udp"),c=it("ip4"),f=it("ip6"),u=it("dns6"),l=it("ip6zone");for(let[g,d]of this.stringTuples())g===l.code&&(o=`%${d??""}`),F2.includes(g)&&(r=s.name,i=443,n=`${d??""}${o}`,e=g===u.code?6:4),(g===s.code||g===a.code)&&(r=it(g).name,i=parseInt(d??"")),(g===c.code||g===f.code)&&(r=it(g).name,n=`${d??""}${o}`,e=g===f.code?6:4);if(e==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:r,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},it(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>it(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(Na(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===vn.p2p.code&&e.push([n,i]),n===vn["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?st(Tt.decode(`z${n}`),"base58btc"):st(we.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Ct(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=V2.get(r.name);if(n==null)throw new at(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[M2](){return`Multiaddr(${this.#e})`}};var po=xn("libp2p:webtransport:stream");async function Ua(t,e,r,n,i){let o=t.writable.getWriter(),s=t.readable.getReader();await o.ready;function a(){let h=n.findIndex(g=>g===l);h!==-1&&(n.splice(h,1),l.timeline.close=Date.now(),i?.(l))}let c=!1,f=!1;(async function(){let h=await o.closed.catch(g=>g);if(h!=null){let g=h.message;g.includes("aborted by the remote server")||g.includes("STOP_SENDING")||po.error(`WebTransport writer closed unexpectedly: streamId=${e} err=${h.message}`)}c=!0,c&&f&&a()})().catch(()=>{po.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await s.closed.catch(g=>g);h!=null&&po.error(`WebTransport reader closed unexpectedly: streamId=${e} err=${h.message}`),f=!0,c&&f&&a()}().catch(()=>{po.error("WebTransport failed to cleanup closed stream")});let u=!1,l={id:e,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){c||(o.abort(h),c=!0),f=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),a()},async close(h){this.status="closing",await Promise.all([l.closeRead(h),l.closeWrite(h)]),a(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!f){this.readStatus="closing";try{await s.cancel()}catch(g){g.toString().includes("RESET_STREAM")===!0&&(c=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",f=!0}c&&a()},async closeWrite(h){if(!c){c=!0,this.writeStatus="closing";try{await o.close()}catch(g){g.toString().includes("RESET_STREAM")===!0&&(f=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}f&&a()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await s.read();if(h.done===!0){f=!0,c&&a();return}yield new Jt(h.value)}}(),sink:async function(h){if(u)throw new Error("sink already called on stream");u=!0;try{this.writeStatus="writing";for await(let g of h)if(g instanceof Uint8Array)await o.write(g);else for(let d of g)await o.write(d);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await l.closeWrite()}}};return l}function Ka(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async t=>new Promise(()=>{})}}function Ml(t,e){return e.filter(n=>!!t.find(i=>Ct(n,i))).length===e.length}var H2=Object.values(Pe).map(t=>t.decoder).reduce((t,e)=>t.or(e));function z2(t){return ke.decode(H2.decode(t))}function Fl(t){let e=t.stringTuples(),{url:r,certhashes:n,remotePeer:i}=e.reduce((o,[s,a])=>{switch(s){case it("ip6").code:case it("dns6").code:a?.includes(":")===!0&&(a=`[${a}]`);case it("ip4").code:case it("dns4").code:if(o.seenHost||o.seenPort)throw new Error("Invalid multiaddr, saw host and already saw the host or port");return{...o,url:`${o.url}${a??""}`,seenHost:!0};case it("quic").code:case it("quic-v1").code:case it("webtransport").code:if(!o.seenHost||!o.seenPort)throw new Error("Invalid multiaddr, Didn't see host and port, but saw quic/webtransport");return o;case it("udp").code:if(o.seenPort)throw new Error("Invalid multiaddr, saw port but already saw the port");return{...o,url:`${o.url}:${a??""}`,seenPort:!0};case it("certhash").code:if(!o.seenHost||!o.seenPort)throw new Error("Invalid multiaddr, saw the certhash before seeing the host and port");return{...o,certhashes:o.certhashes.concat([z2(a??"")])};case it("p2p").code:return{...o,remotePeer:xa(a??"")};default:throw new Error(`unexpected component in multiaddr: ${s} ${it(s).name} ${a??""} `)}},{url:"https://",seenHost:!1,seenPort:!1,certhashes:[]});return{url:r,certhashes:n,remotePeer:i}}var ie=xn("libp2p:webtransport"),Oa=class{components;config;constructor(e,r={}){this.components=e,this.config={maxInboundStreams:r.maxInboundStreams??1e3}}[Symbol.toStringTag]="@libp2p/webtransport";[wl]=!0;async dial(e,r){r?.signal?.throwIfAborted(),ie("dialing %s",e);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=Fl(e);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{};try{let u=!1,l=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{try{if(c!=null){if(c.timeline.close!=null)return;c.timeline.close=Date.now()}if(u)return;l.close(h)}catch(g){ie.error("error closing wt session",g)}finally{u=!0}},l.closed.then(async()=>{await c?.close()}).catch(h=>{ie.error("error on remote wt session close",h),c?.abort(h)}).finally(()=>{c==null&&f()}),a=()=>{a!=null&&r.signal?.removeEventListener("abort",a),f()},r.signal?.addEventListener("abort",a),await l.ready,!await this.authenticateWebTransport(l,n,s,o))throw new Error("Failed to authenticate webtransport");return c={close:async h=>{ie("Closing webtransport"),f()},abort:h=>{ie("aborting webtransport due to passed err",h),f({closeCode:0,reason:h.message})},remoteAddr:e,timeline:{open:Date.now()},...Ka()},r?.signal?.throwIfAborted(),await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(l,f),skipProtection:!0})}catch(u){throw ie.error("caught wt session err",u),f({closeCode:0,reason:u.message}),u}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(e,r,n,i){let o=await e.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done===!0)break}}(),sink:async function(l){for await(let h of l)await s.write(h)}},f=bl()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{ie.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{ie.error(`Failed to close authentication stream reader: ${l.message}`)}),!Ml(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(e,r){let n=0,i=this.config;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=e.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f===!0)break;if(s.length>=i.maxInboundStreams)u.writable.close().catch(l=>{ie.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{ie.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await Ua(u,String(n++),"inbound",s,o?.onStreamEnd);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{ie.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await e.createBidirectionalStream(),u=await Ua(f,String(n++),o?.direction??"outbound",s,o?.onStreamEnd);return s.push(u),u},close:async c=>{ie("Closing webtransport muxer"),r()},abort:c=>{ie("Aborting webtransport muxer with err:",c),r({closeCode:0,reason:c.message})},...Ka()}}}}createListener(e){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(e){return e.filter(r=>r.protoNames().includes("webtransport"))}};function G2(t={}){return e=>new Oa(e,t)}return th($2);})();
16
16
  //! TODO unclear how to add backpressure here?
17
17
  /*! Bundled license information:
18
18