@libp2p/webtransport 4.0.0 → 4.0.1-561797a89
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 +10 -10
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/index.js.map +1 -1
- package/package.json +7 -7
- package/src/index.ts +3 -4
- package/dist/typedoc-urls.json +0 -10
package/dist/index.min.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PWebtransport = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var Libp2PWebtransport=(()=>{var
|
|
3
|
-
`)}return n};Ps.decode=function(e,t){if(typeof e!="string")throw new TypeError('"input" must be a string.');if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');var r=Oc[t];if(!r){r=Oc[t]=[];for(var n=0;n<t.length;++n)r[t.charCodeAt(n)]=n}e=e.replace(/\s/g,"");for(var i=t.length,o=t.charAt(0),s=[0],n=0;n<e.length;n++){var a=r[e.charCodeAt(n)];if(a===void 0)return;for(var c=0,f=a;c<s.length;++c)f+=s[c]*i,s[c]=f&255,f>>=8;for(;f>0;)s.push(f&255),f>>=8}for(var u=0;e[u]===o&&u<e.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function qp(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r<e.length();++r){for(var s=0,a=e.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;e.at(r)===0&&r<e.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=t[o[r]];return c}});var Nt=pt((Bv,zc)=>{var Vc=yt(),qc=Fc(),b=zc.exports=Vc.util=Vc.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){b.nextTick=process.nextTick,typeof setImmediate=="function"?b.setImmediate=setImmediate:b.setImmediate=b.nextTick;return}if(typeof setImmediate=="function"){b.setImmediate=function(){return setImmediate.apply(void 0,arguments)},b.nextTick=function(a){return setImmediate(a)};return}if(b.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===e){c.stopPropagation();var f=t.slice();t.length=0,f.forEach(function(u){u()})}};var s=a,e="forge.setImmediate",t=[];b.setImmediate=function(c){t.push(c),t.length===1&&window.postMessage(e,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),t=[];new MutationObserver(function(){var c=t.slice();t.length=0,c.forEach(function(f){f()})}).observe(i,{attributes:!0});var o=b.setImmediate;b.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.length===1&&i.setAttribute("a",n=!n))}}b.nextTick=b.setImmediate})();b.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;b.globalScope=function(){return b.isNodejs?globalThis:typeof self>"u"?window:self}();b.isArray=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};b.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};b.isArrayBufferView=function(e){return e&&b.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function Rn(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=ks;function ks(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(b.isArrayBuffer(e)||b.isArrayBufferView(e))if(typeof Buffer<"u"&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch{for(var r=0;r<t.length;++r)this.putByte(t[r])}}else(e instanceof ks||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=ks;var Hp=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>Hp&&(this.data.substr(0,1),this._constructedStringLength=0)};b.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};b.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};b.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))};b.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this};b.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};b.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(b.encodeUtf8(e))};b.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};b.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};b.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))};b.ByteStringBuffer.prototype.putInt=function(e,t){Rn(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};b.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};b.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};b.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};b.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e};b.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e};b.ByteStringBuffer.prototype.getInt=function(e){Rn(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};b.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};b.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this};b.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};b.ByteStringBuffer.prototype.copy=function(){var e=b.createBuffer(this.data);return e.read=this.read,e};b.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};b.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};b.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};b.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.ByteStringBuffer.prototype.toString=function(){return b.decodeUtf8(this.bytes())};function zp(e,t){t=t||{},this.read=t.readOffset||0,this.growSize=t.growSize||1024;var r=b.isArrayBuffer(e),n=b.isArrayBufferView(e);if(r||n){r?this.data=new DataView(e):this.data=new DataView(e.buffer,e.byteOffset,e.byteLength),this.write="writeOffset"in t?t.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,e!=null&&this.putBytes(e),"writeOffset"in t&&(this.write=t.writeOffset)}b.DataBuffer=zp;b.DataBuffer.prototype.length=function(){return this.write-this.read};b.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};b.DataBuffer.prototype.accommodate=function(e,t){if(this.length()>=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this};b.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};b.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};b.DataBuffer.prototype.putBytes=function(e,t){if(b.isArrayBufferView(e)){var r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(b.isArrayBuffer(e)){var r=new Uint8Array(e);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(e instanceof b.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&b.isArrayBufferView(e.data)){var r=new Uint8Array(e.data.byteLength,e.read,e.length());this.accommodate(r.byteLength);var i=new Uint8Array(e.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(e instanceof b.ByteStringBuffer&&(e=e.data,t="binary"),t=t||"binary",typeof e=="string"){var o;if(t==="hex")return this.accommodate(Math.ceil(e.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.hex.decode(e,o,this.write),this;if(t==="base64")return this.accommodate(Math.ceil(e.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=b.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=b.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};b.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};b.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};b.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};b.DataBuffer.prototype.putInt24=function(e){return this.accommodate(3),this.data.setInt16(this.write,e>>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this};b.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};b.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};b.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this};b.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};b.DataBuffer.prototype.putInt=function(e,t){Rn(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};b.DataBuffer.prototype.putSignedInt=function(e,t){return Rn(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};b.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};b.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};b.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};b.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};b.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};b.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};b.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};b.DataBuffer.prototype.getInt=function(e){Rn(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};b.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};b.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this};b.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};b.DataBuffer.prototype.copy=function(){return new b.DataBuffer(this)};b.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this};b.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};b.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};b.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.byteLength;++t){var r=this.data.getUint8(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return b.binary.raw.encode(t);if(e==="hex")return b.binary.hex.encode(t);if(e==="base64")return b.binary.base64.encode(t);if(e==="utf8")return b.text.utf8.decode(t);if(e==="utf16")return b.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};b.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=b.encodeUtf8(e)),new b.ByteBuffer(e)};b.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};b.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};b.hexToBytes=function(e){var t="",r=0;for(e.length&!0&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t};b.bytesToHex=function(e){return b.createBuffer(e).toHex()};b.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var cr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",fr=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],Hc="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";b.encode64=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.length;)i=e.charCodeAt(a++),o=e.charCodeAt(a++),s=e.charCodeAt(a++),r+=cr.charAt(i>>2),r+=cr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=cr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":cr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
|
|
4
|
-
`,r=r.substr(t));return n+=r,n};b.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t="",r,n,i,o,s=0;s<e.length;)r=
|
|
5
|
-
`,r=r.substr(t));return n+=r,n};b.binary.base64.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/4)*3)),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,f=r;c<e.length;)i=fr[e.charCodeAt(c++)-43],o=fr[e.charCodeAt(c++)-43],s=fr[e.charCodeAt(c++)-43],a=fr[e.charCodeAt(c++)-43],n[f++]=i<<2|o>>4,s!==64&&(n[f++]=(o&15)<<4|s>>2,a!==64&&(n[f++]=(s&3)<<6|a));return t?f-r:n.subarray(0,f)};b.binary.base58.encode=function(e,t){return b.binary.baseN.encode(e,Hc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,Hc,t)};b.text={utf8:{},utf16:{}};b.text.utf8.encode=function(e,t,r){e=b.encodeUtf8(e);var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.text.utf8.decode=function(e){return b.decodeUtf8(String.fromCharCode.apply(null,e))};b.text.utf16.encode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<e.length;++a)i[s++]=e.charCodeAt(a),o+=2;return t?o-r:n};b.text.utf16.decode=function(e){return String.fromCharCode.apply(null,new Uint16Array(e.buffer))};b.deflate=function(e,t,r){if(t=b.decode64(e.deflate(b.encode64(t)).rval),r){var n=2,i=t.charCodeAt(1);i&32&&(n=6),t=t.substring(n,t.length-4)}return t};b.inflate=function(e,t,r){var n=e.inflate(b.encode64(t)).rval;return n===null?null:b.decode64(n)};var Us=function(e,t,r){if(!e)throw new Error("WebStorage not available.");var n;if(r===null?n=e.removeItem(t):(r=b.encode64(JSON.stringify(r)),n=e.setItem(t,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},Ks=function(e,t){if(!e)throw new Error("WebStorage not available.");var r=e.getItem(t);if(e.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(b.decode64(r))),r},Gp=function(e,t,r,n){var i=Ks(e,t);i===null&&(i={}),i[r]=n,Us(e,t,i)},$p=function(e,t,r){var n=Ks(e,t);return n!==null&&(n=r in n?n[r]:null),n},Wp=function(e,t,r){var n=Ks(e,t);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),Us(e,t,n)}},Yp=function(e,t){Us(e,t,null)},Pi=function(e,t,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(t[0]===null)throw new Error("Flash local storage not available.");n=e.apply(this,t),o=i==="flash"}(i==="web"||i==="both")&&(t[0]=localStorage,n=e.apply(this,t),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};b.setItem=function(e,t,r,n,i){Pi(Gp,arguments,i)};b.getItem=function(e,t,r,n){return Pi($p,arguments,n)};b.removeItem=function(e,t,r,n){Pi(Wp,arguments,n)};b.clearItems=function(e,t,r){Pi(Yp,arguments,r)};b.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};b.format=function(e){for(var t=/%./g,r,n,i=0,o=[],s=0;r=t.exec(e);){n=e.substring(s,t.lastIndex-2),n.length>0&&o.push(n),s=t.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")};b.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",f=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",u=f.length>3?f.length%3:0;return c+(u?f.substr(0,u)+a:"")+f.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-f).toFixed(o).slice(2):"")};b.formatSize=function(e){return e>=1073741824?e=b.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=b.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=b.formatNumber(e/1024,0)+" KiB":e=b.formatNumber(e,0)+" bytes",e};b.bytesFromIP=function(e){return e.indexOf(".")!==-1?b.bytesFromIPv4(e):e.indexOf(":")!==-1?b.bytesFromIPv6(e):null};b.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=b.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};b.bytesFromIPv6=function(e){var t=0;e=e.split(":").filter(function(s){return s.length===0&&++t,!0});for(var r=(8-e.length+t)*2,n=b.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=b.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};b.bytesToIP=function(e){return e.length===4?b.bytesToIPv4(e):e.length===16?b.bytesToIPv6(e):null};b.bytesToIPv4=function(e){if(e.length!==4)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")};b.bytesToIPv6=function(e){if(e.length!==16)return null;for(var t=[],r=[],n=0,i=0;i<e.length;i+=2){for(var o=b.bytesToHex(e[i]+e[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=t.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}t.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),c.start===0&&t.unshift(""),c.end===7&&t.push(""))}return t.join(":")};b.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in b&&!e.update)return t(null,b.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return b.cores=navigator.hardwareConcurrency,t(null,b.cores);if(typeof Worker>"u")return b.cores=1,t(null,b.cores);if(typeof Blob>"u")return b.cores=2,t(null,b.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var f=Math.floor(s.reduce(function(u,l){return u+l},0)/s.length);return b.cores=Math.max(1,f),URL.revokeObjectURL(r),t(null,b.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(d){if(f.push(d.data),f.length===s){for(var g=0;g<s;++g)c[g].terminate();a(null,f)}}),c.push(l)}for(var u=0;u<s;++u)c[u].postMessage(u)}function o(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],d=0;d<s;++d)if(f!==d){var g=a[d];(u.st>g.st&&u.st<g.et||g.st>u.st&&g.st<u.et)&&l.push(d)}return c.reduce(function(h,p){return Math.max(h,p.length)},0)}}});var ki=pt((Av,Gc)=>{var Nn=yt();Nn.pki=Nn.pki||{};var Os=Gc.exports=Nn.pki.oids=Nn.oids=Nn.oids||{};function P(e,t){Os[e]=t,Os[t]=e}function lt(e,t){Os[e]=t}P("1.2.840.113549.1.1.1","rsaEncryption");P("1.2.840.113549.1.1.4","md5WithRSAEncryption");P("1.2.840.113549.1.1.5","sha1WithRSAEncryption");P("1.2.840.113549.1.1.7","RSAES-OAEP");P("1.2.840.113549.1.1.8","mgf1");P("1.2.840.113549.1.1.9","pSpecified");P("1.2.840.113549.1.1.10","RSASSA-PSS");P("1.2.840.113549.1.1.11","sha256WithRSAEncryption");P("1.2.840.113549.1.1.12","sha384WithRSAEncryption");P("1.2.840.113549.1.1.13","sha512WithRSAEncryption");P("1.3.101.112","EdDSA25519");P("1.2.840.10040.4.3","dsa-with-sha1");P("1.3.14.3.2.7","desCBC");P("1.3.14.3.2.26","sha1");P("1.3.14.3.2.29","sha1WithRSASignature");P("2.16.840.1.101.3.4.2.1","sha256");P("2.16.840.1.101.3.4.2.2","sha384");P("2.16.840.1.101.3.4.2.3","sha512");P("2.16.840.1.101.3.4.2.4","sha224");P("2.16.840.1.101.3.4.2.5","sha512-224");P("2.16.840.1.101.3.4.2.6","sha512-256");P("1.2.840.113549.2.2","md2");P("1.2.840.113549.2.5","md5");P("1.2.840.113549.1.7.1","data");P("1.2.840.113549.1.7.2","signedData");P("1.2.840.113549.1.7.3","envelopedData");P("1.2.840.113549.1.7.4","signedAndEnvelopedData");P("1.2.840.113549.1.7.5","digestedData");P("1.2.840.113549.1.7.6","encryptedData");P("1.2.840.113549.1.9.1","emailAddress");P("1.2.840.113549.1.9.2","unstructuredName");P("1.2.840.113549.1.9.3","contentType");P("1.2.840.113549.1.9.4","messageDigest");P("1.2.840.113549.1.9.5","signingTime");P("1.2.840.113549.1.9.6","counterSignature");P("1.2.840.113549.1.9.7","challengePassword");P("1.2.840.113549.1.9.8","unstructuredAddress");P("1.2.840.113549.1.9.14","extensionRequest");P("1.2.840.113549.1.9.20","friendlyName");P("1.2.840.113549.1.9.21","localKeyId");P("1.2.840.113549.1.9.22.1","x509Certificate");P("1.2.840.113549.1.12.10.1.1","keyBag");P("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");P("1.2.840.113549.1.12.10.1.3","certBag");P("1.2.840.113549.1.12.10.1.4","crlBag");P("1.2.840.113549.1.12.10.1.5","secretBag");P("1.2.840.113549.1.12.10.1.6","safeContentsBag");P("1.2.840.113549.1.5.13","pkcs5PBES2");P("1.2.840.113549.1.5.12","pkcs5PBKDF2");P("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");P("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");P("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");P("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");P("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");P("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");P("1.2.840.113549.2.7","hmacWithSHA1");P("1.2.840.113549.2.8","hmacWithSHA224");P("1.2.840.113549.2.9","hmacWithSHA256");P("1.2.840.113549.2.10","hmacWithSHA384");P("1.2.840.113549.2.11","hmacWithSHA512");P("1.2.840.113549.3.7","des-EDE3-CBC");P("2.16.840.1.101.3.4.1.2","aes128-CBC");P("2.16.840.1.101.3.4.1.22","aes192-CBC");P("2.16.840.1.101.3.4.1.42","aes256-CBC");P("2.5.4.3","commonName");P("2.5.4.4","surname");P("2.5.4.5","serialNumber");P("2.5.4.6","countryName");P("2.5.4.7","localityName");P("2.5.4.8","stateOrProvinceName");P("2.5.4.9","streetAddress");P("2.5.4.10","organizationName");P("2.5.4.11","organizationalUnitName");P("2.5.4.12","title");P("2.5.4.13","description");P("2.5.4.15","businessCategory");P("2.5.4.17","postalCode");P("2.5.4.42","givenName");P("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");P("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");P("2.16.840.1.113730.1.1","nsCertType");P("2.16.840.1.113730.1.13","nsComment");lt("2.5.29.1","authorityKeyIdentifier");lt("2.5.29.2","keyAttributes");lt("2.5.29.3","certificatePolicies");lt("2.5.29.4","keyUsageRestriction");lt("2.5.29.5","policyMapping");lt("2.5.29.6","subtreesConstraint");lt("2.5.29.7","subjectAltName");lt("2.5.29.8","issuerAltName");lt("2.5.29.9","subjectDirectoryAttributes");lt("2.5.29.10","basicConstraints");lt("2.5.29.11","nameConstraints");lt("2.5.29.12","policyConstraints");lt("2.5.29.13","basicConstraints");P("2.5.29.14","subjectKeyIdentifier");P("2.5.29.15","keyUsage");lt("2.5.29.16","privateKeyUsagePeriod");P("2.5.29.17","subjectAltName");P("2.5.29.18","issuerAltName");P("2.5.29.19","basicConstraints");lt("2.5.29.20","cRLNumber");lt("2.5.29.21","cRLReason");lt("2.5.29.22","expirationDate");lt("2.5.29.23","instructionCode");lt("2.5.29.24","invalidityDate");lt("2.5.29.25","cRLDistributionPoints");lt("2.5.29.26","issuingDistributionPoint");lt("2.5.29.27","deltaCRLIndicator");lt("2.5.29.28","issuingDistributionPoint");lt("2.5.29.29","certificateIssuer");lt("2.5.29.30","nameConstraints");P("2.5.29.31","cRLDistributionPoints");P("2.5.29.32","certificatePolicies");lt("2.5.29.33","policyMappings");lt("2.5.29.34","policyConstraints");P("2.5.29.35","authorityKeyIdentifier");lt("2.5.29.36","policyConstraints");P("2.5.29.37","extKeyUsage");lt("2.5.29.46","freshestCRL");lt("2.5.29.54","inhibitAnyPolicy");P("1.3.6.1.4.1.11129.2.4.2","timestampList");P("1.3.6.1.5.5.7.1.1","authorityInfoAccess");P("1.3.6.1.5.5.7.3.1","serverAuth");P("1.3.6.1.5.5.7.3.2","clientAuth");P("1.3.6.1.5.5.7.3.3","codeSigning");P("1.3.6.1.5.5.7.3.4","emailProtection");P("1.3.6.1.5.5.7.3.8","timeStamping")});var Pn=pt((Cv,Wc)=>{var Et=yt();Nt();ki();var F=Wc.exports=Et.asn1=Et.asn1||{};F.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};F.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};F.create=function(e,t,r,n,i){if(Et.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:e,type:t,constructed:r,composed:r||Et.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=F.copy(a)),a};F.copy=function(e,t){var r;if(Et.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(F.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:F.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};F.equals=function(e,t,r){if(Et.util.isArray(e)){if(!Et.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!F.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&F.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};F.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function Dn(e,t,r){if(r>t){var n=new Error("Too few bytes to parse DER.");throw n.available=e.length(),n.remaining=t,n.requested=r,n}}var Zp=function(e,t){var r=e.getByte();if(t--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Dn(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};F.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=Et.util.createBuffer(e));var r=e.length(),n=Ui(e,e.length(),0,t);if(t.parseAllBytes&&e.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=e.length(),i}return n};function Ui(e,t,r,n){var i;Dn(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Zp(e,t);if(t-=i-e.length(),c!==void 0&&c>t){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=e.length(),f.remaining=t,f.requested=c,f}c=t}var u,l,d=(o&32)===32;if(d)if(u=[],c===void 0)for(;;){if(Dn(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),u.push(Ui(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Ui(e,c,r+1,n)),t-=i-e.length(),c-=i-e.length();if(u===void 0&&s===F.Class.UNIVERSAL&&a===F.Type.BITSTRING&&(l=e.bytes(c)),u===void 0&&n.decodeBitStrings&&s===F.Class.UNIVERSAL&&a===F.Type.BITSTRING&&c>1){var g=e.read,h=t,p=0;if(a===F.Type.BITSTRING&&(Dn(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},m=Ui(e,t,r+1,y),v=i-e.length();t-=v,a==F.Type.BITSTRING&&v++;var x=m.tagClass;v===c&&(x===F.Class.UNIVERSAL||x===F.Class.CONTEXT_SPECIFIC)&&(u=[m])}catch{}u===void 0&&(e.read=g,t=h)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=t}if(a===F.Type.BMPSTRING)for(u="";c>0;c-=2)Dn(e,t,2),u+=String.fromCharCode(e.getInt16()),t-=2;else u=e.getBytes(c),t-=c}var A=l===void 0?null:{bitStringContents:l};return F.create(s,a,d,u,A)}F.toDer=function(e){var t=Et.util.createBuffer(),r=e.tagClass|e.type,n=Et.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=F.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(F.toDer(e.value[o]))}else if(e.type===F.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===F.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};F.oidToDer=function(e){var t=e.split("."),r=Et.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};F.derToOid=function(e){var t;typeof e=="string"&&(e=Et.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};F.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),f+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),f&&(c=e.charAt(f),c==="+"||c==="-")){var u=parseInt(e.substr(f+1,2),10),l=parseInt(e.substr(f+4,2),10),d=u*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};F.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,f=0,u=!1;e.charAt(e.length-1)==="Z"&&(u=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var g=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);f=g*60+h,f*=6e4,d==="+"&&(f*=-1),u=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),u?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+f)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};F.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};F.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};F.integerToDer=function(e){var t=Et.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};F.derToInteger=function(e){typeof e=="string"&&(e=Et.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};F.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&Et.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=F.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var $c=/[^\\u0000-\\u00ff]/;F.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
|
|
6
|
-
`);for(var i="",o=0;o<t*r;++o)i+=" ";switch(n+=i+"Tag: ",e.tagClass){case
|
|
2
|
+
"use strict";var Libp2PWebtransport=(()=>{var Al=Object.create;var $n=Object.defineProperty;var Il=Object.getOwnPropertyDescriptor;var Cl=Object.getOwnPropertyNames;var Tl=Object.getPrototypeOf,_l=Object.prototype.hasOwnProperty;var yt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Dt=(e,t)=>{for(var r in t)$n(e,r,{get:t[r],enumerable:!0})},Ja=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Cl(t))!_l.call(e,i)&&i!==r&&$n(e,i,{get:()=>t[i],enumerable:!(n=Il(t,i))||n.enumerable});return e};var Qt=(e,t,r)=>(r=e!=null?Al(Tl(e)):{},Ja(t||!e||!e.__esModule?$n(r,"default",{value:e,enumerable:!0}):r,e)),Ll=e=>Ja($n({},"__esModule",{value:!0}),e);var n0=yt((Ix,r0)=>{"use strict";function e0(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function Ol(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=""),t&&(r.code=t);try{return e0(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),e0(new i,r)}}r0.exports=Ol});var dt=yt((R2,nc)=>{nc.exports={options:{usePureJavaScript:!1}}});var sc=yt((N2,oc)=>{var Qo={};oc.exports=Qo;var ic={};Qo.encode=function(e,t,r){if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');if(r!==void 0&&typeof r!="number")throw new TypeError('"maxline" must be a number.');var n="";if(!(e instanceof Uint8Array))n=hd(e,t);else{var i=0,o=t.length,s=t.charAt(0),a=[0];for(i=0;i<e.length;++i){for(var c=0,f=e[i];c<a.length;++c)f+=a[c]<<8,a[c]=f%o,f=f/o|0;for(;f>0;)a.push(f%o),f=f/o|0}for(i=0;e[i]===0&&i<e.length-1;++i)n+=s;for(i=a.length-1;i>=0;--i)n+=t[a[i]]}if(r){var u=new RegExp(".{1,"+r+"}","g");n=n.match(u).join(`\r
|
|
3
|
+
`)}return n};Qo.decode=function(e,t){if(typeof e!="string")throw new TypeError('"input" must be a string.');if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');var r=ic[t];if(!r){r=ic[t]=[];for(var n=0;n<t.length;++n)r[t.charCodeAt(n)]=n}e=e.replace(/\s/g,"");for(var i=t.length,o=t.charAt(0),s=[0],n=0;n<e.length;n++){var a=r[e.charCodeAt(n)];if(a===void 0)return;for(var c=0,f=a;c<s.length;++c)f+=s[c]*i,s[c]=f&255,f>>=8;for(;f>0;)s.push(f&255),f>>=8}for(var u=0;e[u]===o&&u<e.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function hd(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r<e.length();++r){for(var s=0,a=e.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;e.at(r)===0&&r<e.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=t[o[r]];return c}});var Nt=yt((P2,uc)=>{var ac=dt(),cc=sc(),b=uc.exports=ac.util=ac.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){b.nextTick=process.nextTick,typeof setImmediate=="function"?b.setImmediate=setImmediate:b.setImmediate=b.nextTick;return}if(typeof setImmediate=="function"){b.setImmediate=function(){return setImmediate.apply(void 0,arguments)},b.nextTick=function(a){return setImmediate(a)};return}if(b.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===e){c.stopPropagation();var f=t.slice();t.length=0,f.forEach(function(u){u()})}};var s=a,e="forge.setImmediate",t=[];b.setImmediate=function(c){t.push(c),t.length===1&&window.postMessage(e,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),t=[];new MutationObserver(function(){var c=t.slice();t.length=0,c.forEach(function(f){f()})}).observe(i,{attributes:!0});var o=b.setImmediate;b.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.length===1&&i.setAttribute("a",n=!n))}}b.nextTick=b.setImmediate})();b.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;b.globalScope=function(){return b.isNodejs?globalThis:typeof self>"u"?window:self}();b.isArray=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};b.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};b.isArrayBufferView=function(e){return e&&b.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function En(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=Jo;function Jo(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(b.isArrayBuffer(e)||b.isArrayBufferView(e))if(typeof Buffer<"u"&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch{for(var r=0;r<t.length;++r)this.putByte(t[r])}}else(e instanceof Jo||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=Jo;var dd=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>dd&&(this.data.substr(0,1),this._constructedStringLength=0)};b.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};b.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};b.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))};b.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this};b.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};b.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(b.encodeUtf8(e))};b.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};b.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};b.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))};b.ByteStringBuffer.prototype.putInt=function(e,t){En(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};b.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};b.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};b.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};b.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e};b.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e};b.ByteStringBuffer.prototype.getInt=function(e){En(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};b.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};b.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this};b.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};b.ByteStringBuffer.prototype.copy=function(){var e=b.createBuffer(this.data);return e.read=this.read,e};b.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};b.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};b.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};b.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.ByteStringBuffer.prototype.toString=function(){return b.decodeUtf8(this.bytes())};function pd(e,t){t=t||{},this.read=t.readOffset||0,this.growSize=t.growSize||1024;var r=b.isArrayBuffer(e),n=b.isArrayBufferView(e);if(r||n){r?this.data=new DataView(e):this.data=new DataView(e.buffer,e.byteOffset,e.byteLength),this.write="writeOffset"in t?t.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,e!=null&&this.putBytes(e),"writeOffset"in t&&(this.write=t.writeOffset)}b.DataBuffer=pd;b.DataBuffer.prototype.length=function(){return this.write-this.read};b.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};b.DataBuffer.prototype.accommodate=function(e,t){if(this.length()>=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this};b.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};b.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};b.DataBuffer.prototype.putBytes=function(e,t){if(b.isArrayBufferView(e)){var r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(b.isArrayBuffer(e)){var r=new Uint8Array(e);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(e instanceof b.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&b.isArrayBufferView(e.data)){var r=new Uint8Array(e.data.byteLength,e.read,e.length());this.accommodate(r.byteLength);var i=new Uint8Array(e.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(e instanceof b.ByteStringBuffer&&(e=e.data,t="binary"),t=t||"binary",typeof e=="string"){var o;if(t==="hex")return this.accommodate(Math.ceil(e.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.hex.decode(e,o,this.write),this;if(t==="base64")return this.accommodate(Math.ceil(e.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=b.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=b.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};b.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};b.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};b.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};b.DataBuffer.prototype.putInt24=function(e){return this.accommodate(3),this.data.setInt16(this.write,e>>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this};b.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};b.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};b.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this};b.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};b.DataBuffer.prototype.putInt=function(e,t){En(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};b.DataBuffer.prototype.putSignedInt=function(e,t){return En(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};b.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};b.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};b.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};b.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};b.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};b.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};b.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};b.DataBuffer.prototype.getInt=function(e){En(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};b.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};b.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this};b.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};b.DataBuffer.prototype.copy=function(){return new b.DataBuffer(this)};b.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this};b.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};b.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};b.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.byteLength;++t){var r=this.data.getUint8(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return b.binary.raw.encode(t);if(e==="hex")return b.binary.hex.encode(t);if(e==="base64")return b.binary.base64.encode(t);if(e==="utf8")return b.text.utf8.decode(t);if(e==="utf16")return b.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};b.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=b.encodeUtf8(e)),new b.ByteBuffer(e)};b.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};b.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};b.hexToBytes=function(e){var t="",r=0;for(e.length&!0&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t};b.bytesToHex=function(e){return b.createBuffer(e).toHex()};b.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var rr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",nr=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],fc="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";b.encode64=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.length;)i=e.charCodeAt(a++),o=e.charCodeAt(a++),s=e.charCodeAt(a++),r+=rr.charAt(i>>2),r+=rr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=rr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":rr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
|
|
4
|
+
`,r=r.substr(t));return n+=r,n};b.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t="",r,n,i,o,s=0;s<e.length;)r=nr[e.charCodeAt(s++)-43],n=nr[e.charCodeAt(s++)-43],i=nr[e.charCodeAt(s++)-43],o=nr[e.charCodeAt(s++)-43],t+=String.fromCharCode(r<<2|n>>4),i!==64&&(t+=String.fromCharCode((n&15)<<4|i>>2),o!==64&&(t+=String.fromCharCode((i&3)<<6|o)));return t};b.encodeUtf8=function(e){return unescape(encodeURIComponent(e))};b.decodeUtf8=function(e){return decodeURIComponent(escape(e))};b.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:cc.encode,decode:cc.decode}};b.binary.raw.encode=function(e){return String.fromCharCode.apply(null,e)};b.binary.raw.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.binary.hex.encode=b.bytesToHex;b.binary.hex.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/2))),r=r||0;var i=0,o=r;for(e.length&1&&(i=1,n[o++]=parseInt(e[0],16));i<e.length;i+=2)n[o++]=parseInt(e.substr(i,2),16);return t?o-r:n};b.binary.base64.encode=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.byteLength;)i=e[a++],o=e[a++],s=e[a++],r+=rr.charAt(i>>2),r+=rr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=rr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":rr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
|
|
5
|
+
`,r=r.substr(t));return n+=r,n};b.binary.base64.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/4)*3)),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,f=r;c<e.length;)i=nr[e.charCodeAt(c++)-43],o=nr[e.charCodeAt(c++)-43],s=nr[e.charCodeAt(c++)-43],a=nr[e.charCodeAt(c++)-43],n[f++]=i<<2|o>>4,s!==64&&(n[f++]=(o&15)<<4|s>>2,a!==64&&(n[f++]=(s&3)<<6|a));return t?f-r:n.subarray(0,f)};b.binary.base58.encode=function(e,t){return b.binary.baseN.encode(e,fc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,fc,t)};b.text={utf8:{},utf16:{}};b.text.utf8.encode=function(e,t,r){e=b.encodeUtf8(e);var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.text.utf8.decode=function(e){return b.decodeUtf8(String.fromCharCode.apply(null,e))};b.text.utf16.encode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<e.length;++a)i[s++]=e.charCodeAt(a),o+=2;return t?o-r:n};b.text.utf16.decode=function(e){return String.fromCharCode.apply(null,new Uint16Array(e.buffer))};b.deflate=function(e,t,r){if(t=b.decode64(e.deflate(b.encode64(t)).rval),r){var n=2,i=t.charCodeAt(1);i&32&&(n=6),t=t.substring(n,t.length-4)}return t};b.inflate=function(e,t,r){var n=e.inflate(b.encode64(t)).rval;return n===null?null:b.decode64(n)};var jo=function(e,t,r){if(!e)throw new Error("WebStorage not available.");var n;if(r===null?n=e.removeItem(t):(r=b.encode64(JSON.stringify(r)),n=e.setItem(t,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},ts=function(e,t){if(!e)throw new Error("WebStorage not available.");var r=e.getItem(t);if(e.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(b.decode64(r))),r},yd=function(e,t,r,n){var i=ts(e,t);i===null&&(i={}),i[r]=n,jo(e,t,i)},gd=function(e,t,r){var n=ts(e,t);return n!==null&&(n=r in n?n[r]:null),n},xd=function(e,t,r){var n=ts(e,t);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),jo(e,t,n)}},md=function(e,t){jo(e,t,null)},vi=function(e,t,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(t[0]===null)throw new Error("Flash local storage not available.");n=e.apply(this,t),o=i==="flash"}(i==="web"||i==="both")&&(t[0]=localStorage,n=e.apply(this,t),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};b.setItem=function(e,t,r,n,i){vi(yd,arguments,i)};b.getItem=function(e,t,r,n){return vi(gd,arguments,n)};b.removeItem=function(e,t,r,n){vi(xd,arguments,n)};b.clearItems=function(e,t,r){vi(md,arguments,r)};b.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};b.format=function(e){for(var t=/%./g,r,n,i=0,o=[],s=0;r=t.exec(e);){n=e.substring(s,t.lastIndex-2),n.length>0&&o.push(n),s=t.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")};b.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",f=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",u=f.length>3?f.length%3:0;return c+(u?f.substr(0,u)+a:"")+f.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-f).toFixed(o).slice(2):"")};b.formatSize=function(e){return e>=1073741824?e=b.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=b.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=b.formatNumber(e/1024,0)+" KiB":e=b.formatNumber(e,0)+" bytes",e};b.bytesFromIP=function(e){return e.indexOf(".")!==-1?b.bytesFromIPv4(e):e.indexOf(":")!==-1?b.bytesFromIPv6(e):null};b.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=b.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};b.bytesFromIPv6=function(e){var t=0;e=e.split(":").filter(function(s){return s.length===0&&++t,!0});for(var r=(8-e.length+t)*2,n=b.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=b.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};b.bytesToIP=function(e){return e.length===4?b.bytesToIPv4(e):e.length===16?b.bytesToIPv6(e):null};b.bytesToIPv4=function(e){if(e.length!==4)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")};b.bytesToIPv6=function(e){if(e.length!==16)return null;for(var t=[],r=[],n=0,i=0;i<e.length;i+=2){for(var o=b.bytesToHex(e[i]+e[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=t.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}t.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),c.start===0&&t.unshift(""),c.end===7&&t.push(""))}return t.join(":")};b.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in b&&!e.update)return t(null,b.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return b.cores=navigator.hardwareConcurrency,t(null,b.cores);if(typeof Worker>"u")return b.cores=1,t(null,b.cores);if(typeof Blob>"u")return b.cores=2,t(null,b.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var f=Math.floor(s.reduce(function(u,l){return u+l},0)/s.length);return b.cores=Math.max(1,f),URL.revokeObjectURL(r),t(null,b.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(d){if(f.push(d.data),f.length===s){for(var g=0;g<s;++g)c[g].terminate();a(null,f)}}),c.push(l)}for(var u=0;u<s;++u)c[u].postMessage(u)}function o(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],d=0;d<s;++d)if(f!==d){var g=a[d];(u.st>g.st&&u.st<g.et||g.st>u.st&&g.st<u.et)&&l.push(d)}return c.reduce(function(h,p){return Math.max(h,p.length)},0)}}});var wi=yt((D2,lc)=>{var Sn=dt();Sn.pki=Sn.pki||{};var es=lc.exports=Sn.pki.oids=Sn.oids=Sn.oids||{};function D(e,t){es[e]=t,es[t]=e}function ut(e,t){es[e]=t}D("1.2.840.113549.1.1.1","rsaEncryption");D("1.2.840.113549.1.1.4","md5WithRSAEncryption");D("1.2.840.113549.1.1.5","sha1WithRSAEncryption");D("1.2.840.113549.1.1.7","RSAES-OAEP");D("1.2.840.113549.1.1.8","mgf1");D("1.2.840.113549.1.1.9","pSpecified");D("1.2.840.113549.1.1.10","RSASSA-PSS");D("1.2.840.113549.1.1.11","sha256WithRSAEncryption");D("1.2.840.113549.1.1.12","sha384WithRSAEncryption");D("1.2.840.113549.1.1.13","sha512WithRSAEncryption");D("1.3.101.112","EdDSA25519");D("1.2.840.10040.4.3","dsa-with-sha1");D("1.3.14.3.2.7","desCBC");D("1.3.14.3.2.26","sha1");D("1.3.14.3.2.29","sha1WithRSASignature");D("2.16.840.1.101.3.4.2.1","sha256");D("2.16.840.1.101.3.4.2.2","sha384");D("2.16.840.1.101.3.4.2.3","sha512");D("2.16.840.1.101.3.4.2.4","sha224");D("2.16.840.1.101.3.4.2.5","sha512-224");D("2.16.840.1.101.3.4.2.6","sha512-256");D("1.2.840.113549.2.2","md2");D("1.2.840.113549.2.5","md5");D("1.2.840.113549.1.7.1","data");D("1.2.840.113549.1.7.2","signedData");D("1.2.840.113549.1.7.3","envelopedData");D("1.2.840.113549.1.7.4","signedAndEnvelopedData");D("1.2.840.113549.1.7.5","digestedData");D("1.2.840.113549.1.7.6","encryptedData");D("1.2.840.113549.1.9.1","emailAddress");D("1.2.840.113549.1.9.2","unstructuredName");D("1.2.840.113549.1.9.3","contentType");D("1.2.840.113549.1.9.4","messageDigest");D("1.2.840.113549.1.9.5","signingTime");D("1.2.840.113549.1.9.6","counterSignature");D("1.2.840.113549.1.9.7","challengePassword");D("1.2.840.113549.1.9.8","unstructuredAddress");D("1.2.840.113549.1.9.14","extensionRequest");D("1.2.840.113549.1.9.20","friendlyName");D("1.2.840.113549.1.9.21","localKeyId");D("1.2.840.113549.1.9.22.1","x509Certificate");D("1.2.840.113549.1.12.10.1.1","keyBag");D("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");D("1.2.840.113549.1.12.10.1.3","certBag");D("1.2.840.113549.1.12.10.1.4","crlBag");D("1.2.840.113549.1.12.10.1.5","secretBag");D("1.2.840.113549.1.12.10.1.6","safeContentsBag");D("1.2.840.113549.1.5.13","pkcs5PBES2");D("1.2.840.113549.1.5.12","pkcs5PBKDF2");D("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");D("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");D("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");D("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");D("1.2.840.113549.2.7","hmacWithSHA1");D("1.2.840.113549.2.8","hmacWithSHA224");D("1.2.840.113549.2.9","hmacWithSHA256");D("1.2.840.113549.2.10","hmacWithSHA384");D("1.2.840.113549.2.11","hmacWithSHA512");D("1.2.840.113549.3.7","des-EDE3-CBC");D("2.16.840.1.101.3.4.1.2","aes128-CBC");D("2.16.840.1.101.3.4.1.22","aes192-CBC");D("2.16.840.1.101.3.4.1.42","aes256-CBC");D("2.5.4.3","commonName");D("2.5.4.4","surname");D("2.5.4.5","serialNumber");D("2.5.4.6","countryName");D("2.5.4.7","localityName");D("2.5.4.8","stateOrProvinceName");D("2.5.4.9","streetAddress");D("2.5.4.10","organizationName");D("2.5.4.11","organizationalUnitName");D("2.5.4.12","title");D("2.5.4.13","description");D("2.5.4.15","businessCategory");D("2.5.4.17","postalCode");D("2.5.4.42","givenName");D("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");D("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");D("2.16.840.1.113730.1.1","nsCertType");D("2.16.840.1.113730.1.13","nsComment");ut("2.5.29.1","authorityKeyIdentifier");ut("2.5.29.2","keyAttributes");ut("2.5.29.3","certificatePolicies");ut("2.5.29.4","keyUsageRestriction");ut("2.5.29.5","policyMapping");ut("2.5.29.6","subtreesConstraint");ut("2.5.29.7","subjectAltName");ut("2.5.29.8","issuerAltName");ut("2.5.29.9","subjectDirectoryAttributes");ut("2.5.29.10","basicConstraints");ut("2.5.29.11","nameConstraints");ut("2.5.29.12","policyConstraints");ut("2.5.29.13","basicConstraints");D("2.5.29.14","subjectKeyIdentifier");D("2.5.29.15","keyUsage");ut("2.5.29.16","privateKeyUsagePeriod");D("2.5.29.17","subjectAltName");D("2.5.29.18","issuerAltName");D("2.5.29.19","basicConstraints");ut("2.5.29.20","cRLNumber");ut("2.5.29.21","cRLReason");ut("2.5.29.22","expirationDate");ut("2.5.29.23","instructionCode");ut("2.5.29.24","invalidityDate");ut("2.5.29.25","cRLDistributionPoints");ut("2.5.29.26","issuingDistributionPoint");ut("2.5.29.27","deltaCRLIndicator");ut("2.5.29.28","issuingDistributionPoint");ut("2.5.29.29","certificateIssuer");ut("2.5.29.30","nameConstraints");D("2.5.29.31","cRLDistributionPoints");D("2.5.29.32","certificatePolicies");ut("2.5.29.33","policyMappings");ut("2.5.29.34","policyConstraints");D("2.5.29.35","authorityKeyIdentifier");ut("2.5.29.36","policyConstraints");D("2.5.29.37","extKeyUsage");ut("2.5.29.46","freshestCRL");ut("2.5.29.54","inhibitAnyPolicy");D("1.3.6.1.4.1.11129.2.4.2","timestampList");D("1.3.6.1.5.5.7.1.1","authorityInfoAccess");D("1.3.6.1.5.5.7.3.1","serverAuth");D("1.3.6.1.5.5.7.3.2","clientAuth");D("1.3.6.1.5.5.7.3.3","codeSigning");D("1.3.6.1.5.5.7.3.4","emailProtection");D("1.3.6.1.5.5.7.3.8","timeStamping")});var An=yt((k2,dc)=>{var bt=dt();Nt();wi();var V=dc.exports=bt.asn1=bt.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(e,t,r,n,i){if(bt.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:e,type:t,constructed:r,composed:r||bt.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(e,t){var r;if(bt.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(bt.util.isArray(e)){if(!bt.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function Bn(e,t,r){if(r>t){var n=new Error("Too few bytes to parse DER.");throw n.available=e.length(),n.remaining=t,n.requested=r,n}}var bd=function(e,t){var r=e.getByte();if(t--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Bn(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=bt.util.createBuffer(e));var r=e.length(),n=Ei(e,e.length(),0,t);if(t.parseAllBytes&&e.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=e.length(),i}return n};function Ei(e,t,r,n){var i;Bn(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=bd(e,t);if(t-=i-e.length(),c!==void 0&&c>t){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=e.length(),f.remaining=t,f.requested=c,f}c=t}var u,l,d=(o&32)===32;if(d)if(u=[],c===void 0)for(;;){if(Bn(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),u.push(Ei(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Ei(e,c,r+1,n)),t-=i-e.length(),c-=i-e.length();if(u===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=e.bytes(c)),u===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var g=e.read,h=t,p=0;if(a===V.Type.BITSTRING&&(Bn(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},x=Ei(e,t,r+1,y),v=i-e.length();t-=v,a==V.Type.BITSTRING&&v++;var m=x.tagClass;v===c&&(m===V.Class.UNIVERSAL||m===V.Class.CONTEXT_SPECIFIC)&&(u=[x])}catch{}u===void 0&&(e.read=g,t=h)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=t}if(a===V.Type.BMPSTRING)for(u="";c>0;c-=2)Bn(e,t,2),u+=String.fromCharCode(e.getInt16()),t-=2;else u=e.getBytes(c),t-=c}var I=l===void 0?null:{bitStringContents:l};return V.create(s,a,d,u,I)}V.toDer=function(e){var t=bt.util.createBuffer(),r=e.tagClass|e.type,n=bt.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=bt.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=bt.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),f+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),f&&(c=e.charAt(f),c==="+"||c==="-")){var u=parseInt(e.substr(f+1,2),10),l=parseInt(e.substr(f+4,2),10),d=u*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,f=0,u=!1;e.charAt(e.length-1)==="Z"&&(u=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var g=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);f=g*60+h,f*=6e4,d==="+"&&(f*=-1),u=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),u?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+f)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=bt.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=bt.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&bt.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var hc=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
|
|
6
|
+
`);for(var i="",o=0;o<t*r;++o)i+=" ";switch(n+=i+"Tag: ",e.tagClass){case V.Class.UNIVERSAL:n+="Universal:";break;case V.Class.APPLICATION:n+="Application:";break;case V.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case V.Class.PRIVATE:n+="Private:";break}if(e.tagClass===V.Class.UNIVERSAL)switch(n+=e.type,e.type){case V.Type.NONE:n+=" (None)";break;case V.Type.BOOLEAN:n+=" (Boolean)";break;case V.Type.INTEGER:n+=" (Integer)";break;case V.Type.BITSTRING:n+=" (Bit string)";break;case V.Type.OCTETSTRING:n+=" (Octet string)";break;case V.Type.NULL:n+=" (Null)";break;case V.Type.OID:n+=" (Object Identifier)";break;case V.Type.ODESC:n+=" (Object Descriptor)";break;case V.Type.EXTERNAL:n+=" (External or Instance of)";break;case V.Type.REAL:n+=" (Real)";break;case V.Type.ENUMERATED:n+=" (Enumerated)";break;case V.Type.EMBEDDED:n+=" (Embedded PDV)";break;case V.Type.UTF8:n+=" (UTF8)";break;case V.Type.ROID:n+=" (Relative Object Identifier)";break;case V.Type.SEQUENCE:n+=" (Sequence)";break;case V.Type.SET:n+=" (Set)";break;case V.Type.PRINTABLESTRING:n+=" (Printable String)";break;case V.Type.IA5String:n+=" (IA5String (ASCII))";break;case V.Type.UTCTIME:n+=" (UTC time)";break;case V.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case V.Type.BMPSTRING:n+=" (BMP String)";break}else n+=e.type;if(n+=`
|
|
7
7
|
`,n+=i+"Constructed: "+e.constructed+`
|
|
8
|
-
`,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=F.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===F.Type.OID){var c=F.derToOid(e.value);n+=c,Et.pki&&Et.pki.oids&&c in Et.pki.oids&&(n+=" ("+Et.pki.oids[c]+") ")}if(e.type===F.Type.INTEGER)try{n+=F.derToInteger(e.value)}catch{n+="0x"+Et.util.bytesToHex(e.value)}else if(e.type===F.Type.BITSTRING){if(e.value.length>1?n+="0x"+Et.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var f=e.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(e.type===F.Type.OCTETSTRING)$c.test(e.value)||(n+="("+e.value+") "),n+="0x"+Et.util.bytesToHex(e.value);else if(e.type===F.Type.UTF8)try{n+=Et.util.decodeUtf8(e.value)}catch(u){if(u.message==="URI malformed")n+="0x"+Et.util.bytesToHex(e.value)+" (malformed UTF8)";else throw u}else e.type===F.Type.PRINTABLESTRING||e.type===F.Type.IA5String?n+=e.value:$c.test(e.value)?n+="0x"+Et.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var Fs=pt((Iv,Yc)=>{var Ot=yt();Nt();Yc.exports=Ot.cipher=Ot.cipher||{};Ot.cipher.algorithms=Ot.cipher.algorithms||{};Ot.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};Ot.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};Ot.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),Ot.cipher.algorithms[e]=t};Ot.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in Ot.cipher.algorithms?Ot.cipher.algorithms[e]:null};var Ms=Ot.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};Ms.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=Ot.util.createBuffer(),this.output=e.output||Ot.util.createBuffer(),this.mode.start(t)};Ms.prototype.update=function(e){for(e&&this._input.putBuffer(e);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};Ms.prototype.finish=function(e){e&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return e(this.blockSize,r,!1)},this.mode.unpad=function(r){return e(this.blockSize,r,!0)});var t={};return t.decrypt=this._decrypt,t.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,t)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,t))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,t))}});var qs=pt((Tv,Zc)=>{var Mt=yt();Nt();Mt.cipher=Mt.cipher||{};var it=Zc.exports=Mt.cipher.modes=Mt.cipher.modes||{};it.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.ecb.prototype.start=function(e){};it.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};it.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};it.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};it.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};it.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=Ki(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};it.cbc.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n]);this._prev=this._outBlock};it.cbc.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};it.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};it.cbc.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};it.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ki(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32()^this._outBlock[i],t.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32(),t.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ki(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(e.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb.prototype.decrypt=it.ofb.prototype.encrypt;it.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ki(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ctr.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0&&(e.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}Oi(this._inBlock)};it.ctr.prototype.decrypt=it.ctr.prototype.encrypt;it.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};it.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Mt.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Mt.util.createBuffer(e.additionalData):r=Mt.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Mt.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(Vs(n*8)))}this._inBlock=this._j0.slice(0),Oi(this._inBlock),this._partialBytes=0,r=Mt.util.createBuffer(r),this._aDataLength=Vs(r.length()*8);var i=r.length()%this.blockSize;for(i&&r.fillWithByte(0,this.blockSize-i),this._s=[0,0,0,0];r.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()])};it.gcm.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^=e.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.read-=this.blockSize,t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Oi(this._inBlock)};it.gcm.prototype.decrypt=function(e,t,r){var n=e.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),Oi(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};it.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Mt.util.createBuffer();var n=this._aDataLength.concat(Vs(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),t.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};it.gcm.prototype.multiply=function(e,t){for(var r=[0,0,0,0],n=t.slice(0),i=0;i<128;++i){var o=e[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};it.gcm.prototype.pow=function(e,t){for(var r=e[3]&1,n=3;n>0;--n)t[n]=e[n]>>>1|(e[n-1]&1)<<31;t[0]=e[0]>>>1,r&&(t[0]^=this._R)};it.gcm.prototype.tableMultiply=function(e){for(var t=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=e[n]>>>(7-r%8)*4&15,o=this._m[r][i];t[0]^=o[0],t[1]^=o[1],t[2]^=o[2],t[3]^=o[3]}return t};it.gcm.prototype.ghash=function(e,t,r){return t[0]^=r[0],t[1]^=r[1],t[2]^=r[2],t[3]^=r[3],this.tableMultiply(t)};it.gcm.prototype.generateHashTable=function(e,t){for(var r=8/t,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,f=(n-1-s%n)*t;a[c]=1<<t-1<<f,o[s]=this.generateSubHashTable(this.multiply(a,e),t)}return o};it.gcm.prototype.generateSubHashTable=function(e,t){var r=1<<t,n=r>>>1,i=new Array(r);i[n]=e.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var f=i[o^n];i[o]=[e[0]^f[0],e[1]^f[1],e[2]^f[2],e[3]^f[3]]}return i};function Ki(e,t){if(typeof e=="string"&&(e=Mt.util.createBuffer(e)),Mt.util.isArray(e)&&e.length>4){var r=e;e=Mt.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Mt.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Oi(e){e[e.length-1]=e[e.length-1]+1&4294967295}function Vs(e){return[e/4294967296|0,e&4294967295]}});var $s=pt((_v,jc)=>{var xt=yt();Fs();qs();Nt();jc.exports=xt.aes=xt.aes||{};xt.aes.startEncrypting=function(e,t,r,n){var i=Mi({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};xt.aes.createEncryptionCipher=function(e,t){return Mi({key:e,output:null,decrypt:!1,mode:t})};xt.aes.startDecrypting=function(e,t,r,n){var i=Mi({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};xt.aes.createDecryptionCipher=function(e,t){return Mi({key:e,output:null,decrypt:!0,mode:t})};xt.aes.Algorithm=function(e,t){Gs||Qc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return zs(r._w,n,i,!1)},decrypt:function(n,i){return zs(r._w,n,i,!0)}}}),r._init=!1};xt.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t=e.key,r;if(typeof t=="string"&&(t.length===16||t.length===24||t.length===32))t=xt.util.createBuffer(t);else if(xt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=xt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!xt.util.isArray(t)){r=t,t=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)t.push(r.getInt32())}}if(!xt.util.isArray(t)||!(t.length===4||t.length===6||t.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=Jc(t,e.decrypt&&!s),this._init=!0}};xt.aes._expandKey=function(e,t){return Gs||Qc(),Jc(e,t)};xt.aes._updateBlock=zs;Jr("AES-ECB",xt.cipher.modes.ecb);Jr("AES-CBC",xt.cipher.modes.cbc);Jr("AES-CFB",xt.cipher.modes.cfb);Jr("AES-OFB",xt.cipher.modes.ofb);Jr("AES-CTR",xt.cipher.modes.ctr);Jr("AES-GCM",xt.cipher.modes.gcm);function Jr(e,t){var r=function(){return new xt.aes.Algorithm(e,t)};xt.cipher.registerAlgorithm(e,r)}var Gs=!1,Qr=4,Xt,Hs,Xc,wr,Be;function Qc(){Gs=!0,Xc=[0,1,2,4,8,16,32,64,128,27,54];for(var e=new Array(256),t=0;t<128;++t)e[t]=t<<1,e[t+128]=t+128<<1^283;Xt=new Array(256),Hs=new Array(256),wr=new Array(4),Be=new Array(4);for(var t=0;t<4;++t)wr[t]=new Array(256),Be[t]=new Array(256);for(var r=0,n=0,i,o,s,a,c,f,u,t=0;t<256;++t){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Xt[r]=a,Hs[a]=r,c=e[a],i=e[r],o=e[i],s=e[o],f=c<<24^a<<16^a<<8^(a^c),u=(i^o^s)<<24^(r^s)<<16^(r^o^s)<<8^(r^i^s);for(var l=0;l<4;++l)wr[l][r]=f,Be[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=i^e[e[e[i^s]]],n^=e[e[n]])}}function Jc(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Qr*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Xt[n>>>16&255]<<24^Xt[n>>>8&255]<<16^Xt[n&255]<<8^Xt[n>>>24]^Xc[i]<<24,i++):o>6&&c%o===4&&(n=Xt[n>>>24]<<24^Xt[n>>>16&255]<<16^Xt[n>>>8&255]<<8^Xt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=Be[0],l=Be[1],d=Be[2],g=Be[3],h=r.slice(0);a=r.length;for(var c=0,p=a-Qr;c<a;c+=Qr,p-=Qr)if(c===0||c===a-Qr)h[c]=r[p],h[c+1]=r[p+3],h[c+2]=r[p+2],h[c+3]=r[p+1];else for(var y=0;y<Qr;++y)f=r[p+y],h[c+(3&-y)]=u[Xt[f>>>24]]^l[Xt[f>>>16&255]]^d[Xt[f>>>8&255]]^g[Xt[f&255]];r=h}return r}function zs(e,t,r,n){var i=e.length/4-1,o,s,a,c,f;n?(o=Be[0],s=Be[1],a=Be[2],c=Be[3],f=Hs):(o=wr[0],s=wr[1],a=wr[2],c=wr[3],f=Xt);var u,l,d,g,h,p,y;u=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],g=t[n?1:3]^e[3];for(var m=3,v=1;v<i;++v)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[g&255]^e[++m],p=o[l>>>24]^s[d>>>16&255]^a[g>>>8&255]^c[u&255]^e[++m],y=o[d>>>24]^s[g>>>16&255]^a[u>>>8&255]^c[l&255]^e[++m],g=o[g>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^e[++m],u=h,l=p,d=y;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[g&255]^e[++m],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[g>>>8&255]<<8^f[u&255]^e[++m],r[2]=f[d>>>24]<<24^f[g>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++m],r[n?1:3]=f[g>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^e[++m]}function Mi(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=xt.cipher.createDecipher(r,e.key):n=xt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof xt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var rf=pt((Lv,ef)=>{var At=yt();Fs();qs();Nt();ef.exports=At.des=At.des||{};At.des.startEncrypting=function(e,t,r,n){var i=Fi({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};At.des.createEncryptionCipher=function(e,t){return Fi({key:e,output:null,decrypt:!1,mode:t})};At.des.startDecrypting=function(e,t,r,n){var i=Fi({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};At.des.createDecryptionCipher=function(e,t){return Fi({key:e,output:null,decrypt:!0,mode:t})};At.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return tf(r._keys,n,i,!1)},decrypt:function(n,i){return tf(r._keys,n,i,!0)}}}),r._init=!1};At.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=At.util.createBuffer(e.key);if(this.name.indexOf("3DES")===0&&t.length()!==24)throw new Error("Invalid Triple-DES key size: "+t.length()*8);this._keys=iy(t),this._init=!0}};Te("DES-ECB",At.cipher.modes.ecb);Te("DES-CBC",At.cipher.modes.cbc);Te("DES-CFB",At.cipher.modes.cfb);Te("DES-OFB",At.cipher.modes.ofb);Te("DES-CTR",At.cipher.modes.ctr);Te("3DES-ECB",At.cipher.modes.ecb);Te("3DES-CBC",At.cipher.modes.cbc);Te("3DES-CFB",At.cipher.modes.cfb);Te("3DES-OFB",At.cipher.modes.ofb);Te("3DES-CTR",At.cipher.modes.ctr);function Te(e,t){var r=function(){return new At.des.Algorithm(e,t)};At.cipher.registerAlgorithm(e,r)}var Xp=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],Qp=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],Jp=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],jp=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],ty=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],ey=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],ry=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],ny=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];function iy(e){for(var t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],g=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,y=[],m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],v=0,x,A=0;A<p;A++){var S=e.getInt32(),B=e.getInt32();x=(S>>>4^B)&252645135,B^=x,S^=x<<4,x=(B>>>-16^S)&65535,S^=x,B^=x<<-16,x=(S>>>2^B)&858993459,B^=x,S^=x<<2,x=(B>>>-16^S)&65535,S^=x,B^=x<<-16,x=(S>>>1^B)&1431655765,B^=x,S^=x<<1,x=(B>>>8^S)&16711935,S^=x,B^=x<<8,x=(S>>>1^B)&1431655765,B^=x,S^=x<<1,x=S<<8|B>>>20&240,S=B<<24|B<<8&16711680|B>>>8&65280|B>>>24&240,B=x;for(var R=0;R<m.length;++R){m[R]?(S=S<<2|S>>>26,B=B<<2|B>>>26):(S=S<<1|S>>>27,B=B<<1|B>>>27),S&=-15,B&=-15;var _=t[S>>>28]|r[S>>>24&15]|n[S>>>20&15]|i[S>>>16&15]|o[S>>>12&15]|s[S>>>8&15]|a[S>>>4&15],O=c[B>>>28]|f[B>>>24&15]|u[B>>>20&15]|l[B>>>16&15]|d[B>>>12&15]|g[B>>>8&15]|h[B>>>4&15];x=(O>>>16^_)&65535,y[v++]=_^x,y[v++]=O^x<<16}}return y}function tf(e,t,r,n){var i=e.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=t[0],c=t[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var f=0;f<i;f+=3){for(var u=o[f+1],l=o[f+2],d=o[f];d!=u;d+=l){var g=c^e[d],h=(c>>>4|c<<28)^e[d+1];s=a,a=c,c=s^(Qp[g>>>24&63]|jp[g>>>16&63]|ey[g>>>8&63]|ny[g&63]|Xp[h>>>24&63]|Jp[h>>>16&63]|ty[h>>>8&63]|ry[h&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function Fi(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=At.cipher.createDecipher(r,e.key):n=At.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof At.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Er=pt((Rv,nf)=>{var Vi=yt();nf.exports=Vi.md=Vi.md||{};Vi.md.algorithms=Vi.md.algorithms||{}});var sf=pt((Nv,of)=>{var We=yt();Er();Nt();var oy=of.exports=We.hmac=We.hmac||{};oy.create=function(){var e=null,t=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in We.md.algorithms)t=We.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else t=o;if(s===null)s=e;else{if(typeof s=="string")s=We.util.createBuffer(s);else if(We.util.isArray(s)){var a=s;s=We.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var f=s.length();f>t.blockLength&&(t.start(),t.update(s.bytes()),s=t.digest()),r=We.util.createBuffer(),n=We.util.createBuffer(),f=s.length();for(var c=0;c<f;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(f<t.blockLength)for(var a=t.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);e=s,r=r.bytes(),n=n.bytes()}t.start(),t.update(r)},i.update=function(o){t.update(o)},i.getMac=function(){var o=t.digest().bytes();return t.start(),t.update(n),t.update(o),t.digest()},i.digest=i.getMac,i}});var qi=pt(()=>{});var cf=pt((kv,af)=>{var Qt=yt();sf();Er();Nt();var sy=Qt.pkcs5=Qt.pkcs5||{},Ye;Qt.util.isNodejs&&!Qt.options.usePureJavaScript&&(Ye=qi());af.exports=Qt.pbkdf2=sy.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Qt.util.isNodejs&&!Qt.options.usePureJavaScript&&Ye.pbkdf2&&(i===null||typeof i!="object")&&(Ye.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?Ye.pbkdf2Sync.length===4?Ye.pbkdf2(e,t,r,n,function(x,A){if(x)return o(x);o(null,A.toString("binary"))}):Ye.pbkdf2(e,t,r,n,i,function(x,A){if(x)return o(x);o(null,A.toString("binary"))}):Ye.pbkdf2Sync.length===4?Ye.pbkdf2Sync(e,t,r,n).toString("binary"):Ye.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Qt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Qt.md[i].create()}var s=i.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(o)return o(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=Qt.hmac.create();u.start(i,e);var l="",d,g,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Qt.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var y=2;y<=r;++y)u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Qt.util.xorBytes(d,g,s),h=g;l+=p<c?d:d.substr(0,f)}return l}var p=1,y;function m(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Qt.util.int32ToBytes(p)),d=h=u.digest().getBytes(),y=2,v()}function v(){if(y<=r)return u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Qt.util.xorBytes(d,g,s),h=g,++y,Qt.util.setImmediate(v);l+=p<c?d:d.substr(0,f),++p,m()}m()}});var lf=pt((Uv,uf)=>{var zi=yt();Nt();var ff=uf.exports=zi.pem=zi.pem||{};ff.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
|
|
9
|
-
`,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=
|
|
10
|
-
`),r+=
|
|
8
|
+
`,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,bt.pki&&bt.pki.oids&&c in bt.pki.oids&&(n+=" ("+bt.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+bt.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+bt.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var f=e.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)hc.test(e.value)||(n+="("+e.value+") "),n+="0x"+bt.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=bt.util.decodeUtf8(e.value)}catch(u){if(u.message==="URI malformed")n+="0x"+bt.util.bytesToHex(e.value)+" (malformed UTF8)";else throw u}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:hc.test(e.value)?n+="0x"+bt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var ns=yt((U2,pc)=>{var Ot=dt();Nt();pc.exports=Ot.cipher=Ot.cipher||{};Ot.cipher.algorithms=Ot.cipher.algorithms||{};Ot.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};Ot.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};Ot.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),Ot.cipher.algorithms[e]=t};Ot.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in Ot.cipher.algorithms?Ot.cipher.algorithms[e]:null};var rs=Ot.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};rs.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=Ot.util.createBuffer(),this.output=e.output||Ot.util.createBuffer(),this.mode.start(t)};rs.prototype.update=function(e){for(e&&this._input.putBuffer(e);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};rs.prototype.finish=function(e){e&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return e(this.blockSize,r,!1)},this.mode.unpad=function(r){return e(this.blockSize,r,!0)});var t={};return t.decrypt=this._decrypt,t.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,t)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,t))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,t))}});var os=yt((K2,yc)=>{var Mt=dt();Nt();Mt.cipher=Mt.cipher||{};var it=yc.exports=Mt.cipher.modes=Mt.cipher.modes||{};it.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.ecb.prototype.start=function(e){};it.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};it.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};it.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};it.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};it.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=Si(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};it.cbc.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n]);this._prev=this._outBlock};it.cbc.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};it.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};it.cbc.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};it.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Si(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32()^this._outBlock[i],t.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32(),t.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Si(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(e.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb.prototype.decrypt=it.ofb.prototype.encrypt;it.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Si(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ctr.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0&&(e.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}Bi(this._inBlock)};it.ctr.prototype.decrypt=it.ctr.prototype.encrypt;it.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};it.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Mt.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Mt.util.createBuffer(e.additionalData):r=Mt.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Mt.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(is(n*8)))}this._inBlock=this._j0.slice(0),Bi(this._inBlock),this._partialBytes=0,r=Mt.util.createBuffer(r),this._aDataLength=is(r.length()*8);var i=r.length()%this.blockSize;for(i&&r.fillWithByte(0,this.blockSize-i),this._s=[0,0,0,0];r.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()])};it.gcm.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^=e.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.read-=this.blockSize,t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Bi(this._inBlock)};it.gcm.prototype.decrypt=function(e,t,r){var n=e.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),Bi(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};it.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Mt.util.createBuffer();var n=this._aDataLength.concat(is(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),t.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};it.gcm.prototype.multiply=function(e,t){for(var r=[0,0,0,0],n=t.slice(0),i=0;i<128;++i){var o=e[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};it.gcm.prototype.pow=function(e,t){for(var r=e[3]&1,n=3;n>0;--n)t[n]=e[n]>>>1|(e[n-1]&1)<<31;t[0]=e[0]>>>1,r&&(t[0]^=this._R)};it.gcm.prototype.tableMultiply=function(e){for(var t=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=e[n]>>>(7-r%8)*4&15,o=this._m[r][i];t[0]^=o[0],t[1]^=o[1],t[2]^=o[2],t[3]^=o[3]}return t};it.gcm.prototype.ghash=function(e,t,r){return t[0]^=r[0],t[1]^=r[1],t[2]^=r[2],t[3]^=r[3],this.tableMultiply(t)};it.gcm.prototype.generateHashTable=function(e,t){for(var r=8/t,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,f=(n-1-s%n)*t;a[c]=1<<t-1<<f,o[s]=this.generateSubHashTable(this.multiply(a,e),t)}return o};it.gcm.prototype.generateSubHashTable=function(e,t){var r=1<<t,n=r>>>1,i=new Array(r);i[n]=e.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var f=i[o^n];i[o]=[e[0]^f[0],e[1]^f[1],e[2]^f[2],e[3]^f[3]]}return i};function Si(e,t){if(typeof e=="string"&&(e=Mt.util.createBuffer(e)),Mt.util.isArray(e)&&e.length>4){var r=e;e=Mt.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Mt.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Bi(e){e[e.length-1]=e[e.length-1]+1&4294967295}function is(e){return[e/4294967296|0,e&4294967295]}});var fs=yt((O2,bc)=>{var gt=dt();ns();os();Nt();bc.exports=gt.aes=gt.aes||{};gt.aes.startEncrypting=function(e,t,r,n){var i=Ai({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};gt.aes.createEncryptionCipher=function(e,t){return Ai({key:e,output:null,decrypt:!1,mode:t})};gt.aes.startDecrypting=function(e,t,r,n){var i=Ai({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};gt.aes.createDecryptionCipher=function(e,t){return Ai({key:e,output:null,decrypt:!0,mode:t})};gt.aes.Algorithm=function(e,t){cs||xc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return as(r._w,n,i,!1)},decrypt:function(n,i){return as(r._w,n,i,!0)}}}),r._init=!1};gt.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t=e.key,r;if(typeof t=="string"&&(t.length===16||t.length===24||t.length===32))t=gt.util.createBuffer(t);else if(gt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=gt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!gt.util.isArray(t)){r=t,t=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)t.push(r.getInt32())}}if(!gt.util.isArray(t)||!(t.length===4||t.length===6||t.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=mc(t,e.decrypt&&!s),this._init=!0}};gt.aes._expandKey=function(e,t){return cs||xc(),mc(e,t)};gt.aes._updateBlock=as;Wr("AES-ECB",gt.cipher.modes.ecb);Wr("AES-CBC",gt.cipher.modes.cbc);Wr("AES-CFB",gt.cipher.modes.cfb);Wr("AES-OFB",gt.cipher.modes.ofb);Wr("AES-CTR",gt.cipher.modes.ctr);Wr("AES-GCM",gt.cipher.modes.gcm);function Wr(e,t){var r=function(){return new gt.aes.Algorithm(e,t)};gt.cipher.registerAlgorithm(e,r)}var cs=!1,Gr=4,Zt,ss,gc,xr,pe;function xc(){cs=!0,gc=[0,1,2,4,8,16,32,64,128,27,54];for(var e=new Array(256),t=0;t<128;++t)e[t]=t<<1,e[t+128]=t+128<<1^283;Zt=new Array(256),ss=new Array(256),xr=new Array(4),pe=new Array(4);for(var t=0;t<4;++t)xr[t]=new Array(256),pe[t]=new Array(256);for(var r=0,n=0,i,o,s,a,c,f,u,t=0;t<256;++t){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Zt[r]=a,ss[a]=r,c=e[a],i=e[r],o=e[i],s=e[o],f=c<<24^a<<16^a<<8^(a^c),u=(i^o^s)<<24^(r^s)<<16^(r^o^s)<<8^(r^i^s);for(var l=0;l<4;++l)xr[l][r]=f,pe[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=i^e[e[e[i^s]]],n^=e[e[n]])}}function mc(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Gr*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Zt[n>>>16&255]<<24^Zt[n>>>8&255]<<16^Zt[n&255]<<8^Zt[n>>>24]^gc[i]<<24,i++):o>6&&c%o===4&&(n=Zt[n>>>24]<<24^Zt[n>>>16&255]<<16^Zt[n>>>8&255]<<8^Zt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=pe[0],l=pe[1],d=pe[2],g=pe[3],h=r.slice(0);a=r.length;for(var c=0,p=a-Gr;c<a;c+=Gr,p-=Gr)if(c===0||c===a-Gr)h[c]=r[p],h[c+1]=r[p+3],h[c+2]=r[p+2],h[c+3]=r[p+1];else for(var y=0;y<Gr;++y)f=r[p+y],h[c+(3&-y)]=u[Zt[f>>>24]]^l[Zt[f>>>16&255]]^d[Zt[f>>>8&255]]^g[Zt[f&255]];r=h}return r}function as(e,t,r,n){var i=e.length/4-1,o,s,a,c,f;n?(o=pe[0],s=pe[1],a=pe[2],c=pe[3],f=ss):(o=xr[0],s=xr[1],a=xr[2],c=xr[3],f=Zt);var u,l,d,g,h,p,y;u=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],g=t[n?1:3]^e[3];for(var x=3,v=1;v<i;++v)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[g&255]^e[++x],p=o[l>>>24]^s[d>>>16&255]^a[g>>>8&255]^c[u&255]^e[++x],y=o[d>>>24]^s[g>>>16&255]^a[u>>>8&255]^c[l&255]^e[++x],g=o[g>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^e[++x],u=h,l=p,d=y;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[g&255]^e[++x],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[g>>>8&255]<<8^f[u&255]^e[++x],r[2]=f[d>>>24]<<24^f[g>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++x],r[n?1:3]=f[g>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^e[++x]}function Ai(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=gt.cipher.createDecipher(r,e.key):n=gt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof gt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Ec=yt((M2,wc)=>{var Et=dt();ns();os();Nt();wc.exports=Et.des=Et.des||{};Et.des.startEncrypting=function(e,t,r,n){var i=Ii({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createEncryptionCipher=function(e,t){return Ii({key:e,output:null,decrypt:!1,mode:t})};Et.des.startDecrypting=function(e,t,r,n){var i=Ii({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createDecryptionCipher=function(e,t){return Ii({key:e,output:null,decrypt:!0,mode:t})};Et.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return vc(r._keys,n,i,!1)},decrypt:function(n,i){return vc(r._keys,n,i,!0)}}}),r._init=!1};Et.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=Et.util.createBuffer(e.key);if(this.name.indexOf("3DES")===0&&t.length()!==24)throw new Error("Invalid Triple-DES key size: "+t.length()*8);this._keys=Td(t),this._init=!0}};we("DES-ECB",Et.cipher.modes.ecb);we("DES-CBC",Et.cipher.modes.cbc);we("DES-CFB",Et.cipher.modes.cfb);we("DES-OFB",Et.cipher.modes.ofb);we("DES-CTR",Et.cipher.modes.ctr);we("3DES-ECB",Et.cipher.modes.ecb);we("3DES-CBC",Et.cipher.modes.cbc);we("3DES-CFB",Et.cipher.modes.cfb);we("3DES-OFB",Et.cipher.modes.ofb);we("3DES-CTR",Et.cipher.modes.ctr);function we(e,t){var r=function(){return new Et.des.Algorithm(e,t)};Et.cipher.registerAlgorithm(e,r)}var vd=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],wd=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],Ed=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],Sd=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],Bd=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],Ad=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],Id=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],Cd=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];function Td(e){for(var t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],g=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,y=[],x=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],v=0,m,I=0;I<p;I++){var S=e.getInt32(),B=e.getInt32();m=(S>>>4^B)&252645135,B^=m,S^=m<<4,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>2^B)&858993459,B^=m,S^=m<<2,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=(B>>>8^S)&16711935,S^=m,B^=m<<8,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=S<<8|B>>>20&240,S=B<<24|B<<8&16711680|B>>>8&65280|B>>>24&240,B=m;for(var R=0;R<x.length;++R){x[R]?(S=S<<2|S>>>26,B=B<<2|B>>>26):(S=S<<1|S>>>27,B=B<<1|B>>>27),S&=-15,B&=-15;var L=t[S>>>28]|r[S>>>24&15]|n[S>>>20&15]|i[S>>>16&15]|o[S>>>12&15]|s[S>>>8&15]|a[S>>>4&15],O=c[B>>>28]|f[B>>>24&15]|u[B>>>20&15]|l[B>>>16&15]|d[B>>>12&15]|g[B>>>8&15]|h[B>>>4&15];m=(O>>>16^L)&65535,y[v++]=L^m,y[v++]=O^m<<16}}return y}function vc(e,t,r,n){var i=e.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=t[0],c=t[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var f=0;f<i;f+=3){for(var u=o[f+1],l=o[f+2],d=o[f];d!=u;d+=l){var g=c^e[d],h=(c>>>4|c<<28)^e[d+1];s=a,a=c,c=s^(wd[g>>>24&63]|Sd[g>>>16&63]|Ad[g>>>8&63]|Cd[g&63]|vd[h>>>24&63]|Ed[h>>>16&63]|Bd[h>>>8&63]|Id[h&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function Ii(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=Et.cipher.createDecipher(r,e.key):n=Et.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Et.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var mr=yt((V2,Sc)=>{var Ci=dt();Sc.exports=Ci.md=Ci.md||{};Ci.md.algorithms=Ci.md.algorithms||{}});var Ac=yt((F2,Bc)=>{var Fe=dt();mr();Nt();var _d=Bc.exports=Fe.hmac=Fe.hmac||{};_d.create=function(){var e=null,t=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in Fe.md.algorithms)t=Fe.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else t=o;if(s===null)s=e;else{if(typeof s=="string")s=Fe.util.createBuffer(s);else if(Fe.util.isArray(s)){var a=s;s=Fe.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var f=s.length();f>t.blockLength&&(t.start(),t.update(s.bytes()),s=t.digest()),r=Fe.util.createBuffer(),n=Fe.util.createBuffer(),f=s.length();for(var c=0;c<f;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(f<t.blockLength)for(var a=t.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);e=s,r=r.bytes(),n=n.bytes()}t.start(),t.update(r)},i.update=function(o){t.update(o)},i.getMac=function(){var o=t.digest().bytes();return t.start(),t.update(n),t.update(o),t.digest()},i.digest=i.getMac,i}});var Ti=yt(()=>{});var Cc=yt((z2,Ic)=>{var Xt=dt();Ac();mr();Nt();var Ld=Xt.pkcs5=Xt.pkcs5||{},qe;Xt.util.isNodejs&&!Xt.options.usePureJavaScript&&(qe=Ti());Ic.exports=Xt.pbkdf2=Ld.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Xt.util.isNodejs&&!Xt.options.usePureJavaScript&&qe.pbkdf2&&(i===null||typeof i!="object")&&(qe.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?qe.pbkdf2Sync.length===4?qe.pbkdf2(e,t,r,n,function(m,I){if(m)return o(m);o(null,I.toString("binary"))}):qe.pbkdf2(e,t,r,n,i,function(m,I){if(m)return o(m);o(null,I.toString("binary"))}):qe.pbkdf2Sync.length===4?qe.pbkdf2Sync(e,t,r,n).toString("binary"):qe.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Xt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Xt.md[i].create()}var s=i.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(o)return o(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=Xt.hmac.create();u.start(i,e);var l="",d,g,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Xt.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var y=2;y<=r;++y)u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Xt.util.xorBytes(d,g,s),h=g;l+=p<c?d:d.substr(0,f)}return l}var p=1,y;function x(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Xt.util.int32ToBytes(p)),d=h=u.digest().getBytes(),y=2,v()}function v(){if(y<=r)return u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Xt.util.xorBytes(d,g,s),h=g,++y,Xt.util.setImmediate(v);l+=p<c?d:d.substr(0,f),++p,x()}x()}});var Lc=yt((G2,_c)=>{var Li=dt();Nt();var Tc=_c.exports=Li.pem=Li.pem||{};Tc.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
|
|
9
|
+
`,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=_i(n)),e.contentDomain&&(n={name:"Content-Domain",values:[e.contentDomain]},r+=_i(n)),e.dekInfo&&(n={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&n.values.push(e.dekInfo.parameters),r+=_i(n)),e.headers)for(var i=0;i<e.headers.length;++i)r+=_i(e.headers[i]);return e.procType&&(r+=`\r
|
|
10
|
+
`),r+=Li.util.encode64(e.body,t.maxline||64)+`\r
|
|
11
11
|
`,r+="-----END "+e.type+`-----\r
|
|
12
|
-
`,r};
|
|
12
|
+
`,r};Tc.decode=function(e){for(var t=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(e),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Li.util.decode64(o[3])};if(t.push(a),!!o[2]){for(var c=o[2].split(i),f=0;o&&f<c.length;){for(var u=c[f].replace(/\s+$/,""),l=f+1;l<c.length;++l){var d=c[l];if(!/\s/.test(d[0]))break;u+=d,f=l}if(o=u.match(n),o){for(var g={name:o[1],values:[]},h=o[2].split(","),p=0;p<h.length;++p)g.values.push(Rd(h[p]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=h[0]||"";else if(!a.dekInfo&&g.name==="DEK-Info"){if(g.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:h[0],parameters:h[1]||null}}else a.headers.push(g);else{if(g.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(g.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:h[0],type:h[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(t.length===0)throw new Error("Invalid PEM formatted message.");return t};function _i(e){for(var t=e.name+": ",r=[],n=function(c,f){return" "+f},i=0;i<e.values.length;++i)r.push(e.values[i].replace(/^(\S+\r\n)/,n));t+=r.join(",")+`\r
|
|
13
13
|
`;for(var o=0,s=-1,i=0;i<t.length;++i,++o)if(o>65&&s!==-1){var a=t[s];a===","?(++s,t=t.substr(0,s)+`\r
|
|
14
14
|
`+t.substr(s)):t=t.substr(0,s)+`\r
|
|
15
|
-
`+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function ay(e){return e.replace(/^\s+/,"")}});var mf=pt((Kv,gf)=>{var _e=yt();Er();Nt();var df=gf.exports=_e.sha256=_e.sha256||{};_e.md.sha256=_e.md.algorithms.sha256=df;df.create=function(){pf||cy();var e=null,t=_e.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=_e.util.createBuffer(),e={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=_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 t.putBytes(i),hf(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=_e.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Ws.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};hf(l,r,i);var d=_e.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var Ws=null,pf=!1,yf=null;function cy(){Ws="\x80",Ws+=_e.util.fillString("\0",64),yf=[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],pf=!0}function hf(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v=r.length();v>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)n=t[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[f]=n+t[f-7]+i+t[f-16]|0;for(u=e.h0,l=e.h1,d=e.h2,g=e.h3,h=e.h4,p=e.h5,y=e.h6,m=e.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=m+s+a+yf[f]+t[f],i=o+c,m=y,y=p,p=h,h=g+n>>>0,g=d,d=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+g|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+m|0,v-=64}}});var bf=pt((Ov,xf)=>{var Le=yt();Nt();var Gi=null;Le.util.isNodejs&&!Le.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Gi=qi());var fy=xf.exports=Le.prng=Le.prng||{};fy.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(f,u){if(!u)return t.generateSync(f);var l=t.plugin.cipher,d=t.plugin.increment,g=t.plugin.formatKey,h=t.plugin.formatSeed,p=Le.util.createBuffer();t.key=null,y();function y(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(t.generated>1048575&&(t.key=null),t.key===null)return Le.util.nextTick(function(){o(y)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=g(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Le.util.setImmediate(y)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,g=t.plugin.formatSeed;t.key=null;for(var h=Le.util.createBuffer();h.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(u(t.key,l(t.seed))),t.seed=g(u(t.key,t.seed))}return h.getBytes(f)};function o(f){if(t.pools[0].messageLength>=32)return a(),f();var u=32-t.pools[0].messageLength<<5;t.seedFile(u,function(l,d){if(l)return f(l);t.collect(d),a(),f()})}function s(){if(t.pools[0].messageLength>=32)return a();var f=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(f)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var f=t.plugin.md.create();f.update(t.keyBytes);for(var u=1,l=0;l<32;++l)t.reseeds%u===0&&(f.update(t.pools[l].digest().getBytes()),t.pools[l].start()),u=u<<1;t.keyBytes=f.digest().getBytes(),f.start(),f.update(t.keyBytes);var d=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(f){var u=null,l=Le.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(S){return d.getRandomValues(S)});var g=Le.util.createBuffer();if(u)for(;g.length()<f;){var h=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(g.length()<f)for(var m,v,x,A=Math.floor(Math.random()*65536);g.length()<f;){v=16807*(A&65535),m=16807*(A>>16),v+=(m&32767)<<16,v+=m>>15,v=(v&2147483647)+(v>>31),A=v&4294967295;for(var y=0;y<3;++y)x=A>>>(y<<3),x^=Math.floor(Math.random()*256),g.putByte(x&255)}return g.getBytes(f)}return Gi?(t.seedFile=function(f,u){Gi.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Gi.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,d){function g(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(g,h){f.postMessage({forge:{prng:{err:g,bytes:h}}})})};f.addEventListener("message",u)}},t}});var kn=pt((Mv,Ys)=>{var Ft=yt();$s();mf();bf();Nt();(function(){if(Ft.random&&Ft.random.getBytes){Ys.exports=Ft.random;return}(function(e){var t={},r=new Array(4),n=Ft.util.createBuffer();t.formatKey=function(l){var d=Ft.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Ft.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Ft.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return Ft.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Ft.md.sha256;function i(){var l=Ft.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=Ft.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ft.options.usePureJavaScript||!Ft.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ft.random)Ft.random=o;else for(var u in o)Ft.random[u]=o[u];Ft.random.createInstance=i,Ys.exports=Ft.random})(typeof jQuery<"u"?jQuery:null)})()});var Sf=pt((Fv,Ef)=>{var te=yt();Nt();var Zs=[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],vf=[1,2,3,5],uy=function(e,t){return e<<t&65535|(e&65535)>>16-t},ly=function(e,t){return(e&65535)>>t|e<<16-t&65535};Ef.exports=te.rc2=te.rc2||{};te.rc2.expandKey=function(e,t){typeof e=="string"&&(e=te.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(Zs[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Zs[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Zs[r.at(a+1)^r.at(a+o)]);return r};var wf=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=te.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=uy(h[f],vf[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=ly(h[f],vf[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var m=0;m<h.length;m++)for(var v=0;v<h[m][0];v++)h[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(h,p){h&&typeof h=="string"&&(h=te.util.createBuffer(h)),n=!1,i=te.util.createBuffer(),o=p||new te.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var m=o.length(),v=o.at(m-1);v>m?p=!1:o.truncate(v)}return p}},g};te.rc2.startEncrypting=function(e,t,r){var n=te.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};te.rc2.createEncryptionCipher=function(e,t){return wf(e,t,!0)};te.rc2.startDecrypting=function(e,t,r){var n=te.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};te.rc2.createDecryptionCipher=function(e,t){return wf(e,t,!1)}});var Yi=pt((Vv,Rf)=>{var Xs=yt();Rf.exports=Xs.jsbn=Xs.jsbn||{};var Ze,hy=0xdeadbeefcafe,Bf=(hy&16777215)==15715070;function D(e,t,r){this.data=[],e!=null&&(typeof e=="number"?this.fromNumber(e,t,r):t==null&&typeof e!="string"?this.fromString(e,256):this.fromString(e,t))}Xs.jsbn.BigInteger=D;function at(){return new D(null)}function dy(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function py(e,t,r,n,i,o){for(var s=t&32767,a=t>>15;--o>=0;){var c=this.data[e]&32767,f=this.data[e++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function Af(e,t,r,n,i,o){for(var s=t&16383,a=t>>14;--o>=0;){var c=this.data[e]&16383,f=this.data[e++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(D.prototype.am=Af,Ze=28):Bf&&navigator.appName=="Microsoft Internet Explorer"?(D.prototype.am=py,Ze=30):Bf&&navigator.appName!="Netscape"?(D.prototype.am=dy,Ze=26):(D.prototype.am=Af,Ze=28);D.prototype.DB=Ze;D.prototype.DM=(1<<Ze)-1;D.prototype.DV=1<<Ze;var Qs=52;D.prototype.FV=Math.pow(2,Qs);D.prototype.F1=Qs-Ze;D.prototype.F2=2*Ze-Qs;var yy="0123456789abcdefghijklmnopqrstuvwxyz",$i=new Array,jr,ue;jr=48;for(ue=0;ue<=9;++ue)$i[jr++]=ue;jr=97;for(ue=10;ue<36;++ue)$i[jr++]=ue;jr=65;for(ue=10;ue<36;++ue)$i[jr++]=ue;function Cf(e){return yy.charAt(e)}function If(e,t){var r=$i[e.charCodeAt(t)];return r??-1}function gy(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function my(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0}function ur(e){var t=at();return t.fromInt(e),t}function xy(e,t){var r;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(e,t);return}this.t=0,this.s=0;for(var n=e.length,i=!1,o=0;--n>=0;){var s=r==8?e[n]&255:If(e,n);if(s<0){e.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&e[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&D.ZERO.subTo(this,this)}function by(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function vy(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<<t)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=Cf(n));s>=0;)a<t?(n=(this.data[s]&(1<<a)-1)<<t-a,n|=this.data[--s]>>(a+=this.DB-t)):(n=this.data[s]>>(a-=t)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=Cf(n));return i?o:"0"}function wy(){var e=at();return D.ZERO.subTo(this,e),e}function Ey(){return this.s<0?this.negate():this}function Sy(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this.data[r]-e.data[r])!=0)return t;return 0}function Wi(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function By(){return this.t<=0?0:this.DB*(this.t-1)+Wi(this.data[this.t-1]^this.s&this.DM)}function Ay(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s}function Cy(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function Iy(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function Ty(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function _y(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function Ly(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&D.ZERO.subTo(t,t)}function Ry(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e.data[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t.data[r],e,2*r,0,1);(e.data[r+t.t]+=t.am(r+1,2*t.data[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()}function Ny(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=at());var o=at(),s=this.s,a=e.s,c=this.DB-Wi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,m=t??at();for(o.dlShiftTo(y,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),D.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,m),r.subTo(m,r);r.data[p]<--v;)r.subTo(m,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&D.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&D.ZERO.subTo(r,r)}}}function Dy(e){var t=at();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(D.ZERO)>0&&e.subTo(t,t),t}function Sr(e){this.m=e}function Py(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function ky(e){return e}function Uy(e){e.divRemTo(this.m,null,e)}function Ky(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function Oy(e,t){e.squareTo(t),this.reduce(t)}Sr.prototype.convert=Py;Sr.prototype.revert=ky;Sr.prototype.reduce=Uy;Sr.prototype.mulTo=Ky;Sr.prototype.sqrTo=Oy;function My(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function Br(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function Fy(e){var t=at();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(D.ZERO)>0&&this.m.subTo(t,t),t}function Vy(e){var t=at();return e.copyTo(t),this.reduce(t),t}function qy(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=e.data[t]&32767,n=r*this.mpl+((r*this.mph+(e.data[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function Hy(e,t){e.squareTo(t),this.reduce(t)}function zy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Br.prototype.convert=Fy;Br.prototype.revert=Vy;Br.prototype.reduce=qy;Br.prototype.mulTo=zy;Br.prototype.sqrTo=Hy;function Gy(){return(this.t>0?this.data[0]&1:this.s)==0}function $y(e,t){if(e>4294967295||e<1)return D.ONE;var r=at(),n=at(),i=t.convert(this),o=Wi(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function Wy(e,t){var r;return e<256||t.isEven()?r=new Sr(t):r=new Br(t),this.exp(e,r)}D.prototype.copyTo=gy;D.prototype.fromInt=my;D.prototype.fromString=xy;D.prototype.clamp=by;D.prototype.dlShiftTo=Ay;D.prototype.drShiftTo=Cy;D.prototype.lShiftTo=Iy;D.prototype.rShiftTo=Ty;D.prototype.subTo=_y;D.prototype.multiplyTo=Ly;D.prototype.squareTo=Ry;D.prototype.divRemTo=Ny;D.prototype.invDigit=My;D.prototype.isEven=Gy;D.prototype.exp=$y;D.prototype.toString=vy;D.prototype.negate=wy;D.prototype.abs=Ey;D.prototype.compareTo=Sy;D.prototype.bitLength=By;D.prototype.mod=Dy;D.prototype.modPowInt=Wy;D.ZERO=ur(0);D.ONE=ur(1);function Yy(){var e=at();return this.copyTo(e),e}function Zy(){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 Xy(){return this.t==0?this.s:this.data[0]<<24>>24}function Qy(){return this.t==0?this.s:this.data[0]<<16>>16}function Jy(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function jy(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function t1(e){if(e==null&&(e=10),this.signum()==0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=ur(r),i=at(),o=at(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function e1(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,o=0,s=0,a=0;a<e.length;++a){var c=If(e,a);if(c<0){e.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=t*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(t,o)),this.dAddOffset(s,0)),i&&D.ZERO.subTo(this,this)}function r1(e,t,r){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(D.ONE.shiftLeft(e-1),Js,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(D.ONE.shiftLeft(e-1),this);else{var n=new Array,i=e&7;n.length=(e>>3)+1,t.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function n1(){var e=this.t,t=new Array;t[0]=this.s;var r=this.DB-e*this.DB%8,n,i=0;if(e-- >0)for(r<this.DB&&(n=this.data[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<<this.DB-r);e>=0;)r<8?(n=(this.data[e]&(1<<r)-1)<<8-r,n|=this.data[--e]>>(r+=this.DB-8)):(n=this.data[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function i1(e){return this.compareTo(e)==0}function o1(e){return this.compareTo(e)<0?this:e}function s1(e){return this.compareTo(e)>0?this:e}function a1(e,t,r){var n,i,o=Math.min(e.t,this.t);for(n=0;n<o;++n)r.data[n]=t(this.data[n],e.data[n]);if(e.t<this.t){for(i=e.s&this.DM,n=o;n<this.t;++n)r.data[n]=t(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<e.t;++n)r.data[n]=t(i,e.data[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()}function c1(e,t){return e&t}function f1(e){var t=at();return this.bitwiseTo(e,c1,t),t}function Js(e,t){return e|t}function u1(e){var t=at();return this.bitwiseTo(e,Js,t),t}function Tf(e,t){return e^t}function l1(e){var t=at();return this.bitwiseTo(e,Tf,t),t}function _f(e,t){return e&~t}function h1(e){var t=at();return this.bitwiseTo(e,_f,t),t}function d1(){for(var e=at(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function p1(e){var t=at();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function y1(e){var t=at();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function g1(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function m1(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+g1(this.data[e]);return this.s<0?this.t*this.DB:-1}function x1(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function b1(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=x1(this.data[r]^t);return e}function v1(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function w1(e,t){var r=D.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function E1(e){return this.changeBit(e,Js)}function S1(e){return this.changeBit(e,_f)}function B1(e){return this.changeBit(e,Tf)}function A1(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]+e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()}function C1(e){var t=at();return this.addTo(e,t),t}function I1(e){var t=at();return this.subTo(e,t),t}function T1(e){var t=at();return this.multiplyTo(e,t),t}function _1(e){var t=at();return this.divRemTo(e,t,null),t}function L1(e){var t=at();return this.divRemTo(e,null,t),t}function R1(e){var t=at(),r=at();return this.divRemTo(e,t,r),new Array(t,r)}function N1(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function D1(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function Un(){}function Lf(e){return e}function P1(e,t,r){e.multiplyTo(t,r)}function k1(e,t){e.squareTo(t)}Un.prototype.convert=Lf;Un.prototype.revert=Lf;Un.prototype.mulTo=P1;Un.prototype.sqrTo=k1;function U1(e){return this.exp(e,new Un)}function K1(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,e.data[n],r,n,0,this.t);for(i=Math.min(e.t,t);n<i;++n)this.am(0,e.data[n],r,n,0,t-n);r.clamp()}function O1(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function tn(e){this.r2=at(),this.q3=at(),D.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function M1(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=at();return e.copyTo(t),this.reduce(t),t}function F1(e){return e}function V1(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function q1(e,t){e.squareTo(t),this.reduce(t)}function H1(e,t,r){e.multiplyTo(t,r),this.reduce(r)}tn.prototype.convert=M1;tn.prototype.revert=F1;tn.prototype.reduce=V1;tn.prototype.mulTo=H1;tn.prototype.sqrTo=q1;function z1(e,t){var r=e.bitLength(),n,i=ur(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(t):t.isEven()?o=new tn(t):o=new Br(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=at();for(o.sqrTo(s[1],u);a<=f;)s[a]=at(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=at(),p;for(r=Wi(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&f:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[d].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function G1(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function $1(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t==0)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r}function W1(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return D.ZERO;for(var r=e.clone(),n=this.clone(),i=ur(1),o=ur(0),s=ur(0),a=ur(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(D.ONE)!=0)return D.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var Ae=[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],Y1=(1<<26)/Ae[Ae.length-1];function Z1(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=Ae[Ae.length-1]){for(t=0;t<Ae.length;++t)if(r.data[0]==Ae[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<Ae.length;){for(var n=Ae[t],i=t+1;i<Ae.length&&n<Y1;)n*=Ae[i++];for(n=r.modInt(n);t<i;)if(n%Ae[t++]==0)return!1}return r.millerRabin(e)}function X1(e){var t=this.subtract(D.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=Q1(),o,s=0;s<e;++s){do o=new D(this.bitLength(),i);while(o.compareTo(D.ONE)<=0||o.compareTo(t)>=0);var a=o.modPow(n,this);if(a.compareTo(D.ONE)!=0&&a.compareTo(t)!=0){for(var c=1;c++<r&&a.compareTo(t)!=0;)if(a=a.modPowInt(2,this),a.compareTo(D.ONE)==0)return!1;if(a.compareTo(t)!=0)return!1}}return!0}function Q1(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}D.prototype.chunkSize=Jy;D.prototype.toRadix=t1;D.prototype.fromRadix=e1;D.prototype.fromNumber=r1;D.prototype.bitwiseTo=a1;D.prototype.changeBit=w1;D.prototype.addTo=A1;D.prototype.dMultiply=N1;D.prototype.dAddOffset=D1;D.prototype.multiplyLowerTo=K1;D.prototype.multiplyUpperTo=O1;D.prototype.modInt=$1;D.prototype.millerRabin=X1;D.prototype.clone=Yy;D.prototype.intValue=Zy;D.prototype.byteValue=Xy;D.prototype.shortValue=Qy;D.prototype.signum=jy;D.prototype.toByteArray=n1;D.prototype.equals=i1;D.prototype.min=o1;D.prototype.max=s1;D.prototype.and=f1;D.prototype.or=u1;D.prototype.xor=l1;D.prototype.andNot=h1;D.prototype.not=d1;D.prototype.shiftLeft=p1;D.prototype.shiftRight=y1;D.prototype.getLowestSetBit=m1;D.prototype.bitCount=b1;D.prototype.testBit=v1;D.prototype.setBit=E1;D.prototype.clearBit=S1;D.prototype.flipBit=B1;D.prototype.add=C1;D.prototype.subtract=I1;D.prototype.multiply=T1;D.prototype.divide=_1;D.prototype.remainder=L1;D.prototype.divideAndRemainder=R1;D.prototype.modPow=z1;D.prototype.modInverse=W1;D.prototype.pow=U1;D.prototype.gcd=G1;D.prototype.isProbablePrime=Z1});var Uf=pt((qv,kf)=>{var Re=yt();Er();Nt();var Df=kf.exports=Re.sha1=Re.sha1||{};Re.md.sha1=Re.md.algorithms.sha1=Df;Df.create=function(){Pf||J1();var e=null,t=Re.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Re.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Re.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),Nf(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Re.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(js.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};Nf(l,r,i);var d=Re.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var js=null,Pf=!1;function J1(){js="\x80",js+=Re.util.fillString("\0",64),Pf=!0}function Nf(e,t,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,u=0;u<16;++u)n=r.getInt32(),t[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,l-=64}}});var Mf=pt((Hv,Of)=>{var Ne=yt();Nt();kn();Uf();var Kf=Of.exports=Ne.pkcs1=Ne.pkcs1||{};Kf.encode_rsa_oaep=function(e,t,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Ne.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=t.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",d=c-t.length,g=0;g<d;g++)l+="\0";var h=u.getBytes()+l+""+t;if(!i)i=Ne.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=Zi(i,a-o.digestLength-1,s),y=Ne.util.xorBytes(h,p,h.length),m=Zi(y,o.digestLength,s),v=Ne.util.xorBytes(i,m,i.length);return"\0"+v+y};Kf.decode_rsa_oaep=function(e,t,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(e.n.bitLength()/8);if(t.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}if(i===void 0?i=Ne.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=t.charAt(0),f=t.substring(1,i.digestLength+1),u=t.substring(1+i.digestLength),l=Zi(u,i.digestLength,o),d=Ne.util.xorBytes(f,l,f.length),g=Zi(d,s-i.digestLength-1,o),h=Ne.util.xorBytes(u,g,u.length),p=h.substring(0,i.digestLength),y=c!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==p.charAt(m);for(var v=1,x=i.digestLength,A=i.digestLength;A<h.length;A++){var S=h.charCodeAt(A),B=S&1^1,R=v?65534:0;y|=S&R,v=v&B,x+=v}if(y||h.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(x+1)};function Zi(e,t,r){r||(r=Ne.md.sha1.create());for(var n="",i=Math.ceil(t/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var Ff=pt((zv,ta)=>{var lr=yt();Nt();Yi();kn();(function(){if(lr.prime){ta.exports=lr.prime;return}var e=ta.exports=lr.prime=lr.prime||{},t=lr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,g){typeof d=="function"&&(g=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||lr.random,y={nextBytes:function(m){for(var v=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=v.charCodeAt(x)}};if(h.name==="PRIMEINC")return o(l,y,h.options,g);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,g,h){return"workers"in g?c(l,d,g,h):s(l,d,g,h)}function s(l,d,g,h){var p=f(l,d),y=0,m=u(p.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var v=10;"maxBlockTime"in g&&(v=g.maxBlockTime),a(p,l,d,y,m,v,h)}function a(l,d,g,h,p,y,m){var v=+new Date;do{if(l.bitLength()>d&&(l=f(d,g)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-v<y);lr.util.setImmediate(function(){a(l,d,g,h,p,y,m)})}function c(l,d,g,h){if(typeof Worker>"u")return s(l,d,g,h);var p=f(l,d),y=g.workers,m=g.workLoad||100,v=m*30/8,x=g.workerScript||"forge/prime.worker.js";if(y===-1)return lr.util.estimateCores(function(S,B){S&&(B=2),y=B-1,A()});A();function A(){y=Math.max(1,y);for(var S=[],B=0;B<y;++B)S[B]=new Worker(x);for(var R=y,B=0;B<y;++B)S[B].addEventListener("message",O);var _=!1;function O(M){if(!_){--R;var U=M.data;if(U.found){for(var H=0;H<S.length;++H)S[H].terminate();return _=!0,h(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:m}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var Qi=pt((Gv,Wf)=>{var $=yt();Pn();Yi();ki();Mf();Ff();kn();Nt();typeof st>"u"&&(st=$.jsbn.BigInteger);var st,ea=$.util.isNodejs?qi():null,E=$.asn1,le=$.util;$.pki=$.pki||{};Wf.exports=$.pki.rsa=$.rsa=$.rsa||{};var Q=$.pki,j1=[6,4,2,4,2,4,6,2],tg={name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},eg={name:"RSAPrivateKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},rg={name:"RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},ng=$.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},ig={name:"DigestInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:E.Class.UNIVERSAL,type:E.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},og=function(e){var t;if(e.algorithm in Q.oids)t=Q.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=E.oidToDer(t).getBytes(),i=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]),o=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]);o.value.push(E.create(E.Class.UNIVERSAL,E.Type.OID,!1,n)),o.value.push(E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,""));var s=E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),E.toDer(i).getBytes()},Gf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(st.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(st.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new st($.util.bytesToHex($.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(st.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=$f(e,t,r)):(i=$.util.createBuffer(),i.putBytes(e));for(var s=new st(i.toHex(),16),a=Gf(s,t,n),c=a.toString(16),f=$.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new st($.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Gf(s,t,r),c=a.toString(16),f=$.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),n!==!1?Xi(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||$.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new st(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new st(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new st(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(st.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(ag(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(j1[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(st.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!$.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(Vf("generateKeyPair"))return ea.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:Q.privateKeyFromPem(f),publicKey:Q.publicKeyFromPem(c)})});if(qf("generateKey")&&qf("exportKey"))return le.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:zf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return le.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(Hf("generateKey")&&Hf("exportKey")){var i=le.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:zf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=le.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(Vf("generateKeyPairSync")){var o=ea.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:Q.privateKeyFromPem(o.privateKey),publicKey:Q.publicKeyFromPem(o.publicKey)}}}var s=Q.rsa.createKeyPairGenerationState(e,t,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;sg(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(e,t){var r={n:e,e:t};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return $f(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return $.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=Xi(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,ig,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===$.oids.md2||h===$.oids.md5||h===$.oids.sha1||h===$.oids.sha224||h===$.oids.sha256||h===$.oids.sha384||h===$.oids.sha512||h===$.oids["sha512-224"]||h===$.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===$.oids.md2||h===$.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Xi(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var d=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Xi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return $.pkcs1.decode_rsa_oaep(h,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:og},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(d,c,l)},c};Q.wrapRsaPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,E.toDer(e).getBytes())])};Q.privateKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,tg,t,r)&&(e=E.fromDer($.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,eg,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=$.util.createBuffer(t.privateKeyModulus).toHex(),o=$.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=$.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=$.util.createBuffer(t.privateKeyPrime1).toHex(),c=$.util.createBuffer(t.privateKeyPrime2).toHex(),f=$.util.createBuffer(t.privateKeyExponent1).toHex(),u=$.util.createBuffer(t.privateKeyExponent2).toHex(),l=$.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new st(i,16),new st(o,16),new st(s,16),new st(a,16),new st(c,16),new st(f,16),new st(u,16),new st(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,ng,t,r)){var n=E.derToOid(t.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}e=t.rsaPublicKey}if(r=[],!E.validate(e,rg,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=$.util.createBuffer(t.publicKeyModulus).toHex(),s=$.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new st(o,16),new st(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,De(e.e))])};function $f(e,t,r){var n=$.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=$.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(e),n}function Xi(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=$.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function sg(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){$.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.p=null,i();return}if(e.q.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(st.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function De(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=$.util.hexToBytes(t);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function ag(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function Vf(e){return $.util.isNodejs&&typeof ea[e]=="function"}function qf(e){return typeof le.globalScope<"u"&&typeof le.globalScope.crypto=="object"&&typeof le.globalScope.crypto.subtle=="object"&&typeof le.globalScope.crypto.subtle[e]=="function"}function Hf(e){return typeof le.globalScope<"u"&&typeof le.globalScope.msCrypto=="object"&&typeof le.globalScope.msCrypto.subtle=="object"&&typeof le.globalScope.msCrypto.subtle[e]=="function"}function zf(e){for(var t=$.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var jf=pt(($v,Jf)=>{var q=yt();$s();Pn();rf();Er();ki();cf();lf();kn();Sf();Qi();Nt();typeof Yf>"u"&&(Yf=q.jsbn.BigInteger);var Yf,I=q.asn1,tt=q.pki=q.pki||{};Jf.exports=tt.pbe=q.pbe=q.pbe||{};var Ar=tt.oids,cg={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"}]},fg={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"}]}]},ug={name:"pkcs-12PbeParams",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=q.random.getBytesSync(r.saltSize),i=r.count,o=I.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=Ar["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Ar["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Ar["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Ar.desCBC,l=q.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),h=Qf(g),p=q.pkcs5.pbkdf2(t,n,i,s,h),y=q.random.getBytesSync(f),m=l(p);m.start(y),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes();var v=lg(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()),v]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(u).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var x=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,x,1,i,s),y=tt.pbe.generatePkcs12Key(t,x,2,i,s),m=q.des.createEncryptionCipher(p);m.start(y),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(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 d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var A=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return A};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!I.validate(e,cg,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=I.derToOid(n.encryptionOid),a=tt.pbe.getCipher(s,n.encryptionParams,t),c=q.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};tt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(e).getBytes()};return q.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=q.pem.decode(e)[0];if(t.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return I.fromDer(t.body)};tt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=tt.wrapRsaPrivateKey(tt.privateKeyToAsn1(e));return n=tt.encryptPrivateKeyInfo(n,t,r),tt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=q.pbe.opensslDeriveBytes(t,o.substr(0,8),s),u=a(f);u.start(o),u.update(I.toDer(tt.privateKeyToAsn1(e))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:q.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return q.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=q.pem.decode(e)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=q.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=q.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=q.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=q.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=q.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return q.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return q.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return q.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=q.util.hexToBytes(n.dekInfo.parameters),c=q.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(q.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=tt.decryptPrivateKeyInfo(I.fromDer(r),t):r=I.fromDer(r),r!==null&&(r=tt.privateKeyFromAsn1(r)),r};tt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in q.md))throw new Error('"sha1" hash algorithm unavailable.');o=q.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new q.util.ByteBuffer,l=new q.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),g=t.length(),h=new q.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new q.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var m=f*Math.ceil(d/f),v=new q.util.ByteBuffer;for(a=0;a<m;a++)v.putByte(l.at(a%d));var x=y;x.putBuffer(v);for(var A=Math.ceil(i/c),S=1;S<=A;S++){var B=new q.util.ByteBuffer;B.putBytes(h.bytes()),B.putBytes(x.bytes());for(var R=0;R<n;R++)o.start(),o.update(B.getBytes()),B=o.digest();var _=new q.util.ByteBuffer;for(a=0;a<f;a++)_.putByte(B.at(a%c));var O=Math.ceil(g/f)+Math.ceil(d/f),M=new q.util.ByteBuffer;for(s=0;s<O;s++){var U=new q.util.ByteBuffer(x.getBytes(f)),H=511;for(a=_.length()-1;a>=0;a--)H=H>>8,H+=_.at(a)+U.at(a),U.setAt(a,H&255);M.putBuffer(U)}x=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!I.validate(t,fg,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(e=I.derToOid(n.kdfOid),e!==tt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=I.derToOid(n.encOid),e!==tt.oids["aes128-CBC"]&&e!==tt.oids["aes192-CBC"]&&e!==tt.oids["aes256-CBC"]&&e!==tt.oids["des-EDE3-CBC"]&&e!==tt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=q.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=q.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=q.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=q.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=q.des.createDecryptionCipher;break;case"desCBC":c=8,f=q.des.createDecryptionCipher;break}var u=Xf(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,g=f(l);return g.start(d),g};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!I.validate(t,ug,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=q.util.createBuffer(n.salt),a=q.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(e){case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=q.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var m=q.rc2.createDecryptionCipher(p,40);return m.start(y,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=Xf(n.prfOid),d=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,g)};tt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in q.md))throw new Error('"md5" hash algorithm unavailable.');n=q.md.md5.create()}t===null&&(t="");for(var i=[Zf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(Zf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function Zf(e,t){return e.start().update(t).digest().getBytes()}function Xf(e){var t;if(!e)t="hmacWithSHA1";else if(t=tt.oids[I.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Qf(t)}function Qf(e){var t=q.md;switch(e){case"hmacWithSHA224":t=q.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function lg(e,t,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,e),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,q.util.hexToBytes(r.toString(16))),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(tt.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var wu=pt((uE,vu)=>{var St=yt();Er();Nt();var Vn=vu.exports=St.sha512=St.sha512||{};St.md.sha512=St.md.algorithms.sha512=Vn;var xu=St.sha384=St.sha512.sha384=St.sha512.sha384||{};xu.create=function(){return Vn.create("SHA-384")};St.md.sha384=St.md.algorithms.sha384=xu;St.sha512.sha256=St.sha512.sha256||{create:function(){return Vn.create("SHA-512/256")}};St.md["sha512/256"]=St.md.algorithms["sha512/256"]=St.sha512.sha256;St.sha512.sha224=St.sha512.sha224||{create:function(){return Vn.create("SHA-512/224")}};St.md["sha512/224"]=St.md.algorithms["sha512/224"]=St.sha512.sha224;Vn.create=function(e){if(bu||Ig(),typeof e>"u"&&(e="SHA-512"),!(e in Nr))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=Nr[e],r=null,n=St.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=St.util.createBuffer(),r=new Array(t.length);for(var f=0;f<t.length;++f)r[f]=t[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=St.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),mu(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=St.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(xa.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);mu(p,i,c);var y=St.util.createBuffer(),m;e==="SHA-512"?m=p.length:e==="SHA-384"?m=p.length-2:m=p.length-4;for(var h=0;h<m;++h)y.putInt32(p[h][0]),(h!==m-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var xa=null,bu=!1,ba=null,Nr=null;function Ig(){xa="\x80",xa+=St.util.fillString("\0",128),ba=[[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]],Nr={},Nr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Nr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Nr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Nr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],bu=!0}function mu(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v,x,A,S,B,R,_,O,M,U,H,z,Z,C,N,T,L,w,k,K,V=r.length();V>=128;){for(C=0;C<16;++C)t[C][0]=r.getInt32()>>>0,t[C][1]=r.getInt32()>>>0;for(;C<80;++C)L=t[C-2],N=L[0],T=L[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,k=t[C-15],N=k[0],T=k[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[C-7],K=t[C-16],T=i+w[1]+s+K[1],t[C][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[C][1]=T>>>0;for(p=e[0][0],y=e[0][1],m=e[1][0],v=e[1][1],x=e[2][0],A=e[2][1],S=e[3][0],B=e[3][1],R=e[4][0],_=e[4][1],O=e[5][0],M=e[5][1],U=e[6][0],H=e[6][1],z=e[7][0],Z=e[7][1],C=0;C<80;++C)f=((R>>>14|_<<18)^(R>>>18|_<<14)^(_>>>9|R<<23))>>>0,u=((R<<18|_>>>14)^(R<<14|_>>>18)^(_<<23|R>>>9))>>>0,l=(U^R&(O^U))>>>0,d=(H^_&(M^H))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&m|x&(p^m))>>>0,h=(y&v|A&(y^v))>>>0,T=Z+u+d+ba[C][1]+t[C][1],n=z+f+l+ba[C][0]+t[C][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=U,Z=H,U=O,H=M,O=R,M=_,T=B+i,R=S+n+(T/4294967296>>>0)>>>0,_=T>>>0,S=x,B=A,x=m,A=v,m=p,v=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=e[0][1]+y,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+m+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+A,e[2][0]=e[2][0]+x+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+_,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+U+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,V-=128}}});var ju=pt((k8,Ju)=>{var un=1e3,ln=un*60,hn=ln*60,Ur=hn*24,nm=Ur*7,im=Ur*365.25;Ju.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return om(e);if(r==="number"&&isFinite(e))return t.long?am(e):sm(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function om(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*im;case"weeks":case"week":case"w":return r*nm;case"days":case"day":case"d":return r*Ur;case"hours":case"hour":case"hrs":case"hr":case"h":return r*hn;case"minutes":case"minute":case"mins":case"min":case"m":return r*ln;case"seconds":case"second":case"secs":case"sec":case"s":return r*un;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function sm(e){var t=Math.abs(e);return t>=Ur?Math.round(e/Ur)+"d":t>=hn?Math.round(e/hn)+"h":t>=ln?Math.round(e/ln)+"m":t>=un?Math.round(e/un)+"s":e+"ms"}function am(e){var t=Math.abs(e);return t>=Ur?oo(e,t,Ur,"day"):t>=hn?oo(e,t,hn,"hour"):t>=ln?oo(e,t,ln,"minute"):t>=un?oo(e,t,un,"second"):e+" ms"}function oo(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}});var el=pt((U8,tl)=>{function cm(e){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=ju(),r.destroy=f,Object.keys(e).forEach(u=>{r[u]=e[u]}),r.names=[],r.skips=[],r.formatters={};function t(u){let l=0;for(let d=0;d<u.length;d++)l=(l<<5)-l+u.charCodeAt(d),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=t;function r(u){let l,d=null,g,h;function p(...y){if(!p.enabled)return;let m=p,v=Number(new Date),x=v-(l||v);m.diff=x,m.prev=l,m.curr=v,l=v,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let A=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(B,R)=>{if(B==="%%")return"%";A++;let _=r.formatters[R];if(typeof _=="function"){let O=y[A];B=_.call(m,O),y.splice(A,1),A--}return B}),r.formatArgs.call(m,y),(m.log||r.log).apply(m,y)}return p.namespace=u,p.useColors=r.useColors(),p.color=r.selectColor(u),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(g!==r.namespaces&&(g=r.namespaces,h=r.enabled(u)),h),set:y=>{d=y}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let d=r(this.namespace+(typeof l>"u"?":":l)+u);return d.log=this.log,d}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,d=(typeof u=="string"?u:"").split(/[\s,]+/),g=d.length;for(l=0;l<g;l++)d[l]&&(u=d[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.slice(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function o(){let u=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,d;for(l=0,d=r.skips.length;l<d;l++)if(r.skips[l].test(u))return!1;for(l=0,d=r.names.length;l<d;l++)if(r.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(u){return u instanceof Error?u.stack||u.message:u}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}tl.exports=cm});var rl=pt((se,so)=>{se.formatArgs=um;se.save=lm;se.load=hm;se.useColors=fm;se.storage=dm();se.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();se.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 fm(){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 um(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+so.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}se.log=console.debug||console.log||(()=>{});function lm(e){try{e?se.storage.setItem("debug",e):se.storage.removeItem("debug")}catch{}}function hm(){let e;try{e=se.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function dm(){try{return localStorage}catch{}}so.exports=el()(se);var{formatters:pm}=so.exports;pm.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Xm={};Pt(Xm,{webTransport:()=>Zm});function Me(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function rt(e=0){return globalThis.Buffer?.alloc!=null?Me(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function kt(e=0){return globalThis.Buffer?.allocUnsafe!=null?Me(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var nh=Math.pow(2,7),ih=Math.pow(2,14),oh=Math.pow(2,21),Co=Math.pow(2,28),Io=Math.pow(2,35),To=Math.pow(2,42),_o=Math.pow(2,49),ft=128,$t=127;function Wt(e){if(e<nh)return 1;if(e<ih)return 2;if(e<oh)return 3;if(e<Co)return 4;if(e<Io)return 5;if(e<To)return 6;if(e<_o)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function sh(e,t,r=0){switch(Wt(e)){case 8:t[r++]=e&255|ft,e/=128;case 7:t[r++]=e&255|ft,e/=128;case 6:t[r++]=e&255|ft,e/=128;case 5:t[r++]=e&255|ft,e/=128;case 4:t[r++]=e&255|ft,e>>>=7;case 3:t[r++]=e&255|ft,e>>>=7;case 2:t[r++]=e&255|ft,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function ah(e,t,r=0){switch(Wt(e)){case 8:t.set(r++,e&255|ft),e/=128;case 7:t.set(r++,e&255|ft),e/=128;case 6:t.set(r++,e&255|ft),e/=128;case 5:t.set(r++,e&255|ft),e/=128;case 4:t.set(r++,e&255|ft),e>>>=7;case 3:t.set(r++,e&255|ft),e>>>=7;case 2:t.set(r++,e&255|ft),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function ch(e,t){let r=e[t],n=0;if(n+=r&$t,r<ft||(r=e[t+1],n+=(r&$t)<<7,r<ft)||(r=e[t+2],n+=(r&$t)<<14,r<ft)||(r=e[t+3],n+=(r&$t)<<21,r<ft)||(r=e[t+4],n+=(r&$t)*Co,r<ft)||(r=e[t+5],n+=(r&$t)*Io,r<ft)||(r=e[t+6],n+=(r&$t)*To,r<ft)||(r=e[t+7],n+=(r&$t)*_o,r<ft))return n;throw new RangeError("Could not decode varint")}function fh(e,t){let r=e.get(t),n=0;if(n+=r&$t,r<ft||(r=e.get(t+1),n+=(r&$t)<<7,r<ft)||(r=e.get(t+2),n+=(r&$t)<<14,r<ft)||(r=e.get(t+3),n+=(r&$t)<<21,r<ft)||(r=e.get(t+4),n+=(r&$t)*Co,r<ft)||(r=e.get(t+5),n+=(r&$t)*Io,r<ft)||(r=e.get(t+6),n+=(r&$t)*To,r<ft)||(r=e.get(t+7),n+=(r&$t)*_o,r<ft))return n;throw new RangeError("Could not decode varint")}function tr(e,t,r=0){return t==null&&(t=kt(Wt(e))),t instanceof Uint8Array?sh(e,t,r):ah(e,t,r)}function ye(e,t=0){return e instanceof Uint8Array?ch(e,t):fh(e,t)}function ut(e,t){if(globalThis.Buffer!=null)return Me(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=kt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Me(r)}function bt(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var p0=Symbol.for("@achingbrain/uint8arraylist");function d0(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function oi(e){return!!e?.[p0]}var Jt=class e{bufs;length;[p0]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(oi(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(oi(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=d0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=d0(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(oi(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return ut(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:ut(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=[...n],o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let f=t>=a&&t<c,u=r>a&&r<=c;if(f&&u){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!oi(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=rt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=rt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=rt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=rt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=rt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=rt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=rt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=rt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!bt(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function si(e){return e[Symbol.asyncIterator]!=null}var ai=e=>{let t=Wt(e),r=kt(t);return tr(e,r),ai.bytes=t,r};ai.bytes=0;function mn(e,t){t=t??{};let r=t.lengthEncoder??ai;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return si(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}mn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??ai;return new Jt(r(e.byteLength),e)};var Kr=Zt(m0(),1);var lh=8,hh=1024*1024*4,pr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(pr||(pr={}));var Lo=e=>{let t=ye(e);return Lo.bytes=Wt(t),t};Lo.bytes=0;function xn(e,t){let r=new Jt,n=pr.LENGTH,i=-1,o=t?.lengthDecoder??Lo,s=t?.maxLengthLength??lh,a=t?.maxDataLength??hh;function*c(){for(;r.byteLength>0;){if(n===pr.LENGTH)try{if(i=o(r),i<0)throw(0,Kr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Kr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),t?.onLength!=null&&t.onLength(i),n=pr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Kr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===pr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(f),yield f,n=pr.LENGTH}}}return si(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Kr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Kr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}xn.fromReader=(e,t)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await e.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return xn(n,{...t??{},onLength:o=>{r=o}})};function ge(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var ci=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function x0(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new ci(r?.errorMessage,r?.errorCode));let n,i=new ci(r?.errorMessage,r?.errorCode);try{return await Promise.race([e,new Promise((o,s)=>{n=()=>{s(i)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var Ro=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=ge(),this.needNext.resolve(),this.haveNext=ge()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let t=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=ge(),t}async throw(t){return this.ended=!0,t!=null&&this.haveNext.reject(t),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,r){await this._push(t,r)}async end(t,r){t!=null?await this.throw(t):await this._push(void 0,r)}async _push(t,r){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=ge(),await x0(this.needNext.promise,r?.signal,r)}};function b0(){return new Ro}var fi=class extends Error{code;constructor(t,r){super(t),this.code=r}},No=class extends fi{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function v0(e,t){let r=b0();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new Jt;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new No("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new Jt:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new fi("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let u=i.sublist(0,s);return i.consume(s),u}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=e.source;e.source=async function*(){t?.yieldBytes===!1?yield i:yield*i,yield*s}()}return e}}}var ui=class extends Error{code;constructor(t,r){super(t),this.code=r}},w0=e=>ye(e);w0.bytes=0;function Do(e,t={}){let r=v0(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=Wt(t.maxDataLength)),{read:async i=>{let o=-1,s=new Jt,a=t?.lengthDecoder??w0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new ui("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new ui("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(mn.single(i,t),o)},writeV:async(i,o)=>{let s=new Jt(...i.map(a=>mn.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function Po(){let e=ge(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function E0(){let e=Po(),t=Po();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}var li=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Or=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new li(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let r=this.head;this.head=r.next=new li(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var ko=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function hi(e={}){return ph(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},e)}function ph(e,t){t=t??{};let r=t.onEnd,n=new Or,i,o,s,a=ge(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,m)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(x){m(x)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ge()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Or,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Or,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let v,x;m!=null&&(v=new Promise((A,S)=>{x=()=>{S(new ko)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,v])}finally{x!=null&&m!=null&&m?.removeEventListener("abort",x)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:y=>p.onEmpty(y)},i}function yh(e){return e[Symbol.asyncIterator]!=null}function gh(...e){let t=[];for(let r of e)yh(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=hi({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var S0=gh;function B0(e,...t){if(e==null)throw new Error("Empty pipeline");if(Uo(e)){let n=e;e=()=>n.source}else if(C0(e)||A0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Uo(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++)Uo(r[n])&&(r[n]=xh(r[n]));return mh(...r)}var mh=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},A0=e=>e?.[Symbol.asyncIterator]!=null,C0=e=>e?.[Symbol.iterator]!=null,Uo=e=>e==null?!1:e.sink!=null&&e.source!=null,xh=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=hi({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(A0(o))i=async function*(){yield*o,n.end()};else if(C0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return S0(n,i())}return e.source};var I0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var bh=e=>e instanceof Uint8Array;var Fe=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),T0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),vh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!vh)throw new Error("Non little-endian hardware is not supported");function di(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function pi(e){if(typeof e=="string")e=di(e);else if(bh(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var wh=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function _0(e,t){if(t!==void 0&&(typeof t!="object"||!wh(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function yr(e,t){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function L0(e,t){if(e.length!==t.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<e.length;n++)r&&(r=e[n]===t[n]);return r}var Ko=(e,t)=>(Object.assign(t,e),t);function Oo(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}function yi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Mo(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Mr(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function Fo(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function R0(e,t){Mr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var zt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Vo=class{constructor(t){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,t=pi(t),yr(t,32);let r=zt(t,0),n=zt(t,2),i=zt(t,4),o=zt(t,6),s=zt(t,8),a=zt(t,10),c=zt(t,12),f=zt(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=zt(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],m=zt(t,r+0),v=zt(t,r+2),x=zt(t,r+4),A=zt(t,r+6),S=zt(t,r+8),B=zt(t,r+10),R=zt(t,r+12),_=zt(t,r+14),O=o[0]+(m&8191),M=o[1]+((m>>>13|v<<3)&8191),U=o[2]+((v>>>10|x<<6)&8191),H=o[3]+((x>>>7|A<<9)&8191),z=o[4]+((A>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),C=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|_<<8)&8191),L=o[9]+(_>>>5|i),w=0,k=w+O*a+M*(5*y)+U*(5*p)+H*(5*h)+z*(5*g);w=k>>>13,k&=8191,k+=Z*(5*d)+C*(5*l)+N*(5*u)+T*(5*f)+L*(5*c),w+=k>>>13,k&=8191;let K=w+O*c+M*a+U*(5*y)+H*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+C*(5*d)+N*(5*l)+T*(5*u)+L*(5*f),w+=K>>>13,K&=8191;let V=w+O*f+M*c+U*a+H*(5*y)+z*(5*p);w=V>>>13,V&=8191,V+=Z*(5*h)+C*(5*g)+N*(5*d)+T*(5*l)+L*(5*u),w+=V>>>13,V&=8191;let W=w+O*u+M*f+U*c+H*a+z*(5*y);w=W>>>13,W&=8191,W+=Z*(5*p)+C*(5*h)+N*(5*g)+T*(5*d)+L*(5*l),w+=W>>>13,W&=8191;let Y=w+O*l+M*u+U*f+H*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+C*(5*p)+N*(5*h)+T*(5*g)+L*(5*d),w+=Y>>>13,Y&=8191;let et=w+O*d+M*l+U*u+H*f+z*c;w=et>>>13,et&=8191,et+=Z*a+C*(5*y)+N*(5*p)+T*(5*h)+L*(5*g),w+=et>>>13,et&=8191;let X=w+O*g+M*d+U*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+C*a+N*(5*y)+T*(5*p)+L*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+U*d+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+C*c+N*a+T*(5*y)+L*(5*p),w+=J>>>13,J&=8191;let gt=w+O*p+M*h+U*g+H*d+z*l;w=gt>>>13,gt&=8191,gt+=Z*u+C*f+N*c+T*a+L*(5*y),w+=gt>>>13,gt&=8191;let dt=w+O*y+M*p+U*h+H*g+z*d;w=dt>>>13,dt&=8191,dt+=Z*l+C*u+N*f+T*c+L*a,w+=dt>>>13,dt&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=V,o[3]=W,o[4]=Y,o[5]=et,o[6]=X,o[7]=J,o[8]=gt,o[9]=dt}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){Fo(this);let{buffer:r,blockLen:n}=this;t=pi(t);let i=t.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(t,o);continue}r.set(t.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(t){Fo(this),R0(t,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)t[o++]=n[s]>>>0,t[o++]=n[s]>>>8;return t}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}};function Eh(e){let t=(n,i)=>e(i).update(pi(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var N0=Eh(e=>new Vo(e));var Sh=di("expand 16-byte k"),Bh=di("expand 32-byte k"),Ah=Fe(Sh),Ch=Fe(Bh);function G(e,t){return e<<t|e>>>32-t}function qo(e){return e.byteOffset%4===0}var gi=64,Ih=16,P0=2**32-1,D0=new Uint32Array;function Th(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(gi),u=Fe(f),l=qo(i)&&qo(o),d=l?Fe(i):D0,g=l?Fe(o):D0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=P0)throw new Error("arx: counter overflow");let p=Math.min(gi,c-h);if(l&&p===gi){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let m=0,v;m<Ih;m++)v=y+m,g[v]=d[v]^u[m];h+=gi;continue}for(let y=0,m;y<p;y++)m=h+y,o[m]=i[m]^f[y];h+=p}}function Ho(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=_0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return yi(i),yi(s),Mo(o),Mo(r),(a,c,f,u,l=0)=>{Mr(a),Mr(c),Mr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Mr(u),yi(l),l<0||l>=P0)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let g=[],h=a.length,p,y;if(h===32)p=a.slice(),g.push(p),y=Ch;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=Ah,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);qo(c)||(c=c.slice(),g.push(c));let m=Fe(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,m,Fe(c.subarray(0,16)),m),c=c.subarray(16)}let v=16-i;if(v!==c.length)throw new Error(`arx: nonce must be ${v} or 16 bytes`);if(v!==12){let A=new Uint8Array(12);A.set(c,o?0:12-c.length),c=A,g.push(c)}let x=Fe(c);for(Th(e,y,m,x,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function K0(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],f=e[3],u=t[0],l=t[1],d=t[2],g=t[3],h=t[4],p=t[5],y=t[6],m=t[7],v=i,x=r[0],A=r[1],S=r[2],B=s,R=a,_=c,O=f,M=u,U=l,H=d,z=g,Z=h,C=p,N=y,T=m,L=v,w=x,k=A,K=S;for(let W=0;W<o;W+=2)B=B+M|0,L=G(L^B,16),Z=Z+L|0,M=G(M^Z,12),B=B+M|0,L=G(L^B,8),Z=Z+L|0,M=G(M^Z,7),R=R+U|0,w=G(w^R,16),C=C+w|0,U=G(U^C,12),R=R+U|0,w=G(w^R,8),C=C+w|0,U=G(U^C,7),_=_+H|0,k=G(k^_,16),N=N+k|0,H=G(H^N,12),_=_+H|0,k=G(k^_,8),N=N+k|0,H=G(H^N,7),O=O+z|0,K=G(K^O,16),T=T+K|0,z=G(z^T,12),O=O+z|0,K=G(K^O,8),T=T+K|0,z=G(z^T,7),B=B+U|0,K=G(K^B,16),N=N+K|0,U=G(U^N,12),B=B+U|0,K=G(K^B,8),N=N+K|0,U=G(U^N,7),R=R+H|0,L=G(L^R,16),T=T+L|0,H=G(H^T,12),R=R+H|0,L=G(L^R,8),T=T+L|0,H=G(H^T,7),_=_+z|0,w=G(w^_,16),Z=Z+w|0,z=G(z^Z,12),_=_+z|0,w=G(w^_,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,k=G(k^O,16),C=C+k|0,M=G(M^C,12),O=O+M|0,k=G(k^O,8),C=C+k|0,M=G(M^C,7);let V=0;n[V++]=s+B|0,n[V++]=a+R|0,n[V++]=c+_|0,n[V++]=f+O|0,n[V++]=u+M|0,n[V++]=l+U|0,n[V++]=d+H|0,n[V++]=g+z|0,n[V++]=h+Z|0,n[V++]=p+C|0,n[V++]=y+N|0,n[V++]=m+T|0,n[V++]=v+L|0,n[V++]=x+w|0,n[V++]=A+k|0,n[V++]=S+K|0}function _h(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],f=t[1],u=t[2],l=t[3],d=t[4],g=t[5],h=t[6],p=t[7],y=r[0],m=r[1],v=r[2],x=r[3];for(let S=0;S<20;S+=2)i=i+c|0,y=G(y^i,16),d=d+y|0,c=G(c^d,12),i=i+c|0,y=G(y^i,8),d=d+y|0,c=G(c^d,7),o=o+f|0,m=G(m^o,16),g=g+m|0,f=G(f^g,12),o=o+f|0,m=G(m^o,8),g=g+m|0,f=G(f^g,7),s=s+u|0,v=G(v^s,16),h=h+v|0,u=G(u^h,12),s=s+u|0,v=G(v^s,8),h=h+v|0,u=G(u^h,7),a=a+l|0,x=G(x^a,16),p=p+x|0,l=G(l^p,12),a=a+l|0,x=G(x^a,8),p=p+x|0,l=G(l^p,7),i=i+f|0,x=G(x^i,16),h=h+x|0,f=G(f^h,12),i=i+f|0,x=G(x^i,8),h=h+x|0,f=G(f^h,7),o=o+u|0,y=G(y^o,16),p=p+y|0,u=G(u^p,12),o=o+u|0,y=G(y^o,8),p=p+y|0,u=G(u^p,7),s=s+l|0,m=G(m^s,16),d=d+m|0,l=G(l^d,12),s=s+l|0,m=G(m^s,8),d=d+m|0,l=G(l^d,7),a=a+c|0,v=G(v^a,16),g=g+v|0,c=G(c^g,12),a=a+c|0,v=G(v^a,8),g=g+v|0,c=G(c^g,7);let A=0;n[A++]=i,n[A++]=o,n[A++]=s,n[A++]=a,n[A++]=y,n[A++]=m,n[A++]=v,n[A++]=x}var Lh=Ho(K0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),Rh=Ho(K0,{counterRight:!1,counterLength:8,extendNonceFn:_h,allowShortKeys:!1});var Nh=new Uint8Array(16),k0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(Nh.subarray(r))},Dh=new Uint8Array(32);function U0(e,t,r,n,i){let o=e(t,r,Dh),s=N0.create(o);i&&k0(s,i),k0(s,n);let a=new Uint8Array(16),c=T0(a);Oo(c,0,BigInt(i?i.length:0),!0),Oo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var O0=e=>(t,r,n)=>(yr(t,32),yr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?yr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=U0(e,t,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?yr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=U0(e,t,r,f,n);if(!L0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),zo=Ko({blockSize:64,nonceLength:12,tagLength:16},O0(Lh)),i2=Ko({blockSize:64,nonceLength:24,tagLength:16},O0(Rh));function mi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Go(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function bn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");mi(e.outputLen),mi(e.blockLen)}function Fr(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function M0(e,t){Go(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var xi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var F0=e=>e instanceof Uint8Array;var bi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),me=(e,t)=>e<<32-t|e>>>t,Ph=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Ph)throw new Error("Non little-endian hardware is not supported");function $o(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function er(e){if(typeof e=="string"&&(e=$o(e)),!F0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function vi(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!F0(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var Vr=class{clone(){return this._cloneInto()}},f2={}.toString;function wi(e){let t=n=>e().update(er(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function gr(e=32){if(xi&&typeof xi.getRandomValues=="function")return xi.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function kh(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}var qr=class extends Vr{constructor(t,r,n,i){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=bi(this.buffer)}update(t){Fr(this);let{view:r,buffer:n,blockLen:i}=this;t=er(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=bi(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Fr(this),M0(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;kh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=bi(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var Ei=BigInt(4294967295),Wo=BigInt(32);function V0(e,t=!1){return t?{h:Number(e&Ei),l:Number(e>>Wo&Ei)}:{h:Number(e>>Wo&Ei)|0,l:Number(e&Ei)|0}}function Uh(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=V0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var Kh=(e,t)=>BigInt(e>>>0)<<Wo|BigInt(t>>>0),Oh=(e,t,r)=>e>>>r,Mh=(e,t,r)=>e<<32-r|t>>>r,Fh=(e,t,r)=>e>>>r|t<<32-r,Vh=(e,t,r)=>e<<32-r|t>>>r,qh=(e,t,r)=>e<<64-r|t>>>r-32,Hh=(e,t,r)=>e>>>r-32|t<<64-r,zh=(e,t)=>t,Gh=(e,t)=>e,$h=(e,t,r)=>e<<r|t>>>32-r,Wh=(e,t,r)=>t<<r|e>>>32-r,Yh=(e,t,r)=>t<<r-32|e>>>64-r,Zh=(e,t,r)=>e<<r-32|t>>>64-r;function Xh(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Qh=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Jh=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,jh=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),td=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,ed=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),rd=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var nd={fromBig:V0,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},j=nd;var[id,od]=j.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),rr=new Uint32Array(80),nr=new Uint32Array(80),Yo=class extends qr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:g,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y]}set(t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y){this.Ah=t|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=d|0,this.Gh=g|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let x=0;x<16;x++,r+=4)rr[x]=t.getUint32(r),nr[x]=t.getUint32(r+=4);for(let x=16;x<80;x++){let A=rr[x-15]|0,S=nr[x-15]|0,B=j.rotrSH(A,S,1)^j.rotrSH(A,S,8)^j.shrSH(A,S,7),R=j.rotrSL(A,S,1)^j.rotrSL(A,S,8)^j.shrSL(A,S,7),_=rr[x-2]|0,O=nr[x-2]|0,M=j.rotrSH(_,O,19)^j.rotrBH(_,O,61)^j.shrSH(_,O,6),U=j.rotrSL(_,O,19)^j.rotrBL(_,O,61)^j.shrSL(_,O,6),H=j.add4L(R,U,nr[x-7],nr[x-16]),z=j.add4H(H,B,M,rr[x-7],rr[x-16]);rr[x]=z|0,nr[x]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:g,Fl:h,Gh:p,Gl:y,Hh:m,Hl:v}=this;for(let x=0;x<80;x++){let A=j.rotrSH(l,d,14)^j.rotrSH(l,d,18)^j.rotrBH(l,d,41),S=j.rotrSL(l,d,14)^j.rotrSL(l,d,18)^j.rotrBL(l,d,41),B=l&g^~l&p,R=d&h^~d&y,_=j.add5L(v,S,R,od[x],nr[x]),O=j.add5H(_,m,A,B,id[x],rr[x]),M=_|0,U=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),H=j.rotrSL(n,i,28)^j.rotrBL(n,i,34)^j.rotrBL(n,i,39),z=n&o^n&a^o&a,Z=i&s^i&c^s&c;m=p|0,v=y|0,p=g|0,y=h|0,g=l|0,h=d|0,{h:l,l:d}=j.add(f|0,u|0,O|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let C=j.add3L(M,H,Z);n=j.add3H(C,O,U,z),i=C|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:m,l:v}=j.add(this.Hh|0,this.Hl|0,m|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,m,v)}roundClean(){rr.fill(0),nr.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 Zo=wi(()=>new Yo);var Ai={};Pt(Ai,{bitGet:()=>hd,bitLen:()=>ld,bitMask:()=>vn,bitSet:()=>dd,bytesToHex:()=>Ve,bytesToNumberBE:()=>qe,bytesToNumberLE:()=>xe,concatBytes:()=>ze,createHmacDrbg:()=>Jo,ensureBytes:()=>vt,equalBytes:()=>fd,hexToBytes:()=>mr,hexToNumber:()=>Qo,numberToBytesBE:()=>ir,numberToBytesLE:()=>He,numberToHexUnpadded:()=>z0,numberToVarBytesBE:()=>cd,utf8ToBytes:()=>ud,validateObject:()=>ce});var H0=BigInt(0),Si=BigInt(1),sd=BigInt(2),Bi=e=>e instanceof Uint8Array,ad=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Ve(e){if(!Bi(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=ad[e[r]];return t}function z0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Qo(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}function mr(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let r=new Uint8Array(t/2);for(let n=0;n<r.length;n++){let i=n*2,o=e.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function qe(e){return Qo(Ve(e))}function xe(e){if(!Bi(e))throw new Error("Uint8Array expected");return Qo(Ve(Uint8Array.from(e).reverse()))}function ir(e,t){return mr(e.toString(16).padStart(t*2,"0"))}function He(e,t){return ir(e,t).reverse()}function cd(e){return mr(z0(e))}function vt(e,t,r){let n;if(typeof t=="string")try{n=mr(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(Bi(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function ze(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!Bi(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function fd(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function ud(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ld(e){let t;for(t=0;e>H0;e>>=Si,t+=1);return t}function hd(e,t){return e>>BigInt(t)&Si}var dd=(e,t,r)=>e|(r?Si:H0)<<BigInt(t),vn=e=>(sd<<BigInt(e-1))-Si,Xo=e=>new Uint8Array(e),q0=e=>Uint8Array.from(e);function Jo(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=Xo(e),i=Xo(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Xo())=>{i=a(q0([0]),l),n=a(),l.length!==0&&(i=a(q0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let g=n.slice();d.push(g),l+=n.length}return ze(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var pd={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function ce(e,t,r={}){let n=(i,o,s)=>{let a=pd[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Ut=BigInt(0),Bt=BigInt(1),xr=BigInt(2),yd=BigInt(3),jo=BigInt(4),G0=BigInt(5),$0=BigInt(8),gd=BigInt(9),md=BigInt(16);function ct(e,t){let r=e%t;return r>=Ut?r:t+r}function ts(e,t,r){if(r<=Ut||t<Ut)throw new Error("Expected power/modulo > 0");if(r===Bt)return Ut;let n=Bt;for(;t>Ut;)t&Bt&&(n=n*e%r),e=e*e%r,t>>=Bt;return n}function wt(e,t,r){let n=e;for(;t-- >Ut;)n*=n,n%=r;return n}function Ci(e,t){if(e===Ut||t<=Ut)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=ct(e,t),n=t,i=Ut,o=Bt,s=Bt,a=Ut;for(;r!==Ut;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==Bt)throw new Error("invert: does not exist");return ct(i,t)}function xd(e){let t=(e-Bt)/xr,r,n,i;for(r=e-Bt,n=0;r%xr===Ut;r/=xr,n++);for(i=xr;i<e&&ts(i,t,e)!==e-Bt;i++);if(n===1){let s=(e+Bt)/jo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+Bt)/xr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,Bt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function bd(e){if(e%jo===yd){let t=(e+Bt)/jo;return function(n,i){let o=n.pow(i,t);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(e%$0===G0){let t=(e-G0)/$0;return function(n,i){let o=n.mul(i,xr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,xr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return e%md,xd(e)}var W0=(e,t)=>(ct(e,t)&Bt)===Bt,vd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function es(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=vd.reduce((n,i)=>(n[i]="function",n),t);return ce(e,r)}function wd(e,t,r){if(r<Ut)throw new Error("Expected power > 0");if(r===Ut)return e.ONE;if(r===Bt)return t;let n=e.ONE,i=t;for(;r>Ut;)r&Bt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=Bt;return n}function Ed(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function rs(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ii(e,t,r=!1,n={}){if(e<=Ut)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=rs(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=bd(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:vn(i),ZERO:Ut,ONE:Bt,create:c=>ct(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ut<=c&&c<e},is0:c=>c===Ut,isOdd:c=>(c&Bt)===Bt,neg:c=>ct(-c,e),eql:(c,f)=>c===f,sqr:c=>ct(c*c,e),add:(c,f)=>ct(c+f,e),sub:(c,f)=>ct(c-f,e),mul:(c,f)=>ct(c*f,e),pow:(c,f)=>wd(a,c,f),div:(c,f)=>ct(c*Ci(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>Ci(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Ed(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?He(c,o):ir(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?xe(c):qe(c)}});return Object.freeze(a)}function Y0(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");let r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function Z0(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function ns(e){let t=Z0(e);return t+Math.ceil(t/2)}function X0(e,t,r=!1){let n=e.length,i=Z0(t),o=ns(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?qe(e):xe(e),a=ct(s,t-Bt)+Bt;return r?He(a,i):ir(a,i)}var Bd=BigInt(0),is=BigInt(1);function Ti(e,t){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(t/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=e.ZERO,a=i;for(;o>Bd;)o&is&&(s=s.add(a)),a=a.double(),o>>=is;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),d=2**i,g=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=g,y>c&&(y-=d,s+=is);let m=p,v=p+Math.abs(y)-1,x=h%2!==0,A=y<0;y===0?u=u.add(r(x,o[m])):f=f.add(r(A,o[v]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function wn(e){return es(e.Fp),ce(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...rs(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var be=BigInt(0),ne=BigInt(1),_i=BigInt(2),Ad=BigInt(8),Cd={zip215:!0};function Id(e){let t=wn(e);return ce(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function Li(e){let t=Id(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=_i<<BigInt(a*8)-ne,u=r.create,l=t.uvRatio||((L,w)=>{try{return{isValid:!0,value:r.sqrt(L*r.inv(w))}}catch{return{isValid:!1,value:be}}}),d=t.adjustScalarBytes||(L=>L),g=t.domain||((L,w,k)=>{if(w.length||k)throw new Error("Contexts/pre-hash are not supported");return L}),h=L=>typeof L=="bigint"&&be<L,p=(L,w)=>h(L)&&h(w)&&L<w,y=L=>L===be||p(L,f);function m(L,w){if(p(L,w))return L;throw new Error(`Expected valid scalar < ${w}, got ${typeof L} ${L}`)}function v(L){return L===be?L:m(L,n)}let x=new Map;function A(L){if(!(L instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,k,K,V){if(this.ex=w,this.ey=k,this.ez=K,this.et=V,!y(w))throw new Error("x required");if(!y(k))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(V))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:k,y:K}=w||{};if(!y(k)||!y(K))throw new Error("invalid affine point");return new S(k,K,ne,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,V)=>K.toAffine(k[V])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,x.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:V,ez:W,et:Y}=this,et=u(K*K),X=u(V*V),J=u(W*W),gt=u(J*J),dt=u(et*w),qt=u(J*u(dt+X)),Ht=u(gt+u(k*u(et*X)));if(qt!==Ht)throw new Error("bad point: equation left != right (1)");let Dt=u(K*V),Gt=u(W*Y);if(Dt!==Gt)throw new Error("bad point: equation left != right (2)")}equals(w){A(w);let{ex:k,ey:K,ez:V}=this,{ex:W,ey:Y,ez:et}=w,X=u(k*et),J=u(W*V),gt=u(K*et),dt=u(Y*V);return X===J&>===dt}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:k,ey:K,ez:V}=this,W=u(k*k),Y=u(K*K),et=u(_i*u(V*V)),X=u(w*W),J=k+K,gt=u(u(J*J)-W-Y),dt=X+Y,qt=dt-et,Ht=X-Y,Dt=u(gt*qt),Gt=u(dt*Ht),Oe=u(gt*Ht),dr=u(qt*dt);return new S(Dt,Gt,dr,Oe)}add(w){A(w);let{a:k,d:K}=t,{ex:V,ey:W,ez:Y,et}=this,{ex:X,ey:J,ez:gt,et:dt}=w;if(k===BigInt(-1)){let o0=u((W-V)*(J+X)),s0=u((W+V)*(J-X)),Ao=u(s0-o0);if(Ao===be)return this.double();let a0=u(Y*_i*dt),c0=u(et*_i*gt),f0=c0+a0,u0=s0+o0,l0=c0-a0,Wl=u(f0*Ao),Yl=u(u0*l0),Zl=u(f0*l0),Xl=u(Ao*u0);return new S(Wl,Yl,Xl,Zl)}let qt=u(V*X),Ht=u(W*J),Dt=u(et*K*dt),Gt=u(Y*gt),Oe=u((V+W)*(X+J)-qt-Ht),dr=Gt-Dt,yn=Gt+Dt,i0=u(Ht-k*qt),Hl=u(Oe*dr),zl=u(yn*i0),Gl=u(Oe*i0),$l=u(dr*yn);return new S(Hl,zl,$l,Gl)}subtract(w){return this.add(w.negate())}wNAF(w){return _.wNAFCached(this,x,w,S.normalizeZ)}multiply(w){let{p:k,f:K}=this.wNAF(m(w,n));return S.normalizeZ([k,K])[0]}multiplyUnsafe(w){let k=v(w);return k===be?R:this.equals(R)||k===ne?this:this.equals(B)?this.wNAF(k).p:_.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:V}=this,W=this.is0();w==null&&(w=W?Ad:r.inv(V));let Y=u(k*w),et=u(K*w),X=u(V*w);if(W)return{x:be,y:ne};if(X!==ne)throw new Error("invZ was invalid");return{x:Y,y:et}}clearCofactor(){let{h:w}=t;return w===ne?this:this.multiplyUnsafe(w)}static fromHex(w,k=!1){let{d:K,a:V}=t,W=r.BYTES;w=vt("pointHex",w,W);let Y=w.slice(),et=w[W-1];Y[W-1]=et&-129;let X=xe(Y);X===be||(k?m(X,f):m(X,r.ORDER));let J=u(X*X),gt=u(J-ne),dt=u(K*J-V),{isValid:qt,value:Ht}=l(gt,dt);if(!qt)throw new Error("Point.fromHex: invalid y coordinate");let Dt=(Ht&ne)===ne,Gt=(et&128)!==0;if(!k&&Ht===be&&Gt)throw new Error("Point.fromHex: x=0 and x_0=1");return Gt!==Dt&&(Ht=u(-Ht)),S.fromAffine({x:Ht,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=He(k,r.BYTES);return K[K.length-1]|=w&ne?128:0,K}toHex(){return Ve(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ne,u(t.Gx*t.Gy)),S.ZERO=new S(be,ne,ne,be);let{BASE:B,ZERO:R}=S,_=Ti(S,a*8);function O(L){return ct(L,n)}function M(L){return O(xe(L))}function U(L){let w=a;L=vt("private key",L,w);let k=vt("hashed private key",o(L),2*w),K=d(k.slice(0,w)),V=k.slice(w,2*w),W=M(K),Y=B.multiply(W),et=Y.toRawBytes();return{head:K,prefix:V,scalar:W,point:Y,pointBytes:et}}function H(L){return U(L).pointBytes}function z(L=new Uint8Array,...w){let k=ze(...w);return M(o(g(k,vt("context",L),!!i)))}function Z(L,w,k={}){L=vt("message",L),i&&(L=i(L));let{prefix:K,scalar:V,pointBytes:W}=U(w),Y=z(k.context,K,L),et=B.multiply(Y).toRawBytes(),X=z(k.context,et,W,L),J=O(Y+X*V);v(J);let gt=ze(et,He(J,r.BYTES));return vt("result",gt,a*2)}let C=Cd;function N(L,w,k,K=C){let{context:V,zip215:W}=K,Y=r.BYTES;L=vt("signature",L,2*Y),w=vt("message",w),i&&(w=i(w));let et=xe(L.slice(Y,2*Y)),X,J,gt;try{X=S.fromHex(k,W),J=S.fromHex(L.slice(0,Y),W),gt=B.multiplyUnsafe(et)}catch{return!1}if(!W&&X.isSmallOrder())return!1;let dt=z(V,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(dt)).subtract(gt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(L=8,w=S.BASE){return w._setWindowSize(L),w.multiply(BigInt(3)),w}}}}var En=BigInt(0),os=BigInt(1);function Td(e){return ce(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function Q0(e){let t=Td(e),{P:r}=t,n=x=>ct(x,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(x=>x),c=t.powPminus2||(x=>ts(x,r-BigInt(2),r));function f(x,A,S){let B=n(x*(A-S));return A=n(A-B),S=n(S+B),[A,S]}function u(x){if(typeof x=="bigint"&&En<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(x,A){let S=u(x),B=u(A),R=S,_=os,O=En,M=S,U=os,H=En,z;for(let C=BigInt(i-1);C>=En;C--){let N=B>>C&os;H^=N,z=f(H,_,M),_=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1],H=N;let T=_+O,L=n(T*T),w=_-O,k=n(w*w),K=L-k,V=M+U,W=M-U,Y=n(W*T),et=n(V*w),X=Y+et,J=Y-et;M=n(X*X),U=n(R*n(J*J)),_=n(L*k),O=n(K*(L+n(l*K)))}z=f(H,_,M),_=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1];let Z=c(O);return n(_*Z)}function g(x){return He(n(x),o)}function h(x){let A=vt("u coordinate",x,o);return s===o&&(A[s-1]&=127),xe(A)}function p(x){let A=vt("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return xe(a(A))}function y(x,A){let S=h(A),B=p(x),R=d(S,B);if(R===En)throw new Error("Invalid private or public key received");return g(R)}let m=g(t.Gu);function v(x){return y(x,m)}return{scalarMult:y,scalarMultBase:v,getSharedSecret:(x,A)=>y(x,A),getPublicKey:x=>v(x),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:m}}var Sn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),J0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),k2=BigInt(0),_d=BigInt(1),ss=BigInt(2),Ld=BigInt(5),j0=BigInt(10),Rd=BigInt(20),Nd=BigInt(40),tc=BigInt(80);function ec(e){let t=Sn,n=e*e%t*e%t,i=wt(n,ss,t)*n%t,o=wt(i,_d,t)*e%t,s=wt(o,Ld,t)*o%t,a=wt(s,j0,t)*s%t,c=wt(a,Rd,t)*a%t,f=wt(c,Nd,t)*c%t,u=wt(f,tc,t)*f%t,l=wt(u,tc,t)*f%t,d=wt(l,j0,t)*s%t;return{pow_p_5_8:wt(d,ss,t)*e%t,b2:n}}function rc(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function Dd(e,t){let r=Sn,n=ct(t*t*t,r),i=ct(n*n*t,r),o=ec(e*i).pow_p_5_8,s=ct(e*n*o,r),a=ct(t*s*s,r),c=s,f=ct(s*J0,r),u=a===e,l=a===ct(-e,r),d=a===ct(-e*J0,r);return u&&(s=c),(l||d)&&(s=f),W0(s,r)&&(s=ct(-s,r)),{isValid:u||l,value:s}}var Ge=Ii(Sn,void 0,!0),as={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ge,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Zo,randomBytes:gr,adjustScalarBytes:rc,uvRatio:Dd},Hr=Li(as);function nc(e,t,r){if(t.length>255)throw new Error("Context is too big");return vi($o("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var U2=Li({...as,domain:nc}),K2=Li({...as,domain:nc,prehash:Zo}),Bn=Q0({P:Sn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=Sn,{pow_p_5_8:r,b2:n}=ec(e);return ct(wt(r,BigInt(3),t)*n,t)},adjustScalarBytes:rc,randomBytes:gr});var Pd=(Ge.ORDER+BigInt(3))/BigInt(8),O2=Ge.pow(ss,Pd),M2=Ge.sqrt(Ge.neg(Ge.ONE)),F2=(Ge.ORDER-BigInt(5))/BigInt(8),V2=BigInt(486662);var q2=Y0(Ge,Ge.neg(BigInt(486664)));var H2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),z2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),G2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),$2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var W2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ri=class extends Vr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,bn(t);let n=er(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return Fr(this),this.iHash.update(t),this}digestInto(t){Fr(this),Go(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},zr=(e,t,r)=>new Ri(e,t).update(r).digest();zr.create=(e,t)=>new Ri(e,t);function oc(e,t,r){return bn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),zr(e,er(r),er(t))}var cs=new Uint8Array([0]),ic=new Uint8Array;function sc(e,t,r,n=32){if(bn(e),mi(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=ic);let o=new Uint8Array(i*e.outputLen),s=zr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)cs[0]=f+1,a.update(f===0?ic:c).update(r).update(cs).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),cs.fill(0),o.slice(0,n)}var kd=(e,t,r)=>e&t^~e&r,Ud=(e,t,r)=>e&t^e&r^t&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]),or=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),sr=new Uint32Array(64),fs=class extends qr{constructor(){super(64,32,8,!1),this.A=or[0]|0,this.B=or[1]|0,this.C=or[2]|0,this.D=or[3]|0,this.E=or[4]|0,this.F=or[5]|0,this.G=or[6]|0,this.H=or[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,r){for(let l=0;l<16;l++,r+=4)sr[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=sr[l-15],g=sr[l-2],h=me(d,7)^me(d,18)^d>>>3,p=me(g,17)^me(g,19)^g>>>10;sr[l]=p+sr[l-7]+h+sr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let d=me(a,6)^me(a,11)^me(a,25),g=u+d+kd(a,c,f)+Kd[l]+sr[l]|0,p=(me(n,2)^me(n,13)^me(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(){sr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Gr=wi(()=>new fs);var us={hashSHA256(e){return Gr(e)},getHKDF(e,t){let r=oc(Gr,t,e),i=sc(Gr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let e=Bn.utils.randomPrivateKey();return{publicKey:Bn.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:Bn.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return Bn.getSharedSecret(e,t)},chaCha20Poly1305Encrypt(e,t,r,n){return zo(n,t,r).encrypt(e)},chaCha20Poly1305Decrypt(e,t,r,n,i){return zo(n,t,r).decrypt(e,i)}};var ac=us;var ys={};Pt(ys,{base10:()=>Hd});function Od(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,m=0,v=h.length;m!==v&&h[m]===0;)m++,p++;for(var x=(v-m)*u+1>>>0,A=new Uint8Array(x);m!==v;){for(var S=h[m],B=0,R=x-1;(S!==0||B<y)&&R!==-1;R--,B++)S+=256*A[R]>>>0,A[R]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");y=B,m++}for(var _=x-y;_!==x&&A[_]===0;)_++;for(var O=c.repeat(p);_<x;++_)O+=e.charAt(A[_]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,m=0;h[p]===c;)y++,p++;for(var v=(h.length-p)*f+1>>>0,x=new Uint8Array(v);h[p];){var A=r[h.charCodeAt(p)];if(A===255)return;for(var S=0,B=v-1;(A!==0||S<m)&&B!==-1;B--,S++)A+=a*x[B]>>>0,x[B]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");m=S,p++}if(h[p]!==" "){for(var R=v-m;R!==v&&x[R]===0;)R++;for(var _=new Uint8Array(y+(v-R)),O=y;R!==v;)_[O++]=x[R++];return _}}}function g(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:g}}var Md=Od,Fd=Md,cc=Fd;var pb=new Uint8Array(0);var fc=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},$e=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var uc=e=>new TextEncoder().encode(e),lc=e=>new TextDecoder().decode(e);var ls=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},hs=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return dc(this,t)}},ds=class{constructor(t){this.decoders=t}or(t){return dc(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},dc=(e,t)=>new ds({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),ps=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ls(t,r,n),this.decoder=new hs(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},$r=({name:e,prefix:t,encode:r,decode:n})=>new ps(e,t,r,n),ar=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=cc(r,t);return $r({prefix:e,name:t,encode:n,decode:o=>$e(i(o))})},Vd=(e,t,r,n)=>{let i={};for(let u=0;u<t.length;++u)i[t[u]]=u;let o=e.length;for(;e[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[e[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},qd=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Tt=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>$r({prefix:t,name:e,encode(i){return qd(i,n,r)},decode(i){return Vd(i,n,r,e)}});var Hd=ar({prefix:"9",name:"base10",alphabet:"0123456789"});var gs={};Pt(gs,{base16:()=>zd,base16upper:()=>Gd});var zd=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Gd=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ms={};Pt(ms,{base2:()=>$d});var $d=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var xs={};Pt(xs,{base256emoji:()=>Qd});var pc=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}"),Wd=pc.reduce((e,t,r)=>(e[r]=t,e),[]),Yd=pc.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function Zd(e){return e.reduce((t,r)=>(t+=Wd[r],t),"")}function Xd(e){let t=[];for(let r of e){let n=Yd[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var Qd=$r({prefix:"\u{1F680}",name:"base256emoji",encode:Zd,decode:Xd});var bs={};Pt(bs,{base32:()=>ve,base32hex:()=>ep,base32hexpad:()=>np,base32hexpadupper:()=>ip,base32hexupper:()=>rp,base32pad:()=>jd,base32padupper:()=>tp,base32upper:()=>Jd,base32z:()=>op});var ve=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Jd=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),jd=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),tp=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),ep=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),rp=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),np=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ip=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),op=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var vs={};Pt(vs,{base36:()=>sp,base36upper:()=>ap});var sp=ar({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),ap=ar({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ws={};Pt(ws,{base58btc:()=>mt,base58flickr:()=>cp});var mt=ar({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),cp=ar({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ss={};Pt(Ss,{base64:()=>Wr,base64pad:()=>fp,base64url:()=>Es,base64urlpad:()=>up});var Wr=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),fp=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Es=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),up=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Bs={};Pt(Bs,{base8:()=>lp});var lp=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var As={};Pt(As,{identity:()=>hp});var hp=$r({prefix:"\0",name:"identity",encode:e=>lc(e),decode:e=>uc(e)});var _b=new TextEncoder,Lb=new TextDecoder;var Ts={};Pt(Ts,{identity:()=>Se});var Ee={};Pt(Ee,{Digest:()=>br,create:()=>fe,decode:()=>we,equals:()=>Is});var yp=mc,yc=128,gp=127,mp=~gp,xp=Math.pow(2,31);function mc(e,t,r){t=t||[],r=r||0;for(var n=r;e>=xp;)t[r++]=e&255|yc,e/=128;for(;e∓)t[r++]=e&255|yc,e>>>=7;return t[r]=e|0,mc.bytes=r-n+1,t}var bp=Cs,vp=128,gc=127;function Cs(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Cs.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&gc)<<i:(s&gc)*Math.pow(2,i),i+=7}while(s>=vp);return Cs.bytes=o-n,r}var wp=Math.pow(2,7),Ep=Math.pow(2,14),Sp=Math.pow(2,21),Bp=Math.pow(2,28),Ap=Math.pow(2,35),Cp=Math.pow(2,42),Ip=Math.pow(2,49),Tp=Math.pow(2,56),_p=Math.pow(2,63),Lp=function(e){return e<wp?1:e<Ep?2:e<Sp?3:e<Bp?4:e<Ap?5:e<Cp?6:e<Ip?7:e<Tp?8:e<_p?9:10},Rp={encode:yp,decode:bp,encodingLength:Lp},Np=Rp,An=Np;var Cn=(e,t=0)=>[An.decode(e,t),An.decode.bytes],Yr=(e,t,r=0)=>(An.encode(e,t,r),t),Zr=e=>An.encodingLength(e);var fe=(e,t)=>{let r=t.byteLength,n=Zr(e),i=n+Zr(r),o=new Uint8Array(i+r);return Yr(e,o,0),Yr(r,o,n),o.set(t,i),new br(e,r,t,o)},we=e=>{let t=$e(e),[r,n]=Cn(t),[i,o]=Cn(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new br(r,i,s,t)},Is=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&fc(e.bytes,r.bytes)}},br=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var xc=0,Dp="identity",bc=$e,Pp=e=>fe(xc,bc(e)),Se={code:xc,name:Dp,encode:bc,digest:Pp};var Rs={};Pt(Rs,{sha256:()=>Rt,sha512:()=>kp});var Ls=({name:e,code:t,encode:r})=>new _s(e,t,r),_s=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?fe(this.code,r):r.then(n=>fe(this.code,n))}else throw Error("Unknown type, must be binary type")}};var wc=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Rt=Ls({name:"sha2-256",code:18,encode:wc("SHA-256")}),kp=Ls({name:"sha2-512",code:19,encode:wc("SHA-512")});var Ec=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return Kp(r,Ns(e),t||mt.encoder);default:return Op(r,Ns(e),t||ve.encoder)}};var Sc=new WeakMap,Ns=e=>{let t=Sc.get(e);if(t==null){let r=new Map;return Sc.set(e,r),r}return t},jt=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==In)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Mp)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=fe(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&Is(t.multihash,n.multihash)}toString(t){return Ec(this,t)}toJSON(){return{"/":Ec(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s||Bc(n,i,o.bytes))}else if(r[Fp]===!0){let{version:n,multihash:i,code:o}=r,s=we(i);return e.create(n,o,s)}else return null}static create(t,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(r!==In)throw new Error(`Version 0 CID must use dag-pb (code: ${In}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=Bc(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,In,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=$e(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new br(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=Cn(t.subarray(r));return r+=d,l},i=n(),o=In;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(t,r){let[n,i]=Up(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ns(o).set(n,t),o}},Up=(e,t)=>{switch(e[0]){case"Q":{let r=t||mt;return[mt.prefix,r.decode(`${mt.prefix}${e}`)]}case mt.prefix:{let r=t||mt;return[mt.prefix,r.decode(e)]}case ve.prefix:{let r=t||ve;return[ve.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},Kp=(e,t,r)=>{let{prefix:n}=r;if(n!==mt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},Op=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},In=112,Mp=18,Bc=(e,t,r)=>{let n=Zr(e),i=n+Zr(t),o=new Uint8Array(i+r.byteLength);return Yr(e,o,0),Yr(t,o,n),o.set(r,i),o},Fp=Symbol.for("@ipld/js-cid/CID");var ie={...As,...ms,...Bs,...ys,...gs,...bs,...vs,...ws,...Ss,...xs},$b={...Rs,...Ts};function Cc(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Ac=Cc("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Ds=Cc("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=kt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),Vp={utf8:Ac,"utf-8":Ac,hex:ie.base16,latin1:Ds,ascii:Ds,binary:Ds,...ie},Di=Vp;function It(e,t="utf8"){let r=Di[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Me(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function nt(e,t="utf8"){let r=Di[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}var Xr=e=>{let t=kt(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Xr.bytes=2;var Tn=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};Tn.bytes=2;function Ic(e){return ut([e.ne,e.ciphertext],e.ne.length+e.ciphertext.length)}function Tc(e){return ut([e.ne,e.ns,e.ciphertext],e.ne.length+e.ns.length+e.ciphertext.length)}function _c(e){return ut([e.ns,e.ciphertext],e.ns.length+e.ciphertext.length)}function Lc(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:rt(0)}}function Rc(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.subarray(0,32),ns:e.subarray(32,80),ciphertext:e.subarray(80,e.length)}}function Nc(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:rt(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var Pc=16;function kc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=e.encrypt(n.subarray(i,o),e.session);t?.encryptedPackets.increment(),yield ut([Xr(s.byteLength),s],2+s.byteLength)}}}function Uc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-Pc<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-Pc),{plaintext:c,valid:f}=e.decrypt(s,e.session,a);if(!f)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var ot=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},Ln=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},vr=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var c8=Zt(Pn(),1),f8=Zt(jf(),1);var Xg=Zt(yt(),1);var ma={};Pt(ma,{Ed25519PrivateKey:()=>Rr,Ed25519PublicKey:()=>Fn,generateKeyPair:()=>Sg,generateKeyPairFromSeed:()=>pu,unmarshalEd25519PrivateKey:()=>wg,unmarshalEd25519PublicKey:()=>Eg});var en=32,Xe=64,Ji=32;async function tu(){let e=Hr.utils.randomPrivateKey(),t=Hr.getPublicKey(e);return{privateKey:iu(e,t),publicKey:t}}async function eu(e){if(e.length!==Ji)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=Hr.getPublicKey(t);return{privateKey:iu(t,r),publicKey:r}}async function ru(e,t){let r=e.subarray(0,Ji);return Hr.sign(t,r)}async function nu(e,t,r){return Hr.verify(t,r,e)}function iu(e,t){let r=new Uint8Array(Xe);for(let n=0;n<Ji;n++)r[n]=e[n],r[Ji+n]=t[n];return r}var ee={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var ra={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function na(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=ee.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=It(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",ra,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",ra,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,y,l);return ut([g,p.iv,new Uint8Array(m)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=It(d));let m;if(d.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",ra,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(y,m,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function rn(e,t){let n=await na().encrypt(e,t);return Wr.encode(n)}var ia=new Float32Array([-0]),hr=new Uint8Array(ia.buffer);function su(e,t,r){ia[0]=e,t[r]=hr[0],t[r+1]=hr[1],t[r+2]=hr[2],t[r+3]=hr[3]}function au(e,t){return hr[0]=e[t],hr[1]=e[t+1],hr[2]=e[t+2],hr[3]=e[t+3],ia[0]}var oa=new Float64Array([-0]),Yt=new Uint8Array(oa.buffer);function cu(e,t,r){oa[0]=e,t[r]=Yt[0],t[r+1]=Yt[1],t[r+2]=Yt[2],t[r+3]=Yt[3],t[r+4]=Yt[4],t[r+5]=Yt[5],t[r+6]=Yt[6],t[r+7]=Yt[7]}function fu(e,t){return Yt[0]=e[t],Yt[1]=e[t+1],Yt[2]=e[t+2],Yt[3]=e[t+3],Yt[4]=e[t+4],Yt[5]=e[t+5],Yt[6]=e[t+6],Yt[7]=e[t+7],oa[0]}var dg=BigInt(Number.MAX_SAFE_INTEGER),pg=BigInt(Number.MIN_SAFE_INTEGER),re=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Cr;if(t<dg&&t>pg)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,i=t-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>uu&&(i=0n,++n>uu&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Cr;let r=t<0;r&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new e(n,i)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):Cr}},Cr=new re(0,0);Cr.toBigInt=function(){return 0n};Cr.zzEncode=Cr.zzDecode=function(){return this};Cr.length=function(){return 1};var uu=4294967296n;function lu(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function hu(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function sa(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function Ce(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function ji(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var aa=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Ce(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw Ce(this,4);return ji(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Ce(this,4);return ji(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Ce(this,4);let t=au(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw Ce(this,4);let t=fu(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw Ce(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return hu(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Ce(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Ce(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new re(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw Ce(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw Ce(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Ce(this,8);let t=ji(this.buf,this.pos+=4),r=ji(this.buf,this.pos+=4);return new re(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function ca(e){return new aa(e instanceof Uint8Array?e:e.subarray())}function Ir(e,t){let r=ca(e);return t.decode(r)}function fa(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return kt(s);i+s>t&&(n=kt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Tr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function ua(){}var ha=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},yg=fa();function gg(e){return globalThis.Buffer!=null?kt(e):yg(e)}var Mn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Tr(ua,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Tr(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new da((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Kn,10,re.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=re.fromBigInt(t);return this._push(Kn,r.length(),r)}uint64Number(t){let r=re.fromNumber(t);return this._push(Kn,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=re.fromBigInt(t).zzEncode();return this._push(Kn,r.length(),r)}sint64Number(t){let r=re.fromNumber(t).zzEncode();return this._push(Kn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(la,1,t?1:0)}fixed32(t){return this._push(On,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=re.fromBigInt(t);return this._push(On,4,r.lo)._push(On,4,r.hi)}fixed64Number(t){let r=re.fromNumber(t);return this._push(On,4,r.lo)._push(On,4,r.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(su,4,t)}double(t){return this._push(cu,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(la,1,0):this.uint32(r)._push(xg,r,t)}string(t){let r=lu(t);return r!==0?this.uint32(r)._push(sa,r,t):this._push(la,1,0)}fork(){return this.states=new ha(this),this.head=this.tail=new Tr(ua,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Tr(ua,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=gg(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function la(e,t,r){t[r]=e&255}function mg(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var da=class extends Tr{next;constructor(t,r){super(mg,t,r),this.next=void 0}};function Kn(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function On(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function xg(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Mn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(bg,t,e),this},Mn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(vg,t,e),this});function bg(e,t,r){t.set(e,r)}function vg(e,t,r){e.length<40?sa(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(It(e),r)}function pa(){return new Mn}function _r(e,t){let r=pa();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var nn;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(nn||(nn={}));function to(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ya(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return to("enum",nn.VARINT,r,n)}function Lr(e,t){return to("message",nn.LENGTH_DELIMITED,e,t)}var Ct;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(Ct||(Ct={}));var ga;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(ga||(ga={}));(function(e){e.codec=()=>ya(ga)})(Ct||(Ct={}));var Pe;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Ct.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=Ct.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>_r(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Pe||(Pe={}));var ke;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Ct.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=Ct.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>_r(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(ke||(ke={}));var Fn=class{_key;constructor(t){this._key=on(t,en)}async verify(t,r){return nu(this._key,r,t)}marshal(){return this._key}get bytes(){return Pe.encode({Type:Ct.Ed25519,Data:this.marshal()}).subarray()}equals(t){return bt(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Rt.digest(this.bytes);return t}},Rr=class{_key;_publicKey;constructor(t,r){this._key=on(t,Xe),this._publicKey=on(r,en)}async sign(t){return ru(this._key,t)}get public(){return new Fn(this._publicKey)}marshal(){return this._key}get bytes(){return ke.encode({Type:Ct.Ed25519,Data:this.marshal()}).subarray()}equals(t){return bt(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Rt.digest(this.bytes);return t}async id(){let t=Se.digest(this.public.bytes);return mt.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return rn(this.bytes,t);throw new ot(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function wg(e){if(e.length>Xe){e=on(e,Xe+en);let n=e.subarray(0,Xe),i=e.subarray(Xe,e.length);return new Rr(n,i)}e=on(e,Xe);let t=e.subarray(0,Xe),r=e.subarray(en);return new Rr(t,r)}function Eg(e){return e=on(e,en),new Fn(e)}async function Sg(){let{privateKey:e,publicKey:t}=await tu();return new Rr(e,t)}async function pu(e){let{privateKey:t,publicKey:r}=await eu(e);return new Rr(t,r)}function on(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new ot(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var Uw=Zt(Nt(),1),Kw=Zt(Yi(),1),yu=Zt(yt(),1);function Ie(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=ut([new Uint8Array(t-r.length),r])}return nt(r,"base64url")}function oe(e){let t=gu(e);return new yu.default.jsbn.BigInteger(nt(t,"base16"),16)}function gu(e,t){let r=It(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=ut([new Uint8Array(t-r.length),r])}return r}var Bg={"P-256":256,"P-384":384,"P-521":521},Ag=Object.keys(Bg),Yw=Ag.join(" / ");var Ea={};Pt(Ea,{MAX_KEY_SIZE:()=>zn,RsaPrivateKey:()=>sn,RsaPublicKey:()=>Hn,fromJwk:()=>Ug,generateKeyPair:()=>Kg,unmarshalRsaPrivateKey:()=>Pg,unmarshalRsaPublicKey:()=>kg});var qn=Zt(yt(),1);var NE=Zt(wu(),1);function ro(e){if(isNaN(e)||e<=0)throw new ot("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return gr(e)}var pE=Zt(Qi(),1),va=Zt(yt(),1);function Eu(e,t){return t.map(r=>oe(e[r]))}function Su(e){return va.default.pki.setRsaPrivateKey(...Eu(e,["n","e","d","p","q","dp","dq","qi"]))}function Bu(e){return va.default.pki.setRsaPublicKey(...Eu(e,["n","e"]))}var Dr={};Pt(Dr,{jwkToPkcs1:()=>_g,jwkToPkix:()=>Rg,pkcs1ToJwk:()=>Tg,pkixToJwk:()=>Lg});var mE=Zt(Pn(),1),xE=Zt(Qi(),1);var Qe=Zt(yt(),1);function Tg(e){let t=Qe.default.asn1.fromDer(nt(e,"ascii")),r=Qe.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:Ie(r.n),e:Ie(r.e),d:Ie(r.d),p:Ie(r.p),q:Ie(r.q),dp:Ie(r.dP),dq:Ie(r.dQ),qi:Ie(r.qInv),alg:"RS256"}}function _g(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new ot("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Qe.default.pki.privateKeyToAsn1({n:oe(e.n),e:oe(e.e),d:oe(e.d),p:oe(e.p),q:oe(e.q),dP:oe(e.dp),dQ:oe(e.dq),qInv:oe(e.qi)});return It(Qe.default.asn1.toDer(t).getBytes(),"ascii")}function Lg(e){let t=Qe.default.asn1.fromDer(nt(e,"ascii")),r=Qe.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:Ie(r.n),e:Ie(r.e)}}function Rg(e){if(e.n==null||e.e==null)throw new ot("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Qe.default.pki.publicKeyToAsn1({n:oe(e.n),e:oe(e.e)});return It(Qe.default.asn1.toDer(t).getBytes(),"ascii")}async function Au(e){let t=await ee.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await Tu(t);return{privateKey:r[0],publicKey:r[1]}}async function wa(e){let r=[await ee.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Ng(e)],n=await Tu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Cu(e,t){let r=await ee.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ee.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(n,0,n.byteLength)}async function Iu(e,t,r){let n=await ee.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ee.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r)}async function Tu(e){if(e.privateKey==null||e.publicKey==null)throw new ot("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ee.get().subtle.exportKey("jwk",e.privateKey),ee.get().subtle.exportKey("jwk",e.publicKey)])}async function Ng(e){return ee.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function _u(e,t,r,n){let i=t?Bu(e):Su(e),o=nt(Uint8Array.from(r),"ascii"),s=n(o,i);return It(s,"ascii")}function Lu(e,t){return _u(e,!0,t,(r,n)=>n.encrypt(r))}function Ru(e,t){return _u(e,!1,t,(r,n)=>n.decrypt(r))}function no(e){if(e.kty!=="RSA")throw new ot("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new ot("invalid key modulus","ERR_INVALID_KEY_MODULUS");return It(e.n,"base64url").length*8}var zn=8192,Hn=class{_key;constructor(t){this._key=t}async verify(t,r){return Iu(this._key,r,t)}marshal(){return Dr.jwkToPkix(this._key)}get bytes(){return Pe.encode({Type:Ct.RSA,Data:this.marshal()}).subarray()}encrypt(t){return Lu(this._key,t)}equals(t){return bt(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Rt.digest(this.bytes);return t}},sn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return ro(16)}async sign(t){return Cu(this._key,t)}get public(){if(this._publicKey==null)throw new ot("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Hn(this._publicKey)}decrypt(t){return Ru(this._key,t)}marshal(){return Dr.jwkToPkcs1(this._key)}get bytes(){return ke.encode({Type:Ct.RSA,Data:this.marshal()}).subarray()}equals(t){return bt(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Rt.digest(this.bytes);return t}async id(){let t=await this.public.hash();return nt(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new qn.default.util.ByteBuffer(this.marshal()),i=qn.default.asn1.fromDer(n),o=qn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return qn.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return rn(this.bytes,t);throw new ot(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Pg(e){let t=Dr.pkcs1ToJwk(e);if(no(t)>zn)throw new ot("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await wa(t);return new sn(r.privateKey,r.publicKey)}function kg(e){let t=Dr.pkixToJwk(e);if(no(t)>zn)throw new ot("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Hn(t)}async function Ug(e){if(no(e)>zn)throw new ot("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await wa(e);return new sn(t.privateKey,t.publicKey)}async function Kg(e){if(e>zn)throw new ot("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await Au(e);return new sn(t.privateKey,t.publicKey)}var Ca={};Pt(Ca,{Secp256k1PrivateKey:()=>$n,Secp256k1PublicKey:()=>Gn,generateKeyPair:()=>Zg,unmarshalSecp256k1PrivateKey:()=>Wg,unmarshalSecp256k1PublicKey:()=>Yg});function Og(e){let t=wn(e);ce(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:Mg,hexToBytes:Fg}=Ai,Pr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Pr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:Mg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Pr,r=typeof e=="string"?Fg(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Pr._parseInt(r.subarray(2)),{d:s,l:a}=Pr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Je=BigInt(0),he=BigInt(1),OE=BigInt(2),Nu=BigInt(3),ME=BigInt(4);function Vg(e){let t=Og(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let m=p.toAffine();return ze(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=t.fromBytes||(h=>{let p=h.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:m}});function o(h){let{a:p,b:y}=t,m=r.sqr(h),v=r.mul(m,h);return r.add(r.add(v,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Je<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:m,n:v}=t;if(p&&typeof h!="bigint"){if(h instanceof Uint8Array&&(h=Ve(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let x;try{x=typeof h=="bigint"?h:qe(vt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return m&&(x=ct(x,v)),a(x),x}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,m){if(this.px=p,this.py=y,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:y,y:m}=p||{};if(!p||!r.isValid(y)||!r.isValid(m))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let v=x=>r.eql(x,r.ZERO);return v(y)&&v(m)?l.ZERO:new l(y,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(m=>m.pz));return p.map((m,v)=>m.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(vt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let m=r.sqr(y),v=o(p);if(!r.eql(m,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:m,pz:v}=this,{px:x,py:A,pz:S}=p,B=r.eql(r.mul(y,S),r.mul(x,v)),R=r.eql(r.mul(m,S),r.mul(A,v));return B&&R}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,m=r.mul(y,Nu),{px:v,py:x,pz:A}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,_=r.mul(v,v),O=r.mul(x,x),M=r.mul(A,A),U=r.mul(v,x);return U=r.add(U,U),R=r.mul(v,A),R=r.add(R,R),S=r.mul(p,R),B=r.mul(m,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(U,S),R=r.mul(m,R),M=r.mul(p,M),U=r.sub(_,M),U=r.mul(p,U),U=r.add(U,R),R=r.add(_,_),_=r.add(R,_),_=r.add(_,M),_=r.mul(_,U),B=r.add(B,_),M=r.mul(x,A),M=r.add(M,M),_=r.mul(M,U),S=r.sub(S,_),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:m,pz:v}=this,{px:x,py:A,pz:S}=p,B=r.ZERO,R=r.ZERO,_=r.ZERO,O=t.a,M=r.mul(t.b,Nu),U=r.mul(y,x),H=r.mul(m,A),z=r.mul(v,S),Z=r.add(y,m),C=r.add(x,A);Z=r.mul(Z,C),C=r.add(U,H),Z=r.sub(Z,C),C=r.add(y,v);let N=r.add(x,S);return C=r.mul(C,N),N=r.add(U,z),C=r.sub(C,N),N=r.add(m,v),B=r.add(A,S),N=r.mul(N,B),B=r.add(H,z),N=r.sub(N,B),_=r.mul(O,C),B=r.mul(M,z),_=r.add(B,_),B=r.sub(H,_),_=r.add(H,_),R=r.mul(B,_),H=r.add(U,U),H=r.add(H,U),z=r.mul(O,z),C=r.mul(M,C),H=r.add(H,z),z=r.sub(U,z),z=r.mul(O,z),C=r.add(C,z),U=r.mul(H,C),R=r.add(R,U),U=r.mul(N,C),B=r.mul(Z,B),B=r.sub(B,U),U=r.mul(Z,H),_=r.mul(N,_),_=r.add(_,U),new l(B,R,_)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let m=r.invertBatch(y.map(v=>v.pz));return y.map((v,x)=>v.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Je)return y;if(a(p),p===he)return this;let{endo:m}=t;if(!m)return g.unsafeLadder(this,p);let{k1neg:v,k1:x,k2neg:A,k2:S}=m.splitScalar(p),B=y,R=y,_=this;for(;x>Je||S>Je;)x&he&&(B=B.add(_)),S&he&&(R=R.add(_)),_=_.double(),x>>=he,S>>=he;return v&&(B=B.negate()),A&&(R=R.negate()),R=new l(r.mul(R.px,m.beta),R.py,R.pz),B.add(R)}multiply(p){a(p);let y=p,m,v,{endo:x}=t;if(x){let{k1neg:A,k1:S,k2neg:B,k2:R}=x.splitScalar(y),{p:_,f:O}=this.wNAF(S),{p:M,f:U}=this.wNAF(R);_=g.constTimeNegate(A,_),M=g.constTimeNegate(B,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),m=_.add(M),v=O.add(U)}else{let{p:A,f:S}=this.wNAF(y);m=A,v=S}return l.normalizeZ([m,v])[0]}multiplyAndAddUnsafe(p,y,m){let v=l.BASE,x=(S,B)=>B===Je||B===he||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),A=x(this,y).add(x(p,m));return A.is0()?void 0:A}toAffine(p){let{px:y,py:m,pz:v}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(v));let A=r.mul(y,p),S=r.mul(m,p),B=r.mul(v,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return{x:A,y:S}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===he)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=t;return p===he?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ve(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=Ti(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function qg(e){let t=wn(e);return ce(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Du(e){let t=qg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return Je<C&&C<r.ORDER}function a(C){return ct(C,n)}function c(C){return Ci(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=Vg({...t,toBytes(C,N,T){let L=N.toAffine(),w=r.toBytes(L.x),k=ze;return T?k(Uint8Array.from([N.hasEvenY()?2:3]),w):k(Uint8Array.from([4]),w,r.toBytes(L.y))},fromBytes(C){let N=C.length,T=C[0],L=C.subarray(1);if(N===i&&(T===2||T===3)){let w=qe(L);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),V=(K&he)===he;return(T&1)===1!==V&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(L.subarray(0,r.BYTES)),k=r.fromBytes(L.subarray(r.BYTES,2*r.BYTES));return{x:w,y:k}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=C=>Ve(ir(C,t.nByteLength));function h(C){let N=n>>he;return C>N}function p(C){return h(C)?a(-C):C}let y=(C,N,T)=>qe(C.slice(N,T));class m{constructor(N,T,L){this.r=N,this.s=T,this.recovery=L,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=vt("compactSignature",N,T*2),new m(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:L}=Pr.toSig(vt("DER",N));return new m(T,L)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new m(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:L,recovery:w}=this,k=R(vt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let V=w&1?"03":"02",W=f.fromHex(V+g(K)),Y=c(K),et=a(-k*Y),X=a(L*Y),J=f.BASE.multiplyAndAddUnsafe(W,et,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return mr(this.toDERHex())}toDERHex(){return Pr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return mr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=ns(t.n);return X0(t.randomBytes(C),t.n)},precompute(C=8,N=f.BASE){return N._setWindowSize(C),N.multiply(BigInt(3)),N}};function x(C,N=!0){return f.fromPrivateKey(C).toRawBytes(N)}function A(C){let N=C instanceof Uint8Array,T=typeof C=="string",L=(N||T)&&C.length;return N?L===i||L===o:T?L===2*i||L===2*o:C instanceof f}function S(C,N,T=!0){if(A(C))throw new Error("first arg must be private key");if(!A(N))throw new Error("second arg must be public key");return f.fromHex(N).multiply(u(C)).toRawBytes(T)}let B=t.bits2int||function(C){let N=qe(C),T=C.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(C){return a(B(C))},_=vn(t.nBitLength);function O(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Je<=C&&C<_))throw new Error(`bigint expected < 2^${t.nBitLength}`);return ir(C,t.nByteLength)}function M(C,N,T=U){if(["recovered","canonical"].some(dt=>dt in T))throw new Error("sign() legacy options not supported");let{hash:L,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:V}=T;k==null&&(k=!0),C=vt("msgHash",C),K&&(C=vt("prehashed msgHash",L(C)));let W=R(C),Y=u(N),et=[O(Y),O(W)];if(V!=null){let dt=V===!0?w(r.BYTES):V;et.push(vt("extraEntropy",dt))}let X=ze(...et),J=W;function gt(dt){let qt=B(dt);if(!d(qt))return;let Ht=c(qt),Dt=f.BASE.multiply(qt).toAffine(),Gt=a(Dt.x);if(Gt===Je)return;let Oe=a(Ht*a(J+Gt*Y));if(Oe===Je)return;let dr=(Dt.x===Gt?0:2)|Number(Dt.y&he),yn=Oe;return k&&h(Oe)&&(yn=p(Oe),dr^=1),new m(Gt,yn,dr)}return{seed:X,k2sig:gt}}let U={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(C,N,T=U){let{seed:L,k2sig:w}=M(C,N,T),k=t;return Jo(k.hash.outputLen,k.nByteLength,k.hmac)(L,w)}f.BASE._setWindowSize(8);function Z(C,N,T,L=H){let w=C;if(N=vt("msgHash",N),T=vt("publicKey",T),"strict"in L)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=L,V,W;try{if(typeof w=="string"||w instanceof Uint8Array)try{V=m.fromDER(w)}catch(Dt){if(!(Dt instanceof Pr.Err))throw Dt;V=m.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Dt,s:Gt}=w;V=new m(Dt,Gt)}else throw new Error("PARSE");W=f.fromHex(T)}catch(Dt){if(Dt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&V.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:et}=V,X=R(N),J=c(et),gt=a(X*J),dt=a(Y*J),qt=f.BASE.multiplyAndAddUnsafe(W,gt,dt)?.toAffine();return qt?a(qt.x)===Y:!1}return{CURVE:t,getPublicKey:x,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:m,utils:v}}function Hg(e){return{hash:e,hmac:(t,...r)=>zr(e,t,vi(...r)),randomBytes:gr}}function Pu(e,t){let r=n=>Du({...e,...Hg(n)});return Object.freeze({...r(t),create:r})}var Ku=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),ku=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),zg=BigInt(1),Sa=BigInt(2),Uu=(e,t)=>(e+t/Sa)/t;function Gg(e){let t=Ku,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=wt(u,r,t)*u%t,d=wt(l,r,t)*u%t,g=wt(d,Sa,t)*f%t,h=wt(g,i,t)*g%t,p=wt(h,o,t)*h%t,y=wt(p,a,t)*p%t,m=wt(y,c,t)*y%t,v=wt(m,a,t)*p%t,x=wt(v,r,t)*u%t,A=wt(x,s,t)*h%t,S=wt(A,n,t)*f%t,B=wt(S,Sa,t);if(!Ba.eql(Ba.sqr(B),e))throw new Error("Cannot find square root");return B}var Ba=Ii(Ku,void 0,void 0,{sqrt:Gg}),je=Pu({a:BigInt(0),b:BigInt(7),Fp:Ba,n:ku,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=ku,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-zg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Uu(o*e,t),c=Uu(-n*e,t),f=ct(e-a*r-c*i,t),u=ct(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Gr),YE=BigInt(0);var ZE=je.ProjectivePoint;function Ou(){return je.utils.randomPrivateKey()}async function Mu(e,t){let{digest:r}=await Rt.digest(t);try{return je.sign(r,e).toDERRawBytes()}catch(n){throw new ot(String(n),"ERR_INVALID_INPUT")}}async function Fu(e,t,r){try{let{digest:n}=await Rt.digest(r);return je.verify(t,n,e)}catch(n){throw new ot(String(n),"ERR_INVALID_INPUT")}}function Vu(e){return je.ProjectivePoint.fromHex(e).toRawBytes(!0)}function qu(e){try{je.getPublicKey(e,!0)}catch(t){throw new ot(String(t),"ERR_INVALID_PRIVATE_KEY")}}function Aa(e){try{je.ProjectivePoint.fromHex(e)}catch(t){throw new ot(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Hu(e){try{return je.getPublicKey(e,!0)}catch(t){throw new ot(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Gn=class{_key;constructor(t){Aa(t),this._key=t}async verify(t,r){return Fu(this._key,r,t)}marshal(){return Vu(this._key)}get bytes(){return Pe.encode({Type:Ct.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return bt(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Rt.digest(this.bytes);return t}},$n=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Hu(t),qu(this._key),Aa(this._publicKey)}async sign(t){return Mu(this._key,t)}get public(){return new Gn(this._publicKey)}marshal(){return this._key}get bytes(){return ke.encode({Type:Ct.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return bt(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Rt.digest(this.bytes);return t}async id(){let t=await this.public.hash();return nt(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return rn(this.bytes,t);throw new ot(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Wg(e){return new $n(e)}function Yg(e){return new Gn(e)}async function Zg(){let e=Ou();return new $n(e)}var kr={rsa:Ea,ed25519:ma,secp256k1:Ca};function zu(e){let t=Object.keys(kr).join(" / ");return new ot(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Gu(e){let t=Pe.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Ct.RSA:return kr.rsa.unmarshalRsaPublicKey(r);case Ct.Ed25519:return kr.ed25519.unmarshalEd25519PublicKey(r);case Ct.Secp256k1:return kr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw zu(t.Type??"unknown")}}async function $u(e){let t=ke.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Ct.RSA:return kr.rsa.unmarshalRsaPrivateKey(r);case Ct.Ed25519:return kr.ed25519.unmarshalEd25519PrivateKey(r);case Ct.Secp256k1:return kr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw zu(t.Type??"RSA")}}var Wu=Symbol.for("@libp2p/peer-id");var Qg=Symbol.for("nodejs.util.inspect.custom"),Yu=Object.values(ie).map(e=>e.decoder).reduce((e,t)=>e.or(t),ie.identity.decoder),Zu=114,Ia=36,Ta=37,Wn=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Wu]=!0;toString(){return this.string==null&&(this.string=mt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return jt.createV1(Zu,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return bt(this.multihash.bytes,t);if(typeof t=="string")return Jg(t).equals(this);if(t?.multihash?.bytes!=null)return bt(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[Qg](){return`PeerId(${this.toString()})`}},an=class extends Wn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},cn=class extends Wn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},fn=class extends Wn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function Jg(e,t){if(t=t??Yu,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=we(mt.decode(`z${e}`));return e.startsWith("12D")?new cn({multihash:r}):e.startsWith("16U")?new fn({multihash:r}):new an({multihash:r})}return jg(Yu.decode(e))}function jg(e){try{let t=we(e);if(t.code===Se.code){if(t.digest.length===Ia)return new cn({multihash:t});if(t.digest.length===Ta)return new fn({multihash:t})}if(t.code===Rt.code)return new an({multihash:t})}catch{return tm(jt.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function tm(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Zu)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Rt.code)return new an({multihash:e.multihash});if(t.code===Se.code){if(t.digest.length===Ia)return new cn({multihash:e.multihash});if(t.digest.length===Ta)return new fn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function _a(e,t){return e.length===Ia?new cn({multihash:fe(Se.code,e),privateKey:t}):e.length===Ta?new fn({multihash:fe(Se.code,e),privateKey:t}):new an({multihash:await Rt.digest(e),publicKey:e,privateKey:t})}var io;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>_r(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(io||(io={}));var Yn;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.identityKey!=null&&r.identityKey.byteLength>0&&(n.uint32(10),n.bytes(r.identityKey)),r.identitySig!=null&&r.identitySig.byteLength>0&&(n.uint32(18),n.bytes(r.identitySig)),r.extensions!=null&&(n.uint32(34),io.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:rt(0),identitySig:rt(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=io.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>_r(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Yn||(Yn={}));async function Xu(e,t,r){let n=await rm(e,Qu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return em(e.publicKey,n,r)}function em(e,t,r){return Yn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function rm(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await $u(e.privateKey)).sign(t)}async function La(e){return _a(e.identityKey)}function Ra(e){return Yn.decode(e)}function Qu(e){let t=It("noise-libp2p-static-key:");return ut([t,e],t.length+e.length)}async function Na(e,t,r){let n=await _a(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Qu(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await Gu(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Zn(e){return!(!(e instanceof Uint8Array)||e.length!==32)}var ae=Zt(rl(),1);ae.default.formatters.b=e=>e==null?"undefined":mt.baseEncode(e);ae.default.formatters.t=e=>e==null?"undefined":ve.baseEncode(e);ae.default.formatters.m=e=>e==null?"undefined":Wr.baseEncode(e);ae.default.formatters.p=e=>e==null?"undefined":e.toString();ae.default.formatters.c=e=>e==null?"undefined":e.toString();ae.default.formatters.k=e=>e==null?"undefined":e.toString();ae.default.formatters.a=e=>e==null?"undefined":e.toString();function ym(e){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=e,t.destroy=()=>!0,t.extend=()=>t,t}function nl(e){let t=ym(`${e}:trace`);return ae.default.enabled(`${e}:trace`)&&ae.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(t=(0,ae.default)(`${e}:trace`)),Object.assign((0,ae.default)(e),{error:(0,ae.default)(`${e}:error`),trace:t})}var Vt=nl("libp2p:noise");var de;I0?de=Vt:de=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function il(e){de(`LOCAL_STATIC_PUBLIC_KEY ${nt(e.publicKey,"hex")}`),de(`LOCAL_STATIC_PRIVATE_KEY ${nt(e.privateKey,"hex")}`)}function Da(e){e?(de(`LOCAL_PUBLIC_EPHEMERAL_KEY ${nt(e.publicKey,"hex")}`),de(`LOCAL_PRIVATE_EPHEMERAL_KEY ${nt(e.privateKey,"hex")}`)):de("Missing local ephemeral keys.")}function ol(e){de(`REMOTE_STATIC_PUBLIC_KEY ${nt(e,"hex")}`)}function Pa(e){de(`REMOTE_EPHEMERAL_PUBLIC_KEY ${nt(e,"hex")}`)}function sl(e){e.cs1&&e.cs2?(de(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${nt(e.cs1.k,"hex")}`),de(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${nt(e.cs2.k,"hex")}`)):de("Missing cipher state.")}var gm=0,mm=4294967295,xm="Cipherstate has reached maximum n, a new handshake must be performed",ao=class{n;bytes;view;constructor(t=gm){this.n=t,this.bytes=rt(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>mm)throw new Error(xm)}};var co=class{crypto;constructor(t){this.crypto=t}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return rt(32)}isEmptyKey(t){let r=this.createEmptyKey();return bt(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:rt(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Vt.error(i),rt(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(ut([t,r],t.length+r.length))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new ao}}initializeSymmetric(t){let r=It(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=rt(32);return r.set(t),r}else return this.getHash(t,rt(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,rt(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,rt(0),r),i=this.createEmptyKey(),o=rt(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,rt(0),r.ciphertext)}};var fo=class extends co{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=rt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=rt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=rt(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Zn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Zn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);i&&Zn(n)&&(t.rs=n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(t,r){let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);if(i&&Zn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=rt(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=rt(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};var uo=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(t,r,n,i,o,s,a,c){this.isInitiator=t,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new fo(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(il(this.session.hs.s),this.isInitiator){Vt.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,rt(0));await this.connection.write(Ic(t)),Vt.trace("Stage 0 - Initiator finished sending first message."),Da(this.session.hs.e)}else{Vt.trace("Stage 0 - Responder waiting to receive first message...");let t=Lc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new vr("xx handshake stage 0 validation fail");Vt.trace("Stage 0 - Responder received first message."),Pa(this.session.hs.re)}}async exchange(){if(this.isInitiator){Vt.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=Rc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new vr("xx handshake stage 1 validation fail");Vt.trace("Stage 1 - Initiator received the message."),Pa(this.session.hs.re),ol(this.session.hs.rs),Vt.trace("Initiator going to check remote's signature...");try{let i=Ra(r);this.remotePeer=this.remotePeer||await La(i),await Na(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ln(`Error occurred while verifying signed payload: ${o.message}`)}Vt.trace("All good with the signature!")}else{Vt.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Tc(t)),Vt.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Da(this.session.hs.e)}}async finish(){if(this.isInitiator){Vt.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(_c(t)),Vt.trace("Stage 2 - Initiator sent message with signed payload.")}else{Vt.trace("Stage 2 - Responder waiting for third handshake message...");let t=Nc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new vr("xx handshake stage 2 validation fail");Vt.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Ra(r);this.remotePeer=this.remotePeer||await La(i),await Na(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ln(`Error occurred while verifying signed payload: ${o.message}`)}}sl(this.session)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,rt(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,rt(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new vr("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function al(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var lo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(t={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=t;this.crypto=i??ac,this.extensions=n,this.metrics=s?al(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??rt(0)}async secureOutbound(t,r,n){let i=Do(r,{lengthEncoder:Xr,lengthDecoder:Tn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=Do(r,{lengthEncoder:Xr,lengthDecoder:Tn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await Xu(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new uo(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=E0(),o=t.unwrap();return await B0(n,kc(r,this.metrics),o,s=>xn(s,{lengthDecoder:Tn}),Uc(r,this.metrics),n),i}};function cl(e={}){return()=>new lo(e)}var R4=Symbol.for("@libp2p/connection");var D4=Symbol.for("@libp2p/content-routing");var U4=Symbol.for("@libp2p/peer-discovery");var fl=Symbol.for("@libp2p/peer-id");var M4=Symbol.for("@libp2p/peer-routing");var ul;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(ul||(ul={}));var hl=Symbol.for("@libp2p/transport");var ll;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(ll||(ll={}));var Xn=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var ka=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},Y4=globalThis.CustomEvent??ka;var ho=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(o*=t,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=t(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var dl=45,bm=15,dn=new ho;function Ua(e){if(!(e.length>bm))return dn.new(e).parseWith(()=>dn.readIPv4Addr())}function Ka(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>dl))return dn.new(e).parseWith(()=>dn.readIPv6Addr())}function po(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>dl))return dn.new(e).parseWith(()=>dn.readIPAddr())}function yo(e){return!!Ua(e)}function go(e){return!!Ka(e)}function mo(e){return!!po(e)}var xo=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var R3=parseInt("0xFFFF",16),N3=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);var gl=yo,Bm=go,Oa=function(e){let t=0;if(e=e.toString().trim(),gl(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Bm(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=gl(r[n]),s;o&&(s=Oa(r[n]),r[n]=nt(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,nt(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},ml=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var pn={},Ma={},Cm=[[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"]];Cm.forEach(e=>{let t=Im(...e);Ma[t.code]=t,pn[t.name]=t});function Im(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function ht(e){if(typeof e=="number"){if(Ma[e]!=null)return Ma[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(pn[e]!=null)return pn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var dS=ht("ip4"),pS=ht("ip6"),yS=ht("ipcidr");function Va(e,t){switch(ht(e).code){case 4:case 41:return _m(t);case 42:return vl(t);case 6:case 273:case 33:case 132:return El(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return vl(t);case 421:return Dm(t);case 444:return wl(t);case 445:return wl(t);case 466:return Nm(t);default:return nt(t,"base16")}}function qa(e,t){switch(ht(e).code){case 4:return xl(t);case 41:return xl(t);case 42:return bl(t);case 6:case 273:case 33:case 132:return Ha(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return bl(t);case 421:return Lm(t);case 444:return Pm(t);case 445:return km(t);case 466:return Rm(t);default:return It(t,"base16")}}var Fa=Object.values(ie).map(e=>e.decoder),Tm=function(){let e=Fa[0].or(Fa[1]);return Fa.slice(2).forEach(t=>e=e.or(t)),e}();function xl(e){if(!mo(e))throw new Error("invalid ip address");return Oa(e)}function _m(e){let t=ml(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!mo(t))throw new Error("invalid ip address");return t}function Ha(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function El(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function bl(e){let t=It(e),r=Uint8Array.from(tr(t.length));return ut([r,t],r.length+t.length)}function vl(e){let t=ye(e);if(e=e.slice(Wt(t)),e.length!==t)throw new Error("inconsistent lengths");return nt(e)}function Lm(e){let t;e[0]==="Q"||e[0]==="1"?t=we(mt.decode(`z${e}`)).bytes:t=jt.parse(e).multihash.bytes;let r=Uint8Array.from(tr(t.length));return ut([r,t],r.length+t.length)}function Rm(e){let t=Tm.decode(e),r=Uint8Array.from(tr(t.length));return ut([r,t],r.length+t.length)}function Nm(e){let t=ye(e),r=e.slice(Wt(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+nt(r,"base64url")}function Dm(e){let t=ye(e),r=e.slice(Wt(t));if(r.length!==t)throw new Error("inconsistent lengths");return nt(r,"base58btc")}function Pm(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=ve.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ha(n);return ut([r,i],r.length+i.length)}function km(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=ve.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ha(n);return ut([r,i],r.length+i.length)}function wl(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=nt(t,"base32"),i=El(r);return`${n}:${i}`}function Sl(e){e=za(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ht(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Al("invalid address: "+e);if(a.path===!0){n=za(i.slice(o).join("/")),t.push([a.code,qa(a.code,n)]),r.push([a.code,n]);break}let c=qa(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Va(a.code,c)])}return{string:Bl(r),bytes:$a(t),tuples:t,stringTuples:r,path:n}}function Ga(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=ye(e,i),s=Wt(o),a=ht(o),c=Um(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let f=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw Al("Invalid address Uint8Array: "+nt(e,"base16"));t.push([o,f]);let u=Va(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:Bl(r),tuples:t,stringTuples:r,path:n}}function Bl(e){let t=[];return e.map(r=>{let n=ht(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),za(t.join("/"))}function $a(e){return ut(e.map(t=>{let r=ht(t[0]),n=Uint8Array.from(tr(r.code));return t.length>1&&t[1]!=null&&(n=ut([n,t[1]])),n}))}function Um(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=ye(t instanceof Uint8Array?t:Uint8Array.from(t));return r+Wt(r)}}function za(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function Al(e){return new Error("Error parsing address: "+e)}var Km=Symbol.for("nodejs.util.inspect.custom"),Ya=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Om=[ht("dns").code,ht("dns4").code,ht("dns6").code,ht("dnsaddr").code],Wa=class e{bytes;#e;#t;#r;#n;[Ya]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Ga(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=Sl(t)}else if(Il(t))r=Ga(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,r,n,i,o="",s=ht("tcp"),a=ht("udp"),c=ht("ip4"),f=ht("ip6"),u=ht("dns6"),l=ht("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),Om.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=ht(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=ht(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},ht(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>ht(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e($a(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===pn.p2p.code&&t.push([n,i]),n===pn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?nt(mt.decode(`z${n}`),"base58btc"):nt(jt.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return bt(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=Cl.get(r.name);if(n==null)throw new xo(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[Km](){return`Multiaddr(${this.#e})`}};var Cl=new Map;function Il(e){return!!e?.[Ya]}var Mm=e=>e.toString().split("/").slice(1),Qn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),_t=e=>({match:t=>Qn(r=>r===e).match(t),pattern:e}),wo=()=>({match:e=>Qn(t=>typeof t=="string").match(e),pattern:"{string}"}),Tl=()=>({match:e=>Qn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),pe=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{mt.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),bo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Es.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Ue=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),Ke=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),Lt=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Kt(...e){function t(i){let o=Mm(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Xa=Lt(_t("dns4"),wo()),Qa=Lt(_t("dns6"),wo()),Ja=Lt(_t("dnsaddr"),wo()),_l=Lt(_t("dns"),wo()),GS=Kt(Xa),$S=Kt(Qa),WS=Kt(Ja),YS=Kt(Ke(_l,Ja,Xa,Qa)),Ll=Lt(_t("ip4"),Qn(yo)),Rl=Lt(_t("ip6"),Qn(go)),Nl=Ke(Ll,Rl),Jn=Ke(Nl,_l,Xa,Qa,Ja),ZS=Kt(Jn),XS=Kt(Ll),QS=Kt(Rl),JS=Kt(Nl),Eo=Lt(Jn,_t("tcp"),Tl()),jn=Lt(Jn,_t("udp"),Tl()),Fm=Ke(Eo,jn),jS=Kt(Eo),t6=Kt(jn),ja=Lt(jn,_t("quic")),So=Lt(jn,_t("quic-v1")),Vm=Ke(ja,So),e6=Kt(ja),r6=Kt(So),Za=Ke(Jn,Eo,jn,ja,So),Dl=Ke(Lt(Za,_t("ws"),Ue(pe()))),n6=Kt(Dl),Pl=Ke(Lt(Za,_t("wss"),Ue(pe())),Lt(Za,_t("tls"),_t("ws"),Ue(pe()))),i6=Kt(Pl),kl=Lt(Fm,_t("webrtc-direct"),bo(),Ue(bo()),Ue(pe())),o6=Kt(kl),Ul=Lt(So,_t("webtransport"),bo(),bo(),Ue(pe())),Bo=Kt(Ul),vo=Ke(Dl,Pl,Lt(Eo,Ue(pe())),Lt(Vm,Ue(pe())),Lt(Jn,Ue(pe())),kl,Ul,pe()),s6=Kt(vo),qm=Lt(vo,_t("p2p-circuit"),pe()),a6=Kt(qm),Hm=Ke(Lt(vo,_t("p2p-circuit"),_t("webrtc"),pe()),Lt(vo,_t("webrtc"),Ue(pe())),_t("webrtc")),c6=Kt(Hm);async function t0(e,t,r,n,i,o){let s=o.forComponent(`libp2p:webtransport:stream:${r}:${t}`),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Jt(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}},log:s};return g}function e0(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function Kl(e,t){return t.filter(n=>!!e.find(i=>bt(n,i))).length===t.length}var zm=Symbol.for("nodejs.util.inspect.custom"),Ol=Object.values(ie).map(e=>e.decoder).reduce((e,t)=>e.or(t),ie.identity.decoder),Ml=114,Fl=36,Vl=37,ti=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[fl]=!0;toString(){return this.string==null&&(this.string=mt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return jt.createV1(Ml,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return bt(this.multihash.bytes,t);if(typeof t=="string")return r0(t).equals(this);if(t?.multihash?.bytes!=null)return bt(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[zm](){return`PeerId(${this.toString()})`}},ei=class extends ti{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},ri=class extends ti{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},ni=class extends ti{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function r0(e,t){if(t=t??Ol,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=we(mt.decode(`z${e}`));return e.startsWith("12D")?new ri({multihash:r}):e.startsWith("16U")?new ni({multihash:r}):new ei({multihash:r})}return Gm(Ol.decode(e))}function Gm(e){try{let t=we(e);if(t.code===Se.code){if(t.digest.length===Fl)return new ri({multihash:t});if(t.digest.length===Vl)return new ni({multihash:t})}if(t.code===Rt.code)return new ei({multihash:t})}catch{return $m(jt.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function $m(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Ml)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Rt.code)return new ei({multihash:e.multihash});if(t.code===Se.code){if(t.digest.length===Fl)return new ri({multihash:e.multihash});if(t.digest.length===Vl)return new ni({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}var Wm=Object.values(ie).map(e=>e.decoder).reduce((e,t)=>e.or(t));function Ym(e){return Ee.decode(Wm.decode(e))}function ql(e){if(!Bo.matches(e))throw new Xn("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===ht("certhash").code).map(([s,a])=>Ym(a??"")),n=t.filter(([s,a])=>s===ht("p2p").code).map(([s,a])=>r0(a??""))[0],i=e.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var n0=class{log;components;config;metrics;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webtransport"),this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[hl]=!0;async dial(t,r){r?.signal?.throwIfAborted(),this.log("dialing %s",t);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=ql(t);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},log:this.components.logger.forComponent("libp2p:webtransport:maconn"),...e0()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let d of l)d instanceof Uint8Array?await s.write(d):await s.write(d.subarray())}},f=cl()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{this.log.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{this.log.error(`Failed to close authentication stream reader: ${l.message}`)}),!Kl(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await t0(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await t0(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...e0()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(Bo.exactMatch)}};function Zm(e={}){return t=>new n0(t,e)}return rh(Xm);})();
|
|
15
|
+
`+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function Rd(e){return e.replace(/^\s+/,"")}});var Uc=yt((W2,kc)=>{var Ee=dt();mr();Nt();var Nc=kc.exports=Ee.sha256=Ee.sha256||{};Ee.md.sha256=Ee.md.algorithms.sha256=Nc;Nc.create=function(){Pc||Nd();var e=null,t=Ee.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Ee.util.createBuffer(),e={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ee.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),Rc(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ee.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(us.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};Rc(l,r,i);var d=Ee.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var us=null,Pc=!1,Dc=null;function Nd(){us="\x80",us+=Ee.util.fillString("\0",64),Dc=[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],Pc=!0}function Rc(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v=r.length();v>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)n=t[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[f]=n+t[f-7]+i+t[f-16]|0;for(u=e.h0,l=e.h1,d=e.h2,g=e.h3,h=e.h4,p=e.h5,y=e.h6,x=e.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=x+s+a+Dc[f]+t[f],i=o+c,x=y,y=p,p=h,h=g+n>>>0,g=d,d=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+g|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+x|0,v-=64}}});var Oc=yt(($2,Kc)=>{var Se=dt();Nt();var Ri=null;Se.util.isNodejs&&!Se.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Ri=Ti());var Pd=Kc.exports=Se.prng=Se.prng||{};Pd.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(f,u){if(!u)return t.generateSync(f);var l=t.plugin.cipher,d=t.plugin.increment,g=t.plugin.formatKey,h=t.plugin.formatSeed,p=Se.util.createBuffer();t.key=null,y();function y(x){if(x)return u(x);if(p.length()>=f)return u(null,p.getBytes(f));if(t.generated>1048575&&(t.key=null),t.key===null)return Se.util.nextTick(function(){o(y)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=g(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Se.util.setImmediate(y)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,g=t.plugin.formatSeed;t.key=null;for(var h=Se.util.createBuffer();h.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(u(t.key,l(t.seed))),t.seed=g(u(t.key,t.seed))}return h.getBytes(f)};function o(f){if(t.pools[0].messageLength>=32)return a(),f();var u=32-t.pools[0].messageLength<<5;t.seedFile(u,function(l,d){if(l)return f(l);t.collect(d),a(),f()})}function s(){if(t.pools[0].messageLength>=32)return a();var f=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(f)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var f=t.plugin.md.create();f.update(t.keyBytes);for(var u=1,l=0;l<32;++l)t.reseeds%u===0&&(f.update(t.pools[l].digest().getBytes()),t.pools[l].start()),u=u<<1;t.keyBytes=f.digest().getBytes(),f.start(),f.update(t.keyBytes);var d=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(f){var u=null,l=Se.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(S){return d.getRandomValues(S)});var g=Se.util.createBuffer();if(u)for(;g.length()<f;){var h=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(g.length()<f)for(var x,v,m,I=Math.floor(Math.random()*65536);g.length()<f;){v=16807*(I&65535),x=16807*(I>>16),v+=(x&32767)<<16,v+=x>>15,v=(v&2147483647)+(v>>31),I=v&4294967295;for(var y=0;y<3;++y)m=I>>>(y<<3),m^=Math.floor(Math.random()*256),g.putByte(m&255)}return g.getBytes(f)}return Ri?(t.seedFile=function(f,u){Ri.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Ri.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,d){function g(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(g,h){f.postMessage({forge:{prng:{err:g,bytes:h}}})})};f.addEventListener("message",u)}},t}});var In=yt((Y2,ls)=>{var Vt=dt();fs();Uc();Oc();Nt();(function(){if(Vt.random&&Vt.random.getBytes){ls.exports=Vt.random;return}(function(e){var t={},r=new Array(4),n=Vt.util.createBuffer();t.formatKey=function(l){var d=Vt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Vt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Vt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return Vt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Vt.md.sha256;function i(){var l=Vt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=Vt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Vt.options.usePureJavaScript||!Vt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Vt.random)Vt.random=o;else for(var u in o)Vt.random[u]=o[u];Vt.random.createInstance=i,ls.exports=Vt.random})(typeof jQuery<"u"?jQuery:null)})()});var qc=yt((Z2,Fc)=>{var Jt=dt();Nt();var hs=[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],Mc=[1,2,3,5],Dd=function(e,t){return e<<t&65535|(e&65535)>>16-t},kd=function(e,t){return(e&65535)>>t|e<<16-t&65535};Fc.exports=Jt.rc2=Jt.rc2||{};Jt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Jt.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(hs[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,hs[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,hs[r.at(a+1)^r.at(a+o)]);return r};var Vc=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Jt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=Dd(h[f],Mc[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=kd(h[f],Mc[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var x=0;x<h.length;x++)for(var v=0;v<h[x][0];v++)h[x][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(h,p){h&&typeof h=="string"&&(h=Jt.util.createBuffer(h)),n=!1,i=Jt.util.createBuffer(),o=p||new Jt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var x=o.length(),v=o.at(x-1);v>x?p=!1:o.truncate(v)}return p}},g};Jt.rc2.startEncrypting=function(e,t,r){var n=Jt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createEncryptionCipher=function(e,t){return Vc(e,t,!0)};Jt.rc2.startDecrypting=function(e,t,r){var n=Jt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createDecryptionCipher=function(e,t){return Vc(e,t,!1)}});var Di=yt((X2,Xc)=>{var ds=dt();Xc.exports=ds.jsbn=ds.jsbn||{};var He,Ud=0xdeadbeefcafe,Hc=(Ud&16777215)==15715070;function P(e,t,r){this.data=[],e!=null&&(typeof e=="number"?this.fromNumber(e,t,r):t==null&&typeof e!="string"?this.fromString(e,256):this.fromString(e,t))}ds.jsbn.BigInteger=P;function at(){return new P(null)}function Kd(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Od(e,t,r,n,i,o){for(var s=t&32767,a=t>>15;--o>=0;){var c=this.data[e]&32767,f=this.data[e++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function zc(e,t,r,n,i,o){for(var s=t&16383,a=t>>14;--o>=0;){var c=this.data[e]&16383,f=this.data[e++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(P.prototype.am=zc,He=28):Hc&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=Od,He=30):Hc&&navigator.appName!="Netscape"?(P.prototype.am=Kd,He=26):(P.prototype.am=zc,He=28);P.prototype.DB=He;P.prototype.DM=(1<<He)-1;P.prototype.DV=1<<He;var ps=52;P.prototype.FV=Math.pow(2,ps);P.prototype.F1=ps-He;P.prototype.F2=2*He-ps;var Md="0123456789abcdefghijklmnopqrstuvwxyz",Ni=new Array,$r,ie;$r=48;for(ie=0;ie<=9;++ie)Ni[$r++]=ie;$r=97;for(ie=10;ie<36;++ie)Ni[$r++]=ie;$r=65;for(ie=10;ie<36;++ie)Ni[$r++]=ie;function Gc(e){return Md.charAt(e)}function Wc(e,t){var r=Ni[e.charCodeAt(t)];return r??-1}function Vd(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function Fd(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0}function ir(e){var t=at();return t.fromInt(e),t}function qd(e,t){var r;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(e,t);return}this.t=0,this.s=0;for(var n=e.length,i=!1,o=0;--n>=0;){var s=r==8?e[n]&255:Wc(e,n);if(s<0){e.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&e[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&P.ZERO.subTo(this,this)}function Hd(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function zd(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<<t)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=Gc(n));s>=0;)a<t?(n=(this.data[s]&(1<<a)-1)<<t-a,n|=this.data[--s]>>(a+=this.DB-t)):(n=this.data[s]>>(a-=t)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=Gc(n));return i?o:"0"}function Gd(){var e=at();return P.ZERO.subTo(this,e),e}function Wd(){return this.s<0?this.negate():this}function $d(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this.data[r]-e.data[r])!=0)return t;return 0}function Pi(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function Yd(){return this.t<=0?0:this.DB*(this.t-1)+Pi(this.data[this.t-1]^this.s&this.DM)}function Zd(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s}function Xd(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function Qd(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function Jd(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function jd(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function tp(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&P.ZERO.subTo(t,t)}function ep(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e.data[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t.data[r],e,2*r,0,1);(e.data[r+t.t]+=t.am(r+1,2*t.data[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()}function rp(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=at());var o=at(),s=this.s,a=e.s,c=this.DB-Pi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,x=t??at();for(o.dlShiftTo(y,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),P.ONE.dlShiftTo(f,x),x.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,x),r.subTo(x,r);r.data[p]<--v;)r.subTo(x,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&P.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function np(e){var t=at();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(P.ZERO)>0&&e.subTo(t,t),t}function br(e){this.m=e}function ip(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function op(e){return e}function sp(e){e.divRemTo(this.m,null,e)}function ap(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function cp(e,t){e.squareTo(t),this.reduce(t)}br.prototype.convert=ip;br.prototype.revert=op;br.prototype.reduce=sp;br.prototype.mulTo=ap;br.prototype.sqrTo=cp;function fp(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function vr(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function up(e){var t=at();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(P.ZERO)>0&&this.m.subTo(t,t),t}function lp(e){var t=at();return e.copyTo(t),this.reduce(t),t}function hp(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=e.data[t]&32767,n=r*this.mpl+((r*this.mph+(e.data[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function dp(e,t){e.squareTo(t),this.reduce(t)}function pp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}vr.prototype.convert=up;vr.prototype.revert=lp;vr.prototype.reduce=hp;vr.prototype.mulTo=pp;vr.prototype.sqrTo=dp;function yp(){return(this.t>0?this.data[0]&1:this.s)==0}function gp(e,t){if(e>4294967295||e<1)return P.ONE;var r=at(),n=at(),i=t.convert(this),o=Pi(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function xp(e,t){var r;return e<256||t.isEven()?r=new br(t):r=new vr(t),this.exp(e,r)}P.prototype.copyTo=Vd;P.prototype.fromInt=Fd;P.prototype.fromString=qd;P.prototype.clamp=Hd;P.prototype.dlShiftTo=Zd;P.prototype.drShiftTo=Xd;P.prototype.lShiftTo=Qd;P.prototype.rShiftTo=Jd;P.prototype.subTo=jd;P.prototype.multiplyTo=tp;P.prototype.squareTo=ep;P.prototype.divRemTo=rp;P.prototype.invDigit=fp;P.prototype.isEven=yp;P.prototype.exp=gp;P.prototype.toString=zd;P.prototype.negate=Gd;P.prototype.abs=Wd;P.prototype.compareTo=$d;P.prototype.bitLength=Yd;P.prototype.mod=np;P.prototype.modPowInt=xp;P.ZERO=ir(0);P.ONE=ir(1);function mp(){var e=at();return this.copyTo(e),e}function bp(){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 vp(){return this.t==0?this.s:this.data[0]<<24>>24}function wp(){return this.t==0?this.s:this.data[0]<<16>>16}function Ep(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Sp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Bp(e){if(e==null&&(e=10),this.signum()==0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=ir(r),i=at(),o=at(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function Ap(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,o=0,s=0,a=0;a<e.length;++a){var c=Wc(e,a);if(c<0){e.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=t*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(t,o)),this.dAddOffset(s,0)),i&&P.ZERO.subTo(this,this)}function Ip(e,t,r){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(P.ONE.shiftLeft(e-1),ys,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(P.ONE.shiftLeft(e-1),this);else{var n=new Array,i=e&7;n.length=(e>>3)+1,t.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function Cp(){var e=this.t,t=new Array;t[0]=this.s;var r=this.DB-e*this.DB%8,n,i=0;if(e-- >0)for(r<this.DB&&(n=this.data[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<<this.DB-r);e>=0;)r<8?(n=(this.data[e]&(1<<r)-1)<<8-r,n|=this.data[--e]>>(r+=this.DB-8)):(n=this.data[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function Tp(e){return this.compareTo(e)==0}function _p(e){return this.compareTo(e)<0?this:e}function Lp(e){return this.compareTo(e)>0?this:e}function Rp(e,t,r){var n,i,o=Math.min(e.t,this.t);for(n=0;n<o;++n)r.data[n]=t(this.data[n],e.data[n]);if(e.t<this.t){for(i=e.s&this.DM,n=o;n<this.t;++n)r.data[n]=t(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<e.t;++n)r.data[n]=t(i,e.data[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()}function Np(e,t){return e&t}function Pp(e){var t=at();return this.bitwiseTo(e,Np,t),t}function ys(e,t){return e|t}function Dp(e){var t=at();return this.bitwiseTo(e,ys,t),t}function $c(e,t){return e^t}function kp(e){var t=at();return this.bitwiseTo(e,$c,t),t}function Yc(e,t){return e&~t}function Up(e){var t=at();return this.bitwiseTo(e,Yc,t),t}function Kp(){for(var e=at(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function Op(e){var t=at();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function Mp(e){var t=at();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function Vp(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function Fp(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+Vp(this.data[e]);return this.s<0?this.t*this.DB:-1}function qp(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function Hp(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=qp(this.data[r]^t);return e}function zp(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function Gp(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function Wp(e){return this.changeBit(e,ys)}function $p(e){return this.changeBit(e,Yc)}function Yp(e){return this.changeBit(e,$c)}function Zp(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]+e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()}function Xp(e){var t=at();return this.addTo(e,t),t}function Qp(e){var t=at();return this.subTo(e,t),t}function Jp(e){var t=at();return this.multiplyTo(e,t),t}function jp(e){var t=at();return this.divRemTo(e,t,null),t}function ty(e){var t=at();return this.divRemTo(e,null,t),t}function ey(e){var t=at(),r=at();return this.divRemTo(e,t,r),new Array(t,r)}function ry(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function ny(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function Cn(){}function Zc(e){return e}function iy(e,t,r){e.multiplyTo(t,r)}function oy(e,t){e.squareTo(t)}Cn.prototype.convert=Zc;Cn.prototype.revert=Zc;Cn.prototype.mulTo=iy;Cn.prototype.sqrTo=oy;function sy(e){return this.exp(e,new Cn)}function ay(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,e.data[n],r,n,0,this.t);for(i=Math.min(e.t,t);n<i;++n)this.am(0,e.data[n],r,n,0,t-n);r.clamp()}function cy(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function Yr(e){this.r2=at(),this.q3=at(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function fy(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=at();return e.copyTo(t),this.reduce(t),t}function uy(e){return e}function ly(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function hy(e,t){e.squareTo(t),this.reduce(t)}function dy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Yr.prototype.convert=fy;Yr.prototype.revert=uy;Yr.prototype.reduce=ly;Yr.prototype.mulTo=dy;Yr.prototype.sqrTo=hy;function py(e,t){var r=e.bitLength(),n,i=ir(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 br(t):t.isEven()?o=new Yr(t):o=new vr(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=at();for(o.sqrTo(s[1],u);a<=f;)s[a]=at(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=at(),p;for(r=Pi(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&f:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[d].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function yy(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function gy(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t==0)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r}function xy(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return P.ZERO;for(var r=e.clone(),n=this.clone(),i=ir(1),o=ir(0),s=ir(0),a=ir(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(P.ONE)!=0)return P.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var ye=[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],my=(1<<26)/ye[ye.length-1];function by(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=ye[ye.length-1]){for(t=0;t<ye.length;++t)if(r.data[0]==ye[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<ye.length;){for(var n=ye[t],i=t+1;i<ye.length&&n<my;)n*=ye[i++];for(n=r.modInt(n);t<i;)if(n%ye[t++]==0)return!1}return r.millerRabin(e)}function vy(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=wy(),o,s=0;s<e;++s){do o=new P(this.bitLength(),i);while(o.compareTo(P.ONE)<=0||o.compareTo(t)>=0);var a=o.modPow(n,this);if(a.compareTo(P.ONE)!=0&&a.compareTo(t)!=0){for(var c=1;c++<r&&a.compareTo(t)!=0;)if(a=a.modPowInt(2,this),a.compareTo(P.ONE)==0)return!1;if(a.compareTo(t)!=0)return!1}}return!0}function wy(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Ep;P.prototype.toRadix=Bp;P.prototype.fromRadix=Ap;P.prototype.fromNumber=Ip;P.prototype.bitwiseTo=Rp;P.prototype.changeBit=Gp;P.prototype.addTo=Zp;P.prototype.dMultiply=ry;P.prototype.dAddOffset=ny;P.prototype.multiplyLowerTo=ay;P.prototype.multiplyUpperTo=cy;P.prototype.modInt=gy;P.prototype.millerRabin=vy;P.prototype.clone=mp;P.prototype.intValue=bp;P.prototype.byteValue=vp;P.prototype.shortValue=wp;P.prototype.signum=Sp;P.prototype.toByteArray=Cp;P.prototype.equals=Tp;P.prototype.min=_p;P.prototype.max=Lp;P.prototype.and=Pp;P.prototype.or=Dp;P.prototype.xor=kp;P.prototype.andNot=Up;P.prototype.not=Kp;P.prototype.shiftLeft=Op;P.prototype.shiftRight=Mp;P.prototype.getLowestSetBit=Fp;P.prototype.bitCount=Hp;P.prototype.testBit=zp;P.prototype.setBit=Wp;P.prototype.clearBit=$p;P.prototype.flipBit=Yp;P.prototype.add=Xp;P.prototype.subtract=Qp;P.prototype.multiply=Jp;P.prototype.divide=jp;P.prototype.remainder=ty;P.prototype.divideAndRemainder=ey;P.prototype.modPow=py;P.prototype.modInverse=xy;P.prototype.pow=sy;P.prototype.gcd=yy;P.prototype.isProbablePrime=by});var ef=yt((Q2,tf)=>{var Be=dt();mr();Nt();var Jc=tf.exports=Be.sha1=Be.sha1||{};Be.md.sha1=Be.md.algorithms.sha1=Jc;Jc.create=function(){jc||Ey();var e=null,t=Be.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Be.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Be.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),Qc(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Be.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(gs.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};Qc(l,r,i);var d=Be.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var gs=null,jc=!1;function Ey(){gs="\x80",gs+=Be.util.fillString("\0",64),jc=!0}function Qc(e,t,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,u=0;u<16;++u)n=r.getInt32(),t[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,l-=64}}});var of=yt((J2,nf)=>{var Ae=dt();Nt();In();ef();var rf=nf.exports=Ae.pkcs1=Ae.pkcs1||{};rf.encode_rsa_oaep=function(e,t,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Ae.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=t.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",d=c-t.length,g=0;g<d;g++)l+="\0";var h=u.getBytes()+l+""+t;if(!i)i=Ae.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=ki(i,a-o.digestLength-1,s),y=Ae.util.xorBytes(h,p,h.length),x=ki(y,o.digestLength,s),v=Ae.util.xorBytes(i,x,i.length);return"\0"+v+y};rf.decode_rsa_oaep=function(e,t,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(e.n.bitLength()/8);if(t.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}if(i===void 0?i=Ae.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=t.charAt(0),f=t.substring(1,i.digestLength+1),u=t.substring(1+i.digestLength),l=ki(u,i.digestLength,o),d=Ae.util.xorBytes(f,l,f.length),g=ki(d,s-i.digestLength-1,o),h=Ae.util.xorBytes(u,g,u.length),p=h.substring(0,i.digestLength),y=c!=="\0",x=0;x<i.digestLength;++x)y|=a.charAt(x)!==p.charAt(x);for(var v=1,m=i.digestLength,I=i.digestLength;I<h.length;I++){var S=h.charCodeAt(I),B=S&1^1,R=v?65534:0;y|=S&R,v=v&B,m+=v}if(y||h.charCodeAt(m)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(m+1)};function ki(e,t,r){r||(r=Ae.md.sha1.create());for(var n="",i=Math.ceil(t/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var sf=yt((j2,xs)=>{var or=dt();Nt();Di();In();(function(){if(or.prime){xs.exports=or.prime;return}var e=xs.exports=or.prime=or.prime||{},t=or.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,g){typeof d=="function"&&(g=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||or.random,y={nextBytes:function(x){for(var v=p.getBytesSync(x.length),m=0;m<x.length;++m)x[m]=v.charCodeAt(m)}};if(h.name==="PRIMEINC")return o(l,y,h.options,g);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,g,h){return"workers"in g?c(l,d,g,h):s(l,d,g,h)}function s(l,d,g,h){var p=f(l,d),y=0,x=u(p.bitLength());"millerRabinTests"in g&&(x=g.millerRabinTests);var v=10;"maxBlockTime"in g&&(v=g.maxBlockTime),a(p,l,d,y,x,v,h)}function a(l,d,g,h,p,y,x){var v=+new Date;do{if(l.bitLength()>d&&(l=f(d,g)),l.isProbablePrime(p))return x(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-v<y);or.util.setImmediate(function(){a(l,d,g,h,p,y,x)})}function c(l,d,g,h){if(typeof Worker>"u")return s(l,d,g,h);var p=f(l,d),y=g.workers,x=g.workLoad||100,v=x*30/8,m=g.workerScript||"forge/prime.worker.js";if(y===-1)return or.util.estimateCores(function(S,B){S&&(B=2),y=B-1,I()});I();function I(){y=Math.max(1,y);for(var S=[],B=0;B<y;++B)S[B]=new Worker(m);for(var R=y,B=0;B<y;++B)S[B].addEventListener("message",O);var L=!1;function O(M){if(!L){--R;var U=M.data;if(U.found){for(var H=0;H<S.length;++H)S[H].terminate();return L=!0,h(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:x}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var Ki=yt((tb,df)=>{var W=dt();An();Di();wi();of();sf();In();Nt();typeof st>"u"&&(st=W.jsbn.BigInteger);var st,ms=W.util.isNodejs?Ti():null,E=W.asn1,oe=W.util;W.pki=W.pki||{};df.exports=W.pki.rsa=W.rsa=W.rsa||{};var Q=W.pki,Sy=[6,4,2,4,2,4,6,2],By={name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Ay={name:"RSAPrivateKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Iy={name:"RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},Cy=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Ty={name:"DigestInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:E.Class.UNIVERSAL,type:E.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},_y=function(e){var t;if(e.algorithm in Q.oids)t=Q.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=E.oidToDer(t).getBytes(),i=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]),o=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]);o.value.push(E.create(E.Class.UNIVERSAL,E.Type.OID,!1,n)),o.value.push(E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,""));var s=E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),E.toDer(i).getBytes()},lf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(st.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(st.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new st(W.util.bytesToHex(W.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(st.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=hf(e,t,r)):(i=W.util.createBuffer(),i.putBytes(e));for(var s=new st(i.toHex(),16),a=lf(s,t,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new st(W.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=lf(s,t,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?Ui(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||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:e,rng:i,eInt:t||65537,e:new st(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new st(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new st(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(st.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(Ry(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Sy[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(st.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(af("generateKeyPair"))return ms.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:Q.privateKeyFromPem(f),publicKey:Q.publicKeyFromPem(c)})});if(cf("generateKey")&&cf("exportKey"))return oe.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:uf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return oe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(ff("generateKey")&&ff("exportKey")){var i=oe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:uf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=oe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer(W.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(af("generateKeyPairSync")){var o=ms.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:Q.privateKeyFromPem(o.privateKey),publicKey:Q.publicKeyFromPem(o.publicKey)}}}var s=Q.rsa.createKeyPairGenerationState(e,t,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;Ly(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(e,t){var r={n:e,e:t};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return hf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=Ui(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,Ty,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===W.oids.md2||h===W.oids.md5||h===W.oids.sha1||h===W.oids.sha224||h===W.oids.sha256||h===W.oids.sha384||h===W.oids.sha512||h===W.oids["sha512-224"]||h===W.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===W.oids.md2||h===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=Ui(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var d=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Ui};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return W.pkcs1.decode_rsa_oaep(h,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:_y},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(d,c,l)},c};Q.wrapRsaPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,E.toDer(e).getBytes())])};Q.privateKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,By,t,r)&&(e=E.fromDer(W.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,Ay,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(t.privateKeyModulus).toHex(),o=W.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(t.privateKeyPrime1).toHex(),c=W.util.createBuffer(t.privateKeyPrime2).toHex(),f=W.util.createBuffer(t.privateKeyExponent1).toHex(),u=W.util.createBuffer(t.privateKeyExponent2).toHex(),l=W.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new st(i,16),new st(o,16),new st(s,16),new st(a,16),new st(c,16),new st(f,16),new st(u,16),new st(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,Cy,t,r)){var n=E.derToOid(t.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}e=t.rsaPublicKey}if(r=[],!E.validate(e,Iy,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(t.publicKeyModulus).toHex(),s=W.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new st(o,16),new st(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.e))])};function hf(e,t,r){var n=W.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=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(e),n}function Ui(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=W.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function Ly(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.p=null,i();return}if(e.q.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(st.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function Ie(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=W.util.hexToBytes(t);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function Ry(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function af(e){return W.util.isNodejs&&typeof ms[e]=="function"}function cf(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.crypto=="object"&&typeof oe.globalScope.crypto.subtle=="object"&&typeof oe.globalScope.crypto.subtle[e]=="function"}function ff(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.msCrypto=="object"&&typeof oe.globalScope.msCrypto.subtle=="object"&&typeof oe.globalScope.msCrypto.subtle[e]=="function"}function uf(e){for(var t=W.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var bf=yt((eb,mf)=>{var q=dt();fs();An();Ec();mr();wi();Cc();Lc();In();qc();Ki();Nt();typeof pf>"u"&&(pf=q.jsbn.BigInteger);var pf,C=q.asn1,tt=q.pki=q.pki||{};mf.exports=tt.pbe=q.pbe=q.pbe||{};var wr=tt.oids,Ny={name:"EncryptedPrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},Py={name:"PBES2Algorithms",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},Dy={name:"pkcs-12PbeParams",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=q.random.getBytesSync(r.saltSize),i=r.count,o=C.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=wr["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=wr["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=wr["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=wr.desCBC,l=q.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),h=xf(g),p=q.pkcs5.pbkdf2(t,n,i,s,h),y=q.random.getBytesSync(f),x=l(p);x.start(y),x.update(C.toDer(e)),x.finish(),c=x.output.getBytes();var v=ky(n,o,s,g);a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(wr.pkcs5PBES2).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(wr.pkcs5PBKDF2).getBytes()),v]),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(u).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var m=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,m,1,i,s),y=tt.pbe.generatePkcs12Key(t,m,2,i,s),x=q.des.createEncryptionCipher(p);x.start(y),x.update(C.toDer(e)),x.finish(),c=x.output.getBytes(),a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(wr["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,n),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var I=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[a,C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,c)]);return I};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!C.validate(e,Ny,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=C.derToOid(n.encryptionOid),a=tt.pbe.getCipher(s,n.encryptionParams,t),c=q.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=C.fromDer(a.output)),r};tt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:C.toDer(e).getBytes()};return q.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=q.pem.decode(e)[0];if(t.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return C.fromDer(t.body)};tt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=tt.wrapRsaPrivateKey(tt.privateKeyToAsn1(e));return n=tt.encryptPrivateKeyInfo(n,t,r),tt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=q.pbe.opensslDeriveBytes(t,o.substr(0,8),s),u=a(f);u.start(o),u.update(C.toDer(tt.privateKeyToAsn1(e))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:q.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return q.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=q.pem.decode(e)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=q.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=q.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=q.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=q.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=q.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return q.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return q.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return q.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=q.util.hexToBytes(n.dekInfo.parameters),c=q.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(q.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=tt.decryptPrivateKeyInfo(C.fromDer(r),t):r=C.fromDer(r),r!==null&&(r=tt.privateKeyFromAsn1(r)),r};tt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in q.md))throw new Error('"sha1" hash algorithm unavailable.');o=q.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new q.util.ByteBuffer,l=new q.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),g=t.length(),h=new q.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new q.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var x=f*Math.ceil(d/f),v=new q.util.ByteBuffer;for(a=0;a<x;a++)v.putByte(l.at(a%d));var m=y;m.putBuffer(v);for(var I=Math.ceil(i/c),S=1;S<=I;S++){var B=new q.util.ByteBuffer;B.putBytes(h.bytes()),B.putBytes(m.bytes());for(var R=0;R<n;R++)o.start(),o.update(B.getBytes()),B=o.digest();var L=new q.util.ByteBuffer;for(a=0;a<f;a++)L.putByte(B.at(a%c));var O=Math.ceil(g/f)+Math.ceil(d/f),M=new q.util.ByteBuffer;for(s=0;s<O;s++){var U=new q.util.ByteBuffer(m.getBytes(f)),H=511;for(a=L.length()-1;a>=0;a--)H=H>>8,H+=L.at(a)+U.at(a),U.setAt(a,H&255);M.putBuffer(U)}m=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!C.validate(t,Py,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(e=C.derToOid(n.kdfOid),e!==tt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=C.derToOid(n.encOid),e!==tt.oids["aes128-CBC"]&&e!==tt.oids["aes192-CBC"]&&e!==tt.oids["aes256-CBC"]&&e!==tt.oids["des-EDE3-CBC"]&&e!==tt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=q.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=q.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=q.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=q.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=q.des.createDecryptionCipher;break;case"desCBC":c=8,f=q.des.createDecryptionCipher;break}var u=gf(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,g=f(l);return g.start(d),g};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!C.validate(t,Dy,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=q.util.createBuffer(n.salt),a=q.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(e){case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=q.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var x=q.rc2.createDecryptionCipher(p,40);return x.start(y,null),x};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=gf(n.prfOid),d=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,g)};tt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in q.md))throw new Error('"md5" hash algorithm unavailable.');n=q.md.md5.create()}t===null&&(t="");for(var i=[yf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(yf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function yf(e,t){return e.start().update(t).digest().getBytes()}function gf(e){var t;if(!e)t="hmacWithSHA1";else if(t=tt.oids[C.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return xf(t)}function xf(e){var t=q.md;switch(e){case"hmacWithSHA224":t=q.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function ky(e,t,r,n){var i=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,e),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,q.util.hexToBytes(r.toString(16))),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(tt.oids[n]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")])),i}});var uu=yt((Qw,fu)=>{var vt=dt();mr();Nt();var kn=fu.exports=vt.sha512=vt.sha512||{};vt.md.sha512=vt.md.algorithms.sha512=kn;var au=vt.sha384=vt.sha512.sha384=vt.sha512.sha384||{};au.create=function(){return kn.create("SHA-384")};vt.md.sha384=vt.md.algorithms.sha384=au;vt.sha512.sha256=vt.sha512.sha256||{create:function(){return kn.create("SHA-512/256")}};vt.md["sha512/256"]=vt.md.algorithms["sha512/256"]=vt.sha512.sha256;vt.sha512.sha224=vt.sha512.sha224||{create:function(){return kn.create("SHA-512/224")}};vt.md["sha512/224"]=vt.md.algorithms["sha512/224"]=vt.sha512.sha224;kn.create=function(e){if(cu||eg(),typeof e>"u"&&(e="SHA-512"),!(e in _r))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=_r[e],r=null,n=vt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=vt.util.createBuffer(),r=new Array(t.length);for(var f=0;f<t.length;++f)r[f]=t[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=vt.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),su(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=vt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(oa.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);su(p,i,c);var y=vt.util.createBuffer(),x;e==="SHA-512"?x=p.length:e==="SHA-384"?x=p.length-2:x=p.length-4;for(var h=0;h<x;++h)y.putInt32(p[h][0]),(h!==x-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var oa=null,cu=!1,sa=null,_r=null;function eg(){oa="\x80",oa+=vt.util.fillString("\0",128),sa=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],_r={},_r["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],_r["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],_r["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],_r["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],cu=!0}function su(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v,m,I,S,B,R,L,O,M,U,H,z,Z,A,N,T,_,w,k,K,F=r.length();F>=128;){for(A=0;A<16;++A)t[A][0]=r.getInt32()>>>0,t[A][1]=r.getInt32()>>>0;for(;A<80;++A)_=t[A-2],N=_[0],T=_[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,k=t[A-15],N=k[0],T=k[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[A-7],K=t[A-16],T=i+w[1]+s+K[1],t[A][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[A][1]=T>>>0;for(p=e[0][0],y=e[0][1],x=e[1][0],v=e[1][1],m=e[2][0],I=e[2][1],S=e[3][0],B=e[3][1],R=e[4][0],L=e[4][1],O=e[5][0],M=e[5][1],U=e[6][0],H=e[6][1],z=e[7][0],Z=e[7][1],A=0;A<80;++A)f=((R>>>14|L<<18)^(R>>>18|L<<14)^(L>>>9|R<<23))>>>0,u=((R<<18|L>>>14)^(R<<14|L>>>18)^(L<<23|R>>>9))>>>0,l=(U^R&(O^U))>>>0,d=(H^L&(M^H))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&x|m&(p^x))>>>0,h=(y&v|I&(y^v))>>>0,T=Z+u+d+sa[A][1]+t[A][1],n=z+f+l+sa[A][0]+t[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=U,Z=H,U=O,H=M,O=R,M=L,T=B+i,R=S+n+(T/4294967296>>>0)>>>0,L=T>>>0,S=m,B=I,m=x,I=v,x=p,v=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=e[0][1]+y,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+x+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+I,e[2][0]=e[2][0]+m+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+L,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+U+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,F-=128}}});var ax={};Dt(ax,{webTransport:()=>sx});function De(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function nt(e=0){return globalThis.Buffer?.alloc!=null?De(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function kt(e=0){return globalThis.Buffer?.allocUnsafe!=null?De(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Rl=Math.pow(2,7),Nl=Math.pow(2,14),Pl=Math.pow(2,21),lo=Math.pow(2,28),ho=Math.pow(2,35),po=Math.pow(2,42),yo=Math.pow(2,49),ft=128,Wt=127;function $t(e){if(e<Rl)return 1;if(e<Nl)return 2;if(e<Pl)return 3;if(e<lo)return 4;if(e<ho)return 5;if(e<po)return 6;if(e<yo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Dl(e,t,r=0){switch($t(e)){case 8:t[r++]=e&255|ft,e/=128;case 7:t[r++]=e&255|ft,e/=128;case 6:t[r++]=e&255|ft,e/=128;case 5:t[r++]=e&255|ft,e/=128;case 4:t[r++]=e&255|ft,e>>>=7;case 3:t[r++]=e&255|ft,e>>>=7;case 2:t[r++]=e&255|ft,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function kl(e,t,r=0){switch($t(e)){case 8:t.set(r++,e&255|ft),e/=128;case 7:t.set(r++,e&255|ft),e/=128;case 6:t.set(r++,e&255|ft),e/=128;case 5:t.set(r++,e&255|ft),e/=128;case 4:t.set(r++,e&255|ft),e>>>=7;case 3:t.set(r++,e&255|ft),e>>>=7;case 2:t.set(r++,e&255|ft),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function Ul(e,t){let r=e[t],n=0;if(n+=r&Wt,r<ft||(r=e[t+1],n+=(r&Wt)<<7,r<ft)||(r=e[t+2],n+=(r&Wt)<<14,r<ft)||(r=e[t+3],n+=(r&Wt)<<21,r<ft)||(r=e[t+4],n+=(r&Wt)*lo,r<ft)||(r=e[t+5],n+=(r&Wt)*ho,r<ft)||(r=e[t+6],n+=(r&Wt)*po,r<ft)||(r=e[t+7],n+=(r&Wt)*yo,r<ft))return n;throw new RangeError("Could not decode varint")}function Kl(e,t){let r=e.get(t),n=0;if(n+=r&Wt,r<ft||(r=e.get(t+1),n+=(r&Wt)<<7,r<ft)||(r=e.get(t+2),n+=(r&Wt)<<14,r<ft)||(r=e.get(t+3),n+=(r&Wt)<<21,r<ft)||(r=e.get(t+4),n+=(r&Wt)*lo,r<ft)||(r=e.get(t+5),n+=(r&Wt)*ho,r<ft)||(r=e.get(t+6),n+=(r&Wt)*po,r<ft)||(r=e.get(t+7),n+=(r&Wt)*yo,r<ft))return n;throw new RangeError("Could not decode varint")}function Ze(e,t,r=0){return t==null&&(t=kt($t(e))),t instanceof Uint8Array?Dl(e,t,r):kl(e,t,r)}function fe(e,t=0){return e instanceof Uint8Array?Ul(e,t):Kl(e,t)}function At(e,t){if(globalThis.Buffer!=null)return De(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=kt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return De(r)}function It(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var t0=Symbol.for("@achingbrain/uint8arraylist");function ja(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function Pr(e){return!!e?.[t0]}var Ct=class e{bufs;length;[t0]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Pr(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Pr(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=ja(this.bufs,t);return r.buf[r.index]}set(t,r){let n=ja(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(Pr(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return At(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:At(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=[...n],o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let f=t>=a&&t<c,u=r>a&&r<=c;if(f&&u){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!Pr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=nt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=nt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!It(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function Yn(e){return e[Symbol.asyncIterator]!=null}var Zn=e=>{let t=$t(e),r=kt(t);return Ze(e,r),Zn.bytes=t,r};Zn.bytes=0;function ln(e,t){t=t??{};let r=t.lengthEncoder??Zn;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Yn(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}ln.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??Zn;return new Ct(r(e.byteLength),e)};var Dr=Qt(n0(),1);var Ml=8,Vl=1024*1024*4,lr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(lr||(lr={}));var go=e=>{let t=fe(e);return go.bytes=$t(t),t};go.bytes=0;function hn(e,t){let r=new Ct,n=lr.LENGTH,i=-1,o=t?.lengthDecoder??go,s=t?.maxLengthLength??Ml,a=t?.maxDataLength??Vl;function*c(){for(;r.byteLength>0;){if(n===lr.LENGTH)try{if(i=o(r),i<0)throw(0,Dr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Dr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),t?.onLength!=null&&t.onLength(i),n=lr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Dr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===lr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(f),yield f,n=lr.LENGTH}}}return Yn(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Dr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Dr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}hn.fromReader=(e,t)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await e.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return hn(n,{...t??{},onLength:o=>{r=o}})};function ue(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var Xn=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function i0(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new Xn(r?.errorMessage,r?.errorCode));let n,i=new Xn(r?.errorMessage,r?.errorCode);try{return await Promise.race([e,new Promise((o,s)=>{n=()=>{s(i)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var xo=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=ue(),this.needNext.resolve(),this.haveNext=ue()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let t=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=ue(),t}async throw(t){return this.ended=!0,t!=null&&this.haveNext.reject(t),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,r){await this._push(t,r)}async end(t,r){t!=null?await this.throw(t):await this._push(void 0,r)}async _push(t,r){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=ue(),await i0(this.needNext.promise,r?.signal,r)}};function o0(){return new xo}var Qn=class extends Error{code;constructor(t,r){super(t),this.code=r}},mo=class extends Qn{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function s0(e,t){let r=o0();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new Ct;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new mo("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new Ct:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new Qn("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let u=i.sublist(0,s);return i.consume(s),u}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=e.source;e.source=async function*(){t?.yieldBytes===!1?yield i:yield*i,yield*s}()}return e}}}var Jn=class extends Error{code;constructor(t,r){super(t),this.code=r}},a0=e=>fe(e);a0.bytes=0;function bo(e,t={}){let r=s0(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=$t(t.maxDataLength)),{read:async i=>{let o=-1,s=new Ct,a=t?.lengthDecoder??a0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new Jn("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new Jn("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(ln.single(i,t),o)},writeV:async(i,o)=>{let s=new Ct(...i.map(a=>ln.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function vo(){let e=ue(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function c0(){let e=vo(),t=vo();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}var jn=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},kr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new jn(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let r=this.head;this.head=r.next=new jn(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var wo=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function ti(e={}){return ql(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},e)}function ql(e,t){t=t??{};let r=t.onEnd,n=new kr,i,o,s,a=ue(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,x)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(m){x(m)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ue()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new kr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new kr,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let x=y?.signal;if(x?.throwIfAborted(),n.isEmpty())return;let v,m;x!=null&&(v=new Promise((I,S)=>{m=()=>{S(new wo)},x.addEventListener("abort",m)}));try{await Promise.race([a.promise,v])}finally{m!=null&&x!=null&&x?.removeEventListener("abort",m)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:y=>p.onEmpty(y)},i}function Hl(e){return e[Symbol.asyncIterator]!=null}function zl(...e){let t=[];for(let r of e)Hl(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=ti({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var f0=zl;function u0(e,...t){if(e==null)throw new Error("Empty pipeline");if(Eo(e)){let n=e;e=()=>n.source}else if(h0(e)||l0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Eo(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++)Eo(r[n])&&(r[n]=Wl(r[n]));return Gl(...r)}var Gl=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},l0=e=>e?.[Symbol.asyncIterator]!=null,h0=e=>e?.[Symbol.iterator]!=null,Eo=e=>e==null?!1:e.sink!=null&&e.source!=null,Wl=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=ti({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(l0(o))i=async function*(){yield*o,n.end()};else if(h0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return f0(n,i())}return e.source};var Ur=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var $l=e=>e instanceof Uint8Array;var ke=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),d0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Yl=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Yl)throw new Error("Non little-endian hardware is not supported");function ei(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ri(e){if(typeof e=="string")e=ei(e);else if($l(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var Zl=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function p0(e,t){if(t!==void 0&&(typeof t!="object"||!Zl(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function hr(e,t){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function y0(e,t){if(e.length!==t.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<e.length;n++)r&&(r=e[n]===t[n]);return r}var So=(e,t)=>(Object.assign(t,e),t);function Bo(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}function ni(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Ao(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Kr(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function Io(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function g0(e,t){Kr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Ht=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Co=class{constructor(t){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,t=ri(t),hr(t,32);let r=Ht(t,0),n=Ht(t,2),i=Ht(t,4),o=Ht(t,6),s=Ht(t,8),a=Ht(t,10),c=Ht(t,12),f=Ht(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Ht(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],x=Ht(t,r+0),v=Ht(t,r+2),m=Ht(t,r+4),I=Ht(t,r+6),S=Ht(t,r+8),B=Ht(t,r+10),R=Ht(t,r+12),L=Ht(t,r+14),O=o[0]+(x&8191),M=o[1]+((x>>>13|v<<3)&8191),U=o[2]+((v>>>10|m<<6)&8191),H=o[3]+((m>>>7|I<<9)&8191),z=o[4]+((I>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),A=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|L<<8)&8191),_=o[9]+(L>>>5|i),w=0,k=w+O*a+M*(5*y)+U*(5*p)+H*(5*h)+z*(5*g);w=k>>>13,k&=8191,k+=Z*(5*d)+A*(5*l)+N*(5*u)+T*(5*f)+_*(5*c),w+=k>>>13,k&=8191;let K=w+O*c+M*a+U*(5*y)+H*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+A*(5*d)+N*(5*l)+T*(5*u)+_*(5*f),w+=K>>>13,K&=8191;let F=w+O*f+M*c+U*a+H*(5*y)+z*(5*p);w=F>>>13,F&=8191,F+=Z*(5*h)+A*(5*g)+N*(5*d)+T*(5*l)+_*(5*u),w+=F>>>13,F&=8191;let $=w+O*u+M*f+U*c+H*a+z*(5*y);w=$>>>13,$&=8191,$+=Z*(5*p)+A*(5*h)+N*(5*g)+T*(5*d)+_*(5*l),w+=$>>>13,$&=8191;let Y=w+O*l+M*u+U*f+H*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+A*(5*p)+N*(5*h)+T*(5*g)+_*(5*d),w+=Y>>>13,Y&=8191;let rt=w+O*d+M*l+U*u+H*f+z*c;w=rt>>>13,rt&=8191,rt+=Z*a+A*(5*y)+N*(5*p)+T*(5*h)+_*(5*g),w+=rt>>>13,rt&=8191;let X=w+O*g+M*d+U*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+A*a+N*(5*y)+T*(5*p)+_*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+U*d+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+A*c+N*a+T*(5*y)+_*(5*p),w+=J>>>13,J&=8191;let pt=w+O*p+M*h+U*g+H*d+z*l;w=pt>>>13,pt&=8191,pt+=Z*u+A*f+N*c+T*a+_*(5*y),w+=pt>>>13,pt&=8191;let ht=w+O*y+M*p+U*h+H*g+z*d;w=ht>>>13,ht&=8191,ht+=Z*l+A*u+N*f+T*c+_*a,w+=ht>>>13,ht&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=F,o[3]=$,o[4]=Y,o[5]=rt,o[6]=X,o[7]=J,o[8]=pt,o[9]=ht}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){Io(this);let{buffer:r,blockLen:n}=this;t=ri(t);let i=t.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(t,o);continue}r.set(t.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(t){Io(this),g0(t,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)t[o++]=n[s]>>>0,t[o++]=n[s]>>>8;return t}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}};function Xl(e){let t=(n,i)=>e(i).update(ri(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var x0=Xl(e=>new Co(e));var Ql=ei("expand 16-byte k"),Jl=ei("expand 32-byte k"),jl=ke(Ql),th=ke(Jl);function G(e,t){return e<<t|e>>>32-t}function To(e){return e.byteOffset%4===0}var ii=64,eh=16,b0=2**32-1,m0=new Uint32Array;function rh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(ii),u=ke(f),l=To(i)&&To(o),d=l?ke(i):m0,g=l?ke(o):m0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=b0)throw new Error("arx: counter overflow");let p=Math.min(ii,c-h);if(l&&p===ii){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let x=0,v;x<eh;x++)v=y+x,g[v]=d[v]^u[x];h+=ii;continue}for(let y=0,x;y<p;y++)x=h+y,o[x]=i[x]^f[y];h+=p}}function _o(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=p0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return ni(i),ni(s),Ao(o),Ao(r),(a,c,f,u,l=0)=>{Kr(a),Kr(c),Kr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Kr(u),ni(l),l<0||l>=b0)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let g=[],h=a.length,p,y;if(h===32)p=a.slice(),g.push(p),y=th;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=jl,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);To(c)||(c=c.slice(),g.push(c));let x=ke(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,x,ke(c.subarray(0,16)),x),c=c.subarray(16)}let v=16-i;if(v!==c.length)throw new Error(`arx: nonce must be ${v} or 16 bytes`);if(v!==12){let I=new Uint8Array(12);I.set(c,o?0:12-c.length),c=I,g.push(c)}let m=ke(c);for(rh(e,y,x,m,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function E0(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],f=e[3],u=t[0],l=t[1],d=t[2],g=t[3],h=t[4],p=t[5],y=t[6],x=t[7],v=i,m=r[0],I=r[1],S=r[2],B=s,R=a,L=c,O=f,M=u,U=l,H=d,z=g,Z=h,A=p,N=y,T=x,_=v,w=m,k=I,K=S;for(let $=0;$<o;$+=2)B=B+M|0,_=G(_^B,16),Z=Z+_|0,M=G(M^Z,12),B=B+M|0,_=G(_^B,8),Z=Z+_|0,M=G(M^Z,7),R=R+U|0,w=G(w^R,16),A=A+w|0,U=G(U^A,12),R=R+U|0,w=G(w^R,8),A=A+w|0,U=G(U^A,7),L=L+H|0,k=G(k^L,16),N=N+k|0,H=G(H^N,12),L=L+H|0,k=G(k^L,8),N=N+k|0,H=G(H^N,7),O=O+z|0,K=G(K^O,16),T=T+K|0,z=G(z^T,12),O=O+z|0,K=G(K^O,8),T=T+K|0,z=G(z^T,7),B=B+U|0,K=G(K^B,16),N=N+K|0,U=G(U^N,12),B=B+U|0,K=G(K^B,8),N=N+K|0,U=G(U^N,7),R=R+H|0,_=G(_^R,16),T=T+_|0,H=G(H^T,12),R=R+H|0,_=G(_^R,8),T=T+_|0,H=G(H^T,7),L=L+z|0,w=G(w^L,16),Z=Z+w|0,z=G(z^Z,12),L=L+z|0,w=G(w^L,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,k=G(k^O,16),A=A+k|0,M=G(M^A,12),O=O+M|0,k=G(k^O,8),A=A+k|0,M=G(M^A,7);let F=0;n[F++]=s+B|0,n[F++]=a+R|0,n[F++]=c+L|0,n[F++]=f+O|0,n[F++]=u+M|0,n[F++]=l+U|0,n[F++]=d+H|0,n[F++]=g+z|0,n[F++]=h+Z|0,n[F++]=p+A|0,n[F++]=y+N|0,n[F++]=x+T|0,n[F++]=v+_|0,n[F++]=m+w|0,n[F++]=I+k|0,n[F++]=S+K|0}function nh(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],f=t[1],u=t[2],l=t[3],d=t[4],g=t[5],h=t[6],p=t[7],y=r[0],x=r[1],v=r[2],m=r[3];for(let S=0;S<20;S+=2)i=i+c|0,y=G(y^i,16),d=d+y|0,c=G(c^d,12),i=i+c|0,y=G(y^i,8),d=d+y|0,c=G(c^d,7),o=o+f|0,x=G(x^o,16),g=g+x|0,f=G(f^g,12),o=o+f|0,x=G(x^o,8),g=g+x|0,f=G(f^g,7),s=s+u|0,v=G(v^s,16),h=h+v|0,u=G(u^h,12),s=s+u|0,v=G(v^s,8),h=h+v|0,u=G(u^h,7),a=a+l|0,m=G(m^a,16),p=p+m|0,l=G(l^p,12),a=a+l|0,m=G(m^a,8),p=p+m|0,l=G(l^p,7),i=i+f|0,m=G(m^i,16),h=h+m|0,f=G(f^h,12),i=i+f|0,m=G(m^i,8),h=h+m|0,f=G(f^h,7),o=o+u|0,y=G(y^o,16),p=p+y|0,u=G(u^p,12),o=o+u|0,y=G(y^o,8),p=p+y|0,u=G(u^p,7),s=s+l|0,x=G(x^s,16),d=d+x|0,l=G(l^d,12),s=s+l|0,x=G(x^s,8),d=d+x|0,l=G(l^d,7),a=a+c|0,v=G(v^a,16),g=g+v|0,c=G(c^g,12),a=a+c|0,v=G(v^a,8),g=g+v|0,c=G(c^g,7);let I=0;n[I++]=i,n[I++]=o,n[I++]=s,n[I++]=a,n[I++]=y,n[I++]=x,n[I++]=v,n[I++]=m}var ih=_o(E0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),oh=_o(E0,{counterRight:!1,counterLength:8,extendNonceFn:nh,allowShortKeys:!1});var sh=new Uint8Array(16),v0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(sh.subarray(r))},ah=new Uint8Array(32);function w0(e,t,r,n,i){let o=e(t,r,ah),s=x0.create(o);i&&v0(s,i),v0(s,n);let a=new Uint8Array(16),c=d0(a);Bo(c,0,BigInt(i?i.length:0),!0),Bo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var S0=e=>(t,r,n)=>(hr(t,32),hr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?hr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=w0(e,t,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?hr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=w0(e,t,r,f,n);if(!y0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),Lo=So({blockSize:64,nonceLength:12,tagLength:16},S0(ih)),ym=So({blockSize:64,nonceLength:24,tagLength:16},S0(oh));function oi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Ro(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function dn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");oi(e.outputLen),oi(e.blockLen)}function Or(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function B0(e,t){Ro(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var si=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var A0=e=>e instanceof Uint8Array;var ai=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),le=(e,t)=>e<<32-t|e>>>t,ch=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!ch)throw new Error("Non little-endian hardware is not supported");function No(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Xe(e){if(typeof e=="string"&&(e=No(e)),!A0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function ci(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!A0(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var Mr=class{clone(){return this._cloneInto()}},vm={}.toString;function fi(e){let t=n=>e().update(Xe(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function dr(e=32){if(si&&typeof si.getRandomValues=="function")return si.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function fh(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}var Vr=class extends Mr{constructor(t,r,n,i){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=ai(this.buffer)}update(t){Or(this);let{view:r,buffer:n,blockLen:i}=this;t=Xe(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=ai(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Or(this),B0(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;fh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=ai(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var ui=BigInt(4294967295),Po=BigInt(32);function I0(e,t=!1){return t?{h:Number(e&ui),l:Number(e>>Po&ui)}:{h:Number(e>>Po&ui)|0,l:Number(e&ui)|0}}function uh(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=I0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var lh=(e,t)=>BigInt(e>>>0)<<Po|BigInt(t>>>0),hh=(e,t,r)=>e>>>r,dh=(e,t,r)=>e<<32-r|t>>>r,ph=(e,t,r)=>e>>>r|t<<32-r,yh=(e,t,r)=>e<<32-r|t>>>r,gh=(e,t,r)=>e<<64-r|t>>>r-32,xh=(e,t,r)=>e>>>r-32|t<<64-r,mh=(e,t)=>t,bh=(e,t)=>e,vh=(e,t,r)=>e<<r|t>>>32-r,wh=(e,t,r)=>t<<r|e>>>32-r,Eh=(e,t,r)=>t<<r-32|e>>>64-r,Sh=(e,t,r)=>e<<r-32|t>>>64-r;function Bh(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Ah=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Ih=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Ch=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Th=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,_h=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Lh=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var Rh={fromBig:I0,split:uh,toBig:lh,shrSH:hh,shrSL:dh,rotrSH:ph,rotrSL:yh,rotrBH:gh,rotrBL:xh,rotr32H:mh,rotr32L:bh,rotlSH:vh,rotlSL:wh,rotlBH:Eh,rotlBL:Sh,add:Bh,add3L:Ah,add3H:Ih,add4L:Ch,add4H:Th,add5H:Lh,add5L:_h},j=Rh;var[Nh,Ph]=j.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),Qe=new Uint32Array(80),Je=new Uint32Array(80),Do=class extends Vr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:g,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y]}set(t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y){this.Ah=t|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=d|0,this.Gh=g|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let m=0;m<16;m++,r+=4)Qe[m]=t.getUint32(r),Je[m]=t.getUint32(r+=4);for(let m=16;m<80;m++){let I=Qe[m-15]|0,S=Je[m-15]|0,B=j.rotrSH(I,S,1)^j.rotrSH(I,S,8)^j.shrSH(I,S,7),R=j.rotrSL(I,S,1)^j.rotrSL(I,S,8)^j.shrSL(I,S,7),L=Qe[m-2]|0,O=Je[m-2]|0,M=j.rotrSH(L,O,19)^j.rotrBH(L,O,61)^j.shrSH(L,O,6),U=j.rotrSL(L,O,19)^j.rotrBL(L,O,61)^j.shrSL(L,O,6),H=j.add4L(R,U,Je[m-7],Je[m-16]),z=j.add4H(H,B,M,Qe[m-7],Qe[m-16]);Qe[m]=z|0,Je[m]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:g,Fl:h,Gh:p,Gl:y,Hh:x,Hl:v}=this;for(let m=0;m<80;m++){let I=j.rotrSH(l,d,14)^j.rotrSH(l,d,18)^j.rotrBH(l,d,41),S=j.rotrSL(l,d,14)^j.rotrSL(l,d,18)^j.rotrBL(l,d,41),B=l&g^~l&p,R=d&h^~d&y,L=j.add5L(v,S,R,Ph[m],Je[m]),O=j.add5H(L,x,I,B,Nh[m],Qe[m]),M=L|0,U=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),H=j.rotrSL(n,i,28)^j.rotrBL(n,i,34)^j.rotrBL(n,i,39),z=n&o^n&a^o&a,Z=i&s^i&c^s&c;x=p|0,v=y|0,p=g|0,y=h|0,g=l|0,h=d|0,{h:l,l:d}=j.add(f|0,u|0,O|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let A=j.add3L(M,H,Z);n=j.add3H(A,O,U,z),i=A|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:x,l:v}=j.add(this.Hh|0,this.Hl|0,x|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v)}roundClean(){Qe.fill(0),Je.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 ko=fi(()=>new Do);var di={};Dt(di,{bitGet:()=>Vh,bitLen:()=>Mh,bitMask:()=>pn,bitSet:()=>Fh,bytesToHex:()=>Ue,bytesToNumberBE:()=>Ke,bytesToNumberLE:()=>he,concatBytes:()=>Me,createHmacDrbg:()=>Oo,ensureBytes:()=>xt,equalBytes:()=>Kh,hexToBytes:()=>pr,hexToNumber:()=>Ko,numberToBytesBE:()=>je,numberToBytesLE:()=>Oe,numberToHexUnpadded:()=>_0,numberToVarBytesBE:()=>Uh,utf8ToBytes:()=>Oh,validateObject:()=>ne});var T0=BigInt(0),li=BigInt(1),Dh=BigInt(2),hi=e=>e instanceof Uint8Array,kh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Ue(e){if(!hi(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=kh[e[r]];return t}function _0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Ko(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}function pr(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let r=new Uint8Array(t/2);for(let n=0;n<r.length;n++){let i=n*2,o=e.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function Ke(e){return Ko(Ue(e))}function he(e){if(!hi(e))throw new Error("Uint8Array expected");return Ko(Ue(Uint8Array.from(e).reverse()))}function je(e,t){return pr(e.toString(16).padStart(t*2,"0"))}function Oe(e,t){return je(e,t).reverse()}function Uh(e){return pr(_0(e))}function xt(e,t,r){let n;if(typeof t=="string")try{n=pr(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(hi(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function Me(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!hi(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function Kh(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function Oh(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Mh(e){let t;for(t=0;e>T0;e>>=li,t+=1);return t}function Vh(e,t){return e>>BigInt(t)&li}var Fh=(e,t,r)=>e|(r?li:T0)<<BigInt(t),pn=e=>(Dh<<BigInt(e-1))-li,Uo=e=>new Uint8Array(e),C0=e=>Uint8Array.from(e);function Oo(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=Uo(e),i=Uo(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Uo())=>{i=a(C0([0]),l),n=a(),l.length!==0&&(i=a(C0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let g=n.slice();d.push(g),l+=n.length}return Me(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var qh={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function ne(e,t,r={}){let n=(i,o,s)=>{let a=qh[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Ut=BigInt(0),wt=BigInt(1),yr=BigInt(2),Hh=BigInt(3),Mo=BigInt(4),L0=BigInt(5),R0=BigInt(8),zh=BigInt(9),Gh=BigInt(16);function ct(e,t){let r=e%t;return r>=Ut?r:t+r}function Vo(e,t,r){if(r<=Ut||t<Ut)throw new Error("Expected power/modulo > 0");if(r===wt)return Ut;let n=wt;for(;t>Ut;)t&wt&&(n=n*e%r),e=e*e%r,t>>=wt;return n}function mt(e,t,r){let n=e;for(;t-- >Ut;)n*=n,n%=r;return n}function pi(e,t){if(e===Ut||t<=Ut)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=ct(e,t),n=t,i=Ut,o=wt,s=wt,a=Ut;for(;r!==Ut;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==wt)throw new Error("invert: does not exist");return ct(i,t)}function Wh(e){let t=(e-wt)/yr,r,n,i;for(r=e-wt,n=0;r%yr===Ut;r/=yr,n++);for(i=yr;i<e&&Vo(i,t,e)!==e-wt;i++);if(n===1){let s=(e+wt)/Mo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+wt)/yr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,wt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function $h(e){if(e%Mo===Hh){let t=(e+wt)/Mo;return function(n,i){let o=n.pow(i,t);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(e%R0===L0){let t=(e-L0)/R0;return function(n,i){let o=n.mul(i,yr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,yr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return e%Gh,Wh(e)}var N0=(e,t)=>(ct(e,t)&wt)===wt,Yh=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Fo(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Yh.reduce((n,i)=>(n[i]="function",n),t);return ne(e,r)}function Zh(e,t,r){if(r<Ut)throw new Error("Expected power > 0");if(r===Ut)return e.ONE;if(r===wt)return t;let n=e.ONE,i=t;for(;r>Ut;)r&wt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=wt;return n}function Xh(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function qo(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function yi(e,t,r=!1,n={}){if(e<=Ut)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=qo(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=$h(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:pn(i),ZERO:Ut,ONE:wt,create:c=>ct(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ut<=c&&c<e},is0:c=>c===Ut,isOdd:c=>(c&wt)===wt,neg:c=>ct(-c,e),eql:(c,f)=>c===f,sqr:c=>ct(c*c,e),add:(c,f)=>ct(c+f,e),sub:(c,f)=>ct(c-f,e),mul:(c,f)=>ct(c*f,e),pow:(c,f)=>Zh(a,c,f),div:(c,f)=>ct(c*pi(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>pi(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Xh(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Oe(c,o):je(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?he(c):Ke(c)}});return Object.freeze(a)}function P0(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");let r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function D0(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function Ho(e){let t=D0(e);return t+Math.ceil(t/2)}function k0(e,t,r=!1){let n=e.length,i=D0(t),o=Ho(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Ke(e):he(e),a=ct(s,t-wt)+wt;return r?Oe(a,i):je(a,i)}var Jh=BigInt(0),zo=BigInt(1);function gi(e,t){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(t/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=e.ZERO,a=i;for(;o>Jh;)o&zo&&(s=s.add(a)),a=a.double(),o>>=zo;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),d=2**i,g=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=g,y>c&&(y-=d,s+=zo);let x=p,v=p+Math.abs(y)-1,m=h%2!==0,I=y<0;y===0?u=u.add(r(m,o[x])):f=f.add(r(I,o[v]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function yn(e){return Fo(e.Fp),ne(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...qo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var de=BigInt(0),ee=BigInt(1),xi=BigInt(2),jh=BigInt(8),td={zip215:!0};function ed(e){let t=yn(e);return ne(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function mi(e){let t=ed(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=xi<<BigInt(a*8)-ee,u=r.create,l=t.uvRatio||((_,w)=>{try{return{isValid:!0,value:r.sqrt(_*r.inv(w))}}catch{return{isValid:!1,value:de}}}),d=t.adjustScalarBytes||(_=>_),g=t.domain||((_,w,k)=>{if(w.length||k)throw new Error("Contexts/pre-hash are not supported");return _}),h=_=>typeof _=="bigint"&&de<_,p=(_,w)=>h(_)&&h(w)&&_<w,y=_=>_===de||p(_,f);function x(_,w){if(p(_,w))return _;throw new Error(`Expected valid scalar < ${w}, got ${typeof _} ${_}`)}function v(_){return _===de?_:x(_,n)}let m=new Map;function I(_){if(!(_ instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,k,K,F){if(this.ex=w,this.ey=k,this.ez=K,this.et=F,!y(w))throw new Error("x required");if(!y(k))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(F))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:k,y:K}=w||{};if(!y(k)||!y(K))throw new Error("invalid affine point");return new S(k,K,ee,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,F)=>K.toAffine(k[F])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,m.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:F,ez:$,et:Y}=this,rt=u(K*K),X=u(F*F),J=u($*$),pt=u(J*J),ht=u(rt*w),Ft=u(J*u(ht+X)),qt=u(pt+u(k*u(rt*X)));if(Ft!==qt)throw new Error("bad point: equation left != right (1)");let Pt=u(K*F),Gt=u($*Y);if(Pt!==Gt)throw new Error("bad point: equation left != right (2)")}equals(w){I(w);let{ex:k,ey:K,ez:F}=this,{ex:$,ey:Y,ez:rt}=w,X=u(k*rt),J=u($*F),pt=u(K*rt),ht=u(Y*F);return X===J&&pt===ht}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:k,ey:K,ez:F}=this,$=u(k*k),Y=u(K*K),rt=u(xi*u(F*F)),X=u(w*$),J=k+K,pt=u(u(J*J)-$-Y),ht=X+Y,Ft=ht-rt,qt=X-Y,Pt=u(pt*Ft),Gt=u(ht*qt),Pe=u(pt*qt),ur=u(Ft*ht);return new S(Pt,Gt,ur,Pe)}add(w){I(w);let{a:k,d:K}=t,{ex:F,ey:$,ez:Y,et:rt}=this,{ex:X,ey:J,ez:pt,et:ht}=w;if(k===BigInt(-1)){let Ga=u(($-F)*(J+X)),Wa=u(($+F)*(J-X)),uo=u(Wa-Ga);if(uo===de)return this.double();let $a=u(Y*xi*ht),Ya=u(rt*xi*pt),Za=Ya+$a,Xa=Wa+Ga,Qa=Ya-$a,wl=u(Za*uo),El=u(Xa*Qa),Sl=u(Za*Qa),Bl=u(uo*Xa);return new S(wl,El,Bl,Sl)}let Ft=u(F*X),qt=u($*J),Pt=u(rt*K*ht),Gt=u(Y*pt),Pe=u((F+$)*(X+J)-Ft-qt),ur=Gt-Pt,fn=Gt+Pt,za=u(qt-k*Ft),xl=u(Pe*ur),ml=u(fn*za),bl=u(Pe*za),vl=u(ur*fn);return new S(xl,ml,vl,bl)}subtract(w){return this.add(w.negate())}wNAF(w){return L.wNAFCached(this,m,w,S.normalizeZ)}multiply(w){let{p:k,f:K}=this.wNAF(x(w,n));return S.normalizeZ([k,K])[0]}multiplyUnsafe(w){let k=v(w);return k===de?R:this.equals(R)||k===ee?this:this.equals(B)?this.wNAF(k).p:L.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return L.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:F}=this,$=this.is0();w==null&&(w=$?jh:r.inv(F));let Y=u(k*w),rt=u(K*w),X=u(F*w);if($)return{x:de,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:rt}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,k=!1){let{d:K,a:F}=t,$=r.BYTES;w=xt("pointHex",w,$);let Y=w.slice(),rt=w[$-1];Y[$-1]=rt&-129;let X=he(Y);X===de||(k?x(X,f):x(X,r.ORDER));let J=u(X*X),pt=u(J-ee),ht=u(K*J-F),{isValid:Ft,value:qt}=l(pt,ht);if(!Ft)throw new Error("Point.fromHex: invalid y coordinate");let Pt=(qt&ee)===ee,Gt=(rt&128)!==0;if(!k&&qt===de&&Gt)throw new Error("Point.fromHex: x=0 and x_0=1");return Gt!==Pt&&(qt=u(-qt)),S.fromAffine({x:qt,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=Oe(k,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Ue(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(de,ee,ee,de);let{BASE:B,ZERO:R}=S,L=gi(S,a*8);function O(_){return ct(_,n)}function M(_){return O(he(_))}function U(_){let w=a;_=xt("private key",_,w);let k=xt("hashed private key",o(_),2*w),K=d(k.slice(0,w)),F=k.slice(w,2*w),$=M(K),Y=B.multiply($),rt=Y.toRawBytes();return{head:K,prefix:F,scalar:$,point:Y,pointBytes:rt}}function H(_){return U(_).pointBytes}function z(_=new Uint8Array,...w){let k=Me(...w);return M(o(g(k,xt("context",_),!!i)))}function Z(_,w,k={}){_=xt("message",_),i&&(_=i(_));let{prefix:K,scalar:F,pointBytes:$}=U(w),Y=z(k.context,K,_),rt=B.multiply(Y).toRawBytes(),X=z(k.context,rt,$,_),J=O(Y+X*F);v(J);let pt=Me(rt,Oe(J,r.BYTES));return xt("result",pt,a*2)}let A=td;function N(_,w,k,K=A){let{context:F,zip215:$}=K,Y=r.BYTES;_=xt("signature",_,2*Y),w=xt("message",w),i&&(w=i(w));let rt=he(_.slice(Y,2*Y)),X,J,pt;try{X=S.fromHex(k,$),J=S.fromHex(_.slice(0,Y),$),pt=B.multiplyUnsafe(rt)}catch{return!1}if(!$&&X.isSmallOrder())return!1;let ht=z(F,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(ht)).subtract(pt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(_=8,w=S.BASE){return w._setWindowSize(_),w.multiply(BigInt(3)),w}}}}var gn=BigInt(0),Go=BigInt(1);function rd(e){return ne(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function U0(e){let t=rd(e),{P:r}=t,n=m=>ct(m,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(m=>m),c=t.powPminus2||(m=>Vo(m,r-BigInt(2),r));function f(m,I,S){let B=n(m*(I-S));return I=n(I-B),S=n(S+B),[I,S]}function u(m){if(typeof m=="bigint"&&gn<=m&&m<r)return m;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(m,I){let S=u(m),B=u(I),R=S,L=Go,O=gn,M=S,U=Go,H=gn,z;for(let A=BigInt(i-1);A>=gn;A--){let N=B>>A&Go;H^=N,z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1],H=N;let T=L+O,_=n(T*T),w=L-O,k=n(w*w),K=_-k,F=M+U,$=M-U,Y=n($*T),rt=n(F*w),X=Y+rt,J=Y-rt;M=n(X*X),U=n(R*n(J*J)),L=n(_*k),O=n(K*(_+n(l*K)))}z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1];let Z=c(O);return n(L*Z)}function g(m){return Oe(n(m),o)}function h(m){let I=xt("u coordinate",m,o);return s===o&&(I[s-1]&=127),he(I)}function p(m){let I=xt("scalar",m);if(I.length!==o&&I.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${I.length}`);return he(a(I))}function y(m,I){let S=h(I),B=p(m),R=d(S,B);if(R===gn)throw new Error("Invalid private or public key received");return g(R)}let x=g(t.Gu);function v(m){return y(m,x)}return{scalarMult:y,scalarMultBase:v,getSharedSecret:(m,I)=>y(m,I),getPublicKey:m=>v(m),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:x}}var xn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),K0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Wm=BigInt(0),nd=BigInt(1),Wo=BigInt(2),id=BigInt(5),O0=BigInt(10),od=BigInt(20),sd=BigInt(40),M0=BigInt(80);function V0(e){let t=xn,n=e*e%t*e%t,i=mt(n,Wo,t)*n%t,o=mt(i,nd,t)*e%t,s=mt(o,id,t)*o%t,a=mt(s,O0,t)*s%t,c=mt(a,od,t)*a%t,f=mt(c,sd,t)*c%t,u=mt(f,M0,t)*f%t,l=mt(u,M0,t)*f%t,d=mt(l,O0,t)*s%t;return{pow_p_5_8:mt(d,Wo,t)*e%t,b2:n}}function F0(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function ad(e,t){let r=xn,n=ct(t*t*t,r),i=ct(n*n*t,r),o=V0(e*i).pow_p_5_8,s=ct(e*n*o,r),a=ct(t*s*s,r),c=s,f=ct(s*K0,r),u=a===e,l=a===ct(-e,r),d=a===ct(-e*K0,r);return u&&(s=c),(l||d)&&(s=f),N0(s,r)&&(s=ct(-s,r)),{isValid:u||l,value:s}}var Ve=yi(xn,void 0,!0),$o={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ve,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:ko,randomBytes:dr,adjustScalarBytes:F0,uvRatio:ad},Fr=mi($o);function q0(e,t,r){if(t.length>255)throw new Error("Context is too big");return ci(No("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var $m=mi({...$o,domain:q0}),Ym=mi({...$o,domain:q0,prehash:ko}),mn=U0({P:xn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=xn,{pow_p_5_8:r,b2:n}=V0(e);return ct(mt(r,BigInt(3),t)*n,t)},adjustScalarBytes:F0,randomBytes:dr});var cd=(Ve.ORDER+BigInt(3))/BigInt(8),Zm=Ve.pow(Wo,cd),Xm=Ve.sqrt(Ve.neg(Ve.ONE)),Qm=(Ve.ORDER-BigInt(5))/BigInt(8),Jm=BigInt(486662);var jm=P0(Ve,Ve.neg(BigInt(486664)));var t2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),e2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),r2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),n2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var i2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var bi=class extends Mr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,dn(t);let n=Xe(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return Or(this),this.iHash.update(t),this}digestInto(t){Or(this),Ro(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},qr=(e,t,r)=>new bi(e,t).update(r).digest();qr.create=(e,t)=>new bi(e,t);function z0(e,t,r){return dn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),qr(e,Xe(r),Xe(t))}var Yo=new Uint8Array([0]),H0=new Uint8Array;function G0(e,t,r,n=32){if(dn(e),oi(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=H0);let o=new Uint8Array(i*e.outputLen),s=qr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)Yo[0]=f+1,a.update(f===0?H0:c).update(r).update(Yo).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),Yo.fill(0),o.slice(0,n)}var fd=(e,t,r)=>e&t^~e&r,ud=(e,t,r)=>e&t^e&r^t&r,ld=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]),tr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),er=new Uint32Array(64),Zo=class extends Vr{constructor(){super(64,32,8,!1),this.A=tr[0]|0,this.B=tr[1]|0,this.C=tr[2]|0,this.D=tr[3]|0,this.E=tr[4]|0,this.F=tr[5]|0,this.G=tr[6]|0,this.H=tr[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,r){for(let l=0;l<16;l++,r+=4)er[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=er[l-15],g=er[l-2],h=le(d,7)^le(d,18)^d>>>3,p=le(g,17)^le(g,19)^g>>>10;er[l]=p+er[l-7]+h+er[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let d=le(a,6)^le(a,11)^le(a,25),g=u+d+fd(a,c,f)+ld[l]+er[l]|0,p=(le(n,2)^le(n,13)^le(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(){er.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Hr=fi(()=>new Zo);var Xo={hashSHA256(e){return Hr(e.subarray())},getHKDF(e,t){let r=z0(Hr,t,e),i=G0(Hr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let e=mn.utils.randomPrivateKey();return{publicKey:mn.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:mn.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return mn.getSharedSecret(e.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return Lo(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return Lo(n,t,r).decrypt(e.subarray(),i)}};var W0=Xo;var zr=e=>{let t=kt(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};zr.bytes=2;var bn=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};bn.bytes=2;function $0(e){return new Ct(e.ne,e.ciphertext)}function Y0(e){return new Ct(e.ne,e.ns,e.ciphertext)}function Z0(e){return new Ct(e.ns,e.ciphertext)}function X0(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:nt(0)}}function Q0(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.subarray(0,32),ns:e.subarray(32,80),ciphertext:e.subarray(80,e.length)}}function J0(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:nt(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var tc=16;function ec(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new Ct(zr(s.byteLength),s)}}}function rc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-tc<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-tc),{plaintext:c,valid:f}=e.decrypt(s,e.session,a);if(!f)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var wn=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},gr=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var J8=Qt(An(),1),j8=Qt(bf(),1);var rb=Symbol.for("@libp2p/connection");var ib=Symbol.for("@libp2p/content-routing");var ab=Symbol.for("@libp2p/peer-discovery");var vf=Symbol.for("@libp2p/peer-id");var ub=Symbol.for("@libp2p/peer-routing");var wf;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(wf||(wf={}));var Sf=Symbol.for("@libp2p/transport");var Ef;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Ef||(Ef={}));var et=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var bs=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},bb=globalThis.CustomEvent??bs;var Bg=Qt(dt(),1);var Bs={};Dt(Bs,{base10:()=>Fy});function Uy(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,x=0,v=h.length;x!==v&&h[x]===0;)x++,p++;for(var m=(v-x)*u+1>>>0,I=new Uint8Array(m);x!==v;){for(var S=h[x],B=0,R=m-1;(S!==0||B<y)&&R!==-1;R--,B++)S+=256*I[R]>>>0,I[R]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");y=B,x++}for(var L=m-y;L!==m&&I[L]===0;)L++;for(var O=c.repeat(p);L<m;++L)O+=e.charAt(I[L]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,x=0;h[p]===c;)y++,p++;for(var v=(h.length-p)*f+1>>>0,m=new Uint8Array(v);h[p];){var I=r[h.charCodeAt(p)];if(I===255)return;for(var S=0,B=v-1;(I!==0||S<x)&&B!==-1;B--,S++)I+=a*m[B]>>>0,m[B]=I%256>>>0,I=I/256>>>0;if(I!==0)throw new Error("Non-zero carry");x=S,p++}if(h[p]!==" "){for(var R=v-x;R!==v&&m[R]===0;)R++;for(var L=new Uint8Array(y+(v-R)),O=y;R!==v;)L[O++]=m[R++];return L}}}function g(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:g}}var Ky=Uy,Oy=Ky,Bf=Oy;var Gb=new Uint8Array(0);var Af=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},ze=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var If=e=>new TextEncoder().encode(e),Cf=e=>new TextDecoder().decode(e);var vs=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},ws=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return _f(this,t)}},Es=class{constructor(t){this.decoders=t}or(t){return _f(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},_f=(e,t)=>new Es({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),Ss=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new vs(t,r,n),this.decoder=new ws(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},Zr=({name:e,prefix:t,encode:r,decode:n})=>new Ss(e,t,r,n),sr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Bf(r,t);return Zr({prefix:e,name:t,encode:n,decode:o=>ze(i(o))})},My=(e,t,r,n)=>{let i={};for(let u=0;u<t.length;++u)i[t[u]]=u;let o=e.length;for(;e[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[e[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},Vy=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Tt=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>Zr({prefix:t,name:e,encode(i){return Vy(i,n,r)},decode(i){return My(i,n,r,e)}});var Fy=sr({prefix:"9",name:"base10",alphabet:"0123456789"});var As={};Dt(As,{base16:()=>qy,base16upper:()=>Hy});var qy=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Hy=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Is={};Dt(Is,{base2:()=>zy});var zy=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Cs={};Dt(Cs,{base256emoji:()=>Zy});var Lf=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}"),Gy=Lf.reduce((e,t,r)=>(e[r]=t,e),[]),Wy=Lf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function $y(e){return e.reduce((t,r)=>(t+=Gy[r],t),"")}function Yy(e){let t=[];for(let r of e){let n=Wy[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var Zy=Zr({prefix:"\u{1F680}",name:"base256emoji",encode:$y,decode:Yy});var Ts={};Dt(Ts,{base32:()=>Ge,base32hex:()=>jy,base32hexpad:()=>e1,base32hexpadupper:()=>r1,base32hexupper:()=>t1,base32pad:()=>Qy,base32padupper:()=>Jy,base32upper:()=>Xy,base32z:()=>n1});var Ge=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Xy=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Qy=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Jy=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),jy=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),t1=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),e1=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),r1=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),n1=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var _s={};Dt(_s,{base36:()=>i1,base36upper:()=>o1});var i1=sr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),o1=sr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ls={};Dt(Ls,{base58btc:()=>_t,base58flickr:()=>s1});var _t=sr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),s1=sr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ns={};Dt(Ns,{base64:()=>Oi,base64pad:()=>a1,base64url:()=>Rs,base64urlpad:()=>c1});var Oi=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),a1=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Rs=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),c1=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Ps={};Dt(Ps,{base8:()=>f1});var f1=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ds={};Dt(Ds,{identity:()=>u1});var u1=Zr({prefix:"\0",name:"identity",encode:e=>Cf(e),decode:e=>If(e)});var sv=new TextEncoder,av=new TextDecoder;var Ks={};Dt(Ks,{identity:()=>cr});var Ce={};Dt(Ce,{Digest:()=>Er,create:()=>ge,decode:()=>ar,equals:()=>Us});var d1=Pf,Rf=128,p1=127,y1=~p1,g1=Math.pow(2,31);function Pf(e,t,r){t=t||[],r=r||0;for(var n=r;e>=g1;)t[r++]=e&255|Rf,e/=128;for(;e&y1;)t[r++]=e&255|Rf,e>>>=7;return t[r]=e|0,Pf.bytes=r-n+1,t}var x1=ks,m1=128,Nf=127;function ks(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw ks.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&Nf)<<i:(s&Nf)*Math.pow(2,i),i+=7}while(s>=m1);return ks.bytes=o-n,r}var b1=Math.pow(2,7),v1=Math.pow(2,14),w1=Math.pow(2,21),E1=Math.pow(2,28),S1=Math.pow(2,35),B1=Math.pow(2,42),A1=Math.pow(2,49),I1=Math.pow(2,56),C1=Math.pow(2,63),T1=function(e){return e<b1?1:e<v1?2:e<w1?3:e<E1?4:e<S1?5:e<B1?6:e<A1?7:e<I1?8:e<C1?9:10},_1={encode:d1,decode:x1,encodingLength:T1},L1=_1,Tn=L1;var _n=(e,t=0)=>[Tn.decode(e,t),Tn.decode.bytes],Xr=(e,t,r=0)=>(Tn.encode(e,t,r),t),Qr=e=>Tn.encodingLength(e);var ge=(e,t)=>{let r=t.byteLength,n=Qr(e),i=n+Qr(r),o=new Uint8Array(i+r);return Xr(e,o,0),Xr(r,o,n),o.set(t,i),new Er(e,r,t,o)},ar=e=>{let t=ze(e),[r,n]=_n(t),[i,o]=_n(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Er(r,i,s,t)},Us=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Af(e.bytes,r.bytes)}},Er=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var Df=0,R1="identity",kf=ze,N1=e=>ge(Df,kf(e)),cr={code:Df,name:R1,encode:kf,digest:N1};var Vs={};Dt(Vs,{sha256:()=>zt,sha512:()=>P1});var Ms=({name:e,code:t,encode:r})=>new Os(e,t,r),Os=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?ge(this.code,r):r.then(n=>ge(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Kf=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),zt=Ms({name:"sha2-256",code:18,encode:Kf("SHA-256")}),P1=Ms({name:"sha2-512",code:19,encode:Kf("SHA-512")});var Of=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return k1(r,Fs(e),t||_t.encoder);default:return U1(r,Fs(e),t||Ge.encoder)}};var Mf=new WeakMap,Fs=e=>{let t=Mf.get(e);if(t==null){let r=new Map;return Mf.set(e,r),r}return t},xe=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==Ln)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==K1)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=ge(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&Us(t.multihash,n.multihash)}toString(t){return Of(this,t)}toJSON(){return{"/":Of(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s||Vf(n,i,o.bytes))}else if(r[O1]===!0){let{version:n,multihash:i,code:o}=r,s=ar(i);return e.create(n,o,s)}else return null}static create(t,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(r!==Ln)throw new Error(`Version 0 CID must use dag-pb (code: ${Ln}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=Vf(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Ln,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=ze(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Er(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=_n(t.subarray(r));return r+=d,l},i=n(),o=Ln;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(t,r){let[n,i]=D1(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Fs(o).set(n,t),o}},D1=(e,t)=>{switch(e[0]){case"Q":{let r=t||_t;return[_t.prefix,r.decode(`${_t.prefix}${e}`)]}case _t.prefix:{let r=t||_t;return[_t.prefix,r.decode(e)]}case Ge.prefix:{let r=t||Ge;return[Ge.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},k1=(e,t,r)=>{let{prefix:n}=r;if(n!==_t.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},U1=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},Ln=112,K1=18,Vf=(e,t,r)=>{let n=Qr(e),i=n+Qr(t),o=new Uint8Array(i+r.byteLength);return Xr(e,o,0),Xr(t,o,n),o.set(r,i),o},O1=Symbol.for("@ipld/js-cid/CID");var Te={...Ds,...Is,...Ps,...Bs,...As,...Ts,..._s,...Ls,...Ns,...Cs},Sv={...Vs,...Ks};function qf(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Ff=qf("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),qs=qf("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=kt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),M1={utf8:Ff,"utf-8":Ff,hex:Te.base16,latin1:qs,ascii:qs,binary:qs,...Te},Vi=M1;function Bt(e,t="utf8"){let r=Vi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?De(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var ia={};Dt(ia,{Ed25519PrivateKey:()=>Tr,Ed25519PublicKey:()=>Dn,generateKeyPair:()=>Q1,generateKeyPairFromSeed:()=>ou,unmarshalEd25519PrivateKey:()=>Z1,unmarshalEd25519PublicKey:()=>X1});var Pv=Qt(Nt(),1),Dv=Qt(Di(),1),Hf=Qt(dt(),1);function ot(e,t="utf8"){let r=Vi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function me(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=At([new Uint8Array(t-r.length),r])}return ot(r,"base64url")}function re(e){let t=zf(e);return new Hf.default.jsbn.BigInteger(ot(t,"base16"),16)}function zf(e,t){let r=Bt(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=At([new Uint8Array(t-r.length),r])}return r}function se(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var Jr=32,We=64,Fi=32;function Gf(){let e=Fr.utils.randomPrivateKey(),t=Fr.getPublicKey(e);return{privateKey:Zf(e,t),publicKey:t}}function Wf(e){if(e.length!==Fi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=Fr.getPublicKey(t);return{privateKey:Zf(t,r),publicKey:r}}function $f(e,t){let r=e.subarray(0,Fi);return Fr.sign(t instanceof Uint8Array?t:t.subarray(),r)}function Yf(e,t,r){return Fr.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function Zf(e,t){let r=new Uint8Array(We);for(let n=0;n<Fi;n++)r[n]=e[n],r[Fi+n]=t[n];return r}var jt={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var Hs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function zs(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=jt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=Bt(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(p,y,l);return At([g,p.iv,new Uint8Array(x)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=Bt(d));let x;if(d.length===0)try{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,I,{name:t,length:r},!0,["decrypt"])}catch{x=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["decrypt"])}else{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,I,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(y,x,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function jr(e,t){let n=await zs().encrypt(e,t);return Oi.encode(n)}var Gs=new Float32Array([-0]),fr=new Uint8Array(Gs.buffer);function Qf(e,t,r){Gs[0]=e,t[r]=fr[0],t[r+1]=fr[1],t[r+2]=fr[2],t[r+3]=fr[3]}function Jf(e,t){return fr[0]=e[t],fr[1]=e[t+1],fr[2]=e[t+2],fr[3]=e[t+3],Gs[0]}var Ws=new Float64Array([-0]),Yt=new Uint8Array(Ws.buffer);function jf(e,t,r){Ws[0]=e,t[r]=Yt[0],t[r+1]=Yt[1],t[r+2]=Yt[2],t[r+3]=Yt[3],t[r+4]=Yt[4],t[r+5]=Yt[5],t[r+6]=Yt[6],t[r+7]=Yt[7]}function tu(e,t){return Yt[0]=e[t],Yt[1]=e[t+1],Yt[2]=e[t+2],Yt[3]=e[t+3],Yt[4]=e[t+4],Yt[5]=e[t+5],Yt[6]=e[t+6],Yt[7]=e[t+7],Ws[0]}var F1=BigInt(Number.MAX_SAFE_INTEGER),q1=BigInt(Number.MIN_SAFE_INTEGER),te=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Sr;if(t<F1&&t>q1)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,i=t-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>eu&&(i=0n,++n>eu&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Sr;let r=t<0;r&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new e(n,i)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):Sr}},Sr=new te(0,0);Sr.toBigInt=function(){return 0n};Sr.zzEncode=Sr.zzDecode=function(){return this};Sr.length=function(){return 1};var eu=4294967296n;function ru(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function nu(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function $s(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function be(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function qi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var Ys=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,be(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw be(this,4);return qi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw be(this,4);return qi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw be(this,4);let t=Jf(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw be(this,4);let t=tu(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw be(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return nu(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw be(this,t);this.pos+=t}else do if(this.pos>=this.len)throw be(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new te(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw be(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw be(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw be(this,8);let t=qi(this.buf,this.pos+=4),r=qi(this.buf,this.pos+=4);return new te(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function Zs(e){return new Ys(e instanceof Uint8Array?e:e.subarray())}function Br(e,t){let r=Zs(e);return t.decode(r)}function Xs(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return kt(s);i+s>t&&(n=kt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Ar=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function Qs(){}var js=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},H1=Xs();function z1(e){return globalThis.Buffer!=null?kt(e):H1(e)}var Pn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ar(Qs,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Ar(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new ta((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Rn,10,te.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=te.fromBigInt(t);return this._push(Rn,r.length(),r)}uint64Number(t){let r=te.fromNumber(t);return this._push(Rn,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=te.fromBigInt(t).zzEncode();return this._push(Rn,r.length(),r)}sint64Number(t){let r=te.fromNumber(t).zzEncode();return this._push(Rn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(Js,1,t?1:0)}fixed32(t){return this._push(Nn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=te.fromBigInt(t);return this._push(Nn,4,r.lo)._push(Nn,4,r.hi)}fixed64Number(t){let r=te.fromNumber(t);return this._push(Nn,4,r.lo)._push(Nn,4,r.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Qf,4,t)}double(t){return this._push(jf,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(Js,1,0):this.uint32(r)._push(W1,r,t)}string(t){let r=ru(t);return r!==0?this.uint32(r)._push($s,r,t):this._push(Js,1,0)}fork(){return this.states=new js(this),this.head=this.tail=new Ar(Qs,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ar(Qs,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=z1(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function Js(e,t,r){t[r]=e&255}function G1(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var ta=class extends Ar{next;constructor(t,r){super(G1,t,r),this.next=void 0}};function Rn(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function Nn(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function W1(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Pn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push($1,t,e),this},Pn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(Y1,t,e),this});function $1(e,t,r){t.set(e,r)}function Y1(e,t,r){e.length<40?$s(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(Bt(e),r)}function ea(){return new Pn}function Ir(e,t){let r=ea();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var tn;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(tn||(tn={}));function Hi(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ra(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Hi("enum",tn.VARINT,r,n)}function Cr(e,t){return Hi("message",tn.LENGTH_DELIMITED,e,t)}var St;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(St||(St={}));var na;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(na||(na={}));(function(e){e.codec=()=>ra(na)})(St||(St={}));var _e;(function(e){let t;e.codec=()=>(t==null&&(t=Cr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Ir(r,e.codec()),e.decode=r=>Br(r,e.codec())})(_e||(_e={}));var Le;(function(e){let t;e.codec=()=>(t==null&&(t=Cr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Ir(r,e.codec()),e.decode=r=>Br(r,e.codec())})(Le||(Le={}));var Dn=class{_key;constructor(t){this._key=en(t,Jr)}verify(t,r){return Yf(this._key,r,t)}marshal(){return this._key}get bytes(){return _e.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},Tr=class{_key;_publicKey;constructor(t,r){this._key=en(t,We),this._publicKey=en(r,Jr)}sign(t){return $f(this._key,t)}get public(){return new Dn(this._publicKey)}marshal(){return this._key}get bytes(){return Le.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}async hash(){let t=zt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=cr.digest(this.public.bytes);return _t.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return jr(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Z1(e){if(e.length>We){e=en(e,We+Jr);let n=e.subarray(0,We),i=e.subarray(We,e.length);return new Tr(n,i)}e=en(e,We);let t=e.subarray(0,We),r=e.subarray(Jr);return new Tr(t,r)}function X1(e){return e=en(e,Jr),new Dn(e)}async function Q1(){let{privateKey:e,publicKey:t}=Gf();return new Tr(e,t)}async function ou(e){let{privateKey:t,publicKey:r}=Wf(e);return new Tr(t,r)}function en(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new et(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var J1={"P-256":256,"P-384":384,"P-521":521},j1=Object.keys(J1),kw=j1.join(" / ");var fa={};Dt(fa,{MAX_KEY_SIZE:()=>On,RsaPrivateKey:()=>rn,RsaPublicKey:()=>Kn,fromJwk:()=>ug,generateKeyPair:()=>lg,unmarshalRsaPrivateKey:()=>cg,unmarshalRsaPublicKey:()=>fg});var Un=Qt(dt(),1);var b8=Qt(uu(),1);function Gi(e){if(isNaN(e)||e<=0)throw new et("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return dr(e)}var e8=Qt(Ki(),1),aa=Qt(dt(),1);function lu(e,t){return t.map(r=>re(e[r]))}function hu(e){return aa.default.pki.setRsaPrivateKey(...lu(e,["n","e","d","p","q","dp","dq","qi"]))}function du(e){return aa.default.pki.setRsaPublicKey(...lu(e,["n","e"]))}var Lr={};Dt(Lr,{jwkToPkcs1:()=>ng,jwkToPkix:()=>og,pkcs1ToJwk:()=>rg,pkixToJwk:()=>ig});var i8=Qt(An(),1),o8=Qt(Ki(),1);var $e=Qt(dt(),1);function rg(e){let t=$e.default.asn1.fromDer(ot(e,"ascii")),r=$e.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:me(r.n),e:me(r.e),d:me(r.d),p:me(r.p),q:me(r.q),dp:me(r.dP),dq:me(r.dQ),qi:me(r.qInv),alg:"RS256"}}function ng(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=$e.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return Bt($e.default.asn1.toDer(t).getBytes(),"ascii")}function ig(e){let t=$e.default.asn1.fromDer(ot(e,"ascii")),r=$e.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:me(r.n),e:me(r.e)}}function og(e){if(e.n==null||e.e==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=$e.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return Bt($e.default.asn1.toDer(t).getBytes(),"ascii")}async function pu(e){let t=await jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await xu(t);return{privateKey:r[0],publicKey:r[1]}}async function ca(e){let r=[await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await sg(e)],n=await xu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function yu(e,t){let r=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function gu(e,t,r){let n=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r instanceof Uint8Array?r:r.subarray())}async function xu(e){if(e.privateKey==null||e.publicKey==null)throw new et("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([jt.get().subtle.exportKey("jwk",e.privateKey),jt.get().subtle.exportKey("jwk",e.publicKey)])}async function sg(e){return jt.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function mu(e,t,r,n){let i=t?du(e):hu(e),o=ot(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return Bt(s,"ascii")}function bu(e,t){return mu(e,!0,t,(r,n)=>n.encrypt(r))}function vu(e,t){return mu(e,!1,t,(r,n)=>n.decrypt(r))}function Wi(e){if(e.kty!=="RSA")throw new et("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new et("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Bt(e.n,"base64url").length*8}var On=8192,Kn=class{_key;constructor(t){this._key=t}verify(t,r){return gu(this._key,r,t)}marshal(){return Lr.jwkToPkix(this._key)}get bytes(){return _e.encode({Type:St.RSA,Data:this.marshal()}).subarray()}encrypt(t){return bu(this._key,t)}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},rn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return Gi(16)}sign(t){return yu(this._key,t)}get public(){if(this._publicKey==null)throw new et("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Kn(this._publicKey)}decrypt(t){return vu(this._key,t)}marshal(){return Lr.jwkToPkcs1(this._key)}get bytes(){return Le.encode({Type:St.RSA,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ot(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Un.default.util.ByteBuffer(this.marshal()),i=Un.default.asn1.fromDer(n),o=Un.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Un.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return jr(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function cg(e){let t=Lr.pkcs1ToJwk(e);if(Wi(t)>On)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await ca(t);return new rn(r.privateKey,r.publicKey)}function fg(e){let t=Lr.pkixToJwk(e);if(Wi(t)>On)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Kn(t)}async function ug(e){if(Wi(e)>On)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await ca(e);return new rn(t.privateKey,t.publicKey)}async function lg(e){if(e>On)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await pu(e);return new rn(t.privateKey,t.publicKey)}var da={};Dt(da,{Secp256k1PrivateKey:()=>Vn,Secp256k1PublicKey:()=>Mn,generateKeyPair:()=>Sg,unmarshalSecp256k1PrivateKey:()=>wg,unmarshalSecp256k1PublicKey:()=>Eg});function hg(e){let t=yn(e);ne(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:dg,hexToBytes:pg}=di,Rr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Rr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:dg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Rr,r=typeof e=="string"?pg(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Rr._parseInt(r.subarray(2)),{d:s,l:a}=Rr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Ye=BigInt(0),ae=BigInt(1),I8=BigInt(2),wu=BigInt(3),C8=BigInt(4);function yg(e){let t=hg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let x=p.toAffine();return Me(Uint8Array.from([4]),r.toBytes(x.x),r.toBytes(x.y))}),i=t.fromBytes||(h=>{let p=h.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),x=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:x}});function o(h){let{a:p,b:y}=t,x=r.sqr(h),v=r.mul(x,h);return r.add(r.add(v,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Ye<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:x,n:v}=t;if(p&&typeof h!="bigint"){if(h instanceof Uint8Array&&(h=Ue(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let m;try{m=typeof h=="bigint"?h:Ke(xt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return x&&(m=ct(m,v)),a(m),m}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,x){if(this.px=p,this.py=y,this.pz=x,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(p){let{x:y,y:x}=p||{};if(!p||!r.isValid(y)||!r.isValid(x))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let v=m=>r.eql(m,r.ZERO);return v(y)&&v(x)?l.ZERO:new l(y,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(x=>x.pz));return p.map((x,v)=>x.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(xt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let x=r.sqr(y),v=o(p);if(!r.eql(x,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:I,pz:S}=p,B=r.eql(r.mul(y,S),r.mul(m,v)),R=r.eql(r.mul(x,S),r.mul(I,v));return B&&R}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,x=r.mul(y,wu),{px:v,py:m,pz:I}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,L=r.mul(v,v),O=r.mul(m,m),M=r.mul(I,I),U=r.mul(v,m);return U=r.add(U,U),R=r.mul(v,I),R=r.add(R,R),S=r.mul(p,R),B=r.mul(x,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(U,S),R=r.mul(x,R),M=r.mul(p,M),U=r.sub(L,M),U=r.mul(p,U),U=r.add(U,R),R=r.add(L,L),L=r.add(R,L),L=r.add(L,M),L=r.mul(L,U),B=r.add(B,L),M=r.mul(m,I),M=r.add(M,M),L=r.mul(M,U),S=r.sub(S,L),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:I,pz:S}=p,B=r.ZERO,R=r.ZERO,L=r.ZERO,O=t.a,M=r.mul(t.b,wu),U=r.mul(y,m),H=r.mul(x,I),z=r.mul(v,S),Z=r.add(y,x),A=r.add(m,I);Z=r.mul(Z,A),A=r.add(U,H),Z=r.sub(Z,A),A=r.add(y,v);let N=r.add(m,S);return A=r.mul(A,N),N=r.add(U,z),A=r.sub(A,N),N=r.add(x,v),B=r.add(I,S),N=r.mul(N,B),B=r.add(H,z),N=r.sub(N,B),L=r.mul(O,A),B=r.mul(M,z),L=r.add(B,L),B=r.sub(H,L),L=r.add(H,L),R=r.mul(B,L),H=r.add(U,U),H=r.add(H,U),z=r.mul(O,z),A=r.mul(M,A),H=r.add(H,z),z=r.sub(U,z),z=r.mul(O,z),A=r.add(A,z),U=r.mul(H,A),R=r.add(R,U),U=r.mul(N,A),B=r.mul(Z,B),B=r.sub(B,U),U=r.mul(Z,H),L=r.mul(N,L),L=r.add(L,U),new l(B,R,L)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let x=r.invertBatch(y.map(v=>v.pz));return y.map((v,m)=>v.toAffine(x[m])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Ye)return y;if(a(p),p===ae)return this;let{endo:x}=t;if(!x)return g.unsafeLadder(this,p);let{k1neg:v,k1:m,k2neg:I,k2:S}=x.splitScalar(p),B=y,R=y,L=this;for(;m>Ye||S>Ye;)m&ae&&(B=B.add(L)),S&ae&&(R=R.add(L)),L=L.double(),m>>=ae,S>>=ae;return v&&(B=B.negate()),I&&(R=R.negate()),R=new l(r.mul(R.px,x.beta),R.py,R.pz),B.add(R)}multiply(p){a(p);let y=p,x,v,{endo:m}=t;if(m){let{k1neg:I,k1:S,k2neg:B,k2:R}=m.splitScalar(y),{p:L,f:O}=this.wNAF(S),{p:M,f:U}=this.wNAF(R);L=g.constTimeNegate(I,L),M=g.constTimeNegate(B,M),M=new l(r.mul(M.px,m.beta),M.py,M.pz),x=L.add(M),v=O.add(U)}else{let{p:I,f:S}=this.wNAF(y);x=I,v=S}return l.normalizeZ([x,v])[0]}multiplyAndAddUnsafe(p,y,x){let v=l.BASE,m=(S,B)=>B===Ye||B===ae||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),I=m(this,y).add(m(p,x));return I.is0()?void 0:I}toAffine(p){let{px:y,py:x,pz:v}=this,m=this.is0();p==null&&(p=m?r.ONE:r.inv(v));let I=r.mul(y,p),S=r.mul(x,p),B=r.mul(v,p);if(m)return{x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return{x:I,y:S}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===ae)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=t;return p===ae?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ue(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=gi(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function gg(e){let t=yn(e);return ne(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Eu(e){let t=gg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return Ye<A&&A<r.ORDER}function a(A){return ct(A,n)}function c(A){return pi(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=yg({...t,toBytes(A,N,T){let _=N.toAffine(),w=r.toBytes(_.x),k=Me;return T?k(Uint8Array.from([N.hasEvenY()?2:3]),w):k(Uint8Array.from([4]),w,r.toBytes(_.y))},fromBytes(A){let N=A.length,T=A[0],_=A.subarray(1);if(N===i&&(T===2||T===3)){let w=Ke(_);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),F=(K&ae)===ae;return(T&1)===1!==F&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(_.subarray(0,r.BYTES)),k=r.fromBytes(_.subarray(r.BYTES,2*r.BYTES));return{x:w,y:k}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>Ue(je(A,t.nByteLength));function h(A){let N=n>>ae;return A>N}function p(A){return h(A)?a(-A):A}let y=(A,N,T)=>Ke(A.slice(N,T));class x{constructor(N,T,_){this.r=N,this.s=T,this.recovery=_,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=xt("compactSignature",N,T*2),new x(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:_}=Rr.toSig(xt("DER",N));return new x(T,_)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new x(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:_,recovery:w}=this,k=R(xt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let F=w&1?"03":"02",$=f.fromHex(F+g(K)),Y=c(K),rt=a(-k*Y),X=a(_*Y),J=f.BASE.multiplyAndAddUnsafe($,rt,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new x(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return pr(this.toDERHex())}toDERHex(){return Rr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return pr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(A){try{return u(A),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let A=Ho(t.n);return k0(t.randomBytes(A),t.n)},precompute(A=8,N=f.BASE){return N._setWindowSize(A),N.multiply(BigInt(3)),N}};function m(A,N=!0){return f.fromPrivateKey(A).toRawBytes(N)}function I(A){let N=A instanceof Uint8Array,T=typeof A=="string",_=(N||T)&&A.length;return N?_===i||_===o:T?_===2*i||_===2*o:A instanceof f}function S(A,N,T=!0){if(I(A))throw new Error("first arg must be private key");if(!I(N))throw new Error("second arg must be public key");return f.fromHex(N).multiply(u(A)).toRawBytes(T)}let B=t.bits2int||function(A){let N=Ke(A),T=A.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(A){return a(B(A))},L=pn(t.nBitLength);function O(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(Ye<=A&&A<L))throw new Error(`bigint expected < 2^${t.nBitLength}`);return je(A,t.nByteLength)}function M(A,N,T=U){if(["recovered","canonical"].some(ht=>ht in T))throw new Error("sign() legacy options not supported");let{hash:_,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:F}=T;k==null&&(k=!0),A=xt("msgHash",A),K&&(A=xt("prehashed msgHash",_(A)));let $=R(A),Y=u(N),rt=[O(Y),O($)];if(F!=null){let ht=F===!0?w(r.BYTES):F;rt.push(xt("extraEntropy",ht))}let X=Me(...rt),J=$;function pt(ht){let Ft=B(ht);if(!d(Ft))return;let qt=c(Ft),Pt=f.BASE.multiply(Ft).toAffine(),Gt=a(Pt.x);if(Gt===Ye)return;let Pe=a(qt*a(J+Gt*Y));if(Pe===Ye)return;let ur=(Pt.x===Gt?0:2)|Number(Pt.y&ae),fn=Pe;return k&&h(Pe)&&(fn=p(Pe),ur^=1),new x(Gt,fn,ur)}return{seed:X,k2sig:pt}}let U={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(A,N,T=U){let{seed:_,k2sig:w}=M(A,N,T),k=t;return Oo(k.hash.outputLen,k.nByteLength,k.hmac)(_,w)}f.BASE._setWindowSize(8);function Z(A,N,T,_=H){let w=A;if(N=xt("msgHash",N),T=xt("publicKey",T),"strict"in _)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=_,F,$;try{if(typeof w=="string"||w instanceof Uint8Array)try{F=x.fromDER(w)}catch(Pt){if(!(Pt instanceof Rr.Err))throw Pt;F=x.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Pt,s:Gt}=w;F=new x(Pt,Gt)}else throw new Error("PARSE");$=f.fromHex(T)}catch(Pt){if(Pt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&F.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:rt}=F,X=R(N),J=c(rt),pt=a(X*J),ht=a(Y*J),Ft=f.BASE.multiplyAndAddUnsafe($,pt,ht)?.toAffine();return Ft?a(Ft.x)===Y:!1}return{CURVE:t,getPublicKey:m,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:x,utils:v}}function xg(e){return{hash:e,hmac:(t,...r)=>qr(e,t,ci(...r)),randomBytes:dr}}function Su(e,t){let r=n=>Eu({...e,...xg(n)});return Object.freeze({...r(t),create:r})}var Iu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Bu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),mg=BigInt(1),ua=BigInt(2),Au=(e,t)=>(e+t/ua)/t;function bg(e){let t=Iu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=mt(u,r,t)*u%t,d=mt(l,r,t)*u%t,g=mt(d,ua,t)*f%t,h=mt(g,i,t)*g%t,p=mt(h,o,t)*h%t,y=mt(p,a,t)*p%t,x=mt(y,c,t)*y%t,v=mt(x,a,t)*p%t,m=mt(v,r,t)*u%t,I=mt(m,s,t)*h%t,S=mt(I,n,t)*f%t,B=mt(S,ua,t);if(!la.eql(la.sqr(B),e))throw new Error("Cannot find square root");return B}var la=yi(Iu,void 0,void 0,{sqrt:bg}),ve=Su({a:BigInt(0),b:BigInt(7),Fp:la,n:Bu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Bu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-mg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Au(o*e,t),c=Au(-n*e,t),f=ct(e-a*r-c*i,t),u=ct(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Hr),U8=BigInt(0);var K8=ve.ProjectivePoint;function Cu(){return ve.utils.randomPrivateKey()}function Tu(e,t){let r=zt.digest(t instanceof Uint8Array?t:t.subarray());if(se(r))return r.then(({digest:n})=>ve.sign(n,e).toDERRawBytes()).catch(n=>{throw new et(String(n),"ERR_INVALID_INPUT")});try{return ve.sign(r.digest,e).toDERRawBytes()}catch(n){throw new et(String(n),"ERR_INVALID_INPUT")}}function _u(e,t,r){let n=zt.digest(r instanceof Uint8Array?r:r.subarray());if(se(n))return n.then(({digest:i})=>ve.verify(t,i,e)).catch(i=>{throw new et(String(i),"ERR_INVALID_INPUT")});try{return ve.verify(t,n.digest,e)}catch(i){throw new et(String(i),"ERR_INVALID_INPUT")}}function Lu(e){return ve.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Ru(e){try{ve.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}function ha(e){try{ve.ProjectivePoint.fromHex(e)}catch(t){throw new et(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Nu(e){try{return ve.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Mn=class{_key;constructor(t){ha(t),this._key=t}verify(t,r){return _u(this._key,r,t)}marshal(){return Lu(this._key)}get bytes(){return _e.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}async hash(){let t=zt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}},Vn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Nu(t),Ru(this._key),ha(this._publicKey)}sign(t){return Tu(this._key,t)}get public(){return new Mn(this._publicKey)}marshal(){return this._key}get bytes(){return Le.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ot(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return jr(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function wg(e){return new Vn(e)}function Eg(e){return new Mn(e)}async function Sg(){let e=Cu();return new Vn(e)}var Nr={rsa:fa,ed25519:ia,secp256k1:da};function Pu(e){let t=Object.keys(Nr).join(" / ");return new et(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Du(e){let t=_e.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Nr.rsa.unmarshalRsaPublicKey(r);case St.Ed25519:return Nr.ed25519.unmarshalEd25519PublicKey(r);case St.Secp256k1:return Nr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Pu(t.Type??"unknown")}}async function ku(e){let t=Le.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Nr.rsa.unmarshalRsaPrivateKey(r);case St.Ed25519:return Nr.ed25519.unmarshalEd25519PrivateKey(r);case St.Secp256k1:return Nr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Pu(t.Type??"RSA")}}var Ag=Symbol.for("nodejs.util.inspect.custom"),Uu=Object.values(Te).map(e=>e.decoder).reduce((e,t)=>e.or(t),Te.identity.decoder),Ku=114,pa=36,ya=37,Fn=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[vf]=!0;toString(){return this.string==null&&(this.string=_t.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return xe.createV1(Ku,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return It(this.multihash.bytes,t);if(typeof t=="string")return ga(t).equals(this);if(t?.multihash?.bytes!=null)return It(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[Ag](){return`PeerId(${this.toString()})`}},nn=class extends Fn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},on=class extends Fn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},sn=class extends Fn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function ga(e,t){if(t=t??Uu,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=ar(_t.decode(`z${e}`));return e.startsWith("12D")?new on({multihash:r}):e.startsWith("16U")?new sn({multihash:r}):new nn({multihash:r})}return Ig(Uu.decode(e))}function Ig(e){try{let t=ar(e);if(t.code===cr.code){if(t.digest.length===pa)return new on({multihash:t});if(t.digest.length===ya)return new sn({multihash:t})}if(t.code===zt.code)return new nn({multihash:t})}catch{return Cg(xe.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Cg(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Ku)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===zt.code)return new nn({multihash:e.multihash});if(t.code===cr.code){if(t.digest.length===pa)return new on({multihash:e.multihash});if(t.digest.length===ya)return new sn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function xa(e,t){return e.length===pa?new on({multihash:ge(cr.code,e),privateKey:t}):e.length===ya?new sn({multihash:ge(cr.code,e),privateKey:t}):new nn({multihash:await zt.digest(e),publicKey:e,privateKey:t})}var $i;(function(e){let t;e.codec=()=>(t==null&&(t=Cr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Ir(r,e.codec()),e.decode=r=>Br(r,e.codec())})($i||($i={}));var qn;(function(e){let t;e.codec=()=>(t==null&&(t=Cr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.identityKey!=null&&r.identityKey.byteLength>0&&(n.uint32(10),n.bytes(r.identityKey)),r.identitySig!=null&&r.identitySig.byteLength>0&&(n.uint32(18),n.bytes(r.identitySig)),r.extensions!=null&&(n.uint32(34),$i.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:nt(0),identitySig:nt(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=$i.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Ir(r,e.codec()),e.decode=r=>Br(r,e.codec())})(qn||(qn={}));async function Ou(e,t,r){let n=await _g(e,Mu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Tg(e.publicKey,n,r)}function Tg(e,t,r){return qn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function _g(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await ku(e.privateKey)).sign(t)}async function ma(e){return xa(e.identityKey)}function ba(e){return qn.decode(e)}function Mu(e){let t=Bt("noise-libp2p-static-key:");return e instanceof Uint8Array?At([t,e],t.length+e.length):(e.prepend(t),e)}async function va(e,t,r){let n=await xa(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Mu(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await Du(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Hn(e){return!(!(e instanceof Uint8Array)&&!Pr(e)||e.byteLength!==32)}var Lg=0,Rg=4294967295,Ng="Cipherstate has reached maximum n, a new handshake must be performed",Yi=class{n;bytes;view;constructor(t=Lg){this.n=t,this.bytes=nt(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>Rg)throw new Error(Ng)}};var Zi=class{crypto;log;constructor(t,r){this.log=t.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return nt(32)}isEmptyKey(t){let r=this.createEmptyKey();return It(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:nt(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),nt(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new Ct(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new Yi}}initializeSymmetric(t){let r=Bt(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=nt(32);return r.set(t),r}else return this.getHash(t,nt(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,nt(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,nt(0),r),i=this.createEmptyKey(),o=nt(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,nt(0),r.ciphertext)}};var Xi=class extends Zi{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=nt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=nt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=nt(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Hn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Hn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);i&&Hn(n)&&(t.rs=n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(t,r){let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);if(i&&Hn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=nt(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=nt(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};function Vu(e,t){!t.enabled||!Ur||(t(`LOCAL_STATIC_PUBLIC_KEY ${ot(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${ot(e.privateKey,"hex")}`))}function wa(e,t){!t.enabled||!Ur||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${ot(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${ot(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function Fu(e,t){!t.enabled||!Ur||t(`REMOTE_STATIC_PUBLIC_KEY ${ot(e.subarray(),"hex")}`)}function Ea(e,t){!t.enabled||!Ur||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${ot(e.subarray(),"hex")}`)}function qu(e,t){!t.enabled||!Ur||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${ot(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${ot(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var Qi=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;log;constructor(t,r,n,i,o,s,a,c,f){this.log=t.logger.forComponent("libp2p:noise:xxhandshake"),this.isInitiator=r,this.payload=n,this.prologue=i,this.staticKeypair=s,this.connection=a,c&&(this.remotePeer=c),this.xx=f??new Xi(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Vu(this.session.hs.s,this.log),this.isInitiator){this.log.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,nt(0));await this.connection.write($0(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),wa(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=X0((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new gr("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),Ea(this.session.hs.re,this.log)}}async exchange(){if(this.isInitiator){this.log.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=Q0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new gr("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),Ea(this.session.hs.re,this.log),Fu(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=ba(r);this.remotePeer=this.remotePeer||await ma(i),await va(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new wn(`Error occurred while verifying signed payload: ${o.message}`)}this.log.trace("All good with the signature!")}else{this.log.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Y0(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),wa(this.session.hs.e,this.log)}}async finish(){if(this.isInitiator){this.log.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Z0(t)),this.log.trace("Stage 2 - Initiator sent message with signed payload.")}else{this.log.trace("Stage 2 - Responder waiting for third handshake message...");let t=J0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new gr("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=ba(r);this.remotePeer=this.remotePeer||await ma(i),await va(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new wn(`Error occurred while verifying signed payload: ${o.message}`)}}qu(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,nt(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,nt(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new gr("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function Hu(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var Ji=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(t,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=t;this.components=t,this.crypto=o??W0,this.extensions=i,this.metrics=a?Hu(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??nt(0)}async secureOutbound(t,r,n){let i=bo(r,{lengthEncoder:zr,lengthDecoder:bn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=bo(r,{lengthEncoder:zr,lengthDecoder:bn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await Ou(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new Qi(this.components,n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=c0(),o=t.unwrap();return await u0(n,ec(r,this.metrics),o,s=>hn(s,{lengthDecoder:bn}),rc(r,this.metrics),n),i}};function zu(e={}){return t=>new Ji(t,e)}var ji=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(o*=t,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=t(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Gu=45,Pg=15,an=new ji;function Sa(e){if(!(e.length>Pg))return an.new(e).parseWith(()=>an.readIPv4Addr())}function Ba(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Gu))return an.new(e).parseWith(()=>an.readIPv6Addr())}function to(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Gu))return an.new(e).parseWith(()=>an.readIPAddr())}var NE=parseInt("0xFFFF",16),PE=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function eo(e){return!!Sa(e)}function ro(e){return!!Ba(e)}function no(e){return!!to(e)}var Yu=eo,Og=ro,Aa=function(e){let t=0;if(e=e.toString().trim(),Yu(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Og(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Yu(r[n]),s;o&&(s=Aa(r[n]),r[n]=ot(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,ot(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},Zu=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var cn={},Ia={},Vg=[[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"]];Vg.forEach(e=>{let t=Fg(...e);Ia[t.code]=t,cn[t.name]=t});function Fg(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function lt(e){if(typeof e=="number"){if(Ia[e]!=null)return Ia[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(cn[e]!=null)return cn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var gS=lt("ip4"),xS=lt("ip6"),mS=lt("ipcidr");function Ta(e,t){switch(lt(e).code){case 4:case 41:return Hg(t);case 42:return Ju(t);case 6:case 273:case 33:case 132:return tl(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Ju(t);case 421:return $g(t);case 444:return ju(t);case 445:return ju(t);case 466:return Wg(t);default:return ot(t,"base16")}}function _a(e,t){switch(lt(e).code){case 4:return Xu(t);case 41:return Xu(t);case 42:return Qu(t);case 6:case 273:case 33:case 132:return La(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Qu(t);case 421:return zg(t);case 444:return Yg(t);case 445:return Zg(t);case 466:return Gg(t);default:return Bt(t,"base16")}}var Ca=Object.values(Te).map(e=>e.decoder),qg=function(){let e=Ca[0].or(Ca[1]);return Ca.slice(2).forEach(t=>e=e.or(t)),e}();function Xu(e){if(!no(e))throw new Error("invalid ip address");return Aa(e)}function Hg(e){let t=Zu(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!no(t))throw new Error("invalid ip address");return t}function La(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function tl(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function Qu(e){let t=Bt(e),r=Uint8Array.from(Ze(t.length));return At([r,t],r.length+t.length)}function Ju(e){let t=fe(e);if(e=e.slice($t(t)),e.length!==t)throw new Error("inconsistent lengths");return ot(e)}function zg(e){let t;e[0]==="Q"||e[0]==="1"?t=ar(_t.decode(`z${e}`)).bytes:t=xe.parse(e).multihash.bytes;let r=Uint8Array.from(Ze(t.length));return At([r,t],r.length+t.length)}function Gg(e){let t=qg.decode(e),r=Uint8Array.from(Ze(t.length));return At([r,t],r.length+t.length)}function Wg(e){let t=fe(e),r=e.slice($t(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+ot(r,"base64url")}function $g(e){let t=fe(e),r=e.slice($t(t));if(r.length!==t)throw new Error("inconsistent lengths");return ot(r,"base58btc")}function Yg(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=Ge.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=La(n);return At([r,i],r.length+i.length)}function Zg(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=Ge.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=La(n);return At([r,i],r.length+i.length)}function ju(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=ot(t,"base32"),i=tl(r);return`${n}:${i}`}function el(e){e=Ra(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=lt(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw nl("invalid address: "+e);if(a.path===!0){n=Ra(i.slice(o).join("/")),t.push([a.code,_a(a.code,n)]),r.push([a.code,n]);break}let c=_a(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ta(a.code,c)])}return{string:rl(r),bytes:Pa(t),tuples:t,stringTuples:r,path:n}}function Na(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=fe(e,i),s=$t(o),a=lt(o),c=Xg(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let f=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw nl("Invalid address Uint8Array: "+ot(e,"base16"));t.push([o,f]);let u=Ta(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:rl(r),tuples:t,stringTuples:r,path:n}}function rl(e){let t=[];return e.map(r=>{let n=lt(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Ra(t.join("/"))}function Pa(e){return At(e.map(t=>{let r=lt(t[0]),n=Uint8Array.from(Ze(r.code));return t.length>1&&t[1]!=null&&(n=At([n,t[1]])),n}))}function Xg(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=fe(t instanceof Uint8Array?t:Uint8Array.from(t));return r+$t(r)}}function Ra(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function nl(e){return new Error("Error parsing address: "+e)}var Qg=Symbol.for("nodejs.util.inspect.custom"),ka=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Jg=[lt("dns").code,lt("dns4").code,lt("dns6").code,lt("dnsaddr").code],Da=class e{bytes;#e;#t;#r;#n;[ka]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Na(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=el(t)}else if(ol(t))r=Na(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,r,n,i,o="",s=lt("tcp"),a=lt("udp"),c=lt("ip4"),f=lt("ip6"),u=lt("dns6"),l=lt("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),Jg.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=lt(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=lt(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},lt(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>lt(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Pa(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===cn.p2p.code&&t.push([n,i]),n===cn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?ot(_t.decode(`z${n}`),"base58btc"):ot(xe.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return It(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=il.get(r.name);if(n==null)throw new et(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[Qg](){return`Multiaddr(${this.#e})`}};var il=new Map;function ol(e){return!!e?.[ka]}var jg=e=>e.toString().split("/").slice(1),zn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Lt=e=>({match:t=>zn(r=>r===e).match(t),pattern:e}),so=()=>({match:e=>zn(t=>typeof t=="string").match(e),pattern:"{string}"}),sl=()=>({match:e=>zn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ce=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{_t.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),io=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Rs.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Re=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),Ne=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),Rt=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Kt(...e){function t(i){let o=jg(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Ka=Rt(Lt("dns4"),so()),Oa=Rt(Lt("dns6"),so()),Ma=Rt(Lt("dnsaddr"),so()),al=Rt(Lt("dns"),so()),YS=Kt(Ka),ZS=Kt(Oa),XS=Kt(Ma),QS=Kt(Ne(al,Ma,Ka,Oa)),cl=Rt(Lt("ip4"),zn(eo)),fl=Rt(Lt("ip6"),zn(ro)),ul=Ne(cl,fl),Gn=Ne(ul,al,Ka,Oa,Ma),JS=Kt(Gn),jS=Kt(cl),t3=Kt(fl),e3=Kt(ul),ao=Rt(Gn,Lt("tcp"),sl()),Wn=Rt(Gn,Lt("udp"),sl()),tx=Ne(ao,Wn),r3=Kt(ao),n3=Kt(Wn),Va=Rt(Wn,Lt("quic")),co=Rt(Wn,Lt("quic-v1")),ex=Ne(Va,co),i3=Kt(Va),o3=Kt(co),Ua=Ne(Gn,ao,Wn,Va,co),ll=Ne(Rt(Ua,Lt("ws"),Re(ce()))),s3=Kt(ll),hl=Ne(Rt(Ua,Lt("wss"),Re(ce())),Rt(Ua,Lt("tls"),Lt("ws"),Re(ce()))),a3=Kt(hl),dl=Rt(tx,Lt("webrtc-direct"),io(),Re(io()),Re(ce())),c3=Kt(dl),pl=Rt(co,Lt("webtransport"),io(),io(),Re(ce())),fo=Kt(pl),oo=Ne(ll,hl,Rt(ao,Re(ce())),Rt(ex,Re(ce())),Rt(Gn,Re(ce())),dl,pl,ce()),f3=Kt(oo),rx=Rt(oo,Lt("p2p-circuit"),ce()),u3=Kt(rx),nx=Ne(Rt(oo,Lt("p2p-circuit"),Lt("webrtc"),ce()),Rt(oo,Lt("webrtc"),Re(ce())),Lt("webrtc")),l3=Kt(nx);async function Fa(e,t,r,n,i,o){let s=o.forComponent(`libp2p:webtransport:stream:${r}:${t}`),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Ct(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}},log:s};return g}function qa(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function yl(e,t){return t.filter(n=>!!e.find(i=>It(n,i))).length===t.length}var ix=Object.values(Te).map(e=>e.decoder).reduce((e,t)=>e.or(t));function ox(e){return Ce.decode(ix.decode(e))}function gl(e){if(!fo.matches(e))throw new et("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===lt("certhash").code).map(([s,a])=>ox(a??"")),n=t.filter(([s,a])=>s===lt("p2p").code).map(([s,a])=>ga(a??""))[0],i=e.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var Ha=class{log;components;config;metrics;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webtransport"),this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[Sf]=!0;async dial(t,r){r?.signal?.throwIfAborted(),this.log("dialing %s",t);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=gl(t);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},log:this.components.logger.forComponent("libp2p:webtransport:maconn"),...qa()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let d of l)d instanceof Uint8Array?await s.write(d):await s.write(d.subarray())}},f=zu()(this.components),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{this.log.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{this.log.error(`Failed to close authentication stream reader: ${l.message}`)}),!yl(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await Fa(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await Fa(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...qa()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(fo.exactMatch)}};function sx(e={}){return t=>new Ha(t,e)}return Ll(ax);})();
|
|
16
16
|
//! TODO unclear how to add backpressure here?
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|