@libp2p/webtransport 3.1.6-fdcb801e → 3.1.7-1d141331a
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 +7 -7
- package/package.json +6 -6
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};ss.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=cc[t];if(!r){r=cc[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 wd(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 Lt=lt(($2,pc)=>{var lc=pt(),hc=uc(),b=pc.exports=lc.util=lc.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 Ln(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=as;function as(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 as||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=as;var Ed=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>Ed&&(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){Ln(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){Ln(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 Sd(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=Sd;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){Ln(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 Ln(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){Ln(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 or="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",sr=[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],dc="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+=or.charAt(i>>2),r+=or.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=or.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":or.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=sr[e.charCodeAt(s++)-43],n=sr[e.charCodeAt(s++)-43],i=sr[e.charCodeAt(s++)-43],o=sr[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:
|
|
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=sr[e.charCodeAt(c++)-43],o=sr[e.charCodeAt(c++)-43],s=sr[e.charCodeAt(c++)-43],a=sr[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,dc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,dc,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 cs=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}},fs=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},Bd=function(e,t,r,n){var i=fs(e,t);i===null&&(i={}),i[r]=n,cs(e,t,i)},Ad=function(e,t,r){var n=fs(e,t);return n!==null&&(n=r in n?n[r]:null),n},Cd=function(e,t,r){var n=fs(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),cs(e,t,n)}},Id=function(e,t){cs(e,t,null)},_i=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){_i(Bd,arguments,i)};b.getItem=function(e,t,r,n){return _i(Ad,arguments,n)};b.removeItem=function(e,t,r,n){_i(Cd,arguments,n)};b.clearItems=function(e,t,r){_i(Id,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(h){if(f.push(h.data),f.length===s){for(var y=0;y<s;++y)c[y].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]=[],h=0;h<s;++h)if(f!==h){var y=a[h];(u.st>y.st&&u.st<y.et||y.st>u.st&&y.st<u.et)&&l.push(h)}return c.reduce(function(d,p){return Math.max(d,p.length)},0)}}});var Li=lt((W2,yc)=>{var Rn=pt();Rn.pki=Rn.pki||{};var us=yc.exports=Rn.pki.oids=Rn.oids=Rn.oids||{};function D(e,t){us[e]=t,us[t]=e}function ft(e,t){us[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");ft("2.5.29.1","authorityKeyIdentifier");ft("2.5.29.2","keyAttributes");ft("2.5.29.3","certificatePolicies");ft("2.5.29.4","keyUsageRestriction");ft("2.5.29.5","policyMapping");ft("2.5.29.6","subtreesConstraint");ft("2.5.29.7","subjectAltName");ft("2.5.29.8","issuerAltName");ft("2.5.29.9","subjectDirectoryAttributes");ft("2.5.29.10","basicConstraints");ft("2.5.29.11","nameConstraints");ft("2.5.29.12","policyConstraints");ft("2.5.29.13","basicConstraints");D("2.5.29.14","subjectKeyIdentifier");D("2.5.29.15","keyUsage");ft("2.5.29.16","privateKeyUsagePeriod");D("2.5.29.17","subjectAltName");D("2.5.29.18","issuerAltName");D("2.5.29.19","basicConstraints");ft("2.5.29.20","cRLNumber");ft("2.5.29.21","cRLReason");ft("2.5.29.22","expirationDate");ft("2.5.29.23","instructionCode");ft("2.5.29.24","invalidityDate");ft("2.5.29.25","cRLDistributionPoints");ft("2.5.29.26","issuingDistributionPoint");ft("2.5.29.27","deltaCRLIndicator");ft("2.5.29.28","issuingDistributionPoint");ft("2.5.29.29","certificateIssuer");ft("2.5.29.30","nameConstraints");D("2.5.29.31","cRLDistributionPoints");D("2.5.29.32","certificatePolicies");ft("2.5.29.33","policyMappings");ft("2.5.29.34","policyConstraints");D("2.5.29.35","authorityKeyIdentifier");ft("2.5.29.36","policyConstraints");D("2.5.29.37","extKeyUsage");ft("2.5.29.46","freshestCRL");ft("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 Pn=lt((Y2,mc)=>{var bt=pt();Lt();Li();var F=mc.exports=bt.asn1=bt.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(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=F.copy(a)),a};F.copy=function(e,t){var r;if(bt.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(bt.util.isArray(e)){if(!bt.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 Nn(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 Td=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;Nn(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=bt.util.createBuffer(e));var r=e.length(),n=Ri(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 Ri(e,t,r,n){var i;Nn(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Td(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,h=(o&32)===32;if(h)if(u=[],c===void 0)for(;;){if(Nn(e,t,2),e.bytes(2)===String.fromCharCode(0,0)){e.getBytes(2),t-=2;break}i=e.length(),u.push(Ri(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Ri(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 y=e.read,d=t,p=0;if(a===F.Type.BITSTRING&&(Nn(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var g={strict:!0,decodeBitStrings:!0},m=Ri(e,t,r+1,g),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=y,t=d)}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)Nn(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,h,u,A)}F.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=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=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};F.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};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),h=u*60+l;h*=6e4,c==="+"?t.setTime(+t-h):t.setTime(+t+h)}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,h=e.charAt(l);if(h==="+"||h==="-"){var y=parseInt(e.substr(l+1,2),10),d=parseInt(e.substr(l+4,2),10);f=y*60+d,f*=6e4,h==="+"&&(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=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};F.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)};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&&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=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 gc=/[^\\u0000-\\u00ff]/;F.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
|
|
2
|
+
"use strict";var Libp2PWebtransport=(()=>{var kl=Object.create;var ri=Object.defineProperty;var Ul=Object.getOwnPropertyDescriptor;var Kl=Object.getOwnPropertyNames;var Ol=Object.getPrototypeOf,Ml=Object.prototype.hasOwnProperty;var ht=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Nt=(e,t)=>{for(var r in t)ri(e,r,{get:t[r],enumerable:!0})},s0=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Kl(t))!Ml.call(e,i)&&i!==r&&ri(e,i,{get:()=>t[i],enumerable:!(n=Ul(t,i))||n.enumerable});return e};var Wt=(e,t,r)=>(r=e!=null?kl(Ol(e)):{},s0(t||!e||!e.__esModule?ri(r,"default",{value:e,enumerable:!0}):r,e)),Fl=e=>s0(ri({},"__esModule",{value:!0}),e);var l0=ht((Ym,u0)=>{"use strict";function f0(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function Yl(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 f0(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),f0(new i,r)}}u0.exports=Yl});var pt=ht((z2,fc)=>{fc.exports={options:{usePureJavaScript:!1}}});var hc=ht((G2,lc)=>{var ss={};lc.exports=ss;var uc={};ss.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=Sd(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};ss.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=uc[t];if(!r){r=uc[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 Sd(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 Lt=ht(($2,gc)=>{var dc=pt(),pc=hc(),b=gc.exports=dc.util=dc.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 Ln(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=as;function as(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 as||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=as;var Bd=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>Bd&&(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){Ln(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){Ln(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 Ad(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=Ad;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){Ln(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 Ln(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){Ln(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 or="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",sr=[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],yc="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+=or.charAt(i>>2),r+=or.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=or.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":or.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=sr[e.charCodeAt(s++)-43],n=sr[e.charCodeAt(s++)-43],i=sr[e.charCodeAt(s++)-43],o=sr[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:pc.encode,decode:pc.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+=or.charAt(i>>2),r+=or.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=or.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":or.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=sr[e.charCodeAt(c++)-43],o=sr[e.charCodeAt(c++)-43],s=sr[e.charCodeAt(c++)-43],a=sr[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,yc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,yc,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 cs=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}},fs=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},Cd=function(e,t,r,n){var i=fs(e,t);i===null&&(i={}),i[r]=n,cs(e,t,i)},Id=function(e,t,r){var n=fs(e,t);return n!==null&&(n=r in n?n[r]:null),n},Td=function(e,t,r){var n=fs(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),cs(e,t,n)}},_d=function(e,t){cs(e,t,null)},_i=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){_i(Cd,arguments,i)};b.getItem=function(e,t,r,n){return _i(Id,arguments,n)};b.removeItem=function(e,t,r,n){_i(Td,arguments,n)};b.clearItems=function(e,t,r){_i(_d,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(h){if(f.push(h.data),f.length===s){for(var y=0;y<s;++y)c[y].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]=[],h=0;h<s;++h)if(f!==h){var y=a[h];(u.st>y.st&&u.st<y.et||y.st>u.st&&y.st<u.et)&&l.push(h)}return c.reduce(function(d,p){return Math.max(d,p.length)},0)}}});var Li=ht((W2,mc)=>{var Rn=pt();Rn.pki=Rn.pki||{};var us=mc.exports=Rn.pki.oids=Rn.oids=Rn.oids||{};function D(e,t){us[e]=t,us[t]=e}function ft(e,t){us[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");ft("2.5.29.1","authorityKeyIdentifier");ft("2.5.29.2","keyAttributes");ft("2.5.29.3","certificatePolicies");ft("2.5.29.4","keyUsageRestriction");ft("2.5.29.5","policyMapping");ft("2.5.29.6","subtreesConstraint");ft("2.5.29.7","subjectAltName");ft("2.5.29.8","issuerAltName");ft("2.5.29.9","subjectDirectoryAttributes");ft("2.5.29.10","basicConstraints");ft("2.5.29.11","nameConstraints");ft("2.5.29.12","policyConstraints");ft("2.5.29.13","basicConstraints");D("2.5.29.14","subjectKeyIdentifier");D("2.5.29.15","keyUsage");ft("2.5.29.16","privateKeyUsagePeriod");D("2.5.29.17","subjectAltName");D("2.5.29.18","issuerAltName");D("2.5.29.19","basicConstraints");ft("2.5.29.20","cRLNumber");ft("2.5.29.21","cRLReason");ft("2.5.29.22","expirationDate");ft("2.5.29.23","instructionCode");ft("2.5.29.24","invalidityDate");ft("2.5.29.25","cRLDistributionPoints");ft("2.5.29.26","issuingDistributionPoint");ft("2.5.29.27","deltaCRLIndicator");ft("2.5.29.28","issuingDistributionPoint");ft("2.5.29.29","certificateIssuer");ft("2.5.29.30","nameConstraints");D("2.5.29.31","cRLDistributionPoints");D("2.5.29.32","certificatePolicies");ft("2.5.29.33","policyMappings");ft("2.5.29.34","policyConstraints");D("2.5.29.35","authorityKeyIdentifier");ft("2.5.29.36","policyConstraints");D("2.5.29.37","extKeyUsage");ft("2.5.29.46","freshestCRL");ft("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 Pn=ht((Y2,bc)=>{var bt=pt();Lt();Li();var F=bc.exports=bt.asn1=bt.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(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=F.copy(a)),a};F.copy=function(e,t){var r;if(bt.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(bt.util.isArray(e)){if(!bt.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 Nn(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 Ld=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;Nn(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=bt.util.createBuffer(e));var r=e.length(),n=Ri(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 Ri(e,t,r,n){var i;Nn(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Ld(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,h=(o&32)===32;if(h)if(u=[],c===void 0)for(;;){if(Nn(e,t,2),e.bytes(2)===String.fromCharCode(0,0)){e.getBytes(2),t-=2;break}i=e.length(),u.push(Ri(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Ri(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 y=e.read,d=t,p=0;if(a===F.Type.BITSTRING&&(Nn(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var g={strict:!0,decodeBitStrings:!0},m=Ri(e,t,r+1,g),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=y,t=d)}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)Nn(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,h,u,A)}F.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=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=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};F.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};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),h=u*60+l;h*=6e4,c==="+"?t.setTime(+t-h):t.setTime(+t+h)}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,h=e.charAt(l);if(h==="+"||h==="-"){var y=parseInt(e.substr(l+1,2),10),d=parseInt(e.substr(l+4,2),10);f=y*60+d,f*=6e4,h==="+"&&(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=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};F.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)};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&&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=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 xc=/[^\\u0000-\\u00ff]/;F.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
|
|
6
6
|
`);for(var i="",o=0;o<t*r;++o)i+=" ";switch(n+=i+"Tag: ",e.tagClass){case F.Class.UNIVERSAL:n+="Universal:";break;case F.Class.APPLICATION:n+="Application:";break;case F.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case F.Class.PRIVATE:n+="Private:";break}if(e.tagClass===F.Class.UNIVERSAL)switch(n+=e.type,e.type){case F.Type.NONE:n+=" (None)";break;case F.Type.BOOLEAN:n+=" (Boolean)";break;case F.Type.INTEGER:n+=" (Integer)";break;case F.Type.BITSTRING:n+=" (Bit string)";break;case F.Type.OCTETSTRING:n+=" (Octet string)";break;case F.Type.NULL:n+=" (Null)";break;case F.Type.OID:n+=" (Object Identifier)";break;case F.Type.ODESC:n+=" (Object Descriptor)";break;case F.Type.EXTERNAL:n+=" (External or Instance of)";break;case F.Type.REAL:n+=" (Real)";break;case F.Type.ENUMERATED:n+=" (Enumerated)";break;case F.Type.EMBEDDED:n+=" (Embedded PDV)";break;case F.Type.UTF8:n+=" (UTF8)";break;case F.Type.ROID:n+=" (Relative Object Identifier)";break;case F.Type.SEQUENCE:n+=" (Sequence)";break;case F.Type.SET:n+=" (Set)";break;case F.Type.PRINTABLESTRING:n+=" (Printable String)";break;case F.Type.IA5String:n+=" (IA5String (ASCII))";break;case F.Type.UTCTIME:n+=" (UTC time)";break;case F.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case F.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,bt.pki&&bt.pki.oids&&c in bt.pki.oids&&(n+=" ("+bt.pki.oids[c]+") ")}if(e.type===F.Type.INTEGER)try{n+=F.derToInteger(e.value)}catch{n+="0x"+bt.util.bytesToHex(e.value)}else if(e.type===F.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===F.Type.OCTETSTRING)gc.test(e.value)||(n+="("+e.value+") "),n+="0x"+bt.util.bytesToHex(e.value);else if(e.type===F.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===F.Type.PRINTABLESTRING||e.type===F.Type.IA5String?n+=e.value:gc.test(e.value)?n+="0x"+bt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var hs=lt((Z2,xc)=>{var kt=pt();Lt();xc.exports=kt.cipher=kt.cipher||{};kt.cipher.algorithms=kt.cipher.algorithms||{};kt.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=kt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new kt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};kt.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=kt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new kt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};kt.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),kt.cipher.algorithms[e]=t};kt.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in kt.cipher.algorithms?kt.cipher.algorithms[e]:null};var ls=kt.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)};ls.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=kt.util.createBuffer(),this.output=e.output||kt.util.createBuffer(),this.mode.start(t)};ls.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()};ls.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 ps=lt((X2,bc)=>{var Ut=pt();Lt();Ut.cipher=Ut.cipher||{};var nt=bc.exports=Ut.cipher.modes=Ut.cipher.modes||{};nt.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)};nt.ecb.prototype.start=function(e){};nt.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])};nt.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])};nt.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.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)};nt.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)};nt.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=Ni(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};nt.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};nt.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)};nt.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.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)};nt.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=Ut.util.createBuffer(),this._partialBytes=0};nt.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ni(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.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};nt.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};nt.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=Ut.util.createBuffer(),this._partialBytes=0};nt.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ni(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.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};nt.ofb.prototype.decrypt=nt.ofb.prototype.encrypt;nt.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=Ut.util.createBuffer(),this._partialBytes=0};nt.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ni(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.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}Pi(this._inBlock)};nt.ctr.prototype.decrypt=nt.ctr.prototype.encrypt;nt.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=Ut.util.createBuffer(),this._partialBytes=0,this._R=3774873600};nt.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Ut.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Ut.util.createBuffer(e.additionalData):r=Ut.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Ut.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(ds(n*8)))}this._inBlock=this._j0.slice(0),Pi(this._inBlock),this._partialBytes=0,r=Ut.util.createBuffer(r),this._aDataLength=ds(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()])};nt.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),Pi(this._inBlock)};nt.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),Pi(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};nt.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Ut.util.createBuffer();var n=this._aDataLength.concat(ds(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};nt.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};nt.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)};nt.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};nt.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)};nt.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};nt.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 Ni(e,t){if(typeof e=="string"&&(e=Ut.util.createBuffer(e)),Ut.util.isArray(e)&&e.length>4){var r=e;e=Ut.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(!Ut.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Pi(e){e[e.length-1]=e[e.length-1]+1&4294967295}function ds(e){return[e/4294967296|0,e&4294967295]}});var xs=lt((Q2,Sc)=>{var gt=pt();hs();ps();Lt();Sc.exports=gt.aes=gt.aes||{};gt.aes.startEncrypting=function(e,t,r,n){var i=Di({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};gt.aes.createEncryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!1,mode:t})};gt.aes.startDecrypting=function(e,t,r,n){var i=Di({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};gt.aes.createDecryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!0,mode:t})};gt.aes.Algorithm=function(e,t){ms||wc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return gs(r._w,n,i,!1)},decrypt:function(n,i){return gs(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=Ec(t,e.decrypt&&!s),this._init=!0}};gt.aes._expandKey=function(e,t){return ms||wc(),Ec(e,t)};gt.aes._updateBlock=gs;Xr("AES-ECB",gt.cipher.modes.ecb);Xr("AES-CBC",gt.cipher.modes.cbc);Xr("AES-CFB",gt.cipher.modes.cfb);Xr("AES-OFB",gt.cipher.modes.ofb);Xr("AES-CTR",gt.cipher.modes.ctr);Xr("AES-GCM",gt.cipher.modes.gcm);function Xr(e,t){var r=function(){return new gt.aes.Algorithm(e,t)};gt.cipher.registerAlgorithm(e,r)}var ms=!1,Zr=4,Yt,ys,vc,vr,ge;function wc(){ms=!0,vc=[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;Yt=new Array(256),ys=new Array(256),vr=new Array(4),ge=new Array(4);for(var t=0;t<4;++t)vr[t]=new Array(256),ge[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,Yt[r]=a,ys[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)vr[l][r]=f,ge[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 Ec(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Zr*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Yt[n>>>16&255]<<24^Yt[n>>>8&255]<<16^Yt[n&255]<<8^Yt[n>>>24]^vc[i]<<24,i++):o>6&&c%o===4&&(n=Yt[n>>>24]<<24^Yt[n>>>16&255]<<16^Yt[n>>>8&255]<<8^Yt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=ge[0],l=ge[1],h=ge[2],y=ge[3],d=r.slice(0);a=r.length;for(var c=0,p=a-Zr;c<a;c+=Zr,p-=Zr)if(c===0||c===a-Zr)d[c]=r[p],d[c+1]=r[p+3],d[c+2]=r[p+2],d[c+3]=r[p+1];else for(var g=0;g<Zr;++g)f=r[p+g],d[c+(3&-g)]=u[Yt[f>>>24]]^l[Yt[f>>>16&255]]^h[Yt[f>>>8&255]]^y[Yt[f&255]];r=d}return r}function gs(e,t,r,n){var i=e.length/4-1,o,s,a,c,f;n?(o=ge[0],s=ge[1],a=ge[2],c=ge[3],f=ys):(o=vr[0],s=vr[1],a=vr[2],c=vr[3],f=Yt);var u,l,h,y,d,p,g;u=t[0]^e[0],l=t[n?3:1]^e[1],h=t[2]^e[2],y=t[n?1:3]^e[3];for(var m=3,v=1;v<i;++v)d=o[u>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[y&255]^e[++m],p=o[l>>>24]^s[h>>>16&255]^a[y>>>8&255]^c[u&255]^e[++m],g=o[h>>>24]^s[y>>>16&255]^a[u>>>8&255]^c[l&255]^e[++m],y=o[y>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[h&255]^e[++m],u=d,l=p,h=g;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[h>>>8&255]<<8^f[y&255]^e[++m],r[n?3:1]=f[l>>>24]<<24^f[h>>>16&255]<<16^f[y>>>8&255]<<8^f[u&255]^e[++m],r[2]=f[h>>>24]<<24^f[y>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++m],r[n?1:3]=f[y>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[h&255]^e[++m]}function Di(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 Cc=lt((J2,Ac)=>{var Et=pt();hs();ps();Lt();Ac.exports=Et.des=Et.des||{};Et.des.startEncrypting=function(e,t,r,n){var i=ki({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createEncryptionCipher=function(e,t){return ki({key:e,output:null,decrypt:!1,mode:t})};Et.des.startDecrypting=function(e,t,r,n){var i=ki({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createDecryptionCipher=function(e,t){return ki({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 Bc(r._keys,n,i,!1)},decrypt:function(n,i){return Bc(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=Kd(t),this._init=!0}};Se("DES-ECB",Et.cipher.modes.ecb);Se("DES-CBC",Et.cipher.modes.cbc);Se("DES-CFB",Et.cipher.modes.cfb);Se("DES-OFB",Et.cipher.modes.ofb);Se("DES-CTR",Et.cipher.modes.ctr);Se("3DES-ECB",Et.cipher.modes.ecb);Se("3DES-CBC",Et.cipher.modes.cbc);Se("3DES-CFB",Et.cipher.modes.cfb);Se("3DES-OFB",Et.cipher.modes.ofb);Se("3DES-CTR",Et.cipher.modes.ctr);function Se(e,t){var r=function(){return new Et.des.Algorithm(e,t)};Et.cipher.registerAlgorithm(e,r)}var _d=[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],Ld=[-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],Rd=[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],Nd=[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],Pd=[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],Dd=[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],kd=[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],Ud=[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 Kd(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],h=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],y=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],d=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,g=[],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]|h[B>>>12&15]|y[B>>>8&15]|d[B>>>4&15];x=(O>>>16^_)&65535,g[v++]=_^x,g[v++]=O^x<<16}}return g}function Bc(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],h=o[f];h!=u;h+=l){var y=c^e[h],d=(c>>>4|c<<28)^e[h+1];s=a,a=c,c=s^(Ld[y>>>24&63]|Nd[y>>>16&63]|Dd[y>>>8&63]|Ud[y&63]|_d[d>>>24&63]|Rd[d>>>16&63]|Pd[d>>>8&63]|kd[d&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 ki(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 wr=lt((j2,Ic)=>{var Ui=pt();Ic.exports=Ui.md=Ui.md||{};Ui.md.algorithms=Ui.md.algorithms||{}});var _c=lt((tb,Tc)=>{var He=pt();wr();Lt();var Od=Tc.exports=He.hmac=He.hmac||{};Od.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 He.md.algorithms)t=He.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=He.util.createBuffer(s);else if(He.util.isArray(s)){var a=s;s=He.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=He.util.createBuffer(),n=He.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 Ki=lt(()=>{});var Rc=lt((nb,Lc)=>{var Zt=pt();_c();wr();Lt();var Md=Zt.pkcs5=Zt.pkcs5||{},ze;Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&(ze=Ki());Lc.exports=Zt.pbkdf2=Md.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&ze.pbkdf2&&(i===null||typeof i!="object")&&(ze.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?ze.pbkdf2Sync.length===4?ze.pbkdf2(e,t,r,n,function(x,A){if(x)return o(x);o(null,A.toString("binary"))}):ze.pbkdf2(e,t,r,n,i,function(x,A){if(x)return o(x);o(null,A.toString("binary"))}):ze.pbkdf2Sync.length===4?ze.pbkdf2Sync(e,t,r,n).toString("binary"):ze.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Zt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Zt.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=Zt.hmac.create();u.start(i,e);var l="",h,y,d;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Zt.util.int32ToBytes(p)),h=d=u.digest().getBytes();for(var g=2;g<=r;++g)u.start(null,null),u.update(d),y=u.digest().getBytes(),h=Zt.util.xorBytes(h,y,s),d=y;l+=p<c?h:h.substr(0,f)}return l}var p=1,g;function m(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Zt.util.int32ToBytes(p)),h=d=u.digest().getBytes(),g=2,v()}function v(){if(g<=r)return u.start(null,null),u.update(d),y=u.digest().getBytes(),h=Zt.util.xorBytes(h,y,s),d=y,++g,Zt.util.setImmediate(v);l+=p<c?h:h.substr(0,f),++p,m()}m()}});var Dc=lt((ib,Pc)=>{var Mi=pt();Lt();var Nc=Pc.exports=Mi.pem=Mi.pem||{};Nc.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
|
|
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,bt.pki&&bt.pki.oids&&c in bt.pki.oids&&(n+=" ("+bt.pki.oids[c]+") ")}if(e.type===F.Type.INTEGER)try{n+=F.derToInteger(e.value)}catch{n+="0x"+bt.util.bytesToHex(e.value)}else if(e.type===F.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===F.Type.OCTETSTRING)xc.test(e.value)||(n+="("+e.value+") "),n+="0x"+bt.util.bytesToHex(e.value);else if(e.type===F.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===F.Type.PRINTABLESTRING||e.type===F.Type.IA5String?n+=e.value:xc.test(e.value)?n+="0x"+bt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var hs=ht((Z2,vc)=>{var kt=pt();Lt();vc.exports=kt.cipher=kt.cipher||{};kt.cipher.algorithms=kt.cipher.algorithms||{};kt.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=kt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new kt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};kt.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=kt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new kt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};kt.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),kt.cipher.algorithms[e]=t};kt.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in kt.cipher.algorithms?kt.cipher.algorithms[e]:null};var ls=kt.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)};ls.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=kt.util.createBuffer(),this.output=e.output||kt.util.createBuffer(),this.mode.start(t)};ls.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()};ls.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 ps=ht((X2,wc)=>{var Ut=pt();Lt();Ut.cipher=Ut.cipher||{};var nt=wc.exports=Ut.cipher.modes=Ut.cipher.modes||{};nt.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)};nt.ecb.prototype.start=function(e){};nt.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])};nt.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])};nt.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.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)};nt.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)};nt.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=Ni(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};nt.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};nt.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)};nt.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.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)};nt.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=Ut.util.createBuffer(),this._partialBytes=0};nt.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ni(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.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};nt.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};nt.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=Ut.util.createBuffer(),this._partialBytes=0};nt.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ni(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.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};nt.ofb.prototype.decrypt=nt.ofb.prototype.encrypt;nt.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=Ut.util.createBuffer(),this._partialBytes=0};nt.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ni(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.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}Pi(this._inBlock)};nt.ctr.prototype.decrypt=nt.ctr.prototype.encrypt;nt.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=Ut.util.createBuffer(),this._partialBytes=0,this._R=3774873600};nt.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Ut.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Ut.util.createBuffer(e.additionalData):r=Ut.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Ut.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(ds(n*8)))}this._inBlock=this._j0.slice(0),Pi(this._inBlock),this._partialBytes=0,r=Ut.util.createBuffer(r),this._aDataLength=ds(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()])};nt.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),Pi(this._inBlock)};nt.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),Pi(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};nt.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Ut.util.createBuffer();var n=this._aDataLength.concat(ds(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};nt.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};nt.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)};nt.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};nt.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)};nt.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};nt.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 Ni(e,t){if(typeof e=="string"&&(e=Ut.util.createBuffer(e)),Ut.util.isArray(e)&&e.length>4){var r=e;e=Ut.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(!Ut.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Pi(e){e[e.length-1]=e[e.length-1]+1&4294967295}function ds(e){return[e/4294967296|0,e&4294967295]}});var xs=ht((Q2,Ac)=>{var gt=pt();hs();ps();Lt();Ac.exports=gt.aes=gt.aes||{};gt.aes.startEncrypting=function(e,t,r,n){var i=Di({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};gt.aes.createEncryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!1,mode:t})};gt.aes.startDecrypting=function(e,t,r,n){var i=Di({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};gt.aes.createDecryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!0,mode:t})};gt.aes.Algorithm=function(e,t){ms||Sc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return gs(r._w,n,i,!1)},decrypt:function(n,i){return gs(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=Bc(t,e.decrypt&&!s),this._init=!0}};gt.aes._expandKey=function(e,t){return ms||Sc(),Bc(e,t)};gt.aes._updateBlock=gs;Xr("AES-ECB",gt.cipher.modes.ecb);Xr("AES-CBC",gt.cipher.modes.cbc);Xr("AES-CFB",gt.cipher.modes.cfb);Xr("AES-OFB",gt.cipher.modes.ofb);Xr("AES-CTR",gt.cipher.modes.ctr);Xr("AES-GCM",gt.cipher.modes.gcm);function Xr(e,t){var r=function(){return new gt.aes.Algorithm(e,t)};gt.cipher.registerAlgorithm(e,r)}var ms=!1,Zr=4,Yt,ys,Ec,vr,ge;function Sc(){ms=!0,Ec=[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;Yt=new Array(256),ys=new Array(256),vr=new Array(4),ge=new Array(4);for(var t=0;t<4;++t)vr[t]=new Array(256),ge[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,Yt[r]=a,ys[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)vr[l][r]=f,ge[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 Bc(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Zr*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Yt[n>>>16&255]<<24^Yt[n>>>8&255]<<16^Yt[n&255]<<8^Yt[n>>>24]^Ec[i]<<24,i++):o>6&&c%o===4&&(n=Yt[n>>>24]<<24^Yt[n>>>16&255]<<16^Yt[n>>>8&255]<<8^Yt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=ge[0],l=ge[1],h=ge[2],y=ge[3],d=r.slice(0);a=r.length;for(var c=0,p=a-Zr;c<a;c+=Zr,p-=Zr)if(c===0||c===a-Zr)d[c]=r[p],d[c+1]=r[p+3],d[c+2]=r[p+2],d[c+3]=r[p+1];else for(var g=0;g<Zr;++g)f=r[p+g],d[c+(3&-g)]=u[Yt[f>>>24]]^l[Yt[f>>>16&255]]^h[Yt[f>>>8&255]]^y[Yt[f&255]];r=d}return r}function gs(e,t,r,n){var i=e.length/4-1,o,s,a,c,f;n?(o=ge[0],s=ge[1],a=ge[2],c=ge[3],f=ys):(o=vr[0],s=vr[1],a=vr[2],c=vr[3],f=Yt);var u,l,h,y,d,p,g;u=t[0]^e[0],l=t[n?3:1]^e[1],h=t[2]^e[2],y=t[n?1:3]^e[3];for(var m=3,v=1;v<i;++v)d=o[u>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[y&255]^e[++m],p=o[l>>>24]^s[h>>>16&255]^a[y>>>8&255]^c[u&255]^e[++m],g=o[h>>>24]^s[y>>>16&255]^a[u>>>8&255]^c[l&255]^e[++m],y=o[y>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[h&255]^e[++m],u=d,l=p,h=g;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[h>>>8&255]<<8^f[y&255]^e[++m],r[n?3:1]=f[l>>>24]<<24^f[h>>>16&255]<<16^f[y>>>8&255]<<8^f[u&255]^e[++m],r[2]=f[h>>>24]<<24^f[y>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++m],r[n?1:3]=f[y>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[h&255]^e[++m]}function Di(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 Tc=ht((J2,Ic)=>{var Et=pt();hs();ps();Lt();Ic.exports=Et.des=Et.des||{};Et.des.startEncrypting=function(e,t,r,n){var i=ki({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createEncryptionCipher=function(e,t){return ki({key:e,output:null,decrypt:!1,mode:t})};Et.des.startDecrypting=function(e,t,r,n){var i=ki({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createDecryptionCipher=function(e,t){return ki({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 Cc(r._keys,n,i,!1)},decrypt:function(n,i){return Cc(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=Md(t),this._init=!0}};Se("DES-ECB",Et.cipher.modes.ecb);Se("DES-CBC",Et.cipher.modes.cbc);Se("DES-CFB",Et.cipher.modes.cfb);Se("DES-OFB",Et.cipher.modes.ofb);Se("DES-CTR",Et.cipher.modes.ctr);Se("3DES-ECB",Et.cipher.modes.ecb);Se("3DES-CBC",Et.cipher.modes.cbc);Se("3DES-CFB",Et.cipher.modes.cfb);Se("3DES-OFB",Et.cipher.modes.ofb);Se("3DES-CTR",Et.cipher.modes.ctr);function Se(e,t){var r=function(){return new Et.des.Algorithm(e,t)};Et.cipher.registerAlgorithm(e,r)}var Rd=[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],Nd=[-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],Pd=[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],Dd=[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],kd=[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],Ud=[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],Kd=[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],Od=[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 Md(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],h=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],y=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],d=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,g=[],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]|h[B>>>12&15]|y[B>>>8&15]|d[B>>>4&15];x=(O>>>16^_)&65535,g[v++]=_^x,g[v++]=O^x<<16}}return g}function Cc(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],h=o[f];h!=u;h+=l){var y=c^e[h],d=(c>>>4|c<<28)^e[h+1];s=a,a=c,c=s^(Nd[y>>>24&63]|Dd[y>>>16&63]|Ud[y>>>8&63]|Od[y&63]|Rd[d>>>24&63]|Pd[d>>>16&63]|kd[d>>>8&63]|Kd[d&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 ki(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 wr=ht((j2,_c)=>{var Ui=pt();_c.exports=Ui.md=Ui.md||{};Ui.md.algorithms=Ui.md.algorithms||{}});var Rc=ht((tb,Lc)=>{var He=pt();wr();Lt();var Fd=Lc.exports=He.hmac=He.hmac||{};Fd.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 He.md.algorithms)t=He.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=He.util.createBuffer(s);else if(He.util.isArray(s)){var a=s;s=He.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=He.util.createBuffer(),n=He.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 Ki=ht(()=>{});var Pc=ht((nb,Nc)=>{var Zt=pt();Rc();wr();Lt();var Vd=Zt.pkcs5=Zt.pkcs5||{},ze;Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&(ze=Ki());Nc.exports=Zt.pbkdf2=Vd.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&ze.pbkdf2&&(i===null||typeof i!="object")&&(ze.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?ze.pbkdf2Sync.length===4?ze.pbkdf2(e,t,r,n,function(x,A){if(x)return o(x);o(null,A.toString("binary"))}):ze.pbkdf2(e,t,r,n,i,function(x,A){if(x)return o(x);o(null,A.toString("binary"))}):ze.pbkdf2Sync.length===4?ze.pbkdf2Sync(e,t,r,n).toString("binary"):ze.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Zt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Zt.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=Zt.hmac.create();u.start(i,e);var l="",h,y,d;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Zt.util.int32ToBytes(p)),h=d=u.digest().getBytes();for(var g=2;g<=r;++g)u.start(null,null),u.update(d),y=u.digest().getBytes(),h=Zt.util.xorBytes(h,y,s),d=y;l+=p<c?h:h.substr(0,f)}return l}var p=1,g;function m(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Zt.util.int32ToBytes(p)),h=d=u.digest().getBytes(),g=2,v()}function v(){if(g<=r)return u.start(null,null),u.update(d),y=u.digest().getBytes(),h=Zt.util.xorBytes(h,y,s),d=y,++g,Zt.util.setImmediate(v);l+=p<c?h:h.substr(0,f),++p,m()}m()}});var Uc=ht((ib,kc)=>{var Mi=pt();Lt();var Dc=kc.exports=Mi.pem=Mi.pem||{};Dc.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
|
|
9
9
|
`,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=Oi(n)),e.contentDomain&&(n={name:"Content-Domain",values:[e.contentDomain]},r+=Oi(n)),e.dekInfo&&(n={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&n.values.push(e.dekInfo.parameters),r+=Oi(n)),e.headers)for(var i=0;i<e.headers.length;++i)r+=Oi(e.headers[i]);return e.procType&&(r+=`\r
|
|
10
10
|
`),r+=Mi.util.encode64(e.body,t.maxline||64)+`\r
|
|
11
11
|
`,r+="-----END "+e.type+`-----\r
|
|
12
|
-
`,r};
|
|
12
|
+
`,r};Dc.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:Mi.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 h=c[l];if(!/\s/.test(h[0]))break;u+=h,f=l}if(o=u.match(n),o){for(var y={name:o[1],values:[]},d=o[2].split(","),p=0;p<d.length;++p)y.values.push(qd(d[p]));if(a.procType)if(!a.contentDomain&&y.name==="Content-Domain")a.contentDomain=d[0]||"";else if(!a.dekInfo&&y.name==="DEK-Info"){if(y.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:d[0],parameters:d[1]||null}}else a.headers.push(y);else{if(y.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(y.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:d[0],type:d[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(t.length===0)throw new Error("Invalid PEM formatted message.");return t};function Oi(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 Fd(e){return e.replace(/^\s+/,"")}});var Fc=lt((ob,Mc)=>{var Be=pt();wr();Lt();var Uc=Mc.exports=Be.sha256=Be.sha256||{};Be.md.sha256=Be.md.algorithms.sha256=Uc;Uc.create=function(){Kc||Vd();var e=null,t=Be.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=Be.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=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),kc(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(bs.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};kc(l,r,i);var h=Be.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var bs=null,Kc=!1,Oc=null;function Vd(){bs=String.fromCharCode(128),bs+=Be.util.fillString(String.fromCharCode(0),64),Oc=[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],Kc=!0}function kc(e,t,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,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,h=e.h2,y=e.h3,d=e.h4,p=e.h5,g=e.h6,m=e.h7,f=0;f<64;++f)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=g^d&(p^g),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|h&(u^l),n=m+s+a+Oc[f]+t[f],i=o+c,m=g,g=p,p=d,d=y+n>>>0,y=h,h=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+h|0,e.h3=e.h3+y|0,e.h4=e.h4+d|0,e.h5=e.h5+p|0,e.h6=e.h6+g|0,e.h7=e.h7+m|0,v-=64}}});var qc=lt((sb,Vc)=>{var Ae=pt();Lt();var Fi=null;Ae.util.isNodejs&&!Ae.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Fi=Ki());var qd=Vc.exports=Ae.prng=Ae.prng||{};qd.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,h=t.plugin.increment,y=t.plugin.formatKey,d=t.plugin.formatSeed,p=Ae.util.createBuffer();t.key=null,g();function g(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 Ae.util.nextTick(function(){o(g)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=y(l(t.key,h(t.seed))),t.seed=d(l(t.key,t.seed)),Ae.util.setImmediate(g)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,h=t.plugin.formatKey,y=t.plugin.formatSeed;t.key=null;for(var d=Ae.util.createBuffer();d.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,d.putBytes(p),t.key=h(u(t.key,l(t.seed))),t.seed=y(u(t.key,t.seed))}return d.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,h){if(l)return f(l);t.collect(h),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 h=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(h),t.generated=0}function c(f){var u=null,l=Ae.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(S){return h.getRandomValues(S)});var y=Ae.util.createBuffer();if(u)for(;y.length()<f;){var d=Math.max(1,Math.min(f-y.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{u(p);for(var g=0;g<p.length;++g)y.putInt32(p[g])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(y.length()<f)for(var m,v,x,A=Math.floor(Math.random()*65536);y.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 g=0;g<3;++g)x=A>>>(g<<3),x^=Math.floor(Math.random()*256),y.putByte(x&255)}return y.getBytes(f)}return Fi?(t.seedFile=function(f,u){Fi.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},t.seedFileSync=function(f){return Fi.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="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,h){function y(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",y),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",y),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var h=l.data;h.forge&&h.forge.prng&&t.seedFile(h.forge.prng.needed,function(y,d){f.postMessage({forge:{prng:{err:y,bytes:d}}})})};f.addEventListener("message",u)}},t}});var Dn=lt((ab,vs)=>{var Kt=pt();xs();Fc();qc();Lt();(function(){if(Kt.random&&Kt.random.getBytes){vs.exports=Kt.random;return}(function(e){var t={},r=new Array(4),n=Kt.util.createBuffer();t.formatKey=function(l){var h=Kt.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Kt.aes._expandKey(l,!1)},t.formatSeed=function(l){var h=Kt.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},t.cipher=function(l,h){return Kt.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Kt.md.sha256;function i(){var l=Kt.prng.create(t);return l.getBytes=function(h,y){return l.generate(h,y)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=Kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Kt.options.usePureJavaScript||!Kt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Kt.random)Kt.random=o;else for(var u in o)Kt.random[u]=o[u];Kt.random.createInstance=i,vs.exports=Kt.random})(typeof jQuery<"u"?jQuery:null)})()});var $c=lt((cb,Gc)=>{var Qt=pt();Lt();var ws=[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],Hc=[1,2,3,5],Hd=function(e,t){return e<<t&65535|(e&65535)>>16-t},zd=function(e,t){return(e&65535)>>t|e<<16-t&65535};Gc.exports=Qt.rc2=Qt.rc2||{};Qt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Qt.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(ws[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,ws[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,ws[r.at(a+1)^r.at(a+o)]);return r};var zc=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Qt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=Hd(d[f],Hc[f]),u++},c=function(d){for(f=0;f<4;f++)d[f]+=l[d[(f+3)%4]&63]}):(a=function(d){for(f=3;f>=0;f--)d[f]=zd(d[f],Hc[f]),d[f]-=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),u--},c=function(d){for(f=3;f>=0;f--)d[f]-=l[d[(f+3)%4]&63]});var h=function(d){var p=[];for(f=0;f<4;f++){var g=i.getInt16Le();s!==null&&(r?g^=s.getInt16Le():s.putInt16Le(g)),p.push(g&65535)}u=r?0:63;for(var m=0;m<d.length;m++)for(var v=0;v<d[m][0];v++)d[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},y=null;return y={start:function(d,p){d&&typeof d=="string"&&(d=Qt.util.createBuffer(d)),n=!1,i=Qt.util.createBuffer(),o=p||new Qt.util.createBuffer,s=d,y.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var g=i.length()===8?8:8-i.length();i.fillWithByte(g,g)}if(p&&(n=!0,y.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),v=o.at(m-1);v>m?p=!1:o.truncate(v)}return p}},y};Qt.rc2.startEncrypting=function(e,t,r){var n=Qt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Qt.rc2.createEncryptionCipher=function(e,t){return zc(e,t,!0)};Qt.rc2.startDecrypting=function(e,t,r){var n=Qt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Qt.rc2.createDecryptionCipher=function(e,t){return zc(e,t,!1)}});var Hi=lt((fb,tf)=>{var Es=pt();tf.exports=Es.jsbn=Es.jsbn||{};var Ge,Gd=0xdeadbeefcafe,Wc=(Gd&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))}Es.jsbn.BigInteger=P;function st(){return new P(null)}function $d(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 Wd(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 Yc(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=Yc,Ge=28):Wc&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=Wd,Ge=30):Wc&&navigator.appName!="Netscape"?(P.prototype.am=$d,Ge=26):(P.prototype.am=Yc,Ge=28);P.prototype.DB=Ge;P.prototype.DM=(1<<Ge)-1;P.prototype.DV=1<<Ge;var Ss=52;P.prototype.FV=Math.pow(2,Ss);P.prototype.F1=Ss-Ge;P.prototype.F2=2*Ge-Ss;var Yd="0123456789abcdefghijklmnopqrstuvwxyz",Vi=new Array,Qr,ae;Qr="0".charCodeAt(0);for(ae=0;ae<=9;++ae)Vi[Qr++]=ae;Qr="a".charCodeAt(0);for(ae=10;ae<36;++ae)Vi[Qr++]=ae;Qr="A".charCodeAt(0);for(ae=10;ae<36;++ae)Vi[Qr++]=ae;function Zc(e){return Yd.charAt(e)}function Xc(e,t){var r=Vi[e.charCodeAt(t)];return r??-1}function Zd(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 Xd(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 ar(e){var t=st();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:Xc(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 Jd(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function jd(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=Zc(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+=Zc(n));return i?o:"0"}function tp(){var e=st();return P.ZERO.subTo(this,e),e}function ep(){return this.s<0?this.negate():this}function rp(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 qi(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 np(){return this.t<=0?0:this.DB*(this.t-1)+qi(this.data[this.t-1]^this.s&this.DM)}function ip(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 op(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 sp(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 ap(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 cp(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 fp(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 up(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 lp(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=st());var o=st(),s=this.s,a=e.s,c=this.DB-qi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,y=(1<<this.F1)/l,d=1<<this.F2,p=r.t,g=p-f,m=t??st();for(o.dlShiftTo(g,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),P.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--g>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*y);if((r.data[p]+=o.am(0,v,r,g,0,f))<v)for(o.dlShiftTo(g,m),r.subTo(m,r);r.data[p]<--v;)r.subTo(m,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 hp(e){var t=st();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(P.ZERO)>0&&e.subTo(t,t),t}function Er(e){this.m=e}function dp(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function pp(e){return e}function yp(e){e.divRemTo(this.m,null,e)}function gp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function mp(e,t){e.squareTo(t),this.reduce(t)}Er.prototype.convert=dp;Er.prototype.revert=pp;Er.prototype.reduce=yp;Er.prototype.mulTo=gp;Er.prototype.sqrTo=mp;function xp(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function Sr(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function bp(e){var t=st();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 vp(e){var t=st();return e.copyTo(t),this.reduce(t),t}function wp(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 Ep(e,t){e.squareTo(t),this.reduce(t)}function Sp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Sr.prototype.convert=bp;Sr.prototype.revert=vp;Sr.prototype.reduce=wp;Sr.prototype.mulTo=Sp;Sr.prototype.sqrTo=Ep;function Bp(){return(this.t>0?this.data[0]&1:this.s)==0}function Ap(e,t){if(e>4294967295||e<1)return P.ONE;var r=st(),n=st(),i=t.convert(this),o=qi(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 Cp(e,t){var r;return e<256||t.isEven()?r=new Er(t):r=new Sr(t),this.exp(e,r)}P.prototype.copyTo=Zd;P.prototype.fromInt=Xd;P.prototype.fromString=Qd;P.prototype.clamp=Jd;P.prototype.dlShiftTo=ip;P.prototype.drShiftTo=op;P.prototype.lShiftTo=sp;P.prototype.rShiftTo=ap;P.prototype.subTo=cp;P.prototype.multiplyTo=fp;P.prototype.squareTo=up;P.prototype.divRemTo=lp;P.prototype.invDigit=xp;P.prototype.isEven=Bp;P.prototype.exp=Ap;P.prototype.toString=jd;P.prototype.negate=tp;P.prototype.abs=ep;P.prototype.compareTo=rp;P.prototype.bitLength=np;P.prototype.mod=hp;P.prototype.modPowInt=Cp;P.ZERO=ar(0);P.ONE=ar(1);function Ip(){var e=st();return this.copyTo(e),e}function Tp(){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 _p(){return this.t==0?this.s:this.data[0]<<24>>24}function Lp(){return this.t==0?this.s:this.data[0]<<16>>16}function Rp(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Np(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Pp(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=ar(r),i=st(),o=st(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function Dp(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=Xc(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 kp(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),Bs,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 Up(){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 Kp(e){return this.compareTo(e)==0}function Op(e){return this.compareTo(e)<0?this:e}function Mp(e){return this.compareTo(e)>0?this:e}function Fp(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 Vp(e,t){return e&t}function qp(e){var t=st();return this.bitwiseTo(e,Vp,t),t}function Bs(e,t){return e|t}function Hp(e){var t=st();return this.bitwiseTo(e,Bs,t),t}function Qc(e,t){return e^t}function zp(e){var t=st();return this.bitwiseTo(e,Qc,t),t}function Jc(e,t){return e&~t}function Gp(e){var t=st();return this.bitwiseTo(e,Jc,t),t}function $p(){for(var e=st(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function Wp(e){var t=st();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function Yp(e){var t=st();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function Zp(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 Xp(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+Zp(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 Jp(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=Qp(this.data[r]^t);return e}function jp(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function ty(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function ey(e){return this.changeBit(e,Bs)}function ry(e){return this.changeBit(e,Jc)}function ny(e){return this.changeBit(e,Qc)}function iy(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 oy(e){var t=st();return this.addTo(e,t),t}function sy(e){var t=st();return this.subTo(e,t),t}function ay(e){var t=st();return this.multiplyTo(e,t),t}function cy(e){var t=st();return this.divRemTo(e,t,null),t}function fy(e){var t=st();return this.divRemTo(e,null,t),t}function uy(e){var t=st(),r=st();return this.divRemTo(e,t,r),new Array(t,r)}function ly(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function hy(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function kn(){}function jc(e){return e}function dy(e,t,r){e.multiplyTo(t,r)}function py(e,t){e.squareTo(t)}kn.prototype.convert=jc;kn.prototype.revert=jc;kn.prototype.mulTo=dy;kn.prototype.sqrTo=py;function yy(e){return this.exp(e,new kn)}function gy(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 my(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 Jr(e){this.r2=st(),this.q3=st(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function xy(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=st();return e.copyTo(t),this.reduce(t),t}function by(e){return e}function vy(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 wy(e,t){e.squareTo(t),this.reduce(t)}function Ey(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Jr.prototype.convert=xy;Jr.prototype.revert=by;Jr.prototype.reduce=vy;Jr.prototype.mulTo=Ey;Jr.prototype.sqrTo=wy;function Sy(e,t){var r=e.bitLength(),n,i=ar(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new Er(t):t.isEven()?o=new Jr(t):o=new Sr(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=st();for(o.sqrTo(s[1],u);a<=f;)s[a]=st(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,h,y=!0,d=st(),p;for(r=qi(e.data[l])-1;l>=0;){for(r>=c?h=e.data[l]>>r-c&f:(h=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=e.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),y)s[h].copyTo(i),y=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function By(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 Ay(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 Cy(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return P.ZERO;for(var r=e.clone(),n=this.clone(),i=ar(1),o=ar(0),s=ar(0),a=ar(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 me=[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],Iy=(1<<26)/me[me.length-1];function Ty(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=me[me.length-1]){for(t=0;t<me.length;++t)if(r.data[0]==me[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<me.length;){for(var n=me[t],i=t+1;i<me.length&&n<Iy;)n*=me[i++];for(n=r.modInt(n);t<i;)if(n%me[t++]==0)return!1}return r.millerRabin(e)}function _y(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=Ly(),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 Ly(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Rp;P.prototype.toRadix=Pp;P.prototype.fromRadix=Dp;P.prototype.fromNumber=kp;P.prototype.bitwiseTo=Fp;P.prototype.changeBit=ty;P.prototype.addTo=iy;P.prototype.dMultiply=ly;P.prototype.dAddOffset=hy;P.prototype.multiplyLowerTo=gy;P.prototype.multiplyUpperTo=my;P.prototype.modInt=Ay;P.prototype.millerRabin=_y;P.prototype.clone=Ip;P.prototype.intValue=Tp;P.prototype.byteValue=_p;P.prototype.shortValue=Lp;P.prototype.signum=Np;P.prototype.toByteArray=Up;P.prototype.equals=Kp;P.prototype.min=Op;P.prototype.max=Mp;P.prototype.and=qp;P.prototype.or=Hp;P.prototype.xor=zp;P.prototype.andNot=Gp;P.prototype.not=$p;P.prototype.shiftLeft=Wp;P.prototype.shiftRight=Yp;P.prototype.getLowestSetBit=Xp;P.prototype.bitCount=Jp;P.prototype.testBit=jp;P.prototype.setBit=ey;P.prototype.clearBit=ry;P.prototype.flipBit=ny;P.prototype.add=oy;P.prototype.subtract=sy;P.prototype.multiply=ay;P.prototype.divide=cy;P.prototype.remainder=fy;P.prototype.divideAndRemainder=uy;P.prototype.modPow=Sy;P.prototype.modInverse=Cy;P.prototype.pow=yy;P.prototype.gcd=By;P.prototype.isProbablePrime=Ty});var sf=lt((ub,of)=>{var Ce=pt();wr();Lt();var rf=of.exports=Ce.sha1=Ce.sha1||{};Ce.md.sha1=Ce.md.algorithms.sha1=rf;rf.create=function(){nf||Ry();var e=null,t=Ce.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=Ce.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ce.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),ef(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ce.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(As.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};ef(l,r,i);var h=Ce.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var As=null,nf=!1;function Ry(){As=String.fromCharCode(128),As+=Ce.util.fillString(String.fromCharCode(0),64),nf=!0}function ef(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 ff=lt((lb,cf)=>{var Ie=pt();Lt();Dn();sf();var af=cf.exports=Ie.pkcs1=Ie.pkcs1||{};af.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=Ie.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="",h=c-t.length,y=0;y<h;y++)l+="\0";var d=u.getBytes()+l+""+t;if(!i)i=Ie.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),g=Ie.util.xorBytes(d,p,d.length),m=zi(g,o.digestLength,s),v=Ie.util.xorBytes(i,m,i.length);return"\0"+v+g};af.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 g=new Error("RSAES-OAEP encoded message length is invalid.");throw g.length=t.length,g.expectedLength=s,g}if(i===void 0?i=Ie.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),h=Ie.util.xorBytes(f,l,f.length),y=zi(h,s-i.digestLength-1,o),d=Ie.util.xorBytes(u,y,u.length),p=d.substring(0,i.digestLength),g=c!=="\0",m=0;m<i.digestLength;++m)g|=a.charAt(m)!==p.charAt(m);for(var v=1,x=i.digestLength,A=i.digestLength;A<d.length;A++){var S=d.charCodeAt(A),B=S&1^1,R=v?65534:0;g|=S&R,v=v&B,x+=v}if(g||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function zi(e,t,r){r||(r=Ie.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 uf=lt((hb,Cs)=>{var cr=pt();Lt();Hi();Dn();(function(){if(cr.prime){Cs.exports=cr.prime;return}var e=Cs.exports=cr.prime=cr.prime||{},t=cr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,h){return l|h};e.generateProbablePrime=function(l,h,y){typeof h=="function"&&(y=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||cr.random,g={nextBytes:function(m){for(var v=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=v.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,g,d.options,y);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,y,d){return"workers"in y?c(l,h,y,d):s(l,h,y,d)}function s(l,h,y,d){var p=f(l,h),g=0,m=u(p.bitLength());"millerRabinTests"in y&&(m=y.millerRabinTests);var v=10;"maxBlockTime"in y&&(v=y.maxBlockTime),a(p,l,h,g,m,v,d)}function a(l,h,y,d,p,g,m){var v=+new Date;do{if(l.bitLength()>h&&(l=f(h,y)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(g<0||+new Date-v<g);cr.util.setImmediate(function(){a(l,h,y,d,p,g,m)})}function c(l,h,y,d){if(typeof Worker>"u")return s(l,h,y,d);var p=f(l,h),g=y.workers,m=y.workLoad||100,v=m*30/8,x=y.workerScript||"forge/prime.worker.js";if(g===-1)return cr.util.estimateCores(function(S,B){S&&(B=2),g=B-1,A()});A();function A(){g=Math.max(1,g);for(var S=[],B=0;B<g;++B)S[B]=new Worker(x);for(var R=g,B=0;B<g;++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,d(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,h));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:m}),p.dAddOffset(v,0)}}}}function f(l,h){var y=new t(l,h),d=l-1;return y.testBit(d)||y.bitwiseTo(t.ONE.shiftLeft(d),i,y),y.dAddOffset(31-y.mod(n).byteValue(),0),y}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 $i=lt((db,mf)=>{var $=pt();Pn();Hi();Li();ff();uf();Dn();Lt();typeof ot>"u"&&(ot=$.jsbn.BigInteger);var ot,Is=$.util.isNodejs?Ki():null,E=$.asn1,ce=$.util;$.pki=$.pki||{};mf.exports=$.pki.rsa=$.rsa=$.rsa||{};var Q=$.pki,Ny=[6,4,2,4,2,4,6,2],Py={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"}]},Dy={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"}]},ky={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"}]},Uy=$.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"}]}]},Ky={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"}]},Oy=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()},yf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(ot.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(ot.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new ot($.util.bytesToHex($.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(ot.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=gf(e,t,r)):(i=$.util.createBuffer(),i.putBytes(e));for(var s=new ot(i.toHex(),16),a=yf(s,t,n),c=a.toString(16),f=$.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new ot($.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=yf(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?Gi(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||$.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new ot(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new ot(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new ot(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(ot.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(Fy(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Ny[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(ot.ONE),e.q1=e.q.subtract(ot.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(ot.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!$.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(lf("generateKeyPair"))return Is.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(hf("generateKey")&&hf("exportKey"))return ce.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:pf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ce.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(df("generateKey")&&df("exportKey")){var i=ce.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:pf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=ce.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(l)));n(null,{privateKey:h,publicKey:Q.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(lf("generateKeyPairSync")){var o=Is.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;My(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 gf(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=Gi(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!E.validate(u,Ky,l,h)){var y=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw y.errors=h,y}var d=E.derToOid(l.algorithmIdentifier);if(!(d===$.oids.md2||d===$.oids.md5||d===$.oids.sha1||d===$.oids.sha224||d===$.oids.sha256||d===$.oids.sha384||d===$.oids.sha512||d===$.oids["sha512-224"]||d===$.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=d,y}if((d===$.oids.md2||d===$.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=Gi(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 h=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Gi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(y,d){return $.pkcs1.decode_rsa_oaep(d,y,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(y){return y}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(h,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:Oy},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(h,c,l)},c};Q.wrapRsaPrivateKey=function(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,Py,t,r)&&(e=E.fromDer($.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,Dy,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=$.util.createBuffer(t.privateKeyModulus).toHex(),o=$.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=$.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=$.util.createBuffer(t.privateKeyPrime1).toHex(),c=$.util.createBuffer(t.privateKeyPrime2).toHex(),f=$.util.createBuffer(t.privateKeyExponent1).toHex(),u=$.util.createBuffer(t.privateKeyExponent2).toHex(),l=$.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new ot(i,16),new ot(o,16),new ot(s,16),new ot(a,16),new ot(c,16),new ot(f,16),new ot(u,16),new ot(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,Uy,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,ky,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=$.util.createBuffer(t.publicKeyModulus).toHex(),s=$.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new ot(o,16),new ot(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.e))])};function gf(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 Gi(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 My(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){$.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)!==0){e.p=null,i();return}if(e.q.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(ot.ONE),e.q1=e.q.subtract(ot.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(ot.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function Te(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 Fy(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function lf(e){return $.util.isNodejs&&typeof Is[e]=="function"}function hf(e){return typeof ce.globalScope<"u"&&typeof ce.globalScope.crypto=="object"&&typeof ce.globalScope.crypto.subtle=="object"&&typeof ce.globalScope.crypto.subtle[e]=="function"}function df(e){return typeof ce.globalScope<"u"&&typeof ce.globalScope.msCrypto=="object"&&typeof ce.globalScope.msCrypto.subtle=="object"&&typeof ce.globalScope.msCrypto.subtle[e]=="function"}function pf(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 Sf=lt((pb,Ef)=>{var q=pt();xs();Pn();Cc();wr();Li();Rc();Dc();Dn();$c();$i();Lt();typeof xf>"u"&&(xf=q.jsbn.BigInteger);var xf,I=q.asn1,tt=q.pki=q.pki||{};Ef.exports=tt.pbe=q.pbe=q.pbe||{};var Br=tt.oids,Vy={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"}]},qy={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"}]}]},Hy={name:"pkcs-12PbeParams",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=q.random.getBytesSync(r.saltSize),i=r.count,o=I.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=Br["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Br["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Br["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Br.desCBC,l=q.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var y="hmacWith"+r.prfAlgorithm.toUpperCase(),d=wf(y),p=q.pkcs5.pbkdf2(t,n,i,s,d),g=q.random.getBytesSync(f),m=l(p);m.start(g),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes();var v=zy(n,o,s,y);a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br.pkcs5PBES2).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br.pkcs5PBKDF2).getBytes()),v]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(u).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,g)])])])}else if(r.algorithm==="3des"){s=24;var x=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,x,1,i,s),g=tt.pbe.generatePkcs12Key(t,x,2,i,s),m=q.des.createEncryptionCipher(p);m.start(g),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,n),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,o.getBytes())])])}else{var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var A=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return A};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!I.validate(e,Vy,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 h=l.length(),y=t.length(),d=new q.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(y/f),g=new q.util.ByteBuffer;for(a=0;a<p;a++)g.putByte(t.at(a%y));var m=f*Math.ceil(h/f),v=new q.util.ByteBuffer;for(a=0;a<m;a++)v.putByte(l.at(a%h));var x=g;x.putBuffer(v);for(var A=Math.ceil(i/c),S=1;S<=A;S++){var B=new q.util.ByteBuffer;B.putBytes(d.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(y/f)+Math.ceil(h/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,qy,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=vf(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,y=f(l);return y.start(h),y};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!I.validate(t,Hy,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,g){var m=q.rc2.createDecryptionCipher(p,40);return m.start(g,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=vf(n.prfOid),h=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,y)};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=[bf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(bf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function bf(e,t){return e.start().update(t).digest().getBytes()}function vf(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 wf(t)}function wf(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 zy(e,t,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,e),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,q.util.hexToBytes(r.toString(16))),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(tt.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var uu=lt((ww,fu)=>{var vt=pt();wr();Lt();var Hn=fu.exports=vt.sha512=vt.sha512||{};vt.md.sha512=vt.md.algorithms.sha512=Hn;var au=vt.sha384=vt.sha512.sha384=vt.sha512.sha384||{};au.create=function(){return Hn.create("SHA-384")};vt.md.sha384=vt.md.algorithms.sha384=au;vt.sha512.sha256=vt.sha512.sha256||{create:function(){return Hn.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 Hn.create("SHA-512/224")}};vt.md["sha512/224"]=vt.md.algorithms["sha512/224"]=vt.sha512.sha224;Hn.create=function(e){if(cu||ug(),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=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(da.substr(0,a.blockLength-u));for(var l,h,y=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,y+=h,c.putInt32(y>>>0),y=l>>>0;c.putInt32(y);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);su(p,i,c);var g=vt.util.createBuffer(),m;e==="SHA-512"?m=p.length:e==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)g.putInt32(p[d][0]),(d!==m-1||e!=="SHA-512/224")&&g.putInt32(p[d][1]);return g},a};var da=null,cu=!1,pa=null,Nr=null;function ug(){da=String.fromCharCode(128),da+=vt.util.fillString(String.fromCharCode(0),128),pa=[[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]],cu=!0}function su(e,t,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,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],g=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,h=(H^_&(M^H))>>>0,a=((p>>>28|g<<4)^(g>>>2|p<<30)^(g>>>7|p<<25))>>>0,c=((p<<4|g>>>28)^(g<<30|p>>>2)^(g<<25|p>>>7))>>>0,y=(p&m|x&(p^m))>>>0,d=(g&v|A&(g^v))>>>0,T=Z+u+h+pa[C][1]+t[C][1],n=z+f+l+pa[C][0]+t[C][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+d,o=a+y+(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=g,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,g=T>>>0;T=e[0][1]+g,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+m+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+A,e[2][0]=e[2][0]+x+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+_,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+U+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,V-=128}}});var qu=lt((i4,Vu)=>{var hn=1e3,dn=hn*60,pn=dn*60,Ur=pn*24,Mg=Ur*7,Fg=Ur*365.25;Vu.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return Vg(e);if(r==="number"&&isFinite(e))return t.long?Hg(e):qg(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Vg(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*Fg;case"weeks":case"week":case"w":return r*Mg;case"days":case"day":case"d":return r*Ur;case"hours":case"hour":case"hrs":case"hr":case"h":return r*pn;case"minutes":case"minute":case"mins":case"min":case"m":return r*dn;case"seconds":case"second":case"secs":case"sec":case"s":return r*hn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function qg(e){var t=Math.abs(e);return t>=Ur?Math.round(e/Ur)+"d":t>=pn?Math.round(e/pn)+"h":t>=dn?Math.round(e/dn)+"m":t>=hn?Math.round(e/hn)+"s":e+"ms"}function Hg(e){var t=Math.abs(e);return t>=Ur?ro(e,t,Ur,"day"):t>=pn?ro(e,t,pn,"hour"):t>=dn?ro(e,t,dn,"minute"):t>=hn?ro(e,t,hn,"second"):e+" ms"}function ro(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}});var zu=lt((o4,Hu)=>{function zg(e){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=qu(),r.destroy=f,Object.keys(e).forEach(u=>{r[u]=e[u]}),r.names=[],r.skips=[],r.formatters={};function t(u){let l=0;for(let h=0;h<u.length;h++)l=(l<<5)-l+u.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=t;function r(u){let l,h=null,y,d;function p(...g){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,g[0]=r.coerce(g[0]),typeof g[0]!="string"&&g.unshift("%O");let A=0;g[0]=g[0].replace(/%([a-zA-Z%])/g,(B,R)=>{if(B==="%%")return"%";A++;let _=r.formatters[R];if(typeof _=="function"){let O=g[A];B=_.call(m,O),g.splice(A,1),A--}return B}),r.formatArgs.call(m,g),(m.log||r.log).apply(m,g)}return p.namespace=u,p.useColors=r.useColors(),p.color=r.selectColor(u),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(y!==r.namespaces&&(y=r.namespaces,d=r.enabled(u)),d),set:g=>{h=g}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let h=r(this.namespace+(typeof l>"u"?":":l)+u);return h.log=this.log,h}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,h=(typeof u=="string"?u:"").split(/[\s,]+/),y=h.length;for(l=0;l<y;l++)h[l]&&(u=h[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.slice(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function o(){let u=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,h;for(l=0,h=r.skips.length;l<h;l++)if(r.skips[l].test(u))return!1;for(l=0,h=r.names.length;l<h;l++)if(r.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(u){return u instanceof Error?u.stack||u.message:u}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Hu.exports=zg});var Gu=lt((ne,no)=>{ne.formatArgs=$g;ne.save=Wg;ne.load=Yg;ne.useColors=Gg;ne.storage=Zg();ne.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();ne.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Gg(){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 $g(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+no.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}ne.log=console.debug||console.log||(()=>{});function Wg(e){try{e?ne.storage.setItem("debug",e):ne.storage.removeItem("debug")}catch{}}function Yg(){let e;try{e=ne.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function Zg(){try{return localStorage}catch{}}no.exports=zu()(ne);var{formatters:Xg}=no.exports;Xg.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var _m={};Nt(_m,{webTransport:()=>Tm});function Qe(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Ue(e=0){return globalThis.Buffer?.alloc!=null?Qe(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function Vt(e=0){return globalThis.Buffer?.allocUnsafe!=null?Qe(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Ml=Math.pow(2,7),Fl=Math.pow(2,14),Vl=Math.pow(2,21),Eo=Math.pow(2,28),So=Math.pow(2,35),Bo=Math.pow(2,42),Ao=Math.pow(2,49),ct=128,Gt=127;function Xt(e){if(e<Ml)return 1;if(e<Fl)return 2;if(e<Vl)return 3;if(e<Eo)return 4;if(e<So)return 5;if(e<Bo)return 6;if(e<Ao)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ql(e,t,r=0){switch(Xt(e)){case 8:t[r++]=e&255|ct,e/=128;case 7:t[r++]=e&255|ct,e/=128;case 6:t[r++]=e&255|ct,e/=128;case 5:t[r++]=e&255|ct,e/=128;case 4:t[r++]=e&255|ct,e>>>=7;case 3:t[r++]=e&255|ct,e>>>=7;case 2:t[r++]=e&255|ct,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function Hl(e,t,r=0){switch(Xt(e)){case 8:t.set(r++,e&255|ct),e/=128;case 7:t.set(r++,e&255|ct),e/=128;case 6:t.set(r++,e&255|ct),e/=128;case 5:t.set(r++,e&255|ct),e/=128;case 4:t.set(r++,e&255|ct),e>>>=7;case 3:t.set(r++,e&255|ct),e>>>=7;case 2:t.set(r++,e&255|ct),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function zl(e,t){let r=e[t],n=0;if(n+=r&Gt,r<ct||(r=e[t+1],n+=(r&Gt)<<7,r<ct)||(r=e[t+2],n+=(r&Gt)<<14,r<ct)||(r=e[t+3],n+=(r&Gt)<<21,r<ct)||(r=e[t+4],n+=(r&Gt)*Eo,r<ct)||(r=e[t+5],n+=(r&Gt)*So,r<ct)||(r=e[t+6],n+=(r&Gt)*Bo,r<ct)||(r=e[t+7],n+=(r&Gt)*Ao,r<ct))return n;throw new RangeError("Could not decode varint")}function Gl(e,t){let r=e.get(t),n=0;if(n+=r&Gt,r<ct||(r=e.get(t+1),n+=(r&Gt)<<7,r<ct)||(r=e.get(t+2),n+=(r&Gt)<<14,r<ct)||(r=e.get(t+3),n+=(r&Gt)<<21,r<ct)||(r=e.get(t+4),n+=(r&Gt)*Eo,r<ct)||(r=e.get(t+5),n+=(r&Gt)*So,r<ct)||(r=e.get(t+6),n+=(r&Gt)*Bo,r<ct)||(r=e.get(t+7),n+=(r&Gt)*Ao,r<ct))return n;throw new RangeError("Could not decode varint")}function Je(e,t,r=0){return t==null&&(t=Vt(Xt(e))),t instanceof Uint8Array?ql(e,t,r):Hl(e,t,r)}function he(e,t=0){return e instanceof Uint8Array?zl(e,t):Gl(e,t)}function dt(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Vt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Qe(r)}function Ct(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var s0=Symbol.for("@achingbrain/uint8arraylist");function o0(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 ni(e){return!!e?.[s0]}var te=class e{constructor(...t){Object.defineProperty(this,s0,{value:!0}),this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ni(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...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(ni(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=o0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=o0(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(ni(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 dt(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:dt(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(!ni(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 h=f;h>=0;h--){let y=this.get(l+h);if(n[h]!==y){u=Math.max(1,h-a[y]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=Vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=Ue(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=Ue(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=Ue(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=Vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=Ue(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=Ue(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=Ue(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=Ue(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=Ue(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Ct(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function ii(e){return e[Symbol.asyncIterator]!=null}var oi=e=>{let t=Xt(e),r=Vt(t);return Je(e,r),oi.bytes=t,r};oi.bytes=0;function si(e,t){t=t??{};let r=t.lengthEncoder??oi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ii(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}si.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??oi;return new te(r(e.byteLength),e)};var Kr=Wt(f0(),1);var Wl=8,Yl=1024*1024*4,pr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(pr||(pr={}));var Co=e=>{let t=he(e);return Co.bytes=Xt(t),t};Co.bytes=0;function vn(e,t){let r=new te,n=pr.LENGTH,i=-1,o=t?.lengthDecoder??Co,s=t?.maxLengthLength??Wl,a=t?.maxDataLength??Yl;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 ii(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")}()}vn.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 vn(n,{...t??{},onLength:o=>{r=o}})};function Or(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var ai=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}},Mr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new ai(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 ai(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 Io=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Fr(e={}){return Xl(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 Xl(e,t){t=t??{};let r=t.onEnd,n=new Mr,i,o,s,a=Or(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((g,m)=>{o=v=>{o=null,n.push(v);try{g(e(n))}catch(x){m(x)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Or()})}},f=g=>o!=null?o(g):(n.push(g),i),u=g=>(n=new Mr,o!=null?o({error:g}):(n.push({error:g}),i)),l=g=>{if(s)return i;if(t?.objectMode!==!0&&g?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:g})},h=g=>s?i:(s=!0,g!=null?u(g):f({done:!0})),y=()=>(n=new Mr,h(),{done:!0}),d=g=>(h(g),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:y,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async g=>{let m=g?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let v,x;m!=null&&(v=new Promise((A,S)=>{x=()=>{S(new Io)},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(g){return p.throw(g),r!=null&&(r(g),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(g){return p.end(g),r!=null&&(r(g),r=void 0),i},get readableLength(){return p.readableLength}},i}var ci=class extends Error{code;constructor(t,r){super(t),this.code=r}},To=class extends ci{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function u0(e){let t=Fr();e.sink(t).catch(o=>{t.end(o)}),e.sink=async o=>{for await(let s of o)t.push(s);t.end()};let r=e.source;e.source[Symbol.iterator]!=null?r=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(r=e.source[Symbol.asyncIterator]());let n=new te;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new To("Read aborted"))},s?.signal?.addEventListener("abort",a)});try{if(o==null){let{done:u,value:l}=await Promise.race([r.next(),c]);return u===!0?new te:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new ci("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(u)}let f=n.sublist(0,o);return n.consume(o),f}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?t.push(o):t.push(o.subarray()),await t.onEmpty(s)},unwrap:()=>{let o=e.source;return e.source=async function*(){yield*n,yield*o}(),e}}}var fi=class extends Error{code;constructor(t,r){super(t),this.code=r}},l0=e=>he(e);l0.bytes=0;function _o(e,t){let r=u0(e);return{read:async i=>{let o=-1,s=new te,a=t?.lengthDecoder??l0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new fi("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new fi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(si.single(i,t),o)},unwrap:()=>r.unwrap()}}function Lo(){let e=Or(),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 h0(){let e=Lo(),t=Lo();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}function Ql(e){return e[Symbol.asyncIterator]!=null}function Jl(...e){let t=[];for(let r of e)Ql(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=Fr({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 d0=Jl;function p0(e,...t){if(e==null)throw new Error("Empty pipeline");if(Ro(e)){let n=e;e=()=>n.source}else if(g0(e)||y0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Ro(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++)Ro(r[n])&&(r[n]=th(r[n]));return jl(...r)}var jl=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},y0=e=>e?.[Symbol.asyncIterator]!=null,g0=e=>e?.[Symbol.iterator]!=null,Ro=e=>e==null?!1:e.sink!=null&&e.source!=null,th=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=Fr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(y0(o))i=async function*(){yield*o,n.end()};else if(g0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return d0(n,i())}return e.source};var m0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var eh=e=>e instanceof Uint8Array;var Ke=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),x0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),rh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!rh)throw new Error("Non little-endian hardware is not supported");function ui(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function li(e){if(typeof e=="string")e=ui(e);else if(eh(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var nh=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function b0(e,t){if(t!==void 0&&(typeof t!="object"||!nh(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 v0(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 No=(e,t)=>(Object.assign(t,e),t);function Po(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 hi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Do(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Vr(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 ko(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 w0(e,t){Vr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var qt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Uo=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=li(t),yr(t,32);let r=qt(t,0),n=qt(t,2),i=qt(t,4),o=qt(t,6),s=qt(t,8),a=qt(t,10),c=qt(t,12),f=qt(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=qt(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],h=s[5],y=s[6],d=s[7],p=s[8],g=s[9],m=qt(t,r+0),v=qt(t,r+2),x=qt(t,r+4),A=qt(t,r+6),S=qt(t,r+8),B=qt(t,r+10),R=qt(t,r+12),_=qt(t,r+14),O=o[0]+(m&8191),M=o[1]+((m>>>13|v<<3)&8191),U=o[2]+((v>>>10|x<<6)&8191),H=o[3]+((x>>>7|A<<9)&8191),z=o[4]+((A>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),C=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|_<<8)&8191),L=o[9]+(_>>>5|i),w=0,k=w+O*a+M*(5*g)+U*(5*p)+H*(5*d)+z*(5*y);w=k>>>13,k&=8191,k+=Z*(5*h)+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*g)+H*(5*p)+z*(5*d);w=K>>>13,K&=8191,K+=Z*(5*y)+C*(5*h)+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*g)+z*(5*p);w=V>>>13,V&=8191,V+=Z*(5*d)+C*(5*y)+N*(5*h)+T*(5*l)+L*(5*u),w+=V>>>13,V&=8191;let W=w+O*u+M*f+U*c+H*a+z*(5*g);w=W>>>13,W&=8191,W+=Z*(5*p)+C*(5*d)+N*(5*y)+T*(5*h)+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*g)+C*(5*p)+N*(5*d)+T*(5*y)+L*(5*h),w+=Y>>>13,Y&=8191;let et=w+O*h+M*l+U*u+H*f+z*c;w=et>>>13,et&=8191,et+=Z*a+C*(5*g)+N*(5*p)+T*(5*d)+L*(5*y),w+=et>>>13,et&=8191;let X=w+O*y+M*h+U*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+C*a+N*(5*g)+T*(5*p)+L*(5*d),w+=X>>>13,X&=8191;let J=w+O*d+M*y+U*h+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+C*c+N*a+T*(5*g)+L*(5*p),w+=J>>>13,J&=8191;let yt=w+O*p+M*d+U*y+H*h+z*l;w=yt>>>13,yt&=8191,yt+=Z*u+C*f+N*c+T*a+L*(5*g),w+=yt>>>13,yt&=8191;let ut=w+O*g+M*p+U*d+H*y+z*h;w=ut>>>13,ut&=8191,ut+=Z*l+C*u+N*f+T*c+L*a,w+=ut>>>13,ut&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=V,o[3]=W,o[4]=Y,o[5]=et,o[6]=X,o[7]=J,o[8]=yt,o[9]=ut}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){ko(this);let{buffer:r,blockLen:n}=this;t=li(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){ko(this),w0(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 ih(e){let t=(n,i)=>e(i).update(li(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var E0=ih(e=>new Uo(e));var oh=ui("expand 16-byte k"),sh=ui("expand 32-byte k"),ah=Ke(oh),ch=Ke(sh);function G(e,t){return e<<t|e>>>32-t}function Ko(e){return e.byteOffset%4===0}var di=64,fh=16,B0=2**32-1,S0=new Uint32Array;function uh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(di),u=Ke(f),l=Ko(i)&&Ko(o),h=l?Ke(i):S0,y=l?Ke(o):S0;for(let d=0;d<c;s++){if(e(t,r,n,u,s,a),s>=B0)throw new Error("arx: counter overflow");let p=Math.min(di,c-d);if(l&&p===di){let g=d/4;if(d%4!==0)throw new Error("arx: invalid block position");for(let m=0,v;m<fh;m++)v=g+m,y[v]=h[v]^u[m];d+=di;continue}for(let g=0,m;g<p;g++)m=d+g,o[m]=i[m]^f[g];d+=p}}function Oo(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=b0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return hi(i),hi(s),Do(o),Do(r),(a,c,f,u,l=0)=>{Vr(a),Vr(c),Vr(f);let h=f.length;if(u||(u=new Uint8Array(h)),Vr(u),hi(l),l<0||l>=B0)throw new Error("arx: counter overflow");if(u.length<h)throw new Error(`arx: output (${u.length}) is shorter than data (${h})`);let y=[],d=a.length,p,g;if(d===32)p=a.slice(),y.push(p),g=ch;else if(d===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),g=ah,y.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${d}`);Ko(c)||(c=c.slice(),y.push(c));let m=Ke(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(g,m,Ke(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,y.push(c)}let x=Ke(c);for(uh(e,g,m,x,f,u,l,s);y.length>0;)y.pop().fill(0);return u}}function I0(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],h=t[2],y=t[3],d=t[4],p=t[5],g=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=h,z=y,Z=d,C=p,N=g,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++]=h+H|0,n[V++]=y+z|0,n[V++]=d+Z|0,n[V++]=p+C|0,n[V++]=g+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 lh(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],h=t[4],y=t[5],d=t[6],p=t[7],g=r[0],m=r[1],v=r[2],x=r[3];for(let S=0;S<20;S+=2)i=i+c|0,g=G(g^i,16),h=h+g|0,c=G(c^h,12),i=i+c|0,g=G(g^i,8),h=h+g|0,c=G(c^h,7),o=o+f|0,m=G(m^o,16),y=y+m|0,f=G(f^y,12),o=o+f|0,m=G(m^o,8),y=y+m|0,f=G(f^y,7),s=s+u|0,v=G(v^s,16),d=d+v|0,u=G(u^d,12),s=s+u|0,v=G(v^s,8),d=d+v|0,u=G(u^d,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),d=d+x|0,f=G(f^d,12),i=i+f|0,x=G(x^i,8),d=d+x|0,f=G(f^d,7),o=o+u|0,g=G(g^o,16),p=p+g|0,u=G(u^p,12),o=o+u|0,g=G(g^o,8),p=p+g|0,u=G(u^p,7),s=s+l|0,m=G(m^s,16),h=h+m|0,l=G(l^h,12),s=s+l|0,m=G(m^s,8),h=h+m|0,l=G(l^h,7),a=a+c|0,v=G(v^a,16),y=y+v|0,c=G(c^y,12),a=a+c|0,v=G(v^a,8),y=y+v|0,c=G(c^y,7);let A=0;n[A++]=i,n[A++]=o,n[A++]=s,n[A++]=a,n[A++]=g,n[A++]=m,n[A++]=v,n[A++]=x}var hh=Oo(I0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),dh=Oo(I0,{counterRight:!1,counterLength:8,extendNonceFn:lh,allowShortKeys:!1});var ph=new Uint8Array(16),A0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(ph.subarray(r))},yh=new Uint8Array(32);function C0(e,t,r,n,i){let o=e(t,r,yh),s=E0.create(o);i&&A0(s,i),A0(s,n);let a=new Uint8Array(16),c=x0(a);Po(c,0,BigInt(i?i.length:0),!0),Po(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var T0=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=C0(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=C0(e,t,r,f,n);if(!v0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),Mo=No({blockSize:64,nonceLength:12,tagLength:16},T0(hh)),Nx=No({blockSize:64,nonceLength:24,tagLength:16},T0(dh));function pi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Fo(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 wn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");pi(e.outputLen),pi(e.blockLen)}function qr(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 _0(e,t){Fo(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var yi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var L0=e=>e instanceof Uint8Array;var gi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),de=(e,t)=>e<<32-t|e>>>t,gh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!gh)throw new Error("Non little-endian hardware is not supported");function Vo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function je(e){if(typeof e=="string"&&(e=Vo(e)),!L0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function mi(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!L0(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var Hr=class{clone(){return this._cloneInto()}},Kx={}.toString;function xi(e){let t=n=>e().update(je(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function gr(e=32){if(yi&&typeof yi.getRandomValues=="function")return yi.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function mh(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 zr=class extends Hr{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=gi(this.buffer)}update(t){qr(this);let{view:r,buffer:n,blockLen:i}=this;t=je(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=gi(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){qr(this),_0(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;mh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=gi(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 bi=BigInt(4294967295),qo=BigInt(32);function R0(e,t=!1){return t?{h:Number(e&bi),l:Number(e>>qo&bi)}:{h:Number(e>>qo&bi)|0,l:Number(e&bi)|0}}function xh(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}=R0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var bh=(e,t)=>BigInt(e>>>0)<<qo|BigInt(t>>>0),vh=(e,t,r)=>e>>>r,wh=(e,t,r)=>e<<32-r|t>>>r,Eh=(e,t,r)=>e>>>r|t<<32-r,Sh=(e,t,r)=>e<<32-r|t>>>r,Bh=(e,t,r)=>e<<64-r|t>>>r-32,Ah=(e,t,r)=>e>>>r-32|t<<64-r,Ch=(e,t)=>t,Ih=(e,t)=>e,Th=(e,t,r)=>e<<r|t>>>32-r,_h=(e,t,r)=>t<<r|e>>>32-r,Lh=(e,t,r)=>t<<r-32|e>>>64-r,Rh=(e,t,r)=>e<<r-32|t>>>64-r;function Nh(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Ph=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Dh=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,kh=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Uh=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,Kh=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Oh=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var Mh={fromBig:R0,split:xh,toBig:bh,shrSH:vh,shrSL:wh,rotrSH:Eh,rotrSL:Sh,rotrBH:Bh,rotrBL:Ah,rotr32H:Ch,rotr32L:Ih,rotlSH:Th,rotlSL:_h,rotlBH:Lh,rotlBL:Rh,add:Nh,add3L:Ph,add3H:Dh,add4L:kh,add4H:Uh,add5H:Oh,add5L:Kh},j=Mh;var[Fh,Vh]=(()=>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))))(),tr=new Uint32Array(80),er=new Uint32Array(80),Ho=class extends zr{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:h,Gh:y,Gl:d,Hh:p,Hl:g}=this;return[t,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g]}set(t,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g){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=h|0,this.Gh=y|0,this.Gl=d|0,this.Hh=p|0,this.Hl=g|0}process(t,r){for(let x=0;x<16;x++,r+=4)tr[x]=t.getUint32(r),er[x]=t.getUint32(r+=4);for(let x=16;x<80;x++){let A=tr[x-15]|0,S=er[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),_=tr[x-2]|0,O=er[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,er[x-7],er[x-16]),z=j.add4H(H,B,M,tr[x-7],tr[x-16]);tr[x]=z|0,er[x]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:y,Fl:d,Gh:p,Gl:g,Hh:m,Hl:v}=this;for(let x=0;x<80;x++){let A=j.rotrSH(l,h,14)^j.rotrSH(l,h,18)^j.rotrBH(l,h,41),S=j.rotrSL(l,h,14)^j.rotrSL(l,h,18)^j.rotrBL(l,h,41),B=l&y^~l&p,R=h&d^~h&g,_=j.add5L(v,S,R,Vh[x],er[x]),O=j.add5H(_,m,A,B,Fh[x],tr[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=g|0,p=y|0,g=d|0,y=l|0,d=h|0,{h:l,l:h}=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:h}=j.add(this.Eh|0,this.El|0,l|0,h|0),{h:y,l:d}=j.add(this.Fh|0,this.Fl|0,y|0,d|0),{h:p,l:g}=j.add(this.Gh|0,this.Gl|0,p|0,g|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,h,y,d,p,g,m,v)}roundClean(){tr.fill(0),er.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=xi(()=>new Ho);var Ei={};Nt(Ei,{bitGet:()=>Yh,bitLen:()=>Wh,bitMask:()=>En,bitSet:()=>Zh,bytesToHex:()=>Oe,bytesToNumberBE:()=>Me,bytesToNumberLE:()=>pe,concatBytes:()=>Ve,createHmacDrbg:()=>Wo,ensureBytes:()=>mt,equalBytes:()=>Gh,hexToBytes:()=>mr,hexToNumber:()=>$o,numberToBytesBE:()=>rr,numberToBytesLE:()=>Fe,numberToHexUnpadded:()=>D0,numberToVarBytesBE:()=>zh,utf8ToBytes:()=>$h,validateObject:()=>se});var P0=BigInt(0),vi=BigInt(1),qh=BigInt(2),wi=e=>e instanceof Uint8Array,Hh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Oe(e){if(!wi(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=Hh[e[r]];return t}function D0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function $o(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 Me(e){return $o(Oe(e))}function pe(e){if(!wi(e))throw new Error("Uint8Array expected");return $o(Oe(Uint8Array.from(e).reverse()))}function rr(e,t){return mr(e.toString(16).padStart(t*2,"0"))}function Fe(e,t){return rr(e,t).reverse()}function zh(e){return mr(D0(e))}function mt(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(wi(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 Ve(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!wi(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function Gh(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 $h(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Wh(e){let t;for(t=0;e>P0;e>>=vi,t+=1);return t}function Yh(e,t){return e>>BigInt(t)&vi}var Zh=(e,t,r)=>e|(r?vi:P0)<<BigInt(t),En=e=>(qh<<BigInt(e-1))-vi,Go=e=>new Uint8Array(e),N0=e=>Uint8Array.from(e);function Wo(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=Go(e),i=Go(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Go())=>{i=a(N0([0]),l),n=a(),l.length!==0&&(i=a(N0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<t;){n=a();let y=n.slice();h.push(y),l+=n.length}return Ve(...h)};return(l,h)=>{s(),c(l);let y;for(;!(y=h(f()));)c();return s(),y}}var Xh={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 se(e,t,r={}){let n=(i,o,s)=>{let a=Xh[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 Pt=BigInt(0),wt=BigInt(1),xr=BigInt(2),Qh=BigInt(3),Yo=BigInt(4),k0=BigInt(5),U0=BigInt(8),Jh=BigInt(9),jh=BigInt(16);function at(e,t){let r=e%t;return r>=Pt?r:t+r}function Zo(e,t,r){if(r<=Pt||t<Pt)throw new Error("Expected power/modulo > 0");if(r===wt)return Pt;let n=wt;for(;t>Pt;)t&wt&&(n=n*e%r),e=e*e%r,t>>=wt;return n}function xt(e,t,r){let n=e;for(;t-- >Pt;)n*=n,n%=r;return n}function Si(e,t){if(e===Pt||t<=Pt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=at(e,t),n=t,i=Pt,o=wt,s=wt,a=Pt;for(;r!==Pt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==wt)throw new Error("invert: does not exist");return at(i,t)}function td(e){let t=(e-wt)/xr,r,n,i;for(r=e-wt,n=0;r%xr===Pt;r/=xr,n++);for(i=xr;i<e&&Zo(i,t,e)!==e-wt;i++);if(n===1){let s=(e+wt)/Yo;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)/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),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let y=1;for(let p=a.sqr(h);y<f&&!a.eql(p,a.ONE);y++)p=a.sqr(p);let d=a.pow(u,wt<<BigInt(f-y-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=y}return l}}function ed(e){if(e%Yo===Qh){let t=(e+wt)/Yo;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%U0===k0){let t=(e-k0)/U0;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%jh,td(e)}var K0=(e,t)=>(at(e,t)&wt)===wt,rd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Xo(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=rd.reduce((n,i)=>(n[i]="function",n),t);return se(e,r)}function nd(e,t,r){if(r<Pt)throw new Error("Expected power > 0");if(r===Pt)return e.ONE;if(r===wt)return t;let n=e.ONE,i=t;for(;r>Pt;)r&wt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=wt;return n}function id(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 Bi(e,t,r=!1,n={}){if(e<=Pt)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=ed(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:En(i),ZERO:Pt,ONE:wt,create:c=>at(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Pt<=c&&c<e},is0:c=>c===Pt,isOdd:c=>(c&wt)===wt,neg:c=>at(-c,e),eql:(c,f)=>c===f,sqr:c=>at(c*c,e),add:(c,f)=>at(c+f,e),sub:(c,f)=>at(c-f,e),mul:(c,f)=>at(c*f,e),pow:(c,f)=>nd(a,c,f),div:(c,f)=>at(c*Si(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>Si(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>id(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Fe(c,o):rr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?pe(c):Me(c)}});return Object.freeze(a)}function O0(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 M0(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 Jo(e){let t=M0(e);return t+Math.ceil(t/2)}function F0(e,t,r=!1){let n=e.length,i=M0(t),o=Jo(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Me(e):pe(e),a=at(s,t-wt)+wt;return r?Fe(a,i):rr(a,i)}var sd=BigInt(0),jo=BigInt(1);function Ai(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>sd;)o&jo&&(s=s.add(a)),a=a.double(),o>>=jo;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),h=2**i,y=BigInt(i);for(let d=0;d<a;d++){let p=d*c,g=Number(s&l);s>>=y,g>c&&(g-=h,s+=jo);let m=p,v=p+Math.abs(g)-1,x=d%2!==0,A=g<0;g===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 Sn(e){return Xo(e.Fp),se(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 ye=BigInt(0),ee=BigInt(1),Ci=BigInt(2),ad=BigInt(8),cd={zip215:!0};function fd(e){let t=Sn(e);return se(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function Ii(e){let t=fd(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=Ci<<BigInt(a*8)-ee,u=r.create,l=t.uvRatio||((L,w)=>{try{return{isValid:!0,value:r.sqrt(L*r.inv(w))}}catch{return{isValid:!1,value:ye}}}),h=t.adjustScalarBytes||(L=>L),y=t.domain||((L,w,k)=>{if(w.length||k)throw new Error("Contexts/pre-hash are not supported");return L}),d=L=>typeof L=="bigint"&&ye<L,p=(L,w)=>d(L)&&d(w)&&L<w,g=L=>L===ye||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===ye?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,!g(w))throw new Error("x required");if(!g(k))throw new Error("y required");if(!g(K))throw new Error("z required");if(!g(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(!g(k)||!g(K))throw new Error("invalid affine point");return new S(k,K,ee,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,V)=>K.toAffine(k[V])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,x.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:V,ez:W,et:Y}=this,et=u(K*K),X=u(V*V),J=u(W*W),yt=u(J*J),ut=u(et*w),Mt=u(J*u(ut+X)),Ft=u(yt+u(k*u(et*X)));if(Mt!==Ft)throw new Error("bad point: equation left != right (1)");let Rt=u(K*V),zt=u(W*Y);if(Rt!==zt)throw new Error("bad point: equation left != right (2)")}equals(w){A(w);let{ex:k,ey:K,ez:V}=this,{ex:W,ey:Y,ez:et}=w,X=u(k*et),J=u(W*V),yt=u(K*et),ut=u(Y*V);return X===J&&yt===ut}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(Ci*u(V*V)),X=u(w*W),J=k+K,yt=u(u(J*J)-W-Y),ut=X+Y,Mt=ut-et,Ft=X-Y,Rt=u(yt*Mt),zt=u(ut*Ft),ke=u(yt*Ft),dr=u(Mt*ut);return new S(Rt,zt,dr,ke)}add(w){A(w);let{a:k,d:K}=t,{ex:V,ey:W,ez:Y,et}=this,{ex:X,ey:J,ez:yt,et:ut}=w;if(k===BigInt(-1)){let Qa=u((W-V)*(J+X)),Ja=u((W+V)*(J-X)),wo=u(Ja-Qa);if(wo===ye)return this.double();let ja=u(Y*Ci*ut),t0=u(et*Ci*yt),e0=t0+ja,r0=Ja+Qa,n0=t0-ja,_l=u(e0*wo),Ll=u(r0*n0),Rl=u(e0*n0),Nl=u(wo*r0);return new S(_l,Ll,Nl,Rl)}let Mt=u(V*X),Ft=u(W*J),Rt=u(et*K*ut),zt=u(Y*yt),ke=u((V+W)*(X+J)-Mt-Ft),dr=zt-Rt,xn=zt+Rt,Xa=u(Ft-k*Mt),Al=u(ke*dr),Cl=u(xn*Xa),Il=u(ke*Xa),Tl=u(dr*xn);return new S(Al,Cl,Tl,Il)}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===ye?R:this.equals(R)||k===ee?this:this.equals(B)?this.wNAF(k).p:_.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:V}=this,W=this.is0();w==null&&(w=W?ad:r.inv(V));let Y=u(k*w),et=u(K*w),X=u(V*w);if(W)return{x:ye,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:et}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,k=!1){let{d:K,a:V}=t,W=r.BYTES;w=mt("pointHex",w,W);let Y=w.slice(),et=w[W-1];Y[W-1]=et&-129;let X=pe(Y);X===ye||(k?m(X,f):m(X,r.ORDER));let J=u(X*X),yt=u(J-ee),ut=u(K*J-V),{isValid:Mt,value:Ft}=l(yt,ut);if(!Mt)throw new Error("Point.fromHex: invalid y coordinate");let Rt=(Ft&ee)===ee,zt=(et&128)!==0;if(!k&&Ft===ye&&zt)throw new Error("Point.fromHex: x=0 and x_0=1");return zt!==Rt&&(Ft=u(-Ft)),S.fromAffine({x:Ft,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=Fe(k,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Oe(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(ye,ee,ee,ye);let{BASE:B,ZERO:R}=S,_=Ai(S,a*8);function O(L){return at(L,n)}function M(L){return O(pe(L))}function U(L){let w=a;L=mt("private key",L,w);let k=mt("hashed private key",o(L),2*w),K=h(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=Ve(...w);return M(o(y(k,mt("context",L),!!i)))}function Z(L,w,k={}){L=mt("message",L),i&&(L=i(L));let{prefix:K,scalar:V,pointBytes:W}=U(w),Y=z(k.context,K,L),et=B.multiply(Y).toRawBytes(),X=z(k.context,et,W,L),J=O(Y+X*V);v(J);let yt=Ve(et,Fe(J,r.BYTES));return mt("result",yt,a*2)}let C=cd;function N(L,w,k,K=C){let{context:V,zip215:W}=K,Y=r.BYTES;L=mt("signature",L,2*Y),w=mt("message",w),i&&(w=i(w));let et=pe(L.slice(Y,2*Y)),X,J,yt;try{X=S.fromHex(k,W),J=S.fromHex(L.slice(0,Y),W),yt=B.multiplyUnsafe(et)}catch{return!1}if(!W&&X.isSmallOrder())return!1;let ut=z(V,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(ut)).subtract(yt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(L=8,w=S.BASE){return w._setWindowSize(L),w.multiply(BigInt(3)),w}}}}var Bn=BigInt(0),ts=BigInt(1);function ud(e){return se(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function V0(e){let t=ud(e),{P:r}=t,n=x=>at(x,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(x=>x),c=t.powPminus2||(x=>Zo(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"&&Bn<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function h(x,A){let S=u(x),B=u(A),R=S,_=ts,O=Bn,M=S,U=ts,H=Bn,z;for(let C=BigInt(i-1);C>=Bn;C--){let N=B>>C&ts;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 y(x){return Fe(n(x),o)}function d(x){let A=mt("u coordinate",x,o);return s===o&&(A[s-1]&=127),pe(A)}function p(x){let A=mt("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return pe(a(A))}function g(x,A){let S=d(A),B=p(x),R=h(S,B);if(R===Bn)throw new Error("Invalid private or public key received");return y(R)}let m=y(t.Gu);function v(x){return g(x,m)}return{scalarMult:g,scalarMultBase:v,getSharedSecret:(x,A)=>g(x,A),getPublicKey:x=>v(x),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:m}}var An=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),q0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),f2=BigInt(0),ld=BigInt(1),es=BigInt(2),hd=BigInt(5),H0=BigInt(10),dd=BigInt(20),pd=BigInt(40),z0=BigInt(80);function G0(e){let t=An,n=e*e%t*e%t,i=xt(n,es,t)*n%t,o=xt(i,ld,t)*e%t,s=xt(o,hd,t)*o%t,a=xt(s,H0,t)*s%t,c=xt(a,dd,t)*a%t,f=xt(c,pd,t)*c%t,u=xt(f,z0,t)*f%t,l=xt(u,z0,t)*f%t,h=xt(l,H0,t)*s%t;return{pow_p_5_8:xt(h,es,t)*e%t,b2:n}}function $0(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function yd(e,t){let r=An,n=at(t*t*t,r),i=at(n*n*t,r),o=G0(e*i).pow_p_5_8,s=at(e*n*o,r),a=at(t*s*s,r),c=s,f=at(s*q0,r),u=a===e,l=a===at(-e,r),h=a===at(-e*q0,r);return u&&(s=c),(l||h)&&(s=f),K0(s,r)&&(s=at(-s,r)),{isValid:u||l,value:s}}var qe=Bi(An,void 0,!0),rs={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:qe,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:zo,randomBytes:gr,adjustScalarBytes:$0,uvRatio:yd},Gr=Ii(rs);function W0(e,t,r){if(t.length>255)throw new Error("Context is too big");return mi(Vo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var u2=Ii({...rs,domain:W0}),l2=Ii({...rs,domain:W0,prehash:zo}),Cn=(()=>V0({P:An,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=An,{pow_p_5_8:r,b2:n}=G0(e);return at(xt(r,BigInt(3),t)*n,t)},adjustScalarBytes:$0,randomBytes:gr}))();var gd=(qe.ORDER+BigInt(3))/BigInt(8),h2=qe.pow(es,gd),d2=qe.sqrt(qe.neg(qe.ONE)),p2=(qe.ORDER-BigInt(5))/BigInt(8),y2=BigInt(486662);var g2=O0(qe,qe.neg(BigInt(486664)));var m2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),x2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),b2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),v2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var w2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ti=class extends Hr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,wn(t);let n=je(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return qr(this),this.iHash.update(t),this}digestInto(t){qr(this),Fo(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()}},$r=(e,t,r)=>new Ti(e,t).update(r).digest();$r.create=(e,t)=>new Ti(e,t);function Z0(e,t,r){return wn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),$r(e,je(r),je(t))}var ns=new Uint8Array([0]),Y0=new Uint8Array;function X0(e,t,r,n=32){if(wn(e),pi(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=Y0);let o=new Uint8Array(i*e.outputLen),s=$r.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)ns[0]=f+1,a.update(f===0?Y0:c).update(r).update(ns).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),ns.fill(0),o.slice(0,n)}var md=(e,t,r)=>e&t^~e&r,xd=(e,t,r)=>e&t^e&r^t&r,bd=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]),nr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ir=new Uint32Array(64),is=class extends zr{constructor(){super(64,32,8,!1),this.A=nr[0]|0,this.B=nr[1]|0,this.C=nr[2]|0,this.D=nr[3]|0,this.E=nr[4]|0,this.F=nr[5]|0,this.G=nr[6]|0,this.H=nr[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)ir[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let h=ir[l-15],y=ir[l-2],d=de(h,7)^de(h,18)^h>>>3,p=de(y,17)^de(y,19)^y>>>10;ir[l]=p+ir[l-7]+d+ir[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=de(a,6)^de(a,11)^de(a,25),y=u+h+md(a,c,f)+bd[l]+ir[l]|0,p=(de(n,2)^de(n,13)^de(n,22))+xd(n,i,o)|0;u=f,f=c,c=a,a=s+y|0,s=o,o=i,i=n,n=y+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(){ir.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Wr=xi(()=>new is);var os={hashSHA256(e){return Wr(e)},getHKDF(e,t){let r=Z0(Wr,t,e),i=X0(Wr,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=Cn.utils.randomPrivateKey();return{publicKey:Cn.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:Cn.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return Cn.getSharedSecret(e,t)},chaCha20Poly1305Encrypt(e,t,r,n){return Mo(n,t,r).encrypt(e)},chaCha20Poly1305Decrypt(e,t,r,n,i){return Mo(n,t,r).decrypt(e,i)}};var vd=e=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(e):new Uint8Array(e),Yr=e=>{let t=vd(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Yr.bytes=2;var In=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)};In.bytes=2;function Q0(e){return dt([e.ne,e.ciphertext],e.ne.length+e.ciphertext.length)}function J0(e){return dt([e.ne,e.ns,e.ciphertext],e.ne.length+e.ns.length+e.ciphertext.length)}function j0(e){return dt([e.ns,e.ciphertext],e.ns.length+e.ciphertext.length)}function tc(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:new Uint8Array(0)}}function ec(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 rc(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var ic=16;function oc(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 Yr(s.byteLength),yield s}}}function sc(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-ic<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-ic),{plaintext:c,valid:f}=e.decrypt(s,e.session,a);if(!f)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var rt=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},_n=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},br=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var b8=Wt(Pn(),1),v8=Wt(Sf(),1);var Pg=Wt(pt(),1);var Ns={};Nt(Ns,{base10:()=>Xy});function Gy(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(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,g=0,m=0,v=d.length;m!==v&&d[m]===0;)m++,p++;for(var x=(v-m)*u+1>>>0,A=new Uint8Array(x);m!==v;){for(var S=d[m],B=0,R=x-1;(S!==0||B<g)&&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");g=B,m++}for(var _=x-g;_!==x&&A[_]===0;)_++;for(var O=c.repeat(p);_<x;++_)O+=e.charAt(A[_]);return O}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var g=0,m=0;d[p]===c;)g++,p++;for(var v=(d.length-p)*f+1>>>0,x=new Uint8Array(v);d[p];){var A=r[d.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(d[p]!==" "){for(var R=v-m;R!==v&&x[R]===0;)R++;for(var _=new Uint8Array(g+(v-R)),O=g;R!==v;)_[O++]=x[R++];return _}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var $y=Gy,Wy=$y,Bf=Wy;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},$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 Cf=e=>new TextEncoder().encode(e),If=e=>new TextDecoder().decode(e);var Ts=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")}},_s=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)}},Ls=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 Ls({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),Rs=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Ts(t,r,n),this.decoder=new _s(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},jr=({name:e,prefix:t,encode:r,decode:n})=>new Rs(e,t,r,n),fr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Bf(r,t);return jr({prefix:e,name:t,encode:n,decode:o=>$e(i(o))})},Yy=(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},Zy=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},It=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>jr({prefix:t,name:e,encode(i){return Zy(i,n,r)},decode(i){return Yy(i,n,r,e)}});var Xy=fr({prefix:"9",name:"base10",alphabet:"0123456789"});var Ps={};Nt(Ps,{base16:()=>Qy,base16upper:()=>Jy});var Qy=It({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Jy=It({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ds={};Nt(Ds,{base2:()=>jy});var jy=It({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ks={};Nt(ks,{base256emoji:()=>i1});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}"),t1=Lf.reduce((e,t,r)=>(e[r]=t,e),[]),e1=Lf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function r1(e){return e.reduce((t,r)=>(t+=t1[r],t),"")}function n1(e){let t=[];for(let r of e){let n=e1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var i1=jr({prefix:"\u{1F680}",name:"base256emoji",encode:r1,decode:n1});var Us={};Nt(Us,{base32:()=>xe,base32hex:()=>c1,base32hexpad:()=>u1,base32hexpadupper:()=>l1,base32hexupper:()=>f1,base32pad:()=>s1,base32padupper:()=>a1,base32upper:()=>o1,base32z:()=>h1});var xe=It({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),o1=It({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),s1=It({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),a1=It({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),c1=It({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),f1=It({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),u1=It({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),l1=It({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),h1=It({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Ks={};Nt(Ks,{base36:()=>d1,base36upper:()=>p1});var d1=fr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),p1=fr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Os={};Nt(Os,{base58btc:()=>Bt,base58flickr:()=>y1});var Bt=fr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),y1=fr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Fs={};Nt(Fs,{base64:()=>tn,base64pad:()=>g1,base64url:()=>Ms,base64urlpad:()=>m1});var tn=It({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),g1=It({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ms=It({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),m1=It({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Vs={};Nt(Vs,{base8:()=>x1});var x1=It({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var qs={};Nt(qs,{identity:()=>b1});var b1=jr({prefix:"\0",name:"identity",encode:e=>If(e),decode:e=>Cf(e)});var Rb=new TextEncoder,Nb=new TextDecoder;var Gs={};Nt(Gs,{identity:()=>lr});var _e={};Nt(_e,{Digest:()=>Ar,create:()=>be,decode:()=>ur,equals:()=>zs});var E1=Pf,Rf=128,S1=127,B1=~S1,A1=Math.pow(2,31);function Pf(e,t,r){t=t||[],r=r||0;for(var n=r;e>=A1;)t[r++]=e&255|Rf,e/=128;for(;e&B1;)t[r++]=e&255|Rf,e>>>=7;return t[r]=e|0,Pf.bytes=r-n+1,t}var C1=Hs,I1=128,Nf=127;function Hs(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Hs.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>=I1);return Hs.bytes=o-n,r}var T1=Math.pow(2,7),_1=Math.pow(2,14),L1=Math.pow(2,21),R1=Math.pow(2,28),N1=Math.pow(2,35),P1=Math.pow(2,42),D1=Math.pow(2,49),k1=Math.pow(2,56),U1=Math.pow(2,63),K1=function(e){return e<T1?1:e<_1?2:e<L1?3:e<R1?4:e<N1?5:e<P1?6:e<D1?7:e<k1?8:e<U1?9:10},O1={encode:E1,decode:C1,encodingLength:K1},M1=O1,Un=M1;var Kn=(e,t=0)=>[Un.decode(e,t),Un.decode.bytes],en=(e,t,r=0)=>(Un.encode(e,t,r),t),rn=e=>Un.encodingLength(e);var be=(e,t)=>{let r=t.byteLength,n=rn(e),i=n+rn(r),o=new Uint8Array(i+r);return en(e,o,0),en(r,o,n),o.set(t,i),new Ar(e,r,t,o)},ur=e=>{let t=$e(e),[r,n]=Kn(t),[i,o]=Kn(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Ar(r,i,s,t)},zs=(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)}},Ar=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var Df=0,F1="identity",kf=$e,V1=e=>be(Df,kf(e)),lr={code:Df,name:F1,encode:kf,digest:V1};var Ys={};Nt(Ys,{sha256:()=>Ht,sha512:()=>q1});var Ws=({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?be(this.code,r):r.then(n=>be(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)),Ht=Ws({name:"sha2-256",code:18,encode:Kf("SHA-256")}),q1=Ws({name:"sha2-512",code:19,encode:Kf("SHA-512")});var Of=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return z1(r,Zs(e),t||Bt.encoder);default:return G1(r,Zs(e),t||xe.encoder)}};var Mf=new WeakMap,Zs=e=>{let t=Mf.get(e);if(t==null){let r=new Map;return Mf.set(e,r),r}return t},ve=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!==On)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==$1)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=be(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&&zs(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||Ff(n,i,o.bytes))}else if(r[W1]===!0){let{version:n,multihash:i,code:o}=r,s=ur(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!==On)throw new Error(`Version 0 CID must use dag-pb (code: ${On}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=Ff(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,On,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 Ar(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,h]=Kn(t.subarray(r));return r+=h,l},i=n(),o=On;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]=H1(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 Zs(o).set(n,t),o}},H1=(e,t)=>{switch(e[0]){case"Q":{let r=t||Bt;return[Bt.prefix,r.decode(`${Bt.prefix}${e}`)]}case Bt.prefix:{let r=t||Bt;return[Bt.prefix,r.decode(e)]}case xe.prefix:{let r=t||xe;return[xe.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)]}}},z1=(e,t,r)=>{let{prefix:n}=r;if(n!==Bt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},G1=(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},On=112,$1=18,Ff=(e,t,r)=>{let n=rn(e),i=n+rn(t),o=new Uint8Array(i+r.byteLength);return en(e,o,0),en(t,o,n),o.set(r,i),o},W1=Symbol.for("@ipld/js-cid/CID");var Le={...qs,...Ds,...Vs,...Ns,...Ps,...Us,...Ks,...Os,...Fs,...ks},Yb={...Ys,...Gs};function qf(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Vf=qf("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Xs=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=Vt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),Y1={utf8:Vf,"utf-8":Vf,hex:Le.base16,latin1:Xs,ascii:Xs,binary:Xs,...Le},Yi=Y1;function At(e,t="utf8"){let r=Yi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Qe(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var ha={};Nt(ha,{Ed25519PrivateKey:()=>Rr,Ed25519PublicKey:()=>qn,generateKeyPair:()=>sg,generateKeyPairFromSeed:()=>nu,unmarshalEd25519PrivateKey:()=>ig,unmarshalEd25519PublicKey:()=>og});var nn=32,We=64,Zi=32;async function Hf(){let e=Gr.utils.randomPrivateKey(),t=Gr.getPublicKey(e);return{privateKey:Wf(e,t),publicKey:t}}async function zf(e){if(e.length!==Zi)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=Gr.getPublicKey(t);return{privateKey:Wf(t,r),publicKey:r}}async function Gf(e,t){let r=e.subarray(0,Zi);return Gr.sign(t,r)}async function $f(e,t,r){return Gr.verify(t,r,e)}function Wf(e,t){let r=new Uint8Array(We);for(let n=0;n<Zi;n++)r[n]=e[n],r[Zi+n]=t[n];return r}var Jt={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var Qs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Js(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,h){let y=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:d};typeof h=="string"&&(h=At(h));let g;if(h.length===0){g=await a.subtle.importKey("jwk",Qs,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}catch{g=await a.subtle.importKey("jwk",Qs,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,g,l);return dt([y,p.iv,new Uint8Array(m)])}async function f(l,h){let y=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),g={name:t,iv:d};typeof h=="string"&&(h=At(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",Qs,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(g,m,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function on(e,t){let n=await Js().encrypt(e,t);return tn.encode(n)}var js=new Float32Array([-0]),hr=new Uint8Array(js.buffer);function Zf(e,t,r){js[0]=e,t[r]=hr[0],t[r+1]=hr[1],t[r+2]=hr[2],t[r+3]=hr[3]}function Xf(e,t){return hr[0]=e[t],hr[1]=e[t+1],hr[2]=e[t+2],hr[3]=e[t+3],js[0]}var ta=new Float64Array([-0]),$t=new Uint8Array(ta.buffer);function Qf(e,t,r){ta[0]=e,t[r]=$t[0],t[r+1]=$t[1],t[r+2]=$t[2],t[r+3]=$t[3],t[r+4]=$t[4],t[r+5]=$t[5],t[r+6]=$t[6],t[r+7]=$t[7]}function Jf(e,t){return $t[0]=e[t],$t[1]=e[t+1],$t[2]=e[t+2],$t[3]=e[t+3],$t[4]=e[t+4],$t[5]=e[t+5],$t[6]=e[t+6],$t[7]=e[t+7],ta[0]}var X1=BigInt(Number.MAX_SAFE_INTEGER),Q1=BigInt(Number.MIN_SAFE_INTEGER),jt=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<X1&&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>jf&&(i=0n,++n>jf&&(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 jt(0,0);Cr.toBigInt=function(){return 0n};Cr.zzEncode=Cr.zzDecode=function(){return this};Cr.length=function(){return 1};var jf=4294967296n;function tu(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function eu(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function ea(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 we(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Xi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var ra=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,we(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 we(this,4);return Xi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Xi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let t=Xf(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw we(this,4);let t=Jf(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw we(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return eu(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw we(this,t);this.pos+=t}else do if(this.pos>=this.len)throw we(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 jt(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 we(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 we(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 we(this,8);let t=Xi(this.buf,this.pos+=4),r=Xi(this.buf,this.pos+=4);return new jt(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 na(e){return new ra(e instanceof Uint8Array?e:e.subarray())}function Ir(e,t){let r=na(e);return t.decode(r)}function ia(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Vt(s);i+s>t&&(n=Vt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Tr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function oa(){}var aa=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},J1=ia();function j1(e){return globalThis.Buffer!=null?Vt(e):J1(e)}var Vn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Tr(oa,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 ca((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(Mn,10,jt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=jt.fromBigInt(t);return this._push(Mn,r.length(),r)}uint64Number(t){let r=jt.fromNumber(t);return this._push(Mn,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=jt.fromBigInt(t).zzEncode();return this._push(Mn,r.length(),r)}sint64Number(t){let r=jt.fromNumber(t).zzEncode();return this._push(Mn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(sa,1,t?1:0)}fixed32(t){return this._push(Fn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=jt.fromBigInt(t);return this._push(Fn,4,r.lo)._push(Fn,4,r.hi)}fixed64Number(t){let r=jt.fromNumber(t);return this._push(Fn,4,r.lo)._push(Fn,4,r.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Zf,4,t)}double(t){return this._push(Qf,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(sa,1,0):this.uint32(r)._push(eg,r,t)}string(t){let r=tu(t);return r!==0?this.uint32(r)._push(ea,r,t):this._push(sa,1,0)}fork(){return this.states=new aa(this),this.head=this.tail=new Tr(oa,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(oa,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=j1(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function sa(e,t,r){t[r]=e&255}function tg(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var ca=class extends Tr{next;constructor(t,r){super(tg,t,r),this.next=void 0}};function Mn(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 Fn(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 eg(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Vn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(rg,t,e),this},Vn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(ng,t,e),this});function rg(e,t,r){t.set(e,r)}function ng(e,t,r){e.length<40?ea(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(At(e),r)}function fa(){return new Vn}function _r(e,t){let r=fa();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var sn;(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"})(sn||(sn={}));function Qi(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ua(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 Qi("enum",sn.VARINT,r,n)}function Lr(e,t){return Qi("message",sn.LENGTH_DELIMITED,e,t)}var St;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(St||(St={}));var la;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(la||(la={}));(function(e){e.codec=()=>ua(la)})(St||(St={}));var Re;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((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=>_r(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Re||(Re={}));var Ne;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((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=>_r(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Ne||(Ne={}));var qn=class{_key;constructor(t){this._key=an(t,nn)}async verify(t,r){return $f(this._key,r,t)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},Rr=class{_key;_publicKey;constructor(t,r){this._key=an(t,We),this._publicKey=an(r,nn)}async sign(t){return Gf(this._key,t)}get public(){return new qn(this._publicKey)}marshal(){return this._key}get bytes(){return Ne.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=lr.digest(this.public.bytes);return Bt.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return on(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function ig(e){if(e.length>We){e=an(e,We+nn);let n=e.subarray(0,We),i=e.subarray(We,e.length);return new Rr(n,i)}e=an(e,We);let t=e.subarray(0,We),r=e.subarray(nn);return new Rr(t,r)}function og(e){return e=an(e,nn),new qn(e)}async function sg(){let{privateKey:e,publicKey:t}=await Hf();return new Rr(e,t)}async function nu(e){let{privateKey:t,publicKey:r}=await zf(e);return new Rr(t,r)}function an(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new rt(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}function it(e,t="utf8"){let r=Yi[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 Wv=Wt(Lt(),1),Yv=Wt(Hi(),1),iu=Wt(pt(),1);function Ee(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=dt([new Uint8Array(t-r.length),r])}return it(r,"base64url")}function re(e){let t=ou(e);return new iu.default.jsbn.BigInteger(it(t,"base16"),16)}function ou(e,t){let r=At(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=dt([new Uint8Array(t-r.length),r])}return r}var ag={"P-256":256,"P-384":384,"P-521":521},cg=Object.keys(ag),ow=cg.join(" / ");var ma={};Nt(ma,{MAX_KEY_SIZE:()=>$n,RsaPrivateKey:()=>cn,RsaPublicKey:()=>Gn,fromJwk:()=>bg,generateKeyPair:()=>vg,unmarshalRsaPrivateKey:()=>mg,unmarshalRsaPublicKey:()=>xg});var zn=Wt(pt(),1);var Hw=Wt(uu(),1);function ji(e){if(isNaN(e)||e<=0)throw new rt("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return gr(e)}var Aw=Wt($i(),1),ya=Wt(pt(),1);function lu(e,t){return t.map(r=>re(e[r]))}function hu(e){return ya.default.pki.setRsaPrivateKey(...lu(e,["n","e","d","p","q","dp","dq","qi"]))}function du(e){return ya.default.pki.setRsaPublicKey(...lu(e,["n","e"]))}var Pr={};Nt(Pr,{jwkToPkcs1:()=>hg,jwkToPkix:()=>pg,pkcs1ToJwk:()=>lg,pkixToJwk:()=>dg});var Tw=Wt(Pn(),1),_w=Wt($i(),1);var Ye=Wt(pt(),1);function lg(e){let t=Ye.default.asn1.fromDer(it(e,"ascii")),r=Ye.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:Ee(r.n),e:Ee(r.e),d:Ee(r.d),p:Ee(r.p),q:Ee(r.q),dp:Ee(r.dP),dq:Ee(r.dQ),qi:Ee(r.qInv),alg:"RS256"}}function hg(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new rt("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Ye.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return At(Ye.default.asn1.toDer(t).getBytes(),"ascii")}function dg(e){let t=Ye.default.asn1.fromDer(it(e,"ascii")),r=Ye.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:Ee(r.n),e:Ee(r.e)}}function pg(e){if(e.n==null||e.e==null)throw new rt("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Ye.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return At(Ye.default.asn1.toDer(t).getBytes(),"ascii")}async function pu(e){let t=await Jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await mu(t);return{privateKey:r[0],publicKey:r[1]}}async function ga(e){let r=[await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await yg(e)],n=await mu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function yu(e,t){let r=await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(n,0,n.byteLength)}async function gu(e,t,r){let n=await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r)}async function mu(e){if(e.privateKey==null||e.publicKey==null)throw new rt("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Jt.get().subtle.exportKey("jwk",e.privateKey),Jt.get().subtle.exportKey("jwk",e.publicKey)])}async function yg(e){return Jt.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function xu(e,t,r,n){let i=t?du(e):hu(e),o=it(Uint8Array.from(r),"ascii"),s=n(o,i);return At(s,"ascii")}function bu(e,t){return xu(e,!0,t,(r,n)=>n.encrypt(r))}function vu(e,t){return xu(e,!1,t,(r,n)=>n.decrypt(r))}function to(e){if(e.kty!=="RSA")throw new rt("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new rt("invalid key modulus","ERR_INVALID_KEY_MODULUS");return At(e.n,"base64url").length*8}var $n=8192,Gn=class{_key;constructor(t){this._key=t}async verify(t,r){return gu(this._key,r,t)}marshal(){return Pr.jwkToPkix(this._key)}get bytes(){return Re.encode({Type:St.RSA,Data:this.marshal()}).subarray()}encrypt(t){return bu(this._key,t)}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},cn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return ji(16)}async sign(t){return yu(this._key,t)}get public(){if(this._publicKey==null)throw new rt("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Gn(this._publicKey)}decrypt(t){return vu(this._key,t)}marshal(){return Pr.jwkToPkcs1(this._key)}get bytes(){return Ne.encode({Type:St.RSA,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=await this.public.hash();return it(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new zn.default.util.ByteBuffer(this.marshal()),i=zn.default.asn1.fromDer(n),o=zn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return zn.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return on(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function mg(e){let t=Pr.pkcs1ToJwk(e);if(to(t)>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await ga(t);return new cn(r.privateKey,r.publicKey)}function xg(e){let t=Pr.pkixToJwk(e);if(to(t)>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Gn(t)}async function bg(e){if(to(e)>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await ga(e);return new cn(t.privateKey,t.publicKey)}async function vg(e){if(e>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await pu(e);return new cn(t.privateKey,t.publicKey)}var wa={};Nt(wa,{Secp256k1PrivateKey:()=>Yn,Secp256k1PublicKey:()=>Wn,generateKeyPair:()=>Ng,unmarshalSecp256k1PrivateKey:()=>Lg,unmarshalSecp256k1PublicKey:()=>Rg});function wg(e){let t=Sn(e);se(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:Eg,hexToBytes:Sg}=Ei,Dr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Dr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:Eg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Dr,r=typeof e=="string"?Sg(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Dr._parseInt(r.subarray(2)),{d:s,l:a}=Dr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Ze=BigInt(0),fe=BigInt(1),Zw=BigInt(2),wu=BigInt(3),Xw=BigInt(4);function Bg(e){let t=wg(e),{Fp:r}=t,n=t.toBytes||((d,p,g)=>{let m=p.toAffine();return Ve(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=t.fromBytes||(d=>{let p=d.subarray(1),g=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:g,y:m}});function o(d){let{a:p,b:g}=t,m=r.sqr(d),v=r.mul(m,d);return r.add(r.add(v,r.mul(d,p)),g)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&Ze<d&&d<t.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:g,wrapPrivateKey:m,n:v}=t;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Oe(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(g*2,"0")}let x;try{x=typeof d=="bigint"?d:Me(mt("private key",d,g))}catch{throw new Error(`private key must be ${g} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=at(x,v)),a(x),x}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,g,m){if(this.px=p,this.py=g,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(g==null||!r.isValid(g))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:g,y:m}=p||{};if(!p||!r.isValid(g)||!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(g)&&v(m)?l.ZERO:new l(g,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let g=r.invertBatch(p.map(m=>m.pz));return p.map((m,v)=>m.toAffine(g[v])).map(l.fromAffine)}static fromHex(p){let g=l.fromAffine(i(mt("pointHex",p)));return g.assertValidity(),g}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:g}=this.toAffine();if(!r.isValid(p)||!r.isValid(g))throw new Error("bad point: x or y not FE");let m=r.sqr(g),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:g,py:m,pz:v}=this,{px:x,py:A,pz:S}=p,B=r.eql(r.mul(g,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:g}=t,m=r.mul(g,wu),{px:v,py:x,pz:A}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,_=r.mul(v,v),O=r.mul(x,x),M=r.mul(A,A),U=r.mul(v,x);return U=r.add(U,U),R=r.mul(v,A),R=r.add(R,R),S=r.mul(p,R),B=r.mul(m,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(U,S),R=r.mul(m,R),M=r.mul(p,M),U=r.sub(_,M),U=r.mul(p,U),U=r.add(U,R),R=r.add(_,_),_=r.add(R,_),_=r.add(_,M),_=r.mul(_,U),B=r.add(B,_),M=r.mul(x,A),M=r.add(M,M),_=r.mul(M,U),S=r.sub(S,_),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:g,py:m,pz:v}=this,{px:x,py:A,pz:S}=p,B=r.ZERO,R=r.ZERO,_=r.ZERO,O=t.a,M=r.mul(t.b,wu),U=r.mul(g,x),H=r.mul(m,A),z=r.mul(v,S),Z=r.add(g,m),C=r.add(x,A);Z=r.mul(Z,C),C=r.add(U,H),Z=r.sub(Z,C),C=r.add(g,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 y.wNAFCached(this,f,p,g=>{let m=r.invertBatch(g.map(v=>v.pz));return g.map((v,x)=>v.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let g=l.ZERO;if(p===Ze)return g;if(a(p),p===fe)return this;let{endo:m}=t;if(!m)return y.unsafeLadder(this,p);let{k1neg:v,k1:x,k2neg:A,k2:S}=m.splitScalar(p),B=g,R=g,_=this;for(;x>Ze||S>Ze;)x&fe&&(B=B.add(_)),S&fe&&(R=R.add(_)),_=_.double(),x>>=fe,S>>=fe;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 g=p,m,v,{endo:x}=t;if(x){let{k1neg:A,k1:S,k2neg:B,k2:R}=x.splitScalar(g),{p:_,f:O}=this.wNAF(S),{p:M,f:U}=this.wNAF(R);_=y.constTimeNegate(A,_),M=y.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(g);m=A,v=S}return l.normalizeZ([m,v])[0]}multiplyAndAddUnsafe(p,g,m){let v=l.BASE,x=(S,B)=>B===Ze||B===fe||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),A=x(this,g).add(x(p,m));return A.is0()?void 0:A}toAffine(p){let{px:g,py:m,pz:v}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(v));let A=r.mul(g,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:g}=t;if(p===fe)return!0;if(g)return g(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:g}=t;return p===fe?this:g?g(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Oe(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=t.nBitLength,y=Ai(l,t.endo?Math.ceil(h/2):h);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Ag(e){let t=Sn(e);return se(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Eu(e){let t=Ag(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return Ze<C&&C<r.ORDER}function a(C){return at(C,n)}function c(C){return Si(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=Bg({...t,toBytes(C,N,T){let L=N.toAffine(),w=r.toBytes(L.x),k=Ve;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=Me(L);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),V=(K&fe)===fe;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`)}}),y=C=>Oe(rr(C,t.nByteLength));function d(C){let N=n>>fe;return C>N}function p(C){return d(C)?a(-C):C}let g=(C,N,T)=>Me(C.slice(N,T));class m{constructor(N,T,L){this.r=N,this.s=T,this.recovery=L,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=mt("compactSignature",N,T*2),new m(g(N,0,T),g(N,T,2*T))}static fromDER(N){let{r:T,s:L}=Dr.toSig(mt("DER",N));return new m(T,L)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new m(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:L,recovery:w}=this,k=R(mt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let V=w&1?"03":"02",W=f.fromHex(V+y(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 d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return mr(this.toDERHex())}toDERHex(){return Dr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return mr(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let v={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=Jo(t.n);return F0(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=Me(C),T=C.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(C){return a(B(C))},_=En(t.nBitLength);function O(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Ze<=C&&C<_))throw new Error(`bigint expected < 2^${t.nBitLength}`);return rr(C,t.nByteLength)}function M(C,N,T=U){if(["recovered","canonical"].some(ut=>ut in T))throw new Error("sign() legacy options not supported");let{hash:L,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:V}=T;k==null&&(k=!0),C=mt("msgHash",C),K&&(C=mt("prehashed msgHash",L(C)));let W=R(C),Y=u(N),et=[O(Y),O(W)];if(V!=null){let ut=V===!0?w(r.BYTES):V;et.push(mt("extraEntropy",ut))}let X=Ve(...et),J=W;function yt(ut){let Mt=B(ut);if(!h(Mt))return;let Ft=c(Mt),Rt=f.BASE.multiply(Mt).toAffine(),zt=a(Rt.x);if(zt===Ze)return;let ke=a(Ft*a(J+zt*Y));if(ke===Ze)return;let dr=(Rt.x===zt?0:2)|Number(Rt.y&fe),xn=ke;return k&&d(ke)&&(xn=p(ke),dr^=1),new m(zt,xn,dr)}return{seed:X,k2sig:yt}}let U={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(C,N,T=U){let{seed:L,k2sig:w}=M(C,N,T),k=t;return Wo(k.hash.outputLen,k.nByteLength,k.hmac)(L,w)}f.BASE._setWindowSize(8);function Z(C,N,T,L=H){let w=C;if(N=mt("msgHash",N),T=mt("publicKey",T),"strict"in L)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=L,V,W;try{if(typeof w=="string"||w instanceof Uint8Array)try{V=m.fromDER(w)}catch(Rt){if(!(Rt instanceof Dr.Err))throw Rt;V=m.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Rt,s:zt}=w;V=new m(Rt,zt)}else throw new Error("PARSE");W=f.fromHex(T)}catch(Rt){if(Rt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&V.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:et}=V,X=R(N),J=c(et),yt=a(X*J),ut=a(Y*J),Mt=f.BASE.multiplyAndAddUnsafe(W,yt,ut)?.toAffine();return Mt?a(Mt.x)===Y:!1}return{CURVE:t,getPublicKey:x,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:m,utils:v}}function Cg(e){return{hash:e,hmac:(t,...r)=>$r(e,t,mi(...r)),randomBytes:gr}}function Su(e,t){let r=n=>Eu({...e,...Cg(n)});return Object.freeze({...r(t),create:r})}var Cu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Bu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Ig=BigInt(1),xa=BigInt(2),Au=(e,t)=>(e+t/xa)/t;function Tg(e){let t=Cu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=xt(u,r,t)*u%t,h=xt(l,r,t)*u%t,y=xt(h,xa,t)*f%t,d=xt(y,i,t)*y%t,p=xt(d,o,t)*d%t,g=xt(p,a,t)*p%t,m=xt(g,c,t)*g%t,v=xt(m,a,t)*p%t,x=xt(v,r,t)*u%t,A=xt(x,s,t)*d%t,S=xt(A,n,t)*f%t,B=xt(S,xa,t);if(!ba.eql(ba.sqr(B),e))throw new Error("Cannot find square root");return B}var ba=Bi(Cu,void 0,void 0,{sqrt:Tg}),Xe=Su({a:BigInt(0),b:BigInt(7),Fp:ba,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=-Ig*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Au(o*e,t),c=Au(-n*e,t),f=at(e-a*r-c*i,t),u=at(-a*n-c*o,t),l=f>s,h=u>s;if(l&&(f=t-f),h&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},Wr),o8=BigInt(0);var s8=Xe.ProjectivePoint;function Iu(){return Xe.utils.randomPrivateKey()}async function Tu(e,t){let{digest:r}=await Ht.digest(t);try{return Xe.sign(r,e).toDERRawBytes()}catch(n){throw new rt(String(n),"ERR_INVALID_INPUT")}}async function _u(e,t,r){try{let{digest:n}=await Ht.digest(r);return Xe.verify(t,n,e)}catch(n){throw new rt(String(n),"ERR_INVALID_INPUT")}}function Lu(e){return Xe.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Ru(e){try{Xe.getPublicKey(e,!0)}catch(t){throw new rt(String(t),"ERR_INVALID_PRIVATE_KEY")}}function va(e){try{Xe.ProjectivePoint.fromHex(e)}catch(t){throw new rt(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Nu(e){try{return Xe.getPublicKey(e,!0)}catch(t){throw new rt(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Wn=class{_key;constructor(t){va(t),this._key=t}async verify(t,r){return _u(this._key,r,t)}marshal(){return Lu(this._key)}get bytes(){return Re.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},Yn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Nu(t),Ru(this._key),va(this._publicKey)}async sign(t){return Tu(this._key,t)}get public(){return new Wn(this._publicKey)}marshal(){return this._key}get bytes(){return Ne.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=await this.public.hash();return it(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return on(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Lg(e){return new Yn(e)}function Rg(e){return new Wn(e)}async function Ng(){let e=Iu();return new Yn(e)}var kr={rsa:ma,ed25519:ha,secp256k1:wa};function Pu(e){let t=Object.keys(kr).join(" / ");return new rt(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Du(e){let t=Re.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return kr.rsa.unmarshalRsaPublicKey(r);case St.Ed25519:return kr.ed25519.unmarshalEd25519PublicKey(r);case St.Secp256k1:return kr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Pu(t.Type??"unknown")}}async function ku(e){let t=Ne.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return kr.rsa.unmarshalRsaPrivateKey(r);case St.Ed25519:return kr.ed25519.unmarshalEd25519PrivateKey(r);case St.Secp256k1:return kr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Pu(t.Type??"RSA")}}var Uu=Symbol.for("@libp2p/peer-id");var Dg=Symbol.for("nodejs.util.inspect.custom"),Ku=Object.values(Le).map(e=>e.decoder).reduce((e,t)=>e.or(t),Le.identity.decoder),Ou=114,Ea=36,Sa=37,Zn=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Uu]=!0;toString(){return this.string==null&&(this.string=Bt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return ve.createV1(Ou,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Ct(this.multihash.bytes,t);if(typeof t=="string")return Ba(t).equals(this);if(t?.multihash?.bytes!=null)return Ct(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[Dg](){return`PeerId(${this.toString()})`}},fn=class extends Zn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},un=class extends Zn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},ln=class extends Zn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function Ba(e,t){if(t=t??Ku,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=ur(Bt.decode(`z${e}`));return e.startsWith("12D")?new un({multihash:r}):e.startsWith("16U")?new ln({multihash:r}):new fn({multihash:r})}return kg(Ku.decode(e))}function kg(e){try{let t=ur(e);if(t.code===lr.code){if(t.digest.length===Ea)return new un({multihash:t});if(t.digest.length===Sa)return new ln({multihash:t})}if(t.code===Ht.code)return new fn({multihash:t})}catch{return Ug(ve.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Ug(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Ou)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Ht.code)return new fn({multihash:e.multihash});if(t.code===lr.code){if(t.digest.length===Ea)return new un({multihash:e.multihash});if(t.digest.length===Sa)return new ln({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Aa(e,t){return e.length===Ea?new un({multihash:be(lr.code,e),privateKey:t}):e.length===Sa?new ln({multihash:be(lr.code,e),privateKey:t}):new fn({multihash:await Ht.digest(e),publicKey:e,privateKey:t})}var eo;(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())})(eo||(eo={}));var Xn;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),(i.writeDefaults===!0||r.identityKey!=null&&r.identityKey.byteLength>0)&&(n.uint32(10),n.bytes(r.identityKey??new Uint8Array(0))),(i.writeDefaults===!0||r.identitySig!=null&&r.identitySig.byteLength>0)&&(n.uint32(18),n.bytes(r.identitySig??new Uint8Array(0))),r.extensions!=null&&(n.uint32(34),eo.codec().encode(r.extensions,n,{writeDefaults:!1})),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:new Uint8Array(0),identitySig:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.identityKey=r.bytes();break;case 2:i.identitySig=r.bytes();break;case 4:i.extensions=eo.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())})(Xn||(Xn={}));async function Mu(e,t,r){let n=await Og(e,Fu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Kg(e.publicKey,n,r)}function Kg(e,t,r){return Xn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Og(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await ku(e.privateKey)).sign(t)}async function Ca(e){return Aa(e.identityKey)}function Ia(e){return Xn.decode(e)}function Fu(e){let t=At("noise-libp2p-static-key:");return dt([t,e],t.length+e.length)}async function Ta(e,t,r){let n=await Aa(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Fu(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await Du(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Qn(e){return!(!(e instanceof Uint8Array)||e.length!==32)}var ie=Wt(Gu(),1);ie.default.formatters.b=e=>e==null?"undefined":Bt.baseEncode(e);ie.default.formatters.t=e=>e==null?"undefined":xe.baseEncode(e);ie.default.formatters.m=e=>e==null?"undefined":tn.baseEncode(e);ie.default.formatters.p=e=>e==null?"undefined":e.toString();ie.default.formatters.c=e=>e==null?"undefined":e.toString();ie.default.formatters.k=e=>e==null?"undefined":e.toString();ie.default.formatters.a=e=>e==null?"undefined":e.toString();function Qg(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 yn(e){let t=Qg(`${e}:trace`);return ie.default.enabled(`${e}:trace`)&&ie.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(t=(0,ie.default)(`${e}:trace`)),Object.assign((0,ie.default)(e),{error:(0,ie.default)(`${e}:error`),trace:t})}var Ot=yn("libp2p:noise");var ue;m0?ue=Ot:ue=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function $u(e){ue(`LOCAL_STATIC_PUBLIC_KEY ${it(e.publicKey,"hex")}`),ue(`LOCAL_STATIC_PRIVATE_KEY ${it(e.privateKey,"hex")}`)}function _a(e){e?(ue(`LOCAL_PUBLIC_EPHEMERAL_KEY ${it(e.publicKey,"hex")}`),ue(`LOCAL_PRIVATE_EPHEMERAL_KEY ${it(e.privateKey,"hex")}`)):ue("Missing local ephemeral keys.")}function Wu(e){ue(`REMOTE_STATIC_PUBLIC_KEY ${it(e,"hex")}`)}function La(e){ue(`REMOTE_EPHEMERAL_PUBLIC_KEY ${it(e,"hex")}`)}function Yu(e){e.cs1&&e.cs2?(ue(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${it(e.cs1.k,"hex")}`),ue(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${it(e.cs2.k,"hex")}`)):ue("Missing cipher state.")}var Jg="Cipherstate has reached maximum n, a new handshake must be performed",io=class{n;bytes;view;constructor(t=0){this.n=t,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>4294967295)throw new Error(Jg)}};var oo=class{crypto;constructor(t){this.crypto=t}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(t){let r=this.createEmptyKey();return Ct(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Ot.error(i),new Uint8Array(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(dt([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 io}}initializeSymmetric(t){let r=At(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=new Uint8Array(32);return r.set(t),r}else return this.getHash(t,new Uint8Array(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,new Uint8Array(0),r.ciphertext)}};var so=class extends oo{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=new Uint8Array(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Qn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Qn(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&&Qn(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&&Qn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=new Uint8Array(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};var ao=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 so(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if($u(this.session.hs.s),this.isInitiator){Ot.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(Q0(t)),Ot.trace("Stage 0 - Initiator finished sending first message."),_a(this.session.hs.e)}else{Ot.trace("Stage 0 - Responder waiting to receive first message...");let t=tc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new br("xx handshake stage 0 validation fail");Ot.trace("Stage 0 - Responder received first message."),La(this.session.hs.re)}}async exchange(){if(this.isInitiator){Ot.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=ec((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new br("xx handshake stage 1 validation fail");Ot.trace("Stage 1 - Initiator received the message."),La(this.session.hs.re),Wu(this.session.hs.rs),Ot.trace("Initiator going to check remote's signature...");try{let i=Ia(r);this.remotePeer=this.remotePeer||await Ca(i),await Ta(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new _n(`Error occurred while verifying signed payload: ${o.message}`)}Ot.trace("All good with the signature!")}else{Ot.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(J0(t)),Ot.trace("Stage 1 - Responder sent the second handshake message with signed payload."),_a(this.session.hs.e)}}async finish(){if(this.isInitiator){Ot.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(j0(t)),Ot.trace("Stage 2 - Initiator sent message with signed payload.")}else{Ot.trace("Stage 2 - Responder waiting for third handshake message...");let t=rc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new br("xx handshake stage 2 validation fail");Ot.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Ia(r);this.remotePeer=this.remotePeer||await Ca(i),await Ta(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new _n(`Error occurred while verifying signed payload: ${o.message}`)}}Yu(this.session)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new br("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function Zu(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 co=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??os,this.extensions=n,this.metrics=s?Zu(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(t,r,n){let i=_o(r,{lengthEncoder:Yr,lengthDecoder:In,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=_o(r,{lengthEncoder:Yr,lengthDecoder:In,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await Mu(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new ao(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]=h0(),o=t.unwrap();return await p0(n,oc(r,this.metrics),o,s=>vn(s,{lengthDecoder:In}),sc(r,this.metrics),n),i}};function Xu(e={}){return()=>new co(e)}var Ju=Symbol.for("@libp2p/transport");var Qu;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Qu||(Qu={}));var fo=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 h=Number.parseInt(l,t);if(!Number.isNaN(h))return h});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 ju=45,jg=15,gn=new fo;function Ra(e){if(!(e.length>jg))return gn.new(e).parseWith(()=>gn.readIPv4Addr())}function Na(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>ju))return gn.new(e).parseWith(()=>gn.readIPv6Addr())}function uo(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>ju))return gn.new(e).parseWith(()=>gn.readIPAddr())}var rE=parseInt("0xFFFF",16),nE=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function lo(e){return!!Ra(e)}function ho(e){return!!Na(e)}function po(e){return!!uo(e)}var rl=lo,im=ho,Pa=function(e){let t=0;if(e=e.toString().trim(),rl(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(im(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=rl(r[n]),s;o&&(s=Pa(r[n]),r[n]=it(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,it(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")},nl=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 mn={},Da={},sm=[[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"]];sm.forEach(e=>{let t=am(...e);Da[t.code]=t,mn[t.name]=t});function am(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function ht(e){if(typeof e=="number"){if(Da[e]!=null)return Da[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(mn[e]!=null)return mn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var FE=ht("ip4"),VE=ht("ip6"),qE=ht("ipcidr");function Ua(e,t){switch(ht(e).code){case 4:case 41:return fm(t);case 42:return sl(t);case 6:case 273:case 33:case 132:return cl(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return sl(t);case 421:return dm(t);case 444:return al(t);case 445:return al(t);case 466:return hm(t);default:return it(t,"base16")}}function Ka(e,t){switch(ht(e).code){case 4:return il(t);case 41:return il(t);case 42:return ol(t);case 6:case 273:case 33:case 132:return Oa(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return ol(t);case 421:return um(t);case 444:return pm(t);case 445:return ym(t);case 466:return lm(t);default:return At(t,"base16")}}var ka=Object.values(Le).map(e=>e.decoder),cm=function(){let e=ka[0].or(ka[1]);return ka.slice(2).forEach(t=>e=e.or(t)),e}();function il(e){if(!po(e))throw new Error("invalid ip address");return Pa(e)}function fm(e){let t=nl(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!po(t))throw new Error("invalid ip address");return t}function Oa(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function cl(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function ol(e){let t=At(e),r=Uint8Array.from(Je(t.length));return dt([r,t],r.length+t.length)}function sl(e){let t=he(e);if(e=e.slice(Xt(t)),e.length!==t)throw new Error("inconsistent lengths");return it(e)}function um(e){let t;e[0]==="Q"||e[0]==="1"?t=ur(Bt.decode(`z${e}`)).bytes:t=ve.parse(e).multihash.bytes;let r=Uint8Array.from(Je(t.length));return dt([r,t],r.length+t.length)}function lm(e){let t=cm.decode(e),r=Uint8Array.from(Je(t.length));return dt([r,t],r.length+t.length)}function hm(e){let t=he(e),r=e.slice(Xt(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+it(r,"base64url")}function dm(e){let t=he(e),r=e.slice(Xt(t));if(r.length!==t)throw new Error("inconsistent lengths");return it(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=xe.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=Oa(n);return dt([r,i],r.length+i.length)}function ym(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=xe.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=Oa(n);return dt([r,i],r.length+i.length)}function al(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=it(t,"base32"),i=cl(r);return`${n}:${i}`}function fl(e){e=Ma(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 ll("invalid address: "+e);if(a.path===!0){n=Ma(i.slice(o).join("/")),t.push([a.code,Ka(a.code,n)]),r.push([a.code,n]);break}let c=Ka(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ua(a.code,c)])}return{string:ul(r),bytes:Va(t),tuples:t,stringTuples:r,path:n}}function Fa(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=he(e,i),s=Xt(o),a=ht(o),c=gm(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 ll("Invalid address Uint8Array: "+it(e,"base16"));t.push([o,f]);let u=Ua(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:ul(r),tuples:t,stringTuples:r,path:n}}function ul(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}),Ma(t.join("/"))}function Va(e){return dt(e.map(t=>{let r=ht(t[0]),n=Uint8Array.from(Je(r.code));return t.length>1&&t[1]!=null&&(n=dt([n,t[1]])),n}))}function gm(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=he(t instanceof Uint8Array?t:Uint8Array.from(t));return r+Xt(r)}}function Ma(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function ll(e){return new Error("Error parsing address: "+e)}var mm=Symbol.for("nodejs.util.inspect.custom"),xm=[ht("dns").code,ht("dns4").code,ht("dns6").code,ht("dnsaddr").code],bm=new Map,dl=Symbol.for("@multiformats/js-multiaddr/multiaddr");function vm(e){return!!e?.[dl]}var hl=class e{bytes;#e;#t;#r;#n;[dl]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Fa(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=fl(t)}else if(vm(t))r=Fa(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[y,d]of this.stringTuples())y===l.code&&(o=`%${d??""}`),xm.includes(y)&&(r=s.name,i=443,n=`${d??""}${o}`,t=y===u.code?6:4),(y===s.code||y===a.code)&&(r=ht(y).name,i=parseInt(d??"")),(y===c.code||y===f.code)&&(r=ht(y).name,n=`${d??""}${o}`,t=y===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(Va(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===mn.p2p.code&&t.push([n,i]),n===mn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?it(Bt.decode(`z${n}`),"base58btc"):it(ve.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Ct(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=bm.get(r.name);if(n==null)throw new rt(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[mm](){return`Multiaddr(${this.#e})`}};var wm=e=>e.toString().split("/").slice(1),Jn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Tt=e=>({match:t=>Jn(r=>r===e).match(t),pattern:e}),mo=()=>({match:e=>Jn(t=>typeof t=="string").match(e),pattern:"{string}"}),pl=()=>({match:e=>Jn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),le=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{Bt.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),yo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Ms.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Pe=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),De=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),_t=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Dt(...e){function t(i){let o=wm(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 Ha=_t(Tt("dns4"),mo()),za=_t(Tt("dns6"),mo()),Ga=_t(Tt("dnsaddr"),mo()),yl=_t(Tt("dns"),mo()),p3=Dt(Ha),y3=Dt(za),g3=Dt(Ga),m3=Dt(De(yl,Ga,Ha,za)),gl=_t(Tt("ip4"),Jn(lo)),ml=_t(Tt("ip6"),Jn(ho)),xl=De(gl,ml),jn=De(xl,yl,Ha,za,Ga),x3=Dt(jn),b3=Dt(gl),v3=Dt(ml),w3=Dt(xl),xo=_t(jn,Tt("tcp"),pl()),ti=_t(jn,Tt("udp"),pl()),Em=De(xo,ti),E3=Dt(xo),S3=Dt(ti),$a=_t(ti,Tt("quic")),bo=_t(ti,Tt("quic-v1")),Sm=De($a,bo),B3=Dt($a),A3=Dt(bo),qa=De(jn,xo,ti,$a,bo),bl=De(_t(qa,Tt("ws"),Pe(le()))),C3=Dt(bl),vl=De(_t(qa,Tt("wss"),Pe(le())),_t(qa,Tt("tls"),Tt("ws"),Pe(le()))),I3=Dt(vl),wl=_t(Em,Tt("webrtc-direct"),yo(),Pe(yo()),Pe(le())),T3=Dt(wl),El=_t(bo,Tt("webtransport"),yo(),yo(),Pe(le())),vo=Dt(El),go=De(bl,vl,_t(xo,Pe(le())),_t(Sm,Pe(le())),_t(jn,Pe(le())),wl,El,le()),_3=Dt(go),Bm=_t(go,Tt("p2p-circuit"),le()),L3=Dt(Bm),Am=De(_t(go,Tt("p2p-circuit"),Tt("webrtc"),le()),_t(go,Tt("webrtc"),Pe(le())),Tt("webrtc")),R3=Dt(Am);var ei=yn("libp2p:webtransport:stream");async function Wa(e,t,r,n,i){let o=e.writable.getWriter(),s=e.readable.getReader();await o.ready;function a(){let h=n.findIndex(y=>y===l);h!==-1&&(n.splice(h,1),l.timeline.close=Date.now(),i?.(l))}let c=!1,f=!1;(async function(){let h=await o.closed.catch(y=>y);if(h!=null){let y=h.message;y.includes("aborted by the remote server")||y.includes("STOP_SENDING")||ei.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}c=!0,c&&f&&a()})().catch(()=>{ei.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await s.closed.catch(y=>y);h!=null&&ei.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),f=!0,c&&f&&a()}().catch(()=>{ei.error("WebTransport failed to cleanup closed stream")});let u=!1,l={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){c||(o.abort(h).catch(y=>{ei.error("could not abort stream",y)}),c=!0),f=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),a()},async close(h){this.status="closing",await Promise.all([l.closeRead(h),l.closeWrite(h)]),a(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!f){this.readStatus="closing";try{await s.cancel()}catch(y){y.toString().includes("RESET_STREAM")===!0&&(c=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",f=!0}c&&a()},async closeWrite(h){if(!c){c=!0,this.writeStatus="closing";try{await o.close()}catch(y){y.toString().includes("RESET_STREAM")===!0&&(f=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}f&&a()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await s.read();if(h.done){f=!0,c&&a();return}yield new te(h.value)}}(),sink:async function(h){if(u)throw new Error("sink already called on stream");u=!0;try{this.writeStatus="writing";for await(let y of h)if(y instanceof Uint8Array)await o.write(y);else for(let d of y)await o.write(d);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await l.closeWrite()}}};return l}function Ya(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function Sl(e,t){return t.filter(n=>!!e.find(i=>Ct(n,i))).length===t.length}var Cm=Object.values(Le).map(e=>e.decoder).reduce((e,t)=>e.or(t));function Im(e){return _e.decode(Cm.decode(e))}function Bl(e){if(!vo.matches(e))throw new rt("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===ht("certhash").code).map(([s,a])=>Im(a??"")),n=t.filter(([s,a])=>s===ht("p2p").code).map(([s,a])=>Ba(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 oe=yn("libp2p:webtransport"),Za=class{components;config;metrics;constructor(t,r={}){this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[Ju]=!0;async dial(t,r){r?.signal?.throwIfAborted(),oe("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}=Bl(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,h=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let y=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(d=>({algorithm:"sha-256",value:d.digest}))});if(f=d=>{if(!u)try{this.metrics?.dialerEvents.increment({[d]:!0}),y.close()}catch(p){oe.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([y.closed,y.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),y.closed.catch(d=>{oe.error("error on remote wt session close",d)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(y,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{oe("Closing webtransport"),f("close")},abort:d=>{oe("aborting webtransport due to passed err",d),f("abort")},remoteAddr:t,timeline:{open:Date.now()},...Ya()},h=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(y),skipProtection:!0})}catch(y){throw oe.error("caught wt session err",y),f(h?"upgrade_error":l?"noise_error":"ready_error"),y}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 h of l)await s.write(h)}},f=Xu()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{oe.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{oe.error(`Failed to close authentication stream reader: ${l.message}`)}),!Sl(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;return{protocol:"webtransport",createStreamMuxer:i=>{typeof i=="function"&&(i={onIncomingStream:i});let o=[];return async function(){let a=t.incomingBidirectionalStreams.getReader();for(;;){let{done:c,value:f}=await a.read();if(c)break;if(o.length>=n.maxInboundStreams)f.writable.close().catch(u=>{oe.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${u.message}`)}),f.readable.cancel().catch(u=>{oe.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${u.message}`)});else{let u=await Wa(f,String(r++),"inbound",o,i?.onStreamEnd);o.push(u),i?.onIncomingStream?.(u)}}}().catch(()=>{oe.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:o,newStream:async a=>{let c=await t.createBidirectionalStream(),f=await Wa(c,String(r++),i?.direction??"outbound",o,i?.onStreamEnd);return o.push(f),f},close:async a=>{oe("Closing webtransport muxer"),await Promise.all(o.map(async c=>c.close(a)))},abort:a=>{oe("Aborting webtransport muxer with err:",a);for(let c of o)c.abort(a)},...Ya()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(vo.exactMatch)}};function Tm(e={}){return t=>new Za(t,e)}return Ol(_m);})();
|
|
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 qd(e){return e.replace(/^\s+/,"")}});var qc=ht((ob,Vc)=>{var Be=pt();wr();Lt();var Oc=Vc.exports=Be.sha256=Be.sha256||{};Be.md.sha256=Be.md.algorithms.sha256=Oc;Oc.create=function(){Mc||Hd();var e=null,t=Be.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=Be.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=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),Kc(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(bs.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};Kc(l,r,i);var h=Be.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var bs=null,Mc=!1,Fc=null;function Hd(){bs=String.fromCharCode(128),bs+=Be.util.fillString(String.fromCharCode(0),64),Fc=[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],Mc=!0}function Kc(e,t,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,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,h=e.h2,y=e.h3,d=e.h4,p=e.h5,g=e.h6,m=e.h7,f=0;f<64;++f)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=g^d&(p^g),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|h&(u^l),n=m+s+a+Fc[f]+t[f],i=o+c,m=g,g=p,p=d,d=y+n>>>0,y=h,h=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+h|0,e.h3=e.h3+y|0,e.h4=e.h4+d|0,e.h5=e.h5+p|0,e.h6=e.h6+g|0,e.h7=e.h7+m|0,v-=64}}});var zc=ht((sb,Hc)=>{var Ae=pt();Lt();var Fi=null;Ae.util.isNodejs&&!Ae.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Fi=Ki());var zd=Hc.exports=Ae.prng=Ae.prng||{};zd.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,h=t.plugin.increment,y=t.plugin.formatKey,d=t.plugin.formatSeed,p=Ae.util.createBuffer();t.key=null,g();function g(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 Ae.util.nextTick(function(){o(g)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=y(l(t.key,h(t.seed))),t.seed=d(l(t.key,t.seed)),Ae.util.setImmediate(g)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,h=t.plugin.formatKey,y=t.plugin.formatSeed;t.key=null;for(var d=Ae.util.createBuffer();d.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,d.putBytes(p),t.key=h(u(t.key,l(t.seed))),t.seed=y(u(t.key,t.seed))}return d.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,h){if(l)return f(l);t.collect(h),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 h=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(h),t.generated=0}function c(f){var u=null,l=Ae.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(S){return h.getRandomValues(S)});var y=Ae.util.createBuffer();if(u)for(;y.length()<f;){var d=Math.max(1,Math.min(f-y.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{u(p);for(var g=0;g<p.length;++g)y.putInt32(p[g])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(y.length()<f)for(var m,v,x,A=Math.floor(Math.random()*65536);y.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 g=0;g<3;++g)x=A>>>(g<<3),x^=Math.floor(Math.random()*256),y.putByte(x&255)}return y.getBytes(f)}return Fi?(t.seedFile=function(f,u){Fi.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},t.seedFileSync=function(f){return Fi.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="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,h){function y(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",y),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",y),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var h=l.data;h.forge&&h.forge.prng&&t.seedFile(h.forge.prng.needed,function(y,d){f.postMessage({forge:{prng:{err:y,bytes:d}}})})};f.addEventListener("message",u)}},t}});var Dn=ht((ab,vs)=>{var Kt=pt();xs();qc();zc();Lt();(function(){if(Kt.random&&Kt.random.getBytes){vs.exports=Kt.random;return}(function(e){var t={},r=new Array(4),n=Kt.util.createBuffer();t.formatKey=function(l){var h=Kt.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Kt.aes._expandKey(l,!1)},t.formatSeed=function(l){var h=Kt.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},t.cipher=function(l,h){return Kt.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Kt.md.sha256;function i(){var l=Kt.prng.create(t);return l.getBytes=function(h,y){return l.generate(h,y)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=Kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Kt.options.usePureJavaScript||!Kt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Kt.random)Kt.random=o;else for(var u in o)Kt.random[u]=o[u];Kt.random.createInstance=i,vs.exports=Kt.random})(typeof jQuery<"u"?jQuery:null)})()});var Yc=ht((cb,Wc)=>{var Qt=pt();Lt();var ws=[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],Gc=[1,2,3,5],Gd=function(e,t){return e<<t&65535|(e&65535)>>16-t},$d=function(e,t){return(e&65535)>>t|e<<16-t&65535};Wc.exports=Qt.rc2=Qt.rc2||{};Qt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Qt.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(ws[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,ws[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,ws[r.at(a+1)^r.at(a+o)]);return r};var $c=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Qt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=Gd(d[f],Gc[f]),u++},c=function(d){for(f=0;f<4;f++)d[f]+=l[d[(f+3)%4]&63]}):(a=function(d){for(f=3;f>=0;f--)d[f]=$d(d[f],Gc[f]),d[f]-=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),u--},c=function(d){for(f=3;f>=0;f--)d[f]-=l[d[(f+3)%4]&63]});var h=function(d){var p=[];for(f=0;f<4;f++){var g=i.getInt16Le();s!==null&&(r?g^=s.getInt16Le():s.putInt16Le(g)),p.push(g&65535)}u=r?0:63;for(var m=0;m<d.length;m++)for(var v=0;v<d[m][0];v++)d[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},y=null;return y={start:function(d,p){d&&typeof d=="string"&&(d=Qt.util.createBuffer(d)),n=!1,i=Qt.util.createBuffer(),o=p||new Qt.util.createBuffer,s=d,y.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var g=i.length()===8?8:8-i.length();i.fillWithByte(g,g)}if(p&&(n=!0,y.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),v=o.at(m-1);v>m?p=!1:o.truncate(v)}return p}},y};Qt.rc2.startEncrypting=function(e,t,r){var n=Qt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Qt.rc2.createEncryptionCipher=function(e,t){return $c(e,t,!0)};Qt.rc2.startDecrypting=function(e,t,r){var n=Qt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Qt.rc2.createDecryptionCipher=function(e,t){return $c(e,t,!1)}});var Hi=ht((fb,rf)=>{var Es=pt();rf.exports=Es.jsbn=Es.jsbn||{};var Ge,Wd=0xdeadbeefcafe,Zc=(Wd&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))}Es.jsbn.BigInteger=P;function st(){return new P(null)}function Yd(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 Zd(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 Xc(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=Xc,Ge=28):Zc&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=Zd,Ge=30):Zc&&navigator.appName!="Netscape"?(P.prototype.am=Yd,Ge=26):(P.prototype.am=Xc,Ge=28);P.prototype.DB=Ge;P.prototype.DM=(1<<Ge)-1;P.prototype.DV=1<<Ge;var Ss=52;P.prototype.FV=Math.pow(2,Ss);P.prototype.F1=Ss-Ge;P.prototype.F2=2*Ge-Ss;var Xd="0123456789abcdefghijklmnopqrstuvwxyz",Vi=new Array,Qr,ae;Qr="0".charCodeAt(0);for(ae=0;ae<=9;++ae)Vi[Qr++]=ae;Qr="a".charCodeAt(0);for(ae=10;ae<36;++ae)Vi[Qr++]=ae;Qr="A".charCodeAt(0);for(ae=10;ae<36;++ae)Vi[Qr++]=ae;function Qc(e){return Xd.charAt(e)}function Jc(e,t){var r=Vi[e.charCodeAt(t)];return r??-1}function Qd(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 Jd(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 ar(e){var t=st();return t.fromInt(e),t}function jd(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:Jc(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 tp(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function ep(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=Qc(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+=Qc(n));return i?o:"0"}function rp(){var e=st();return P.ZERO.subTo(this,e),e}function np(){return this.s<0?this.negate():this}function ip(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 qi(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 op(){return this.t<=0?0:this.DB*(this.t-1)+qi(this.data[this.t-1]^this.s&this.DM)}function sp(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 ap(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 cp(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 fp(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 up(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 lp(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 hp(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 dp(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=st());var o=st(),s=this.s,a=e.s,c=this.DB-qi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,y=(1<<this.F1)/l,d=1<<this.F2,p=r.t,g=p-f,m=t??st();for(o.dlShiftTo(g,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),P.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--g>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*y);if((r.data[p]+=o.am(0,v,r,g,0,f))<v)for(o.dlShiftTo(g,m),r.subTo(m,r);r.data[p]<--v;)r.subTo(m,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 pp(e){var t=st();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(P.ZERO)>0&&e.subTo(t,t),t}function Er(e){this.m=e}function yp(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function gp(e){return e}function mp(e){e.divRemTo(this.m,null,e)}function xp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function bp(e,t){e.squareTo(t),this.reduce(t)}Er.prototype.convert=yp;Er.prototype.revert=gp;Er.prototype.reduce=mp;Er.prototype.mulTo=xp;Er.prototype.sqrTo=bp;function vp(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function Sr(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function wp(e){var t=st();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 Ep(e){var t=st();return e.copyTo(t),this.reduce(t),t}function Sp(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 Bp(e,t){e.squareTo(t),this.reduce(t)}function Ap(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Sr.prototype.convert=wp;Sr.prototype.revert=Ep;Sr.prototype.reduce=Sp;Sr.prototype.mulTo=Ap;Sr.prototype.sqrTo=Bp;function Cp(){return(this.t>0?this.data[0]&1:this.s)==0}function Ip(e,t){if(e>4294967295||e<1)return P.ONE;var r=st(),n=st(),i=t.convert(this),o=qi(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 Tp(e,t){var r;return e<256||t.isEven()?r=new Er(t):r=new Sr(t),this.exp(e,r)}P.prototype.copyTo=Qd;P.prototype.fromInt=Jd;P.prototype.fromString=jd;P.prototype.clamp=tp;P.prototype.dlShiftTo=sp;P.prototype.drShiftTo=ap;P.prototype.lShiftTo=cp;P.prototype.rShiftTo=fp;P.prototype.subTo=up;P.prototype.multiplyTo=lp;P.prototype.squareTo=hp;P.prototype.divRemTo=dp;P.prototype.invDigit=vp;P.prototype.isEven=Cp;P.prototype.exp=Ip;P.prototype.toString=ep;P.prototype.negate=rp;P.prototype.abs=np;P.prototype.compareTo=ip;P.prototype.bitLength=op;P.prototype.mod=pp;P.prototype.modPowInt=Tp;P.ZERO=ar(0);P.ONE=ar(1);function _p(){var e=st();return this.copyTo(e),e}function Lp(){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 Rp(){return this.t==0?this.s:this.data[0]<<24>>24}function Np(){return this.t==0?this.s:this.data[0]<<16>>16}function Pp(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Dp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function kp(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=ar(r),i=st(),o=st(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function Up(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=Jc(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 Kp(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),Bs,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 Op(){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 Mp(e){return this.compareTo(e)==0}function Fp(e){return this.compareTo(e)<0?this:e}function Vp(e){return this.compareTo(e)>0?this:e}function qp(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 Hp(e,t){return e&t}function zp(e){var t=st();return this.bitwiseTo(e,Hp,t),t}function Bs(e,t){return e|t}function Gp(e){var t=st();return this.bitwiseTo(e,Bs,t),t}function jc(e,t){return e^t}function $p(e){var t=st();return this.bitwiseTo(e,jc,t),t}function tf(e,t){return e&~t}function Wp(e){var t=st();return this.bitwiseTo(e,tf,t),t}function Yp(){for(var e=st(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function Zp(e){var t=st();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function Xp(e){var t=st();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function Qp(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 Jp(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+Qp(this.data[e]);return this.s<0?this.t*this.DB:-1}function jp(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function ty(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=jp(this.data[r]^t);return e}function ey(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function ry(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function ny(e){return this.changeBit(e,Bs)}function iy(e){return this.changeBit(e,tf)}function oy(e){return this.changeBit(e,jc)}function sy(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 ay(e){var t=st();return this.addTo(e,t),t}function cy(e){var t=st();return this.subTo(e,t),t}function fy(e){var t=st();return this.multiplyTo(e,t),t}function uy(e){var t=st();return this.divRemTo(e,t,null),t}function ly(e){var t=st();return this.divRemTo(e,null,t),t}function hy(e){var t=st(),r=st();return this.divRemTo(e,t,r),new Array(t,r)}function dy(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function py(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function kn(){}function ef(e){return e}function yy(e,t,r){e.multiplyTo(t,r)}function gy(e,t){e.squareTo(t)}kn.prototype.convert=ef;kn.prototype.revert=ef;kn.prototype.mulTo=yy;kn.prototype.sqrTo=gy;function my(e){return this.exp(e,new kn)}function xy(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 by(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 Jr(e){this.r2=st(),this.q3=st(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function vy(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=st();return e.copyTo(t),this.reduce(t),t}function wy(e){return e}function Ey(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 Sy(e,t){e.squareTo(t),this.reduce(t)}function By(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Jr.prototype.convert=vy;Jr.prototype.revert=wy;Jr.prototype.reduce=Ey;Jr.prototype.mulTo=By;Jr.prototype.sqrTo=Sy;function Ay(e,t){var r=e.bitLength(),n,i=ar(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new Er(t):t.isEven()?o=new Jr(t):o=new Sr(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=st();for(o.sqrTo(s[1],u);a<=f;)s[a]=st(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,h,y=!0,d=st(),p;for(r=qi(e.data[l])-1;l>=0;){for(r>=c?h=e.data[l]>>r-c&f:(h=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=e.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),y)s[h].copyTo(i),y=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function Cy(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 Iy(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 Ty(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return P.ZERO;for(var r=e.clone(),n=this.clone(),i=ar(1),o=ar(0),s=ar(0),a=ar(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 me=[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],_y=(1<<26)/me[me.length-1];function Ly(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=me[me.length-1]){for(t=0;t<me.length;++t)if(r.data[0]==me[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<me.length;){for(var n=me[t],i=t+1;i<me.length&&n<_y;)n*=me[i++];for(n=r.modInt(n);t<i;)if(n%me[t++]==0)return!1}return r.millerRabin(e)}function Ry(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=Ny(),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 Ny(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Pp;P.prototype.toRadix=kp;P.prototype.fromRadix=Up;P.prototype.fromNumber=Kp;P.prototype.bitwiseTo=qp;P.prototype.changeBit=ry;P.prototype.addTo=sy;P.prototype.dMultiply=dy;P.prototype.dAddOffset=py;P.prototype.multiplyLowerTo=xy;P.prototype.multiplyUpperTo=by;P.prototype.modInt=Iy;P.prototype.millerRabin=Ry;P.prototype.clone=_p;P.prototype.intValue=Lp;P.prototype.byteValue=Rp;P.prototype.shortValue=Np;P.prototype.signum=Dp;P.prototype.toByteArray=Op;P.prototype.equals=Mp;P.prototype.min=Fp;P.prototype.max=Vp;P.prototype.and=zp;P.prototype.or=Gp;P.prototype.xor=$p;P.prototype.andNot=Wp;P.prototype.not=Yp;P.prototype.shiftLeft=Zp;P.prototype.shiftRight=Xp;P.prototype.getLowestSetBit=Jp;P.prototype.bitCount=ty;P.prototype.testBit=ey;P.prototype.setBit=ny;P.prototype.clearBit=iy;P.prototype.flipBit=oy;P.prototype.add=ay;P.prototype.subtract=cy;P.prototype.multiply=fy;P.prototype.divide=uy;P.prototype.remainder=ly;P.prototype.divideAndRemainder=hy;P.prototype.modPow=Ay;P.prototype.modInverse=Ty;P.prototype.pow=my;P.prototype.gcd=Cy;P.prototype.isProbablePrime=Ly});var cf=ht((ub,af)=>{var Ce=pt();wr();Lt();var of=af.exports=Ce.sha1=Ce.sha1||{};Ce.md.sha1=Ce.md.algorithms.sha1=of;of.create=function(){sf||Py();var e=null,t=Ce.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=Ce.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ce.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=Ce.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(As.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 h=Ce.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var As=null,sf=!1;function Py(){As=String.fromCharCode(128),As+=Ce.util.fillString(String.fromCharCode(0),64),sf=!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 lf=ht((lb,uf)=>{var Ie=pt();Lt();Dn();cf();var ff=uf.exports=Ie.pkcs1=Ie.pkcs1||{};ff.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=Ie.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="",h=c-t.length,y=0;y<h;y++)l+="\0";var d=u.getBytes()+l+""+t;if(!i)i=Ie.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),g=Ie.util.xorBytes(d,p,d.length),m=zi(g,o.digestLength,s),v=Ie.util.xorBytes(i,m,i.length);return"\0"+v+g};ff.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 g=new Error("RSAES-OAEP encoded message length is invalid.");throw g.length=t.length,g.expectedLength=s,g}if(i===void 0?i=Ie.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),h=Ie.util.xorBytes(f,l,f.length),y=zi(h,s-i.digestLength-1,o),d=Ie.util.xorBytes(u,y,u.length),p=d.substring(0,i.digestLength),g=c!=="\0",m=0;m<i.digestLength;++m)g|=a.charAt(m)!==p.charAt(m);for(var v=1,x=i.digestLength,A=i.digestLength;A<d.length;A++){var S=d.charCodeAt(A),B=S&1^1,R=v?65534:0;g|=S&R,v=v&B,x+=v}if(g||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function zi(e,t,r){r||(r=Ie.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 hf=ht((hb,Cs)=>{var cr=pt();Lt();Hi();Dn();(function(){if(cr.prime){Cs.exports=cr.prime;return}var e=Cs.exports=cr.prime=cr.prime||{},t=cr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,h){return l|h};e.generateProbablePrime=function(l,h,y){typeof h=="function"&&(y=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||cr.random,g={nextBytes:function(m){for(var v=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=v.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,g,d.options,y);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,y,d){return"workers"in y?c(l,h,y,d):s(l,h,y,d)}function s(l,h,y,d){var p=f(l,h),g=0,m=u(p.bitLength());"millerRabinTests"in y&&(m=y.millerRabinTests);var v=10;"maxBlockTime"in y&&(v=y.maxBlockTime),a(p,l,h,g,m,v,d)}function a(l,h,y,d,p,g,m){var v=+new Date;do{if(l.bitLength()>h&&(l=f(h,y)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(g<0||+new Date-v<g);cr.util.setImmediate(function(){a(l,h,y,d,p,g,m)})}function c(l,h,y,d){if(typeof Worker>"u")return s(l,h,y,d);var p=f(l,h),g=y.workers,m=y.workLoad||100,v=m*30/8,x=y.workerScript||"forge/prime.worker.js";if(g===-1)return cr.util.estimateCores(function(S,B){S&&(B=2),g=B-1,A()});A();function A(){g=Math.max(1,g);for(var S=[],B=0;B<g;++B)S[B]=new Worker(x);for(var R=g,B=0;B<g;++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,d(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,h));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:m}),p.dAddOffset(v,0)}}}}function f(l,h){var y=new t(l,h),d=l-1;return y.testBit(d)||y.bitwiseTo(t.ONE.shiftLeft(d),i,y),y.dAddOffset(31-y.mod(n).byteValue(),0),y}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 $i=ht((db,bf)=>{var $=pt();Pn();Hi();Li();lf();hf();Dn();Lt();typeof ot>"u"&&(ot=$.jsbn.BigInteger);var ot,Is=$.util.isNodejs?Ki():null,E=$.asn1,ce=$.util;$.pki=$.pki||{};bf.exports=$.pki.rsa=$.rsa=$.rsa||{};var Q=$.pki,Dy=[6,4,2,4,2,4,6,2],ky={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"}]},Uy={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"}]},Ky={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"}]},Oy=$.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"}]}]},My={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"}]},Fy=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()},mf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(ot.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(ot.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new ot($.util.bytesToHex($.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(ot.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=xf(e,t,r)):(i=$.util.createBuffer(),i.putBytes(e));for(var s=new ot(i.toHex(),16),a=mf(s,t,n),c=a.toString(16),f=$.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new ot($.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=mf(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?Gi(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||$.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new ot(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new ot(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new ot(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(ot.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(qy(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Dy[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(ot.ONE),e.q1=e.q.subtract(ot.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(ot.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!$.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(df("generateKeyPair"))return Is.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(pf("generateKey")&&pf("exportKey"))return ce.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:gf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ce.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(yf("generateKey")&&yf("exportKey")){var i=ce.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:gf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=ce.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(l)));n(null,{privateKey:h,publicKey:Q.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(df("generateKeyPairSync")){var o=Is.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;Vy(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 xf(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=Gi(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!E.validate(u,My,l,h)){var y=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw y.errors=h,y}var d=E.derToOid(l.algorithmIdentifier);if(!(d===$.oids.md2||d===$.oids.md5||d===$.oids.sha1||d===$.oids.sha224||d===$.oids.sha256||d===$.oids.sha384||d===$.oids.sha512||d===$.oids["sha512-224"]||d===$.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=d,y}if((d===$.oids.md2||d===$.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=Gi(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 h=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Gi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(y,d){return $.pkcs1.decode_rsa_oaep(d,y,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(y){return y}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(h,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:Fy},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(h,c,l)},c};Q.wrapRsaPrivateKey=function(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,ky,t,r)&&(e=E.fromDer($.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,Uy,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=$.util.createBuffer(t.privateKeyModulus).toHex(),o=$.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=$.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=$.util.createBuffer(t.privateKeyPrime1).toHex(),c=$.util.createBuffer(t.privateKeyPrime2).toHex(),f=$.util.createBuffer(t.privateKeyExponent1).toHex(),u=$.util.createBuffer(t.privateKeyExponent2).toHex(),l=$.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new ot(i,16),new ot(o,16),new ot(s,16),new ot(a,16),new ot(c,16),new ot(f,16),new ot(u,16),new ot(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,Oy,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,Ky,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=$.util.createBuffer(t.publicKeyModulus).toHex(),s=$.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new ot(o,16),new ot(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Te(e.e))])};function xf(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 Gi(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 Vy(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){$.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)!==0){e.p=null,i();return}if(e.q.subtract(ot.ONE).gcd(e.e).compareTo(ot.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(ot.ONE),e.q1=e.q.subtract(ot.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(ot.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function Te(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 qy(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 df(e){return $.util.isNodejs&&typeof Is[e]=="function"}function pf(e){return typeof ce.globalScope<"u"&&typeof ce.globalScope.crypto=="object"&&typeof ce.globalScope.crypto.subtle=="object"&&typeof ce.globalScope.crypto.subtle[e]=="function"}function yf(e){return typeof ce.globalScope<"u"&&typeof ce.globalScope.msCrypto=="object"&&typeof ce.globalScope.msCrypto.subtle=="object"&&typeof ce.globalScope.msCrypto.subtle[e]=="function"}function gf(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 Af=ht((pb,Bf)=>{var q=pt();xs();Pn();Tc();wr();Li();Pc();Uc();Dn();Yc();$i();Lt();typeof vf>"u"&&(vf=q.jsbn.BigInteger);var vf,I=q.asn1,tt=q.pki=q.pki||{};Bf.exports=tt.pbe=q.pbe=q.pbe||{};var Br=tt.oids,Hy={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"}]},zy={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"}]}]},Gy={name:"pkcs-12PbeParams",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=q.random.getBytesSync(r.saltSize),i=r.count,o=I.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=Br["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Br["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Br["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Br.desCBC,l=q.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var y="hmacWith"+r.prfAlgorithm.toUpperCase(),d=Sf(y),p=q.pkcs5.pbkdf2(t,n,i,s,d),g=q.random.getBytesSync(f),m=l(p);m.start(g),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes();var v=$y(n,o,s,y);a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br.pkcs5PBES2).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br.pkcs5PBKDF2).getBytes()),v]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(u).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,g)])])])}else if(r.algorithm==="3des"){s=24;var x=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,x,1,i,s),g=tt.pbe.generatePkcs12Key(t,x,2,i,s),m=q.des.createEncryptionCipher(p);m.start(g),m.update(I.toDer(e)),m.finish(),c=m.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Br["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,n),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,o.getBytes())])])}else{var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var A=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return A};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!I.validate(e,Hy,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 h=l.length(),y=t.length(),d=new q.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(y/f),g=new q.util.ByteBuffer;for(a=0;a<p;a++)g.putByte(t.at(a%y));var m=f*Math.ceil(h/f),v=new q.util.ByteBuffer;for(a=0;a<m;a++)v.putByte(l.at(a%h));var x=g;x.putBuffer(v);for(var A=Math.ceil(i/c),S=1;S<=A;S++){var B=new q.util.ByteBuffer;B.putBytes(d.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(y/f)+Math.ceil(h/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,zy,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=Ef(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,y=f(l);return y.start(h),y};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!I.validate(t,Gy,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,g){var m=q.rc2.createDecryptionCipher(p,40);return m.start(g,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=Ef(n.prfOid),h=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,y)};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=[wf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(wf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function wf(e,t){return e.start().update(t).digest().getBytes()}function Ef(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 Sf(t)}function Sf(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 $y(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 hu=ht((ww,lu)=>{var vt=pt();wr();Lt();var Hn=lu.exports=vt.sha512=vt.sha512||{};vt.md.sha512=vt.md.algorithms.sha512=Hn;var fu=vt.sha384=vt.sha512.sha384=vt.sha512.sha384||{};fu.create=function(){return Hn.create("SHA-384")};vt.md.sha384=vt.md.algorithms.sha384=fu;vt.sha512.sha256=vt.sha512.sha256||{create:function(){return Hn.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 Hn.create("SHA-512/224")}};vt.md["sha512/224"]=vt.md.algorithms["sha512/224"]=vt.sha512.sha224;Hn.create=function(e){if(uu||hg(),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=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),cu(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(da.substr(0,a.blockLength-u));for(var l,h,y=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,y+=h,c.putInt32(y>>>0),y=l>>>0;c.putInt32(y);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);cu(p,i,c);var g=vt.util.createBuffer(),m;e==="SHA-512"?m=p.length:e==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)g.putInt32(p[d][0]),(d!==m-1||e!=="SHA-512/224")&&g.putInt32(p[d][1]);return g},a};var da=null,uu=!1,pa=null,Nr=null;function hg(){da=String.fromCharCode(128),da+=vt.util.fillString(String.fromCharCode(0),128),pa=[[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]],uu=!0}function cu(e,t,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,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],g=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,h=(H^_&(M^H))>>>0,a=((p>>>28|g<<4)^(g>>>2|p<<30)^(g>>>7|p<<25))>>>0,c=((p<<4|g>>>28)^(g<<30|p>>>2)^(g<<25|p>>>7))>>>0,y=(p&m|x&(p^m))>>>0,d=(g&v|A&(g^v))>>>0,T=Z+u+h+pa[C][1]+t[C][1],n=z+f+l+pa[C][0]+t[C][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+d,o=a+y+(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=g,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,g=T>>>0;T=e[0][1]+g,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 zu=ht((i4,Hu)=>{var hn=1e3,dn=hn*60,pn=dn*60,Ur=pn*24,Vg=Ur*7,qg=Ur*365.25;Hu.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return Hg(e);if(r==="number"&&isFinite(e))return t.long?Gg(e):zg(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Hg(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*qg;case"weeks":case"week":case"w":return r*Vg;case"days":case"day":case"d":return r*Ur;case"hours":case"hour":case"hrs":case"hr":case"h":return r*pn;case"minutes":case"minute":case"mins":case"min":case"m":return r*dn;case"seconds":case"second":case"secs":case"sec":case"s":return r*hn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function zg(e){var t=Math.abs(e);return t>=Ur?Math.round(e/Ur)+"d":t>=pn?Math.round(e/pn)+"h":t>=dn?Math.round(e/dn)+"m":t>=hn?Math.round(e/hn)+"s":e+"ms"}function Gg(e){var t=Math.abs(e);return t>=Ur?ro(e,t,Ur,"day"):t>=pn?ro(e,t,pn,"hour"):t>=dn?ro(e,t,dn,"minute"):t>=hn?ro(e,t,hn,"second"):e+" ms"}function ro(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}});var $u=ht((o4,Gu)=>{function $g(e){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=zu(),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 h=0;h<u.length;h++)l=(l<<5)-l+u.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=t;function r(u){let l,h=null,y,d;function p(...g){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,g[0]=r.coerce(g[0]),typeof g[0]!="string"&&g.unshift("%O");let A=0;g[0]=g[0].replace(/%([a-zA-Z%])/g,(B,R)=>{if(B==="%%")return"%";A++;let _=r.formatters[R];if(typeof _=="function"){let O=g[A];B=_.call(m,O),g.splice(A,1),A--}return B}),r.formatArgs.call(m,g),(m.log||r.log).apply(m,g)}return p.namespace=u,p.useColors=r.useColors(),p.color=r.selectColor(u),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(y!==r.namespaces&&(y=r.namespaces,d=r.enabled(u)),d),set:g=>{h=g}}),typeof r.init=="function"&&r.init(p),p}function n(u,l){let h=r(this.namespace+(typeof l>"u"?":":l)+u);return h.log=this.log,h}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let l,h=(typeof u=="string"?u:"").split(/[\s,]+/),y=h.length;for(l=0;l<y;l++)h[l]&&(u=h[l].replace(/\*/g,".*?"),u[0]==="-"?r.skips.push(new RegExp("^"+u.slice(1)+"$")):r.names.push(new RegExp("^"+u+"$")))}function o(){let u=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let l,h;for(l=0,h=r.skips.length;l<h;l++)if(r.skips[l].test(u))return!1;for(l=0,h=r.names.length;l<h;l++)if(r.names[l].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function c(u){return u instanceof Error?u.stack||u.message:u}function f(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Gu.exports=$g});var Wu=ht((ne,no)=>{ne.formatArgs=Yg;ne.save=Zg;ne.load=Xg;ne.useColors=Wg;ne.storage=Qg();ne.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();ne.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Wg(){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 Yg(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+no.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}ne.log=console.debug||console.log||(()=>{});function Zg(e){try{e?ne.storage.setItem("debug",e):ne.storage.removeItem("debug")}catch{}}function Xg(){let e;try{e=ne.storage.getItem("debug")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function Qg(){try{return localStorage}catch{}}no.exports=$u()(ne);var{formatters:Jg}=no.exports;Jg.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var _m={};Nt(_m,{webTransport:()=>Tm});function Qe(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Ue(e=0){return globalThis.Buffer?.alloc!=null?Qe(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function Vt(e=0){return globalThis.Buffer?.allocUnsafe!=null?Qe(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Vl=Math.pow(2,7),ql=Math.pow(2,14),Hl=Math.pow(2,21),Eo=Math.pow(2,28),So=Math.pow(2,35),Bo=Math.pow(2,42),Ao=Math.pow(2,49),ct=128,Gt=127;function Xt(e){if(e<Vl)return 1;if(e<ql)return 2;if(e<Hl)return 3;if(e<Eo)return 4;if(e<So)return 5;if(e<Bo)return 6;if(e<Ao)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function zl(e,t,r=0){switch(Xt(e)){case 8:t[r++]=e&255|ct,e/=128;case 7:t[r++]=e&255|ct,e/=128;case 6:t[r++]=e&255|ct,e/=128;case 5:t[r++]=e&255|ct,e/=128;case 4:t[r++]=e&255|ct,e>>>=7;case 3:t[r++]=e&255|ct,e>>>=7;case 2:t[r++]=e&255|ct,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function Gl(e,t,r=0){switch(Xt(e)){case 8:t.set(r++,e&255|ct),e/=128;case 7:t.set(r++,e&255|ct),e/=128;case 6:t.set(r++,e&255|ct),e/=128;case 5:t.set(r++,e&255|ct),e/=128;case 4:t.set(r++,e&255|ct),e>>>=7;case 3:t.set(r++,e&255|ct),e>>>=7;case 2:t.set(r++,e&255|ct),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function $l(e,t){let r=e[t],n=0;if(n+=r&Gt,r<ct||(r=e[t+1],n+=(r&Gt)<<7,r<ct)||(r=e[t+2],n+=(r&Gt)<<14,r<ct)||(r=e[t+3],n+=(r&Gt)<<21,r<ct)||(r=e[t+4],n+=(r&Gt)*Eo,r<ct)||(r=e[t+5],n+=(r&Gt)*So,r<ct)||(r=e[t+6],n+=(r&Gt)*Bo,r<ct)||(r=e[t+7],n+=(r&Gt)*Ao,r<ct))return n;throw new RangeError("Could not decode varint")}function Wl(e,t){let r=e.get(t),n=0;if(n+=r&Gt,r<ct||(r=e.get(t+1),n+=(r&Gt)<<7,r<ct)||(r=e.get(t+2),n+=(r&Gt)<<14,r<ct)||(r=e.get(t+3),n+=(r&Gt)<<21,r<ct)||(r=e.get(t+4),n+=(r&Gt)*Eo,r<ct)||(r=e.get(t+5),n+=(r&Gt)*So,r<ct)||(r=e.get(t+6),n+=(r&Gt)*Bo,r<ct)||(r=e.get(t+7),n+=(r&Gt)*Ao,r<ct))return n;throw new RangeError("Could not decode varint")}function Je(e,t,r=0){return t==null&&(t=Vt(Xt(e))),t instanceof Uint8Array?zl(e,t,r):Gl(e,t,r)}function he(e,t=0){return e instanceof Uint8Array?$l(e,t):Wl(e,t)}function dt(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Vt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Qe(r)}function Ct(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var c0=Symbol.for("@achingbrain/uint8arraylist");function a0(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 ni(e){return!!e?.[c0]}var te=class e{constructor(...t){Object.defineProperty(this,c0,{value:!0}),this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ni(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...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(ni(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=a0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=a0(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(ni(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 dt(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:dt(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(!ni(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 h=f;h>=0;h--){let y=this.get(l+h);if(n[h]!==y){u=Math.max(1,h-a[y]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=Vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=Ue(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=Ue(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=Ue(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=Vt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=Ue(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=Ue(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=Ue(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=Ue(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=Ue(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Ct(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function ii(e){return e[Symbol.asyncIterator]!=null}var oi=e=>{let t=Xt(e),r=Vt(t);return Je(e,r),oi.bytes=t,r};oi.bytes=0;function si(e,t){t=t??{};let r=t.lengthEncoder??oi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ii(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}si.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??oi;return new te(r(e.byteLength),e)};var Kr=Wt(l0(),1);var Zl=8,Xl=1024*1024*4,pr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(pr||(pr={}));var Co=e=>{let t=he(e);return Co.bytes=Xt(t),t};Co.bytes=0;function vn(e,t){let r=new te,n=pr.LENGTH,i=-1,o=t?.lengthDecoder??Co,s=t?.maxLengthLength??Zl,a=t?.maxDataLength??Xl;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 ii(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")}()}vn.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 vn(n,{...t??{},onLength:o=>{r=o}})};function Or(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var ai=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}},Mr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new ai(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 ai(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 Io=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Fr(e={}){return Jl(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 Jl(e,t){t=t??{};let r=t.onEnd,n=new Mr,i,o,s,a=Or(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((g,m)=>{o=v=>{o=null,n.push(v);try{g(e(n))}catch(x){m(x)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Or()})}},f=g=>o!=null?o(g):(n.push(g),i),u=g=>(n=new Mr,o!=null?o({error:g}):(n.push({error:g}),i)),l=g=>{if(s)return i;if(t?.objectMode!==!0&&g?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:g})},h=g=>s?i:(s=!0,g!=null?u(g):f({done:!0})),y=()=>(n=new Mr,h(),{done:!0}),d=g=>(h(g),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:y,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async g=>{let m=g?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let v,x;m!=null&&(v=new Promise((A,S)=>{x=()=>{S(new Io)},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(g){return p.throw(g),r!=null&&(r(g),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(g){return p.end(g),r!=null&&(r(g),r=void 0),i},get readableLength(){return p.readableLength}},i}var ci=class extends Error{code;constructor(t,r){super(t),this.code=r}},To=class extends ci{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function h0(e){let t=Fr();e.sink(t).catch(o=>{t.end(o)}),e.sink=async o=>{for await(let s of o)t.push(s);t.end()};let r=e.source;e.source[Symbol.iterator]!=null?r=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(r=e.source[Symbol.asyncIterator]());let n=new te;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new To("Read aborted"))},s?.signal?.addEventListener("abort",a)});try{if(o==null){let{done:u,value:l}=await Promise.race([r.next(),c]);return u===!0?new te:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new ci("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(u)}let f=n.sublist(0,o);return n.consume(o),f}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?t.push(o):t.push(o.subarray()),await t.onEmpty(s)},unwrap:()=>{let o=e.source;return e.source=async function*(){yield*n,yield*o}(),e}}}var fi=class extends Error{code;constructor(t,r){super(t),this.code=r}},d0=e=>he(e);d0.bytes=0;function _o(e,t){let r=h0(e);return{read:async i=>{let o=-1,s=new te,a=t?.lengthDecoder??d0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new fi("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new fi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(si.single(i,t),o)},unwrap:()=>r.unwrap()}}function Lo(){let e=Or(),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 p0(){let e=Lo(),t=Lo();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}function jl(e){return e[Symbol.asyncIterator]!=null}function th(...e){let t=[];for(let r of e)jl(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=Fr({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 y0=th;function g0(e,...t){if(e==null)throw new Error("Empty pipeline");if(Ro(e)){let n=e;e=()=>n.source}else if(x0(e)||m0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Ro(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++)Ro(r[n])&&(r[n]=rh(r[n]));return eh(...r)}var eh=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},m0=e=>e?.[Symbol.asyncIterator]!=null,x0=e=>e?.[Symbol.iterator]!=null,Ro=e=>e==null?!1:e.sink!=null&&e.source!=null,rh=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=Fr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(m0(o))i=async function*(){yield*o,n.end()};else if(x0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return y0(n,i())}return e.source};var b0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var nh=e=>e instanceof Uint8Array;var Ke=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),v0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),ih=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!ih)throw new Error("Non little-endian hardware is not supported");function ui(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function li(e){if(typeof e=="string")e=ui(e);else if(nh(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var oh=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function w0(e,t){if(t!==void 0&&(typeof t!="object"||!oh(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 E0(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 No=(e,t)=>(Object.assign(t,e),t);function Po(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 hi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Do(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Vr(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 ko(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 S0(e,t){Vr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var qt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Uo=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=li(t),yr(t,32);let r=qt(t,0),n=qt(t,2),i=qt(t,4),o=qt(t,6),s=qt(t,8),a=qt(t,10),c=qt(t,12),f=qt(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=qt(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],h=s[5],y=s[6],d=s[7],p=s[8],g=s[9],m=qt(t,r+0),v=qt(t,r+2),x=qt(t,r+4),A=qt(t,r+6),S=qt(t,r+8),B=qt(t,r+10),R=qt(t,r+12),_=qt(t,r+14),O=o[0]+(m&8191),M=o[1]+((m>>>13|v<<3)&8191),U=o[2]+((v>>>10|x<<6)&8191),H=o[3]+((x>>>7|A<<9)&8191),z=o[4]+((A>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),C=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|_<<8)&8191),L=o[9]+(_>>>5|i),w=0,k=w+O*a+M*(5*g)+U*(5*p)+H*(5*d)+z*(5*y);w=k>>>13,k&=8191,k+=Z*(5*h)+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*g)+H*(5*p)+z*(5*d);w=K>>>13,K&=8191,K+=Z*(5*y)+C*(5*h)+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*g)+z*(5*p);w=V>>>13,V&=8191,V+=Z*(5*d)+C*(5*y)+N*(5*h)+T*(5*l)+L*(5*u),w+=V>>>13,V&=8191;let W=w+O*u+M*f+U*c+H*a+z*(5*g);w=W>>>13,W&=8191,W+=Z*(5*p)+C*(5*d)+N*(5*y)+T*(5*h)+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*g)+C*(5*p)+N*(5*d)+T*(5*y)+L*(5*h),w+=Y>>>13,Y&=8191;let et=w+O*h+M*l+U*u+H*f+z*c;w=et>>>13,et&=8191,et+=Z*a+C*(5*g)+N*(5*p)+T*(5*d)+L*(5*y),w+=et>>>13,et&=8191;let X=w+O*y+M*h+U*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+C*a+N*(5*g)+T*(5*p)+L*(5*d),w+=X>>>13,X&=8191;let J=w+O*d+M*y+U*h+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+C*c+N*a+T*(5*g)+L*(5*p),w+=J>>>13,J&=8191;let yt=w+O*p+M*d+U*y+H*h+z*l;w=yt>>>13,yt&=8191,yt+=Z*u+C*f+N*c+T*a+L*(5*g),w+=yt>>>13,yt&=8191;let lt=w+O*g+M*p+U*d+H*y+z*h;w=lt>>>13,lt&=8191,lt+=Z*l+C*u+N*f+T*c+L*a,w+=lt>>>13,lt&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=V,o[3]=W,o[4]=Y,o[5]=et,o[6]=X,o[7]=J,o[8]=yt,o[9]=lt}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){ko(this);let{buffer:r,blockLen:n}=this;t=li(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){ko(this),S0(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 sh(e){let t=(n,i)=>e(i).update(li(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var B0=sh(e=>new Uo(e));var ah=ui("expand 16-byte k"),ch=ui("expand 32-byte k"),fh=Ke(ah),uh=Ke(ch);function G(e,t){return e<<t|e>>>32-t}function Ko(e){return e.byteOffset%4===0}var di=64,lh=16,C0=2**32-1,A0=new Uint32Array;function hh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(di),u=Ke(f),l=Ko(i)&&Ko(o),h=l?Ke(i):A0,y=l?Ke(o):A0;for(let d=0;d<c;s++){if(e(t,r,n,u,s,a),s>=C0)throw new Error("arx: counter overflow");let p=Math.min(di,c-d);if(l&&p===di){let g=d/4;if(d%4!==0)throw new Error("arx: invalid block position");for(let m=0,v;m<lh;m++)v=g+m,y[v]=h[v]^u[m];d+=di;continue}for(let g=0,m;g<p;g++)m=d+g,o[m]=i[m]^f[g];d+=p}}function Oo(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=w0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return hi(i),hi(s),Do(o),Do(r),(a,c,f,u,l=0)=>{Vr(a),Vr(c),Vr(f);let h=f.length;if(u||(u=new Uint8Array(h)),Vr(u),hi(l),l<0||l>=C0)throw new Error("arx: counter overflow");if(u.length<h)throw new Error(`arx: output (${u.length}) is shorter than data (${h})`);let y=[],d=a.length,p,g;if(d===32)p=a.slice(),y.push(p),g=uh;else if(d===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),g=fh,y.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${d}`);Ko(c)||(c=c.slice(),y.push(c));let m=Ke(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(g,m,Ke(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,y.push(c)}let x=Ke(c);for(hh(e,g,m,x,f,u,l,s);y.length>0;)y.pop().fill(0);return u}}function _0(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],h=t[2],y=t[3],d=t[4],p=t[5],g=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=h,z=y,Z=d,C=p,N=g,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++]=h+H|0,n[V++]=y+z|0,n[V++]=d+Z|0,n[V++]=p+C|0,n[V++]=g+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 dh(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],h=t[4],y=t[5],d=t[6],p=t[7],g=r[0],m=r[1],v=r[2],x=r[3];for(let S=0;S<20;S+=2)i=i+c|0,g=G(g^i,16),h=h+g|0,c=G(c^h,12),i=i+c|0,g=G(g^i,8),h=h+g|0,c=G(c^h,7),o=o+f|0,m=G(m^o,16),y=y+m|0,f=G(f^y,12),o=o+f|0,m=G(m^o,8),y=y+m|0,f=G(f^y,7),s=s+u|0,v=G(v^s,16),d=d+v|0,u=G(u^d,12),s=s+u|0,v=G(v^s,8),d=d+v|0,u=G(u^d,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),d=d+x|0,f=G(f^d,12),i=i+f|0,x=G(x^i,8),d=d+x|0,f=G(f^d,7),o=o+u|0,g=G(g^o,16),p=p+g|0,u=G(u^p,12),o=o+u|0,g=G(g^o,8),p=p+g|0,u=G(u^p,7),s=s+l|0,m=G(m^s,16),h=h+m|0,l=G(l^h,12),s=s+l|0,m=G(m^s,8),h=h+m|0,l=G(l^h,7),a=a+c|0,v=G(v^a,16),y=y+v|0,c=G(c^y,12),a=a+c|0,v=G(v^a,8),y=y+v|0,c=G(c^y,7);let A=0;n[A++]=i,n[A++]=o,n[A++]=s,n[A++]=a,n[A++]=g,n[A++]=m,n[A++]=v,n[A++]=x}var ph=Oo(_0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),yh=Oo(_0,{counterRight:!1,counterLength:8,extendNonceFn:dh,allowShortKeys:!1});var gh=new Uint8Array(16),I0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(gh.subarray(r))},mh=new Uint8Array(32);function T0(e,t,r,n,i){let o=e(t,r,mh),s=B0.create(o);i&&I0(s,i),I0(s,n);let a=new Uint8Array(16),c=v0(a);Po(c,0,BigInt(i?i.length:0),!0),Po(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var L0=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=T0(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=T0(e,t,r,f,n);if(!E0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),Mo=No({blockSize:64,nonceLength:12,tagLength:16},L0(ph)),Nx=No({blockSize:64,nonceLength:24,tagLength:16},L0(yh));function pi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Fo(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 wn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");pi(e.outputLen),pi(e.blockLen)}function qr(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){Fo(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var yi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var N0=e=>e instanceof Uint8Array;var gi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),de=(e,t)=>e<<32-t|e>>>t,xh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!xh)throw new Error("Non little-endian hardware is not supported");function Vo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function je(e){if(typeof e=="string"&&(e=Vo(e)),!N0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function mi(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!N0(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var Hr=class{clone(){return this._cloneInto()}},Kx={}.toString;function xi(e){let t=n=>e().update(je(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function gr(e=32){if(yi&&typeof yi.getRandomValues=="function")return yi.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function bh(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 zr=class extends Hr{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=gi(this.buffer)}update(t){qr(this);let{view:r,buffer:n,blockLen:i}=this;t=je(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=gi(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){qr(this),R0(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;bh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=gi(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 bi=BigInt(4294967295),qo=BigInt(32);function P0(e,t=!1){return t?{h:Number(e&bi),l:Number(e>>qo&bi)}:{h:Number(e>>qo&bi)|0,l:Number(e&bi)|0}}function vh(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}=P0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var wh=(e,t)=>BigInt(e>>>0)<<qo|BigInt(t>>>0),Eh=(e,t,r)=>e>>>r,Sh=(e,t,r)=>e<<32-r|t>>>r,Bh=(e,t,r)=>e>>>r|t<<32-r,Ah=(e,t,r)=>e<<32-r|t>>>r,Ch=(e,t,r)=>e<<64-r|t>>>r-32,Ih=(e,t,r)=>e>>>r-32|t<<64-r,Th=(e,t)=>t,_h=(e,t)=>e,Lh=(e,t,r)=>e<<r|t>>>32-r,Rh=(e,t,r)=>t<<r|e>>>32-r,Nh=(e,t,r)=>t<<r-32|e>>>64-r,Ph=(e,t,r)=>e<<r-32|t>>>64-r;function Dh(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var kh=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Uh=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Kh=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Oh=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,Mh=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Fh=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var Vh={fromBig:P0,split:vh,toBig:wh,shrSH:Eh,shrSL:Sh,rotrSH:Bh,rotrSL:Ah,rotrBH:Ch,rotrBL:Ih,rotr32H:Th,rotr32L:_h,rotlSH:Lh,rotlSL:Rh,rotlBH:Nh,rotlBL:Ph,add:Dh,add3L:kh,add3H:Uh,add4L:Kh,add4H:Oh,add5H:Fh,add5L:Mh},j=Vh;var[qh,Hh]=(()=>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))))(),tr=new Uint32Array(80),er=new Uint32Array(80),Ho=class extends zr{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:h,Gh:y,Gl:d,Hh:p,Hl:g}=this;return[t,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g]}set(t,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g){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=h|0,this.Gh=y|0,this.Gl=d|0,this.Hh=p|0,this.Hl=g|0}process(t,r){for(let x=0;x<16;x++,r+=4)tr[x]=t.getUint32(r),er[x]=t.getUint32(r+=4);for(let x=16;x<80;x++){let A=tr[x-15]|0,S=er[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),_=tr[x-2]|0,O=er[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,er[x-7],er[x-16]),z=j.add4H(H,B,M,tr[x-7],tr[x-16]);tr[x]=z|0,er[x]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:y,Fl:d,Gh:p,Gl:g,Hh:m,Hl:v}=this;for(let x=0;x<80;x++){let A=j.rotrSH(l,h,14)^j.rotrSH(l,h,18)^j.rotrBH(l,h,41),S=j.rotrSL(l,h,14)^j.rotrSL(l,h,18)^j.rotrBL(l,h,41),B=l&y^~l&p,R=h&d^~h&g,_=j.add5L(v,S,R,Hh[x],er[x]),O=j.add5H(_,m,A,B,qh[x],tr[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=g|0,p=y|0,g=d|0,y=l|0,d=h|0,{h:l,l:h}=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:h}=j.add(this.Eh|0,this.El|0,l|0,h|0),{h:y,l:d}=j.add(this.Fh|0,this.Fl|0,y|0,d|0),{h:p,l:g}=j.add(this.Gh|0,this.Gl|0,p|0,g|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,h,y,d,p,g,m,v)}roundClean(){tr.fill(0),er.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=xi(()=>new Ho);var Ei={};Nt(Ei,{bitGet:()=>Xh,bitLen:()=>Zh,bitMask:()=>En,bitSet:()=>Qh,bytesToHex:()=>Oe,bytesToNumberBE:()=>Me,bytesToNumberLE:()=>pe,concatBytes:()=>Ve,createHmacDrbg:()=>Wo,ensureBytes:()=>mt,equalBytes:()=>Wh,hexToBytes:()=>mr,hexToNumber:()=>$o,numberToBytesBE:()=>rr,numberToBytesLE:()=>Fe,numberToHexUnpadded:()=>U0,numberToVarBytesBE:()=>$h,utf8ToBytes:()=>Yh,validateObject:()=>se});var k0=BigInt(0),vi=BigInt(1),zh=BigInt(2),wi=e=>e instanceof Uint8Array,Gh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Oe(e){if(!wi(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=Gh[e[r]];return t}function U0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function $o(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 Me(e){return $o(Oe(e))}function pe(e){if(!wi(e))throw new Error("Uint8Array expected");return $o(Oe(Uint8Array.from(e).reverse()))}function rr(e,t){return mr(e.toString(16).padStart(t*2,"0"))}function Fe(e,t){return rr(e,t).reverse()}function $h(e){return mr(U0(e))}function mt(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(wi(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 Ve(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!wi(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function Wh(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 Yh(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Zh(e){let t;for(t=0;e>k0;e>>=vi,t+=1);return t}function Xh(e,t){return e>>BigInt(t)&vi}var Qh=(e,t,r)=>e|(r?vi:k0)<<BigInt(t),En=e=>(zh<<BigInt(e-1))-vi,Go=e=>new Uint8Array(e),D0=e=>Uint8Array.from(e);function Wo(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=Go(e),i=Go(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Go())=>{i=a(D0([0]),l),n=a(),l.length!==0&&(i=a(D0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<t;){n=a();let y=n.slice();h.push(y),l+=n.length}return Ve(...h)};return(l,h)=>{s(),c(l);let y;for(;!(y=h(f()));)c();return s(),y}}var Jh={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 se(e,t,r={}){let n=(i,o,s)=>{let a=Jh[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 Pt=BigInt(0),wt=BigInt(1),xr=BigInt(2),jh=BigInt(3),Yo=BigInt(4),K0=BigInt(5),O0=BigInt(8),td=BigInt(9),ed=BigInt(16);function at(e,t){let r=e%t;return r>=Pt?r:t+r}function Zo(e,t,r){if(r<=Pt||t<Pt)throw new Error("Expected power/modulo > 0");if(r===wt)return Pt;let n=wt;for(;t>Pt;)t&wt&&(n=n*e%r),e=e*e%r,t>>=wt;return n}function xt(e,t,r){let n=e;for(;t-- >Pt;)n*=n,n%=r;return n}function Si(e,t){if(e===Pt||t<=Pt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=at(e,t),n=t,i=Pt,o=wt,s=wt,a=Pt;for(;r!==Pt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==wt)throw new Error("invert: does not exist");return at(i,t)}function rd(e){let t=(e-wt)/xr,r,n,i;for(r=e-wt,n=0;r%xr===Pt;r/=xr,n++);for(i=xr;i<e&&Zo(i,t,e)!==e-wt;i++);if(n===1){let s=(e+wt)/Yo;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)/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),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let y=1;for(let p=a.sqr(h);y<f&&!a.eql(p,a.ONE);y++)p=a.sqr(p);let d=a.pow(u,wt<<BigInt(f-y-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=y}return l}}function nd(e){if(e%Yo===jh){let t=(e+wt)/Yo;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%O0===K0){let t=(e-K0)/O0;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%ed,rd(e)}var M0=(e,t)=>(at(e,t)&wt)===wt,id=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Xo(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=id.reduce((n,i)=>(n[i]="function",n),t);return se(e,r)}function od(e,t,r){if(r<Pt)throw new Error("Expected power > 0");if(r===Pt)return e.ONE;if(r===wt)return t;let n=e.ONE,i=t;for(;r>Pt;)r&wt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=wt;return n}function sd(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 Bi(e,t,r=!1,n={}){if(e<=Pt)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=nd(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:En(i),ZERO:Pt,ONE:wt,create:c=>at(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Pt<=c&&c<e},is0:c=>c===Pt,isOdd:c=>(c&wt)===wt,neg:c=>at(-c,e),eql:(c,f)=>c===f,sqr:c=>at(c*c,e),add:(c,f)=>at(c+f,e),sub:(c,f)=>at(c-f,e),mul:(c,f)=>at(c*f,e),pow:(c,f)=>od(a,c,f),div:(c,f)=>at(c*Si(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>Si(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>sd(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Fe(c,o):rr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?pe(c):Me(c)}});return Object.freeze(a)}function F0(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 V0(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 Jo(e){let t=V0(e);return t+Math.ceil(t/2)}function q0(e,t,r=!1){let n=e.length,i=V0(t),o=Jo(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Me(e):pe(e),a=at(s,t-wt)+wt;return r?Fe(a,i):rr(a,i)}var cd=BigInt(0),jo=BigInt(1);function Ai(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>cd;)o&jo&&(s=s.add(a)),a=a.double(),o>>=jo;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),h=2**i,y=BigInt(i);for(let d=0;d<a;d++){let p=d*c,g=Number(s&l);s>>=y,g>c&&(g-=h,s+=jo);let m=p,v=p+Math.abs(g)-1,x=d%2!==0,A=g<0;g===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 Sn(e){return Xo(e.Fp),se(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 ye=BigInt(0),ee=BigInt(1),Ci=BigInt(2),fd=BigInt(8),ud={zip215:!0};function ld(e){let t=Sn(e);return se(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function Ii(e){let t=ld(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=Ci<<BigInt(a*8)-ee,u=r.create,l=t.uvRatio||((L,w)=>{try{return{isValid:!0,value:r.sqrt(L*r.inv(w))}}catch{return{isValid:!1,value:ye}}}),h=t.adjustScalarBytes||(L=>L),y=t.domain||((L,w,k)=>{if(w.length||k)throw new Error("Contexts/pre-hash are not supported");return L}),d=L=>typeof L=="bigint"&&ye<L,p=(L,w)=>d(L)&&d(w)&&L<w,g=L=>L===ye||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===ye?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,!g(w))throw new Error("x required");if(!g(k))throw new Error("y required");if(!g(K))throw new Error("z required");if(!g(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(!g(k)||!g(K))throw new Error("invalid affine point");return new S(k,K,ee,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,V)=>K.toAffine(k[V])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,x.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:V,ez:W,et:Y}=this,et=u(K*K),X=u(V*V),J=u(W*W),yt=u(J*J),lt=u(et*w),Mt=u(J*u(lt+X)),Ft=u(yt+u(k*u(et*X)));if(Mt!==Ft)throw new Error("bad point: equation left != right (1)");let Rt=u(K*V),zt=u(W*Y);if(Rt!==zt)throw new Error("bad point: equation left != right (2)")}equals(w){A(w);let{ex:k,ey:K,ez:V}=this,{ex:W,ey:Y,ez:et}=w,X=u(k*et),J=u(W*V),yt=u(K*et),lt=u(Y*V);return X===J&&yt===lt}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(Ci*u(V*V)),X=u(w*W),J=k+K,yt=u(u(J*J)-W-Y),lt=X+Y,Mt=lt-et,Ft=X-Y,Rt=u(yt*Mt),zt=u(lt*Ft),ke=u(yt*Ft),dr=u(Mt*lt);return new S(Rt,zt,dr,ke)}add(w){A(w);let{a:k,d:K}=t,{ex:V,ey:W,ez:Y,et}=this,{ex:X,ey:J,ez:yt,et:lt}=w;if(k===BigInt(-1)){let ja=u((W-V)*(J+X)),t0=u((W+V)*(J-X)),wo=u(t0-ja);if(wo===ye)return this.double();let e0=u(Y*Ci*lt),r0=u(et*Ci*yt),n0=r0+e0,i0=t0+ja,o0=r0-e0,Rl=u(n0*wo),Nl=u(i0*o0),Pl=u(n0*o0),Dl=u(wo*i0);return new S(Rl,Nl,Dl,Pl)}let Mt=u(V*X),Ft=u(W*J),Rt=u(et*K*lt),zt=u(Y*yt),ke=u((V+W)*(X+J)-Mt-Ft),dr=zt-Rt,xn=zt+Rt,Ja=u(Ft-k*Mt),Il=u(ke*dr),Tl=u(xn*Ja),_l=u(ke*Ja),Ll=u(dr*xn);return new S(Il,Tl,Ll,_l)}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===ye?R:this.equals(R)||k===ee?this:this.equals(B)?this.wNAF(k).p:_.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:V}=this,W=this.is0();w==null&&(w=W?fd:r.inv(V));let Y=u(k*w),et=u(K*w),X=u(V*w);if(W)return{x:ye,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:et}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,k=!1){let{d:K,a:V}=t,W=r.BYTES;w=mt("pointHex",w,W);let Y=w.slice(),et=w[W-1];Y[W-1]=et&-129;let X=pe(Y);X===ye||(k?m(X,f):m(X,r.ORDER));let J=u(X*X),yt=u(J-ee),lt=u(K*J-V),{isValid:Mt,value:Ft}=l(yt,lt);if(!Mt)throw new Error("Point.fromHex: invalid y coordinate");let Rt=(Ft&ee)===ee,zt=(et&128)!==0;if(!k&&Ft===ye&&zt)throw new Error("Point.fromHex: x=0 and x_0=1");return zt!==Rt&&(Ft=u(-Ft)),S.fromAffine({x:Ft,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=Fe(k,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Oe(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(ye,ee,ee,ye);let{BASE:B,ZERO:R}=S,_=Ai(S,a*8);function O(L){return at(L,n)}function M(L){return O(pe(L))}function U(L){let w=a;L=mt("private key",L,w);let k=mt("hashed private key",o(L),2*w),K=h(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=Ve(...w);return M(o(y(k,mt("context",L),!!i)))}function Z(L,w,k={}){L=mt("message",L),i&&(L=i(L));let{prefix:K,scalar:V,pointBytes:W}=U(w),Y=z(k.context,K,L),et=B.multiply(Y).toRawBytes(),X=z(k.context,et,W,L),J=O(Y+X*V);v(J);let yt=Ve(et,Fe(J,r.BYTES));return mt("result",yt,a*2)}let C=ud;function N(L,w,k,K=C){let{context:V,zip215:W}=K,Y=r.BYTES;L=mt("signature",L,2*Y),w=mt("message",w),i&&(w=i(w));let et=pe(L.slice(Y,2*Y)),X,J,yt;try{X=S.fromHex(k,W),J=S.fromHex(L.slice(0,Y),W),yt=B.multiplyUnsafe(et)}catch{return!1}if(!W&&X.isSmallOrder())return!1;let lt=z(V,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(lt)).subtract(yt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(L=8,w=S.BASE){return w._setWindowSize(L),w.multiply(BigInt(3)),w}}}}var Bn=BigInt(0),ts=BigInt(1);function hd(e){return se(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function H0(e){let t=hd(e),{P:r}=t,n=x=>at(x,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(x=>x),c=t.powPminus2||(x=>Zo(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"&&Bn<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function h(x,A){let S=u(x),B=u(A),R=S,_=ts,O=Bn,M=S,U=ts,H=Bn,z;for(let C=BigInt(i-1);C>=Bn;C--){let N=B>>C&ts;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 y(x){return Fe(n(x),o)}function d(x){let A=mt("u coordinate",x,o);return s===o&&(A[s-1]&=127),pe(A)}function p(x){let A=mt("scalar",x);if(A.length!==o&&A.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${A.length}`);return pe(a(A))}function g(x,A){let S=d(A),B=p(x),R=h(S,B);if(R===Bn)throw new Error("Invalid private or public key received");return y(R)}let m=y(t.Gu);function v(x){return g(x,m)}return{scalarMult:g,scalarMultBase:v,getSharedSecret:(x,A)=>g(x,A),getPublicKey:x=>v(x),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:m}}var An=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),z0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),f2=BigInt(0),dd=BigInt(1),es=BigInt(2),pd=BigInt(5),G0=BigInt(10),yd=BigInt(20),gd=BigInt(40),$0=BigInt(80);function W0(e){let t=An,n=e*e%t*e%t,i=xt(n,es,t)*n%t,o=xt(i,dd,t)*e%t,s=xt(o,pd,t)*o%t,a=xt(s,G0,t)*s%t,c=xt(a,yd,t)*a%t,f=xt(c,gd,t)*c%t,u=xt(f,$0,t)*f%t,l=xt(u,$0,t)*f%t,h=xt(l,G0,t)*s%t;return{pow_p_5_8:xt(h,es,t)*e%t,b2:n}}function Y0(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function md(e,t){let r=An,n=at(t*t*t,r),i=at(n*n*t,r),o=W0(e*i).pow_p_5_8,s=at(e*n*o,r),a=at(t*s*s,r),c=s,f=at(s*z0,r),u=a===e,l=a===at(-e,r),h=a===at(-e*z0,r);return u&&(s=c),(l||h)&&(s=f),M0(s,r)&&(s=at(-s,r)),{isValid:u||l,value:s}}var qe=Bi(An,void 0,!0),rs={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:qe,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:zo,randomBytes:gr,adjustScalarBytes:Y0,uvRatio:md},Gr=Ii(rs);function Z0(e,t,r){if(t.length>255)throw new Error("Context is too big");return mi(Vo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var u2=Ii({...rs,domain:Z0}),l2=Ii({...rs,domain:Z0,prehash:zo}),Cn=(()=>H0({P:An,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=An,{pow_p_5_8:r,b2:n}=W0(e);return at(xt(r,BigInt(3),t)*n,t)},adjustScalarBytes:Y0,randomBytes:gr}))();var xd=(qe.ORDER+BigInt(3))/BigInt(8),h2=qe.pow(es,xd),d2=qe.sqrt(qe.neg(qe.ONE)),p2=(qe.ORDER-BigInt(5))/BigInt(8),y2=BigInt(486662);var g2=F0(qe,qe.neg(BigInt(486664)));var m2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),x2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),b2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),v2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var w2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ti=class extends Hr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,wn(t);let n=je(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return qr(this),this.iHash.update(t),this}digestInto(t){qr(this),Fo(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()}},$r=(e,t,r)=>new Ti(e,t).update(r).digest();$r.create=(e,t)=>new Ti(e,t);function Q0(e,t,r){return wn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),$r(e,je(r),je(t))}var ns=new Uint8Array([0]),X0=new Uint8Array;function J0(e,t,r,n=32){if(wn(e),pi(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=X0);let o=new Uint8Array(i*e.outputLen),s=$r.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)ns[0]=f+1,a.update(f===0?X0:c).update(r).update(ns).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),ns.fill(0),o.slice(0,n)}var bd=(e,t,r)=>e&t^~e&r,vd=(e,t,r)=>e&t^e&r^t&r,wd=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]),nr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ir=new Uint32Array(64),is=class extends zr{constructor(){super(64,32,8,!1),this.A=nr[0]|0,this.B=nr[1]|0,this.C=nr[2]|0,this.D=nr[3]|0,this.E=nr[4]|0,this.F=nr[5]|0,this.G=nr[6]|0,this.H=nr[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)ir[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let h=ir[l-15],y=ir[l-2],d=de(h,7)^de(h,18)^h>>>3,p=de(y,17)^de(y,19)^y>>>10;ir[l]=p+ir[l-7]+d+ir[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=de(a,6)^de(a,11)^de(a,25),y=u+h+bd(a,c,f)+wd[l]+ir[l]|0,p=(de(n,2)^de(n,13)^de(n,22))+vd(n,i,o)|0;u=f,f=c,c=a,a=s+y|0,s=o,o=i,i=n,n=y+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(){ir.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Wr=xi(()=>new is);var os={hashSHA256(e){return Wr(e)},getHKDF(e,t){let r=Q0(Wr,t,e),i=J0(Wr,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=Cn.utils.randomPrivateKey();return{publicKey:Cn.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:Cn.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return Cn.getSharedSecret(e,t)},chaCha20Poly1305Encrypt(e,t,r,n){return Mo(n,t,r).encrypt(e)},chaCha20Poly1305Decrypt(e,t,r,n,i){return Mo(n,t,r).decrypt(e,i)}};var Ed=e=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(e):new Uint8Array(e),Yr=e=>{let t=Ed(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Yr.bytes=2;var In=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)};In.bytes=2;function j0(e){return dt([e.ne,e.ciphertext],e.ne.length+e.ciphertext.length)}function tc(e){return dt([e.ne,e.ns,e.ciphertext],e.ne.length+e.ns.length+e.ciphertext.length)}function ec(e){return dt([e.ns,e.ciphertext],e.ns.length+e.ciphertext.length)}function rc(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:new Uint8Array(0)}}function nc(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 ic(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var sc=16;function ac(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 Yr(s.byteLength),yield s}}}function cc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-sc<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-sc),{plaintext:c,valid:f}=e.decrypt(s,e.session,a);if(!f)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var rt=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},_n=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},br=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var b8=Wt(Pn(),1),v8=Wt(Af(),1);var kg=Wt(pt(),1);var Ns={};Nt(Ns,{base10:()=>Jy});function Wy(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(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,g=0,m=0,v=d.length;m!==v&&d[m]===0;)m++,p++;for(var x=(v-m)*u+1>>>0,A=new Uint8Array(x);m!==v;){for(var S=d[m],B=0,R=x-1;(S!==0||B<g)&&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");g=B,m++}for(var _=x-g;_!==x&&A[_]===0;)_++;for(var O=c.repeat(p);_<x;++_)O+=e.charAt(A[_]);return O}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var g=0,m=0;d[p]===c;)g++,p++;for(var v=(d.length-p)*f+1>>>0,x=new Uint8Array(v);d[p];){var A=r[d.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(d[p]!==" "){for(var R=v-m;R!==v&&x[R]===0;)R++;for(var _=new Uint8Array(g+(v-R)),O=g;R!==v;)_[O++]=x[R++];return _}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var Yy=Wy,Zy=Yy,Cf=Zy;var gb=new Uint8Array(0);var If=(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 Tf=e=>new TextEncoder().encode(e),_f=e=>new TextDecoder().decode(e);var Ts=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")}},_s=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 Rf(this,t)}},Ls=class{constructor(t){this.decoders=t}or(t){return Rf(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`)}},Rf=(e,t)=>new Ls({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),Rs=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Ts(t,r,n),this.decoder=new _s(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},jr=({name:e,prefix:t,encode:r,decode:n})=>new Rs(e,t,r,n),fr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Cf(r,t);return jr({prefix:e,name:t,encode:n,decode:o=>$e(i(o))})},Xy=(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},Qy=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},It=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>jr({prefix:t,name:e,encode(i){return Qy(i,n,r)},decode(i){return Xy(i,n,r,e)}});var Jy=fr({prefix:"9",name:"base10",alphabet:"0123456789"});var Ps={};Nt(Ps,{base16:()=>jy,base16upper:()=>t1});var jy=It({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),t1=It({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ds={};Nt(Ds,{base2:()=>e1});var e1=It({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ks={};Nt(ks,{base256emoji:()=>s1});var Nf=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}"),r1=Nf.reduce((e,t,r)=>(e[r]=t,e),[]),n1=Nf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function i1(e){return e.reduce((t,r)=>(t+=r1[r],t),"")}function o1(e){let t=[];for(let r of e){let n=n1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var s1=jr({prefix:"\u{1F680}",name:"base256emoji",encode:i1,decode:o1});var Us={};Nt(Us,{base32:()=>xe,base32hex:()=>u1,base32hexpad:()=>h1,base32hexpadupper:()=>d1,base32hexupper:()=>l1,base32pad:()=>c1,base32padupper:()=>f1,base32upper:()=>a1,base32z:()=>p1});var xe=It({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),a1=It({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),c1=It({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),f1=It({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),u1=It({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),l1=It({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),h1=It({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),d1=It({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),p1=It({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Ks={};Nt(Ks,{base36:()=>y1,base36upper:()=>g1});var y1=fr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),g1=fr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Os={};Nt(Os,{base58btc:()=>Bt,base58flickr:()=>m1});var Bt=fr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),m1=fr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Fs={};Nt(Fs,{base64:()=>tn,base64pad:()=>x1,base64url:()=>Ms,base64urlpad:()=>b1});var tn=It({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),x1=It({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ms=It({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),b1=It({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Vs={};Nt(Vs,{base8:()=>v1});var v1=It({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var qs={};Nt(qs,{identity:()=>w1});var w1=jr({prefix:"\0",name:"identity",encode:e=>_f(e),decode:e=>Tf(e)});var Rb=new TextEncoder,Nb=new TextDecoder;var Gs={};Nt(Gs,{identity:()=>lr});var _e={};Nt(_e,{Digest:()=>Ar,create:()=>be,decode:()=>ur,equals:()=>zs});var B1=kf,Pf=128,A1=127,C1=~A1,I1=Math.pow(2,31);function kf(e,t,r){t=t||[],r=r||0;for(var n=r;e>=I1;)t[r++]=e&255|Pf,e/=128;for(;e&C1;)t[r++]=e&255|Pf,e>>>=7;return t[r]=e|0,kf.bytes=r-n+1,t}var T1=Hs,_1=128,Df=127;function Hs(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Hs.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&Df)<<i:(s&Df)*Math.pow(2,i),i+=7}while(s>=_1);return Hs.bytes=o-n,r}var L1=Math.pow(2,7),R1=Math.pow(2,14),N1=Math.pow(2,21),P1=Math.pow(2,28),D1=Math.pow(2,35),k1=Math.pow(2,42),U1=Math.pow(2,49),K1=Math.pow(2,56),O1=Math.pow(2,63),M1=function(e){return e<L1?1:e<R1?2:e<N1?3:e<P1?4:e<D1?5:e<k1?6:e<U1?7:e<K1?8:e<O1?9:10},F1={encode:B1,decode:T1,encodingLength:M1},V1=F1,Un=V1;var Kn=(e,t=0)=>[Un.decode(e,t),Un.decode.bytes],en=(e,t,r=0)=>(Un.encode(e,t,r),t),rn=e=>Un.encodingLength(e);var be=(e,t)=>{let r=t.byteLength,n=rn(e),i=n+rn(r),o=new Uint8Array(i+r);return en(e,o,0),en(r,o,n),o.set(t,i),new Ar(e,r,t,o)},ur=e=>{let t=$e(e),[r,n]=Kn(t),[i,o]=Kn(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Ar(r,i,s,t)},zs=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&If(e.bytes,r.bytes)}},Ar=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var Uf=0,q1="identity",Kf=$e,H1=e=>be(Uf,Kf(e)),lr={code:Uf,name:q1,encode:Kf,digest:H1};var Ys={};Nt(Ys,{sha256:()=>Ht,sha512:()=>z1});var Ws=({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?be(this.code,r):r.then(n=>be(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Mf=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Ht=Ws({name:"sha2-256",code:18,encode:Mf("SHA-256")}),z1=Ws({name:"sha2-512",code:19,encode:Mf("SHA-512")});var Ff=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return $1(r,Zs(e),t||Bt.encoder);default:return W1(r,Zs(e),t||xe.encoder)}};var Vf=new WeakMap,Zs=e=>{let t=Vf.get(e);if(t==null){let r=new Map;return Vf.set(e,r),r}return t},ve=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!==On)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Y1)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=be(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&&zs(t.multihash,n.multihash)}toString(t){return Ff(this,t)}toJSON(){return{"/":Ff(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||qf(n,i,o.bytes))}else if(r[Z1]===!0){let{version:n,multihash:i,code:o}=r,s=ur(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!==On)throw new Error(`Version 0 CID must use dag-pb (code: ${On}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=qf(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,On,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 Ar(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,h]=Kn(t.subarray(r));return r+=h,l},i=n(),o=On;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]=G1(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 Zs(o).set(n,t),o}},G1=(e,t)=>{switch(e[0]){case"Q":{let r=t||Bt;return[Bt.prefix,r.decode(`${Bt.prefix}${e}`)]}case Bt.prefix:{let r=t||Bt;return[Bt.prefix,r.decode(e)]}case xe.prefix:{let r=t||xe;return[xe.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)]}}},$1=(e,t,r)=>{let{prefix:n}=r;if(n!==Bt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},W1=(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},On=112,Y1=18,qf=(e,t,r)=>{let n=rn(e),i=n+rn(t),o=new Uint8Array(i+r.byteLength);return en(e,o,0),en(t,o,n),o.set(r,i),o},Z1=Symbol.for("@ipld/js-cid/CID");var Le={...qs,...Ds,...Vs,...Ns,...Ps,...Us,...Ks,...Os,...Fs,...ks},Yb={...Ys,...Gs};function zf(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Hf=zf("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Xs=zf("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Vt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),X1={utf8:Hf,"utf-8":Hf,hex:Le.base16,latin1:Xs,ascii:Xs,binary:Xs,...Le},Yi=X1;function At(e,t="utf8"){let r=Yi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Qe(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var ha={};Nt(ha,{Ed25519PrivateKey:()=>Rr,Ed25519PublicKey:()=>qn,generateKeyPair:()=>cg,generateKeyPairFromSeed:()=>ou,unmarshalEd25519PrivateKey:()=>sg,unmarshalEd25519PublicKey:()=>ag});var nn=32,We=64,Zi=32;async function Gf(){let e=Gr.utils.randomPrivateKey(),t=Gr.getPublicKey(e);return{privateKey:Zf(e,t),publicKey:t}}async function $f(e){if(e.length!==Zi)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=Gr.getPublicKey(t);return{privateKey:Zf(t,r),publicKey:r}}async function Wf(e,t){let r=e.subarray(0,Zi);return Gr.sign(t,r)}async function Yf(e,t,r){return Gr.verify(t,r,e)}function Zf(e,t){let r=new Uint8Array(We);for(let n=0;n<Zi;n++)r[n]=e[n],r[Zi+n]=t[n];return r}var Jt={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var Qs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Js(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,h){let y=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:d};typeof h=="string"&&(h=At(h));let g;if(h.length===0){g=await a.subtle.importKey("jwk",Qs,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}catch{g=await a.subtle.importKey("jwk",Qs,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(v,x,{name:t,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,g,l);return dt([y,p.iv,new Uint8Array(m)])}async function f(l,h){let y=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),g={name:t,iv:d};typeof h=="string"&&(h=At(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",Qs,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,A,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(g,m,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function on(e,t){let n=await Js().encrypt(e,t);return tn.encode(n)}var js=new Float32Array([-0]),hr=new Uint8Array(js.buffer);function Qf(e,t,r){js[0]=e,t[r]=hr[0],t[r+1]=hr[1],t[r+2]=hr[2],t[r+3]=hr[3]}function Jf(e,t){return hr[0]=e[t],hr[1]=e[t+1],hr[2]=e[t+2],hr[3]=e[t+3],js[0]}var ta=new Float64Array([-0]),$t=new Uint8Array(ta.buffer);function jf(e,t,r){ta[0]=e,t[r]=$t[0],t[r+1]=$t[1],t[r+2]=$t[2],t[r+3]=$t[3],t[r+4]=$t[4],t[r+5]=$t[5],t[r+6]=$t[6],t[r+7]=$t[7]}function tu(e,t){return $t[0]=e[t],$t[1]=e[t+1],$t[2]=e[t+2],$t[3]=e[t+3],$t[4]=e[t+4],$t[5]=e[t+5],$t[6]=e[t+6],$t[7]=e[t+7],ta[0]}var J1=BigInt(Number.MAX_SAFE_INTEGER),j1=BigInt(Number.MIN_SAFE_INTEGER),jt=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<J1&&t>j1)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,i=t-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>eu&&(i=0n,++n>eu&&(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 jt(0,0);Cr.toBigInt=function(){return 0n};Cr.zzEncode=Cr.zzDecode=function(){return this};Cr.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 ea(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 we(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Xi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var ra=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,we(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 we(this,4);return Xi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Xi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let t=Jf(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw we(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 we(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 we(this,t);this.pos+=t}else do if(this.pos>=this.len)throw we(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 jt(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 we(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 we(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 we(this,8);let t=Xi(this.buf,this.pos+=4),r=Xi(this.buf,this.pos+=4);return new jt(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 na(e){return new ra(e instanceof Uint8Array?e:e.subarray())}function Ir(e,t){let r=na(e);return t.decode(r)}function ia(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Vt(s);i+s>t&&(n=Vt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Tr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function oa(){}var aa=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},tg=ia();function eg(e){return globalThis.Buffer!=null?Vt(e):tg(e)}var Vn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Tr(oa,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 ca((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(Mn,10,jt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=jt.fromBigInt(t);return this._push(Mn,r.length(),r)}uint64Number(t){let r=jt.fromNumber(t);return this._push(Mn,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=jt.fromBigInt(t).zzEncode();return this._push(Mn,r.length(),r)}sint64Number(t){let r=jt.fromNumber(t).zzEncode();return this._push(Mn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(sa,1,t?1:0)}fixed32(t){return this._push(Fn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=jt.fromBigInt(t);return this._push(Fn,4,r.lo)._push(Fn,4,r.hi)}fixed64Number(t){let r=jt.fromNumber(t);return this._push(Fn,4,r.lo)._push(Fn,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(sa,1,0):this.uint32(r)._push(ng,r,t)}string(t){let r=ru(t);return r!==0?this.uint32(r)._push(ea,r,t):this._push(sa,1,0)}fork(){return this.states=new aa(this),this.head=this.tail=new Tr(oa,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(oa,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=eg(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function sa(e,t,r){t[r]=e&255}function rg(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var ca=class extends Tr{next;constructor(t,r){super(rg,t,r),this.next=void 0}};function Mn(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 Fn(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 ng(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Vn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(ig,t,e),this},Vn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(og,t,e),this});function ig(e,t,r){t.set(e,r)}function og(e,t,r){e.length<40?ea(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(At(e),r)}function fa(){return new Vn}function _r(e,t){let r=fa();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var sn;(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"})(sn||(sn={}));function Qi(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ua(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 Qi("enum",sn.VARINT,r,n)}function Lr(e,t){return Qi("message",sn.LENGTH_DELIMITED,e,t)}var St;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(St||(St={}));var la;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(la||(la={}));(function(e){e.codec=()=>ua(la)})(St||(St={}));var Re;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((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=>_r(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Re||(Re={}));var Ne;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((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=>_r(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Ne||(Ne={}));var qn=class{_key;constructor(t){this._key=an(t,nn)}async verify(t,r){return Yf(this._key,r,t)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},Rr=class{_key;_publicKey;constructor(t,r){this._key=an(t,We),this._publicKey=an(r,nn)}async sign(t){return Wf(this._key,t)}get public(){return new qn(this._publicKey)}marshal(){return this._key}get bytes(){return Ne.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=lr.digest(this.public.bytes);return Bt.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return on(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function sg(e){if(e.length>We){e=an(e,We+nn);let n=e.subarray(0,We),i=e.subarray(We,e.length);return new Rr(n,i)}e=an(e,We);let t=e.subarray(0,We),r=e.subarray(nn);return new Rr(t,r)}function ag(e){return e=an(e,nn),new qn(e)}async function cg(){let{privateKey:e,publicKey:t}=await Gf();return new Rr(e,t)}async function ou(e){let{privateKey:t,publicKey:r}=await $f(e);return new Rr(t,r)}function an(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new rt(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}function it(e,t="utf8"){let r=Yi[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 Wv=Wt(Lt(),1),Yv=Wt(Hi(),1),su=Wt(pt(),1);function Ee(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=dt([new Uint8Array(t-r.length),r])}return it(r,"base64url")}function re(e){let t=au(e);return new su.default.jsbn.BigInteger(it(t,"base16"),16)}function au(e,t){let r=At(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=dt([new Uint8Array(t-r.length),r])}return r}var fg={"P-256":256,"P-384":384,"P-521":521},ug=Object.keys(fg),ow=ug.join(" / ");var ma={};Nt(ma,{MAX_KEY_SIZE:()=>$n,RsaPrivateKey:()=>cn,RsaPublicKey:()=>Gn,fromJwk:()=>wg,generateKeyPair:()=>Eg,unmarshalRsaPrivateKey:()=>bg,unmarshalRsaPublicKey:()=>vg});var zn=Wt(pt(),1);var Hw=Wt(hu(),1);function ji(e){if(isNaN(e)||e<=0)throw new rt("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return gr(e)}var Aw=Wt($i(),1),ya=Wt(pt(),1);function du(e,t){return t.map(r=>re(e[r]))}function pu(e){return ya.default.pki.setRsaPrivateKey(...du(e,["n","e","d","p","q","dp","dq","qi"]))}function yu(e){return ya.default.pki.setRsaPublicKey(...du(e,["n","e"]))}var Pr={};Nt(Pr,{jwkToPkcs1:()=>pg,jwkToPkix:()=>gg,pkcs1ToJwk:()=>dg,pkixToJwk:()=>yg});var Tw=Wt(Pn(),1),_w=Wt($i(),1);var Ye=Wt(pt(),1);function dg(e){let t=Ye.default.asn1.fromDer(it(e,"ascii")),r=Ye.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:Ee(r.n),e:Ee(r.e),d:Ee(r.d),p:Ee(r.p),q:Ee(r.q),dp:Ee(r.dP),dq:Ee(r.dQ),qi:Ee(r.qInv),alg:"RS256"}}function pg(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new rt("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Ye.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return At(Ye.default.asn1.toDer(t).getBytes(),"ascii")}function yg(e){let t=Ye.default.asn1.fromDer(it(e,"ascii")),r=Ye.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:Ee(r.n),e:Ee(r.e)}}function gg(e){if(e.n==null||e.e==null)throw new rt("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Ye.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return At(Ye.default.asn1.toDer(t).getBytes(),"ascii")}async function gu(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 bu(t);return{privateKey:r[0],publicKey:r[1]}}async function ga(e){let r=[await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await mg(e)],n=await bu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function mu(e,t){let r=await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(n,0,n.byteLength)}async function xu(e,t,r){let n=await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r)}async function bu(e){if(e.privateKey==null||e.publicKey==null)throw new rt("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Jt.get().subtle.exportKey("jwk",e.privateKey),Jt.get().subtle.exportKey("jwk",e.publicKey)])}async function mg(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 vu(e,t,r,n){let i=t?yu(e):pu(e),o=it(Uint8Array.from(r),"ascii"),s=n(o,i);return At(s,"ascii")}function wu(e,t){return vu(e,!0,t,(r,n)=>n.encrypt(r))}function Eu(e,t){return vu(e,!1,t,(r,n)=>n.decrypt(r))}function to(e){if(e.kty!=="RSA")throw new rt("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new rt("invalid key modulus","ERR_INVALID_KEY_MODULUS");return At(e.n,"base64url").length*8}var $n=8192,Gn=class{_key;constructor(t){this._key=t}async verify(t,r){return xu(this._key,r,t)}marshal(){return Pr.jwkToPkix(this._key)}get bytes(){return Re.encode({Type:St.RSA,Data:this.marshal()}).subarray()}encrypt(t){return wu(this._key,t)}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},cn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return ji(16)}async sign(t){return mu(this._key,t)}get public(){if(this._publicKey==null)throw new rt("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Gn(this._publicKey)}decrypt(t){return Eu(this._key,t)}marshal(){return Pr.jwkToPkcs1(this._key)}get bytes(){return Ne.encode({Type:St.RSA,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=await this.public.hash();return it(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new zn.default.util.ByteBuffer(this.marshal()),i=zn.default.asn1.fromDer(n),o=zn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return zn.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return on(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function bg(e){let t=Pr.pkcs1ToJwk(e);if(to(t)>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await ga(t);return new cn(r.privateKey,r.publicKey)}function vg(e){let t=Pr.pkixToJwk(e);if(to(t)>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Gn(t)}async function wg(e){if(to(e)>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await ga(e);return new cn(t.privateKey,t.publicKey)}async function Eg(e){if(e>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await gu(e);return new cn(t.privateKey,t.publicKey)}var wa={};Nt(wa,{Secp256k1PrivateKey:()=>Yn,Secp256k1PublicKey:()=>Wn,generateKeyPair:()=>Dg,unmarshalSecp256k1PrivateKey:()=>Ng,unmarshalSecp256k1PublicKey:()=>Pg});function Sg(e){let t=Sn(e);se(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:Bg,hexToBytes:Ag}=Ei,Dr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Dr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:Bg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Dr,r=typeof e=="string"?Ag(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Dr._parseInt(r.subarray(2)),{d:s,l:a}=Dr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Ze=BigInt(0),fe=BigInt(1),Zw=BigInt(2),Su=BigInt(3),Xw=BigInt(4);function Cg(e){let t=Sg(e),{Fp:r}=t,n=t.toBytes||((d,p,g)=>{let m=p.toAffine();return Ve(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=t.fromBytes||(d=>{let p=d.subarray(1),g=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:g,y:m}});function o(d){let{a:p,b:g}=t,m=r.sqr(d),v=r.mul(m,d);return r.add(r.add(v,r.mul(d,p)),g)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&Ze<d&&d<t.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:g,wrapPrivateKey:m,n:v}=t;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Oe(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(g*2,"0")}let x;try{x=typeof d=="bigint"?d:Me(mt("private key",d,g))}catch{throw new Error(`private key must be ${g} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=at(x,v)),a(x),x}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,g,m){if(this.px=p,this.py=g,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(g==null||!r.isValid(g))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:g,y:m}=p||{};if(!p||!r.isValid(g)||!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(g)&&v(m)?l.ZERO:new l(g,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let g=r.invertBatch(p.map(m=>m.pz));return p.map((m,v)=>m.toAffine(g[v])).map(l.fromAffine)}static fromHex(p){let g=l.fromAffine(i(mt("pointHex",p)));return g.assertValidity(),g}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:g}=this.toAffine();if(!r.isValid(p)||!r.isValid(g))throw new Error("bad point: x or y not FE");let m=r.sqr(g),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:g,py:m,pz:v}=this,{px:x,py:A,pz:S}=p,B=r.eql(r.mul(g,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:g}=t,m=r.mul(g,Su),{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:g,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,Su),U=r.mul(g,x),H=r.mul(m,A),z=r.mul(v,S),Z=r.add(g,m),C=r.add(x,A);Z=r.mul(Z,C),C=r.add(U,H),Z=r.sub(Z,C),C=r.add(g,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 y.wNAFCached(this,f,p,g=>{let m=r.invertBatch(g.map(v=>v.pz));return g.map((v,x)=>v.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let g=l.ZERO;if(p===Ze)return g;if(a(p),p===fe)return this;let{endo:m}=t;if(!m)return y.unsafeLadder(this,p);let{k1neg:v,k1:x,k2neg:A,k2:S}=m.splitScalar(p),B=g,R=g,_=this;for(;x>Ze||S>Ze;)x&fe&&(B=B.add(_)),S&fe&&(R=R.add(_)),_=_.double(),x>>=fe,S>>=fe;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 g=p,m,v,{endo:x}=t;if(x){let{k1neg:A,k1:S,k2neg:B,k2:R}=x.splitScalar(g),{p:_,f:O}=this.wNAF(S),{p:M,f:U}=this.wNAF(R);_=y.constTimeNegate(A,_),M=y.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(g);m=A,v=S}return l.normalizeZ([m,v])[0]}multiplyAndAddUnsafe(p,g,m){let v=l.BASE,x=(S,B)=>B===Ze||B===fe||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),A=x(this,g).add(x(p,m));return A.is0()?void 0:A}toAffine(p){let{px:g,py:m,pz:v}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(v));let A=r.mul(g,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:g}=t;if(p===fe)return!0;if(g)return g(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:g}=t;return p===fe?this:g?g(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Oe(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=t.nBitLength,y=Ai(l,t.endo?Math.ceil(h/2):h);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Ig(e){let t=Sn(e);return se(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Bu(e){let t=Ig(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return Ze<C&&C<r.ORDER}function a(C){return at(C,n)}function c(C){return Si(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=Cg({...t,toBytes(C,N,T){let L=N.toAffine(),w=r.toBytes(L.x),k=Ve;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=Me(L);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),V=(K&fe)===fe;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`)}}),y=C=>Oe(rr(C,t.nByteLength));function d(C){let N=n>>fe;return C>N}function p(C){return d(C)?a(-C):C}let g=(C,N,T)=>Me(C.slice(N,T));class m{constructor(N,T,L){this.r=N,this.s=T,this.recovery=L,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=mt("compactSignature",N,T*2),new m(g(N,0,T),g(N,T,2*T))}static fromDER(N){let{r:T,s:L}=Dr.toSig(mt("DER",N));return new m(T,L)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new m(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:L,recovery:w}=this,k=R(mt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let V=w&1?"03":"02",W=f.fromHex(V+y(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 d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return mr(this.toDERHex())}toDERHex(){return Dr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return mr(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let v={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=Jo(t.n);return q0(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=Me(C),T=C.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(C){return a(B(C))},_=En(t.nBitLength);function O(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Ze<=C&&C<_))throw new Error(`bigint expected < 2^${t.nBitLength}`);return rr(C,t.nByteLength)}function M(C,N,T=U){if(["recovered","canonical"].some(lt=>lt in T))throw new Error("sign() legacy options not supported");let{hash:L,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:V}=T;k==null&&(k=!0),C=mt("msgHash",C),K&&(C=mt("prehashed msgHash",L(C)));let W=R(C),Y=u(N),et=[O(Y),O(W)];if(V!=null){let lt=V===!0?w(r.BYTES):V;et.push(mt("extraEntropy",lt))}let X=Ve(...et),J=W;function yt(lt){let Mt=B(lt);if(!h(Mt))return;let Ft=c(Mt),Rt=f.BASE.multiply(Mt).toAffine(),zt=a(Rt.x);if(zt===Ze)return;let ke=a(Ft*a(J+zt*Y));if(ke===Ze)return;let dr=(Rt.x===zt?0:2)|Number(Rt.y&fe),xn=ke;return k&&d(ke)&&(xn=p(ke),dr^=1),new m(zt,xn,dr)}return{seed:X,k2sig:yt}}let U={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(C,N,T=U){let{seed:L,k2sig:w}=M(C,N,T),k=t;return Wo(k.hash.outputLen,k.nByteLength,k.hmac)(L,w)}f.BASE._setWindowSize(8);function Z(C,N,T,L=H){let w=C;if(N=mt("msgHash",N),T=mt("publicKey",T),"strict"in L)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=L,V,W;try{if(typeof w=="string"||w instanceof Uint8Array)try{V=m.fromDER(w)}catch(Rt){if(!(Rt instanceof Dr.Err))throw Rt;V=m.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Rt,s:zt}=w;V=new m(Rt,zt)}else throw new Error("PARSE");W=f.fromHex(T)}catch(Rt){if(Rt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&V.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:et}=V,X=R(N),J=c(et),yt=a(X*J),lt=a(Y*J),Mt=f.BASE.multiplyAndAddUnsafe(W,yt,lt)?.toAffine();return Mt?a(Mt.x)===Y:!1}return{CURVE:t,getPublicKey:x,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:m,utils:v}}function Tg(e){return{hash:e,hmac:(t,...r)=>$r(e,t,mi(...r)),randomBytes:gr}}function Au(e,t){let r=n=>Bu({...e,...Tg(n)});return Object.freeze({...r(t),create:r})}var Tu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Cu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),_g=BigInt(1),xa=BigInt(2),Iu=(e,t)=>(e+t/xa)/t;function Lg(e){let t=Tu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=xt(u,r,t)*u%t,h=xt(l,r,t)*u%t,y=xt(h,xa,t)*f%t,d=xt(y,i,t)*y%t,p=xt(d,o,t)*d%t,g=xt(p,a,t)*p%t,m=xt(g,c,t)*g%t,v=xt(m,a,t)*p%t,x=xt(v,r,t)*u%t,A=xt(x,s,t)*d%t,S=xt(A,n,t)*f%t,B=xt(S,xa,t);if(!ba.eql(ba.sqr(B),e))throw new Error("Cannot find square root");return B}var ba=Bi(Tu,void 0,void 0,{sqrt:Lg}),Xe=Au({a:BigInt(0),b:BigInt(7),Fp:ba,n:Cu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Cu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-_g*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Iu(o*e,t),c=Iu(-n*e,t),f=at(e-a*r-c*i,t),u=at(-a*n-c*o,t),l=f>s,h=u>s;if(l&&(f=t-f),h&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},Wr),o8=BigInt(0);var s8=Xe.ProjectivePoint;function _u(){return Xe.utils.randomPrivateKey()}async function Lu(e,t){let{digest:r}=await Ht.digest(t);try{return Xe.sign(r,e).toDERRawBytes()}catch(n){throw new rt(String(n),"ERR_INVALID_INPUT")}}async function Ru(e,t,r){try{let{digest:n}=await Ht.digest(r);return Xe.verify(t,n,e)}catch(n){throw new rt(String(n),"ERR_INVALID_INPUT")}}function Nu(e){return Xe.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Pu(e){try{Xe.getPublicKey(e,!0)}catch(t){throw new rt(String(t),"ERR_INVALID_PRIVATE_KEY")}}function va(e){try{Xe.ProjectivePoint.fromHex(e)}catch(t){throw new rt(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Du(e){try{return Xe.getPublicKey(e,!0)}catch(t){throw new rt(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Wn=class{_key;constructor(t){va(t),this._key=t}async verify(t,r){return Ru(this._key,r,t)}marshal(){return Nu(this._key)}get bytes(){return Re.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}},Yn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Du(t),Pu(this._key),va(this._publicKey)}async sign(t){return Lu(this._key,t)}get public(){return new Wn(this._publicKey)}marshal(){return this._key}get bytes(){return Ne.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ct(this.bytes,t.bytes)}async hash(){let{bytes:t}=await Ht.digest(this.bytes);return t}async id(){let t=await this.public.hash();return it(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return on(this.bytes,t);throw new rt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Ng(e){return new Yn(e)}function Pg(e){return new Wn(e)}async function Dg(){let e=_u();return new Yn(e)}var kr={rsa:ma,ed25519:ha,secp256k1:wa};function ku(e){let t=Object.keys(kr).join(" / ");return new rt(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Uu(e){let t=Re.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return kr.rsa.unmarshalRsaPublicKey(r);case St.Ed25519:return kr.ed25519.unmarshalEd25519PublicKey(r);case St.Secp256k1:return kr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw ku(t.Type??"unknown")}}async function Ku(e){let t=Ne.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return kr.rsa.unmarshalRsaPrivateKey(r);case St.Ed25519:return kr.ed25519.unmarshalEd25519PrivateKey(r);case St.Secp256k1:return kr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw ku(t.Type??"RSA")}}var Ou=Symbol.for("@libp2p/peer-id");var Ug=Symbol.for("nodejs.util.inspect.custom"),Mu=Object.values(Le).map(e=>e.decoder).reduce((e,t)=>e.or(t),Le.identity.decoder),Fu=114,Ea=36,Sa=37,Zn=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()})`}[Ou]=!0;toString(){return this.string==null&&(this.string=Bt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return ve.createV1(Fu,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Ct(this.multihash.bytes,t);if(typeof t=="string")return Ba(t).equals(this);if(t?.multihash?.bytes!=null)return Ct(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[Ug](){return`PeerId(${this.toString()})`}},fn=class extends Zn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},un=class extends Zn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},ln=class extends Zn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function Ba(e,t){if(t=t??Mu,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=ur(Bt.decode(`z${e}`));return e.startsWith("12D")?new un({multihash:r}):e.startsWith("16U")?new ln({multihash:r}):new fn({multihash:r})}return Kg(Mu.decode(e))}function Kg(e){try{let t=ur(e);if(t.code===lr.code){if(t.digest.length===Ea)return new un({multihash:t});if(t.digest.length===Sa)return new ln({multihash:t})}if(t.code===Ht.code)return new fn({multihash:t})}catch{return Og(ve.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Og(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Fu)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Ht.code)return new fn({multihash:e.multihash});if(t.code===lr.code){if(t.digest.length===Ea)return new un({multihash:e.multihash});if(t.digest.length===Sa)return new ln({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Aa(e,t){return e.length===Ea?new un({multihash:be(lr.code,e),privateKey:t}):e.length===Sa?new ln({multihash:be(lr.code,e),privateKey:t}):new fn({multihash:await Ht.digest(e),publicKey:e,privateKey:t})}var eo;(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())})(eo||(eo={}));var Xn;(function(e){let t;e.codec=()=>(t==null&&(t=Lr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),(i.writeDefaults===!0||r.identityKey!=null&&r.identityKey.byteLength>0)&&(n.uint32(10),n.bytes(r.identityKey??new Uint8Array(0))),(i.writeDefaults===!0||r.identitySig!=null&&r.identitySig.byteLength>0)&&(n.uint32(18),n.bytes(r.identitySig??new Uint8Array(0))),r.extensions!=null&&(n.uint32(34),eo.codec().encode(r.extensions,n,{writeDefaults:!1})),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:new Uint8Array(0),identitySig:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.identityKey=r.bytes();break;case 2:i.identitySig=r.bytes();break;case 4:i.extensions=eo.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())})(Xn||(Xn={}));async function Vu(e,t,r){let n=await Fg(e,qu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Mg(e.publicKey,n,r)}function Mg(e,t,r){return Xn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Fg(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await Ku(e.privateKey)).sign(t)}async function Ca(e){return Aa(e.identityKey)}function Ia(e){return Xn.decode(e)}function qu(e){let t=At("noise-libp2p-static-key:");return dt([t,e],t.length+e.length)}async function Ta(e,t,r){let n=await Aa(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 Uu(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Qn(e){return!(!(e instanceof Uint8Array)||e.length!==32)}var ie=Wt(Wu(),1);ie.default.formatters.b=e=>e==null?"undefined":Bt.baseEncode(e);ie.default.formatters.t=e=>e==null?"undefined":xe.baseEncode(e);ie.default.formatters.m=e=>e==null?"undefined":tn.baseEncode(e);ie.default.formatters.p=e=>e==null?"undefined":e.toString();ie.default.formatters.c=e=>e==null?"undefined":e.toString();ie.default.formatters.k=e=>e==null?"undefined":e.toString();ie.default.formatters.a=e=>e==null?"undefined":e.toString();function jg(e){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=e,t.destroy=()=>!0,t.extend=()=>t,t}function yn(e){let t=jg(`${e}:trace`);return ie.default.enabled(`${e}:trace`)&&ie.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(t=(0,ie.default)(`${e}:trace`)),Object.assign((0,ie.default)(e),{error:(0,ie.default)(`${e}:error`),trace:t})}var Ot=yn("libp2p:noise");var ue;b0?ue=Ot:ue=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function Yu(e){ue(`LOCAL_STATIC_PUBLIC_KEY ${it(e.publicKey,"hex")}`),ue(`LOCAL_STATIC_PRIVATE_KEY ${it(e.privateKey,"hex")}`)}function _a(e){e?(ue(`LOCAL_PUBLIC_EPHEMERAL_KEY ${it(e.publicKey,"hex")}`),ue(`LOCAL_PRIVATE_EPHEMERAL_KEY ${it(e.privateKey,"hex")}`)):ue("Missing local ephemeral keys.")}function Zu(e){ue(`REMOTE_STATIC_PUBLIC_KEY ${it(e,"hex")}`)}function La(e){ue(`REMOTE_EPHEMERAL_PUBLIC_KEY ${it(e,"hex")}`)}function Xu(e){e.cs1&&e.cs2?(ue(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${it(e.cs1.k,"hex")}`),ue(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${it(e.cs2.k,"hex")}`)):ue("Missing cipher state.")}var tm="Cipherstate has reached maximum n, a new handshake must be performed",io=class{n;bytes;view;constructor(t=0){this.n=t,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>4294967295)throw new Error(tm)}};var oo=class{crypto;constructor(t){this.crypto=t}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(t){let r=this.createEmptyKey();return Ct(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Ot.error(i),new Uint8Array(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(dt([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 io}}initializeSymmetric(t){let r=At(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=new Uint8Array(32);return r.set(t),r}else return this.getHash(t,new Uint8Array(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,new Uint8Array(0),r.ciphertext)}};var so=class extends oo{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=new Uint8Array(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Qn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Qn(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&&Qn(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&&Qn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=new Uint8Array(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};var ao=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 so(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Yu(this.session.hs.s),this.isInitiator){Ot.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(j0(t)),Ot.trace("Stage 0 - Initiator finished sending first message."),_a(this.session.hs.e)}else{Ot.trace("Stage 0 - Responder waiting to receive first message...");let t=rc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new br("xx handshake stage 0 validation fail");Ot.trace("Stage 0 - Responder received first message."),La(this.session.hs.re)}}async exchange(){if(this.isInitiator){Ot.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=nc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new br("xx handshake stage 1 validation fail");Ot.trace("Stage 1 - Initiator received the message."),La(this.session.hs.re),Zu(this.session.hs.rs),Ot.trace("Initiator going to check remote's signature...");try{let i=Ia(r);this.remotePeer=this.remotePeer||await Ca(i),await Ta(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new _n(`Error occurred while verifying signed payload: ${o.message}`)}Ot.trace("All good with the signature!")}else{Ot.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(tc(t)),Ot.trace("Stage 1 - Responder sent the second handshake message with signed payload."),_a(this.session.hs.e)}}async finish(){if(this.isInitiator){Ot.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(ec(t)),Ot.trace("Stage 2 - Initiator sent message with signed payload.")}else{Ot.trace("Stage 2 - Responder waiting for third handshake message...");let t=ic((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new br("xx handshake stage 2 validation fail");Ot.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Ia(r);this.remotePeer=this.remotePeer||await Ca(i),await Ta(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new _n(`Error occurred while verifying signed payload: ${o.message}`)}}Xu(this.session)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new br("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function Qu(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 co=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??os,this.extensions=n,this.metrics=s?Qu(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(t,r,n){let i=_o(r,{lengthEncoder:Yr,lengthDecoder:In,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=_o(r,{lengthEncoder:Yr,lengthDecoder:In,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 Vu(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 ao(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]=p0(),o=t.unwrap();return await g0(n,ac(r,this.metrics),o,s=>vn(s,{lengthDecoder:In}),cc(r,this.metrics),n),i}};function Ju(e={}){return()=>new co(e)}var tl=Symbol.for("@libp2p/transport");var ju;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(ju||(ju={}));var fo=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 h=Number.parseInt(l,t);if(!Number.isNaN(h))return h});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 el=45,em=15,gn=new fo;function Ra(e){if(!(e.length>em))return gn.new(e).parseWith(()=>gn.readIPv4Addr())}function Na(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>el))return gn.new(e).parseWith(()=>gn.readIPv6Addr())}function uo(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>el))return gn.new(e).parseWith(()=>gn.readIPAddr())}var rE=parseInt("0xFFFF",16),nE=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function lo(e){return!!Ra(e)}function ho(e){return!!Na(e)}function po(e){return!!uo(e)}var il=lo,sm=ho,Pa=function(e){let t=0;if(e=e.toString().trim(),il(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(sm(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=il(r[n]),s;o&&(s=Pa(r[n]),r[n]=it(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,it(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")},ol=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 mn={},Da={},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=fm(...e);Da[t.code]=t,mn[t.name]=t});function fm(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function ut(e){if(typeof e=="number"){if(Da[e]!=null)return Da[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(mn[e]!=null)return mn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var FE=ut("ip4"),VE=ut("ip6"),qE=ut("ipcidr");function Ua(e,t){switch(ut(e).code){case 4:case 41:return lm(t);case 42:return cl(t);case 6:case 273:case 33:case 132:return ul(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return cl(t);case 421:return ym(t);case 444:return fl(t);case 445:return fl(t);case 466:return pm(t);default:return it(t,"base16")}}function Ka(e,t){switch(ut(e).code){case 4:return sl(t);case 41:return sl(t);case 42:return al(t);case 6:case 273:case 33:case 132:return Oa(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return al(t);case 421:return hm(t);case 444:return gm(t);case 445:return mm(t);case 466:return dm(t);default:return At(t,"base16")}}var ka=Object.values(Le).map(e=>e.decoder),um=function(){let e=ka[0].or(ka[1]);return ka.slice(2).forEach(t=>e=e.or(t)),e}();function sl(e){if(!po(e))throw new Error("invalid ip address");return Pa(e)}function lm(e){let t=ol(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!po(t))throw new Error("invalid ip address");return t}function Oa(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function ul(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function al(e){let t=At(e),r=Uint8Array.from(Je(t.length));return dt([r,t],r.length+t.length)}function cl(e){let t=he(e);if(e=e.slice(Xt(t)),e.length!==t)throw new Error("inconsistent lengths");return it(e)}function hm(e){let t;e[0]==="Q"||e[0]==="1"?t=ur(Bt.decode(`z${e}`)).bytes:t=ve.parse(e).multihash.bytes;let r=Uint8Array.from(Je(t.length));return dt([r,t],r.length+t.length)}function dm(e){let t=um.decode(e),r=Uint8Array.from(Je(t.length));return dt([r,t],r.length+t.length)}function pm(e){let t=he(e),r=e.slice(Xt(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+it(r,"base64url")}function ym(e){let t=he(e),r=e.slice(Xt(t));if(r.length!==t)throw new Error("inconsistent lengths");return it(r,"base58btc")}function gm(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=xe.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=Oa(n);return dt([r,i],r.length+i.length)}function mm(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=xe.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=Oa(n);return dt([r,i],r.length+i.length)}function fl(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=it(t,"base32"),i=ul(r);return`${n}:${i}`}function ll(e){e=Ma(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=ut(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw dl("invalid address: "+e);if(a.path===!0){n=Ma(i.slice(o).join("/")),t.push([a.code,Ka(a.code,n)]),r.push([a.code,n]);break}let c=Ka(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ua(a.code,c)])}return{string:hl(r),bytes:Va(t),tuples:t,stringTuples:r,path:n}}function Fa(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=he(e,i),s=Xt(o),a=ut(o),c=xm(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 dl("Invalid address Uint8Array: "+it(e,"base16"));t.push([o,f]);let u=Ua(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:hl(r),tuples:t,stringTuples:r,path:n}}function hl(e){let t=[];return e.map(r=>{let n=ut(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Ma(t.join("/"))}function Va(e){return dt(e.map(t=>{let r=ut(t[0]),n=Uint8Array.from(Je(r.code));return t.length>1&&t[1]!=null&&(n=dt([n,t[1]])),n}))}function xm(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=he(t instanceof Uint8Array?t:Uint8Array.from(t));return r+Xt(r)}}function Ma(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function dl(e){return new Error("Error parsing address: "+e)}var bm=Symbol.for("nodejs.util.inspect.custom"),Ha=Symbol.for("@multiformats/js-multiaddr/multiaddr"),vm=[ut("dns").code,ut("dns4").code,ut("dns6").code,ut("dnsaddr").code],qa=class e{bytes;#e;#t;#r;#n;[Ha]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Fa(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=ll(t)}else if(yl(t))r=Fa(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=ut("tcp"),a=ut("udp"),c=ut("ip4"),f=ut("ip6"),u=ut("dns6"),l=ut("ip6zone");for(let[y,d]of this.stringTuples())y===l.code&&(o=`%${d??""}`),vm.includes(y)&&(r=s.name,i=443,n=`${d??""}${o}`,t=y===u.code?6:4),(y===s.code||y===a.code)&&(r=ut(y).name,i=parseInt(d??"")),(y===c.code||y===f.code)&&(r=ut(y).name,n=`${d??""}${o}`,t=y===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({},ut(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>ut(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(Va(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===mn.p2p.code&&t.push([n,i]),n===mn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?it(Bt.decode(`z${n}`),"base58btc"):it(ve.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Ct(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=pl.get(r.name);if(n==null)throw new rt(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[bm](){return`Multiaddr(${this.#e})`}};var pl=new Map;function yl(e){return!!e?.[Ha]}var wm=e=>e.toString().split("/").slice(1),Jn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Tt=e=>({match:t=>Jn(r=>r===e).match(t),pattern:e}),mo=()=>({match:e=>Jn(t=>typeof t=="string").match(e),pattern:"{string}"}),gl=()=>({match:e=>Jn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),le=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{Bt.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),yo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Ms.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Pe=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),De=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),_t=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Dt(...e){function t(i){let o=wm(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 Ga=_t(Tt("dns4"),mo()),$a=_t(Tt("dns6"),mo()),Wa=_t(Tt("dnsaddr"),mo()),ml=_t(Tt("dns"),mo()),x3=Dt(Ga),b3=Dt($a),v3=Dt(Wa),w3=Dt(De(ml,Wa,Ga,$a)),xl=_t(Tt("ip4"),Jn(lo)),bl=_t(Tt("ip6"),Jn(ho)),vl=De(xl,bl),jn=De(vl,ml,Ga,$a,Wa),E3=Dt(jn),S3=Dt(xl),B3=Dt(bl),A3=Dt(vl),xo=_t(jn,Tt("tcp"),gl()),ti=_t(jn,Tt("udp"),gl()),Em=De(xo,ti),C3=Dt(xo),I3=Dt(ti),Ya=_t(ti,Tt("quic")),bo=_t(ti,Tt("quic-v1")),Sm=De(Ya,bo),T3=Dt(Ya),_3=Dt(bo),za=De(jn,xo,ti,Ya,bo),wl=De(_t(za,Tt("ws"),Pe(le()))),L3=Dt(wl),El=De(_t(za,Tt("wss"),Pe(le())),_t(za,Tt("tls"),Tt("ws"),Pe(le()))),R3=Dt(El),Sl=_t(Em,Tt("webrtc-direct"),yo(),Pe(yo()),Pe(le())),N3=Dt(Sl),Bl=_t(bo,Tt("webtransport"),yo(),yo(),Pe(le())),vo=Dt(Bl),go=De(wl,El,_t(xo,Pe(le())),_t(Sm,Pe(le())),_t(jn,Pe(le())),Sl,Bl,le()),P3=Dt(go),Bm=_t(go,Tt("p2p-circuit"),le()),D3=Dt(Bm),Am=De(_t(go,Tt("p2p-circuit"),Tt("webrtc"),le()),_t(go,Tt("webrtc"),Pe(le())),Tt("webrtc")),k3=Dt(Am);var ei=yn("libp2p:webtransport:stream");async function Za(e,t,r,n,i){let o=e.writable.getWriter(),s=e.readable.getReader();await o.ready;function a(){let h=n.findIndex(y=>y===l);h!==-1&&(n.splice(h,1),l.timeline.close=Date.now(),i?.(l))}let c=!1,f=!1;(async function(){let h=await o.closed.catch(y=>y);if(h!=null){let y=h.message;y.includes("aborted by the remote server")||y.includes("STOP_SENDING")||ei.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}c=!0,c&&f&&a()})().catch(()=>{ei.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await s.closed.catch(y=>y);h!=null&&ei.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),f=!0,c&&f&&a()}().catch(()=>{ei.error("WebTransport failed to cleanup closed stream")});let u=!1,l={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){c||(o.abort(h).catch(y=>{ei.error("could not abort stream",y)}),c=!0),f=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),a()},async close(h){this.status="closing",await Promise.all([l.closeRead(h),l.closeWrite(h)]),a(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!f){this.readStatus="closing";try{await s.cancel()}catch(y){y.toString().includes("RESET_STREAM")===!0&&(c=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",f=!0}c&&a()},async closeWrite(h){if(!c){c=!0,this.writeStatus="closing";try{await o.close()}catch(y){y.toString().includes("RESET_STREAM")===!0&&(f=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}f&&a()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await s.read();if(h.done){f=!0,c&&a();return}yield new te(h.value)}}(),sink:async function(h){if(u)throw new Error("sink already called on stream");u=!0;try{this.writeStatus="writing";for await(let y of h)if(y instanceof Uint8Array)await o.write(y);else for(let d of y)await o.write(d);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await l.closeWrite()}}};return l}function Xa(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function Al(e,t){return t.filter(n=>!!e.find(i=>Ct(n,i))).length===t.length}var Cm=Object.values(Le).map(e=>e.decoder).reduce((e,t)=>e.or(t));function Im(e){return _e.decode(Cm.decode(e))}function Cl(e){if(!vo.matches(e))throw new rt("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===ut("certhash").code).map(([s,a])=>Im(a??"")),n=t.filter(([s,a])=>s===ut("p2p").code).map(([s,a])=>Ba(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 oe=yn("libp2p:webtransport"),Qa=class{components;config;metrics;constructor(t,r={}){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";[tl]=!0;async dial(t,r){r?.signal?.throwIfAborted(),oe("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}=Cl(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,h=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let y=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(d=>({algorithm:"sha-256",value:d.digest}))});if(f=d=>{if(!u)try{this.metrics?.dialerEvents.increment({[d]:!0}),y.close()}catch(p){oe.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([y.closed,y.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),y.closed.catch(d=>{oe.error("error on remote wt session close",d)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(y,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{oe("Closing webtransport"),f("close")},abort:d=>{oe("aborting webtransport due to passed err",d),f("abort")},remoteAddr:t,timeline:{open:Date.now()},...Xa()},h=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(y),skipProtection:!0})}catch(y){throw oe.error("caught wt session err",y),f(h?"upgrade_error":l?"noise_error":"ready_error"),y}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 h of l)await s.write(h)}},f=Ju()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{oe.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{oe.error(`Failed to close authentication stream reader: ${l.message}`)}),!Al(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;return{protocol:"webtransport",createStreamMuxer:i=>{typeof i=="function"&&(i={onIncomingStream:i});let o=[];return async function(){let a=t.incomingBidirectionalStreams.getReader();for(;;){let{done:c,value:f}=await a.read();if(c)break;if(o.length>=n.maxInboundStreams)f.writable.close().catch(u=>{oe.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${u.message}`)}),f.readable.cancel().catch(u=>{oe.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${u.message}`)});else{let u=await Za(f,String(r++),"inbound",o,i?.onStreamEnd);o.push(u),i?.onIncomingStream?.(u)}}}().catch(()=>{oe.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:o,newStream:async a=>{let c=await t.createBidirectionalStream(),f=await Za(c,String(r++),i?.direction??"outbound",o,i?.onStreamEnd);return o.push(f),f},close:async a=>{oe("Closing webtransport muxer"),await Promise.all(o.map(async c=>c.close(a)))},abort:a=>{oe("Aborting webtransport muxer with err:",a);for(let c of o)c.abort(a)},...Xa()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(vo.exactMatch)}};function Tm(e={}){return t=>new Qa(t,e)}return Fl(_m);})();
|
|
16
16
|
//! TODO unclear how to add backpressure here?
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|