@libp2p/webtransport 3.1.2-cf3ae893 → 3.1.3-7534ae7b
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 +14 -14
- 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};hs.decode=function(t,e){if(typeof t!="string")throw new TypeError('"input" must be a string.');if(typeof e!="string")throw new TypeError('"alphabet" must be a string.');var r=gc[e];if(!r){r=gc[e]=[];for(var n=0;n<e.length;++n)r[e.charCodeAt(n)]=n}t=t.replace(/\s/g,"");for(var i=e.length,o=e.charAt(0),s=[0],n=0;n<t.length;n++){var a=r[t.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;t[u]===o&&u<t.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function dp(t,e){var r=0,n=e.length,i=e.charAt(0),o=[0];for(r=0;r<t.length();++r){for(var s=0,a=t.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;t.at(r)===0&&r<t.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=e[o[r]];return c}});var Pt=J((Fb,Ec)=>{var bc=gt(),vc=xc(),b=Ec.exports=bc.util=bc.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===t){c.stopPropagation();var f=e.slice();e.length=0,f.forEach(function(u){u()})}};var s=a,t="forge.setImmediate",e=[];b.setImmediate=function(c){e.push(c),e.length===1&&window.postMessage(t,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),e=[];new MutationObserver(function(){var c=e.slice();e.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)):(e.push(c),e.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(t){return Object.prototype.toString.call(t)==="[object Array]"};b.isArrayBuffer=function(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer};b.isArrayBufferView=function(t){return t&&b.isArrayBuffer(t.buffer)&&t.byteLength!==void 0};function Mn(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}b.ByteBuffer=ds;function ds(t){if(this.data="",this.read=0,typeof t=="string")this.data=t;else if(b.isArrayBuffer(t)||b.isArrayBufferView(t))if(typeof Buffer<"u"&&t instanceof Buffer)this.data=t.toString("binary");else{var e=new Uint8Array(t);try{this.data=String.fromCharCode.apply(null,e)}catch{for(var r=0;r<e.length;++r)this.putByte(e[r])}}else(t instanceof ds||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}b.ByteStringBuffer=ds;var pp=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>pp&&(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(t){return this.putBytes(String.fromCharCode(t))};b.ByteStringBuffer.prototype.fillWithByte=function(t,e){t=String.fromCharCode(t);for(var r=this.data;e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return this.data=r,this._optimizeConstructedString(e),this};b.ByteStringBuffer.prototype.putBytes=function(t){return this.data+=t,this._optimizeConstructedString(t.length),this};b.ByteStringBuffer.prototype.putString=function(t){return this.putBytes(b.encodeUtf8(t))};b.ByteStringBuffer.prototype.putInt16=function(t){return this.putBytes(String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};b.ByteStringBuffer.prototype.putInt24=function(t){return this.putBytes(String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};b.ByteStringBuffer.prototype.putInt32=function(t){return this.putBytes(String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};b.ByteStringBuffer.prototype.putInt16Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255))};b.ByteStringBuffer.prototype.putInt24Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255))};b.ByteStringBuffer.prototype.putInt32Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>24&255))};b.ByteStringBuffer.prototype.putInt=function(t,e){Mn(e);var r="";do e-=8,r+=String.fromCharCode(t>>e&255);while(e>0);return this.putBytes(r)};b.ByteStringBuffer.prototype.putSignedInt=function(t,e){return t<0&&(t+=2<<e-1),this.putInt(t,e)};b.ByteStringBuffer.prototype.putBuffer=function(t){return this.putBytes(t.getBytes())};b.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};b.ByteStringBuffer.prototype.getInt16=function(){var t=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,t};b.ByteStringBuffer.prototype.getInt24=function(){var t=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,t};b.ByteStringBuffer.prototype.getInt32=function(){var t=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,t};b.ByteStringBuffer.prototype.getInt16Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,t};b.ByteStringBuffer.prototype.getInt24Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,t};b.ByteStringBuffer.prototype.getInt32Le=function(){var t=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,t};b.ByteStringBuffer.prototype.getInt=function(t){Mn(t);var e=0;do e=(e<<8)+this.data.charCodeAt(this.read++),t-=8;while(t>0);return e};b.ByteStringBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};b.ByteStringBuffer.prototype.getBytes=function(t){var e;return t?(t=Math.min(this.length(),t),e=this.data.slice(this.read,this.read+t),this.read+=t):t===0?e="":(e=this.read===0?this.data:this.data.slice(this.read),this.clear()),e};b.ByteStringBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};b.ByteStringBuffer.prototype.at=function(t){return this.data.charCodeAt(this.read+t)};b.ByteStringBuffer.prototype.setAt=function(t,e){return this.data=this.data.substr(0,this.read+t)+String.fromCharCode(e)+this.data.substr(this.read+t+1),this};b.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};b.ByteStringBuffer.prototype.copy=function(){var t=b.createBuffer(this.data);return t.read=this.read,t};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(t){var e=Math.max(0,this.length()-t);return this.data=this.data.substr(this.read,e),this.read=0,this};b.ByteStringBuffer.prototype.toHex=function(){for(var t="",e=this.read;e<this.data.length;++e){var r=this.data.charCodeAt(e);r<16&&(t+="0"),t+=r.toString(16)}return t};b.ByteStringBuffer.prototype.toString=function(){return b.decodeUtf8(this.bytes())};function yp(t,e){e=e||{},this.read=e.readOffset||0,this.growSize=e.growSize||1024;var r=b.isArrayBuffer(t),n=b.isArrayBufferView(t);if(r||n){r?this.data=new DataView(t):this.data=new DataView(t.buffer,t.byteOffset,t.byteLength),this.write="writeOffset"in e?e.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,t!=null&&this.putBytes(t),"writeOffset"in e&&(this.write=e.writeOffset)}b.DataBuffer=yp;b.DataBuffer.prototype.length=function(){return this.write-this.read};b.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};b.DataBuffer.prototype.accommodate=function(t,e){if(this.length()>=t)return this;e=Math.max(e||this.growSize,t);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+e);return n.set(r),this.data=new DataView(n.buffer),this};b.DataBuffer.prototype.putByte=function(t){return this.accommodate(1),this.data.setUint8(this.write++,t),this};b.DataBuffer.prototype.fillWithByte=function(t,e){this.accommodate(e);for(var r=0;r<e;++r)this.data.setUint8(t);return this};b.DataBuffer.prototype.putBytes=function(t,e){if(b.isArrayBufferView(t)){var r=new Uint8Array(t.buffer,t.byteOffset,t.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(t)){var r=new Uint8Array(t);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(t instanceof b.DataBuffer||typeof t=="object"&&typeof t.read=="number"&&typeof t.write=="number"&&b.isArrayBufferView(t.data)){var r=new Uint8Array(t.data.byteLength,t.read,t.length());this.accommodate(r.byteLength);var i=new Uint8Array(t.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(t instanceof b.ByteStringBuffer&&(t=t.data,e="binary"),e=e||"binary",typeof t=="string"){var o;if(e==="hex")return this.accommodate(Math.ceil(t.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.hex.decode(t,o,this.write),this;if(e==="base64")return this.accommodate(Math.ceil(t.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.base64.decode(t,o,this.write),this;if(e==="utf8"&&(t=b.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.raw.decode(o),this;if(e==="utf16")return this.accommodate(t.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=b.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+e)}throw Error("Invalid parameter: "+t)};b.DataBuffer.prototype.putBuffer=function(t){return this.putBytes(t),t.clear(),this};b.DataBuffer.prototype.putString=function(t){return this.putBytes(t,"utf16")};b.DataBuffer.prototype.putInt16=function(t){return this.accommodate(2),this.data.setInt16(this.write,t),this.write+=2,this};b.DataBuffer.prototype.putInt24=function(t){return this.accommodate(3),this.data.setInt16(this.write,t>>8&65535),this.data.setInt8(this.write,t>>16&255),this.write+=3,this};b.DataBuffer.prototype.putInt32=function(t){return this.accommodate(4),this.data.setInt32(this.write,t),this.write+=4,this};b.DataBuffer.prototype.putInt16Le=function(t){return this.accommodate(2),this.data.setInt16(this.write,t,!0),this.write+=2,this};b.DataBuffer.prototype.putInt24Le=function(t){return this.accommodate(3),this.data.setInt8(this.write,t>>16&255),this.data.setInt16(this.write,t>>8&65535,!0),this.write+=3,this};b.DataBuffer.prototype.putInt32Le=function(t){return this.accommodate(4),this.data.setInt32(this.write,t,!0),this.write+=4,this};b.DataBuffer.prototype.putInt=function(t,e){Mn(e),this.accommodate(e/8);do e-=8,this.data.setInt8(this.write++,t>>e&255);while(e>0);return this};b.DataBuffer.prototype.putSignedInt=function(t,e){return Mn(e),this.accommodate(e/8),t<0&&(t+=2<<e-1),this.putInt(t,e)};b.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};b.DataBuffer.prototype.getInt16=function(){var t=this.data.getInt16(this.read);return this.read+=2,t};b.DataBuffer.prototype.getInt24=function(){var t=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,t};b.DataBuffer.prototype.getInt32=function(){var t=this.data.getInt32(this.read);return this.read+=4,t};b.DataBuffer.prototype.getInt16Le=function(){var t=this.data.getInt16(this.read,!0);return this.read+=2,t};b.DataBuffer.prototype.getInt24Le=function(){var t=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,t};b.DataBuffer.prototype.getInt32Le=function(){var t=this.data.getInt32(this.read,!0);return this.read+=4,t};b.DataBuffer.prototype.getInt=function(t){Mn(t);var e=0;do e=(e<<8)+this.data.getInt8(this.read++),t-=8;while(t>0);return e};b.DataBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};b.DataBuffer.prototype.getBytes=function(t){var e;return t?(t=Math.min(this.length(),t),e=this.data.slice(this.read,this.read+t),this.read+=t):t===0?e="":(e=this.read===0?this.data:this.data.slice(this.read),this.clear()),e};b.DataBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};b.DataBuffer.prototype.at=function(t){return this.data.getUint8(this.read+t)};b.DataBuffer.prototype.setAt=function(t,e){return this.data.setUint8(t,e),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 t=new Uint8Array(this.data.buffer,this.read),e=new Uint8Array(t.byteLength);e.set(t),this.data=new DataView(e),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(t){return this.write=Math.max(0,this.length()-t),this.read=Math.min(this.read,this.write),this};b.DataBuffer.prototype.toHex=function(){for(var t="",e=this.read;e<this.data.byteLength;++e){var r=this.data.getUint8(e);r<16&&(t+="0"),t+=r.toString(16)}return t};b.DataBuffer.prototype.toString=function(t){var e=new Uint8Array(this.data,this.read,this.length());if(t=t||"utf8",t==="binary"||t==="raw")return b.binary.raw.encode(e);if(t==="hex")return b.binary.hex.encode(e);if(t==="base64")return b.binary.base64.encode(e);if(t==="utf8")return b.text.utf8.decode(e);if(t==="utf16")return b.text.utf16.decode(e);throw new Error("Invalid encoding: "+t)};b.createBuffer=function(t,e){return e=e||"raw",t!==void 0&&e==="utf8"&&(t=b.encodeUtf8(t)),new b.ByteBuffer(t)};b.fillString=function(t,e){for(var r="";e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return r};b.xorBytes=function(t,e,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=t.charCodeAt(s)^e.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};b.hexToBytes=function(t){var e="",r=0;for(t.length&!0&&(r=1,e+=String.fromCharCode(parseInt(t[0],16)));r<t.length;r+=2)e+=String.fromCharCode(parseInt(t.substr(r,2),16));return e};b.bytesToHex=function(t){return b.createBuffer(t).toHex()};b.int32ToBytes=function(t){return String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255)};var hr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",dr=[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],wc="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";b.encode64=function(t,e){for(var r="",n="",i,o,s,a=0;a<t.length;)i=t.charCodeAt(a++),o=t.charCodeAt(a++),s=t.charCodeAt(a++),r+=hr.charAt(i>>2),r+=hr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=hr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":hr.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
|
4
|
-
`,r=r.substr(
|
|
5
|
-
`,r=r.substr(e));return n+=r,n};b.binary.base64.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(Math.ceil(t.length/4)*3)),t=t.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,f=r;c<t.length;)i=dr[t.charCodeAt(c++)-43],o=dr[t.charCodeAt(c++)-43],s=dr[t.charCodeAt(c++)-43],a=dr[t.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 e?f-r:n.subarray(0,f)};b.binary.base58.encode=function(t,e){return b.binary.baseN.encode(t,wc,e)};b.binary.base58.decode=function(t,e){return b.binary.baseN.decode(t,wc,e)};b.text={utf8:{},utf16:{}};b.text.utf8.encode=function(t,e,r){t=b.encodeUtf8(t);var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,o=0;o<t.length;++o)n[i++]=t.charCodeAt(o);return e?i-r:n};b.text.utf8.decode=function(t){return b.decodeUtf8(String.fromCharCode.apply(null,t))};b.text.utf16.encode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<t.length;++a)i[s++]=t.charCodeAt(a),o+=2;return e?o-r:n};b.text.utf16.decode=function(t){return String.fromCharCode.apply(null,new Uint16Array(t.buffer))};b.deflate=function(t,e,r){if(e=b.decode64(t.deflate(b.encode64(e)).rval),r){var n=2,i=e.charCodeAt(1);i&32&&(n=6),e=e.substring(n,e.length-4)}return e};b.inflate=function(t,e,r){var n=t.inflate(b.encode64(e)).rval;return n===null?null:b.decode64(n)};var ps=function(t,e,r){if(!t)throw new Error("WebStorage not available.");var n;if(r===null?n=t.removeItem(e):(r=b.encode64(JSON.stringify(r)),n=t.setItem(e,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}},ys=function(t,e){if(!t)throw new Error("WebStorage not available.");var r=t.getItem(e);if(t.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(b.decode64(r))),r},gp=function(t,e,r,n){var i=ys(t,e);i===null&&(i={}),i[r]=n,ps(t,e,i)},mp=function(t,e,r){var n=ys(t,e);return n!==null&&(n=r in n?n[r]:null),n},xp=function(t,e,r){var n=ys(t,e);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),ps(t,e,n)}},bp=function(t,e){ps(t,e,null)},Ni=function(t,e,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(e[0]===null)throw new Error("Flash local storage not available.");n=t.apply(this,e),o=i==="flash"}(i==="web"||i==="both")&&(e[0]=localStorage,n=t.apply(this,e),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};b.setItem=function(t,e,r,n,i){Ni(gp,arguments,i)};b.getItem=function(t,e,r,n){return Ni(mp,arguments,n)};b.removeItem=function(t,e,r,n){Ni(xp,arguments,n)};b.clearItems=function(t,e,r){Ni(bp,arguments,r)};b.isEmpty=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0};b.format=function(t){for(var e=/%./g,r,n,i=0,o=[],s=0;r=e.exec(t);){n=t.substring(s,e.lastIndex-2),n.length>0&&o.push(n),s=e.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(t.substring(s)),o.join("")};b.formatNumber=function(t,e,r,n){var i=t,o=isNaN(e=Math.abs(e))?2:e,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(t){return t>=1073741824?t=b.formatNumber(t/1073741824,2,".","")+" GiB":t>=1048576?t=b.formatNumber(t/1048576,2,".","")+" MiB":t>=1024?t=b.formatNumber(t/1024,0)+" KiB":t=b.formatNumber(t,0)+" bytes",t};b.bytesFromIP=function(t){return t.indexOf(".")!==-1?b.bytesFromIPv4(t):t.indexOf(":")!==-1?b.bytesFromIPv6(t):null};b.bytesFromIPv4=function(t){if(t=t.split("."),t.length!==4)return null;for(var e=b.createBuffer(),r=0;r<t.length;++r){var n=parseInt(t[r],10);if(isNaN(n))return null;e.putByte(n)}return e.getBytes()};b.bytesFromIPv6=function(t){var e=0;t=t.split(":").filter(function(s){return s.length===0&&++e,!0});for(var r=(8-t.length+e)*2,n=b.createBuffer(),i=0;i<8;++i){if(!t[i]||t[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=b.hexToBytes(t[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};b.bytesToIP=function(t){return t.length===4?b.bytesToIPv4(t):t.length===16?b.bytesToIPv6(t):null};b.bytesToIPv4=function(t){if(t.length!==4)return null;for(var e=[],r=0;r<t.length;++r)e.push(t.charCodeAt(r));return e.join(".")};b.bytesToIPv6=function(t){if(t.length!==16)return null;for(var e=[],r=[],n=0,i=0;i<t.length;i+=2){for(var o=b.bytesToHex(t[i]+t[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=e.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))}e.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(e.splice(c.start,c.end-c.start+1,""),c.start===0&&e.unshift(""),c.end===7&&e.push(""))}return e.join(":")};b.estimateCores=function(t,e){if(typeof t=="function"&&(e=t,t={}),t=t||{},"cores"in b&&!t.update)return e(null,b.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return b.cores=navigator.hardwareConcurrency,e(null,b.cores);if(typeof Worker>"u")return b.cores=1,e(null,b.cores);if(typeof Blob>"u")return b.cores=2,e(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),e(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 Ui=J((Vb,Sc)=>{var Fn=gt();Fn.pki=Fn.pki||{};var gs=Sc.exports=Fn.pki.oids=Fn.oids=Fn.oids||{};function P(t,e){gs[t]=e,gs[e]=t}function ht(t,e){gs[t]=e}P("1.2.840.113549.1.1.1","rsaEncryption");P("1.2.840.113549.1.1.4","md5WithRSAEncryption");P("1.2.840.113549.1.1.5","sha1WithRSAEncryption");P("1.2.840.113549.1.1.7","RSAES-OAEP");P("1.2.840.113549.1.1.8","mgf1");P("1.2.840.113549.1.1.9","pSpecified");P("1.2.840.113549.1.1.10","RSASSA-PSS");P("1.2.840.113549.1.1.11","sha256WithRSAEncryption");P("1.2.840.113549.1.1.12","sha384WithRSAEncryption");P("1.2.840.113549.1.1.13","sha512WithRSAEncryption");P("1.3.101.112","EdDSA25519");P("1.2.840.10040.4.3","dsa-with-sha1");P("1.3.14.3.2.7","desCBC");P("1.3.14.3.2.26","sha1");P("1.3.14.3.2.29","sha1WithRSASignature");P("2.16.840.1.101.3.4.2.1","sha256");P("2.16.840.1.101.3.4.2.2","sha384");P("2.16.840.1.101.3.4.2.3","sha512");P("2.16.840.1.101.3.4.2.4","sha224");P("2.16.840.1.101.3.4.2.5","sha512-224");P("2.16.840.1.101.3.4.2.6","sha512-256");P("1.2.840.113549.2.2","md2");P("1.2.840.113549.2.5","md5");P("1.2.840.113549.1.7.1","data");P("1.2.840.113549.1.7.2","signedData");P("1.2.840.113549.1.7.3","envelopedData");P("1.2.840.113549.1.7.4","signedAndEnvelopedData");P("1.2.840.113549.1.7.5","digestedData");P("1.2.840.113549.1.7.6","encryptedData");P("1.2.840.113549.1.9.1","emailAddress");P("1.2.840.113549.1.9.2","unstructuredName");P("1.2.840.113549.1.9.3","contentType");P("1.2.840.113549.1.9.4","messageDigest");P("1.2.840.113549.1.9.5","signingTime");P("1.2.840.113549.1.9.6","counterSignature");P("1.2.840.113549.1.9.7","challengePassword");P("1.2.840.113549.1.9.8","unstructuredAddress");P("1.2.840.113549.1.9.14","extensionRequest");P("1.2.840.113549.1.9.20","friendlyName");P("1.2.840.113549.1.9.21","localKeyId");P("1.2.840.113549.1.9.22.1","x509Certificate");P("1.2.840.113549.1.12.10.1.1","keyBag");P("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");P("1.2.840.113549.1.12.10.1.3","certBag");P("1.2.840.113549.1.12.10.1.4","crlBag");P("1.2.840.113549.1.12.10.1.5","secretBag");P("1.2.840.113549.1.12.10.1.6","safeContentsBag");P("1.2.840.113549.1.5.13","pkcs5PBES2");P("1.2.840.113549.1.5.12","pkcs5PBKDF2");P("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");P("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");P("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");P("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");P("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");P("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");P("1.2.840.113549.2.7","hmacWithSHA1");P("1.2.840.113549.2.8","hmacWithSHA224");P("1.2.840.113549.2.9","hmacWithSHA256");P("1.2.840.113549.2.10","hmacWithSHA384");P("1.2.840.113549.2.11","hmacWithSHA512");P("1.2.840.113549.3.7","des-EDE3-CBC");P("2.16.840.1.101.3.4.1.2","aes128-CBC");P("2.16.840.1.101.3.4.1.22","aes192-CBC");P("2.16.840.1.101.3.4.1.42","aes256-CBC");P("2.5.4.3","commonName");P("2.5.4.4","surname");P("2.5.4.5","serialNumber");P("2.5.4.6","countryName");P("2.5.4.7","localityName");P("2.5.4.8","stateOrProvinceName");P("2.5.4.9","streetAddress");P("2.5.4.10","organizationName");P("2.5.4.11","organizationalUnitName");P("2.5.4.12","title");P("2.5.4.13","description");P("2.5.4.15","businessCategory");P("2.5.4.17","postalCode");P("2.5.4.42","givenName");P("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");P("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");P("2.16.840.1.113730.1.1","nsCertType");P("2.16.840.1.113730.1.13","nsComment");ht("2.5.29.1","authorityKeyIdentifier");ht("2.5.29.2","keyAttributes");ht("2.5.29.3","certificatePolicies");ht("2.5.29.4","keyUsageRestriction");ht("2.5.29.5","policyMapping");ht("2.5.29.6","subtreesConstraint");ht("2.5.29.7","subjectAltName");ht("2.5.29.8","issuerAltName");ht("2.5.29.9","subjectDirectoryAttributes");ht("2.5.29.10","basicConstraints");ht("2.5.29.11","nameConstraints");ht("2.5.29.12","policyConstraints");ht("2.5.29.13","basicConstraints");P("2.5.29.14","subjectKeyIdentifier");P("2.5.29.15","keyUsage");ht("2.5.29.16","privateKeyUsagePeriod");P("2.5.29.17","subjectAltName");P("2.5.29.18","issuerAltName");P("2.5.29.19","basicConstraints");ht("2.5.29.20","cRLNumber");ht("2.5.29.21","cRLReason");ht("2.5.29.22","expirationDate");ht("2.5.29.23","instructionCode");ht("2.5.29.24","invalidityDate");ht("2.5.29.25","cRLDistributionPoints");ht("2.5.29.26","issuingDistributionPoint");ht("2.5.29.27","deltaCRLIndicator");ht("2.5.29.28","issuingDistributionPoint");ht("2.5.29.29","certificateIssuer");ht("2.5.29.30","nameConstraints");P("2.5.29.31","cRLDistributionPoints");P("2.5.29.32","certificatePolicies");ht("2.5.29.33","policyMappings");ht("2.5.29.34","policyConstraints");P("2.5.29.35","authorityKeyIdentifier");ht("2.5.29.36","policyConstraints");P("2.5.29.37","extKeyUsage");ht("2.5.29.46","freshestCRL");ht("2.5.29.54","inhibitAnyPolicy");P("1.3.6.1.4.1.11129.2.4.2","timestampList");P("1.3.6.1.5.5.7.1.1","authorityInfoAccess");P("1.3.6.1.5.5.7.3.1","serverAuth");P("1.3.6.1.5.5.7.3.2","clientAuth");P("1.3.6.1.5.5.7.3.3","codeSigning");P("1.3.6.1.5.5.7.3.4","emailProtection");P("1.3.6.1.5.5.7.3.8","timeStamping")});var qn=J((qb,Ac)=>{var wt=gt();Pt();Ui();var V=Ac.exports=wt.asn1=wt.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(t,e,r,n,i){if(wt.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:t,type:e,constructed:r,composed:r||wt.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(t,e){var r;if(wt.util.isArray(t)){r=[];for(var n=0;n<t.length;++n)r.push(V.copy(t[n],e));return r}return typeof t=="string"?t:(r={tagClass:t.tagClass,type:t.type,constructed:t.constructed,composed:t.composed,value:V.copy(t.value,e)},e&&!e.excludeBitStringContents&&(r.bitStringContents=t.bitStringContents),r)};V.equals=function(t,e,r){if(wt.util.isArray(t)){if(!wt.util.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;++n)if(!V.equals(t[n],e[n]))return!1;return!0}if(typeof t!=typeof e)return!1;if(typeof t=="string")return t===e;var i=t.tagClass===e.tagClass&&t.type===e.type&&t.constructed===e.constructed&&t.composed===e.composed&&V.equals(t.value,e.value);return r&&r.includeBitStringContents&&(i=i&&t.bitStringContents===e.bitStringContents),i};V.getBerValueLength=function(t){var e=t.getByte();if(e!==128){var r,n=e&128;return n?r=t.getInt((e&127)<<3):r=e,r}};function Vn(t,e,r){if(r>e){var n=new Error("Too few bytes to parse DER.");throw n.available=t.length(),n.remaining=e,n.requested=r,n}}var vp=function(t,e){var r=t.getByte();if(e--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Vn(t,e,o),n=t.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(t,e){e===void 0&&(e={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof e=="boolean"&&(e={strict:e,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in e||(e.strict=!0),"parseAllBytes"in e||(e.parseAllBytes=!0),"decodeBitStrings"in e||(e.decodeBitStrings=!0),typeof t=="string"&&(t=wt.util.createBuffer(t));var r=t.length(),n=Ki(t,t.length(),0,e);if(e.parseAllBytes&&t.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=t.length(),i}return n};function Ki(t,e,r,n){var i;Vn(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=vp(t,e);if(e-=i-t.length(),c!==void 0&&c>e){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=t.length(),f.remaining=e,f.requested=c,f}c=e}var u,l,h=(o&32)===32;if(h)if(u=[],c===void 0)for(;;){if(Vn(t,e,2),t.bytes(2)===String.fromCharCode(0,0)){t.getBytes(2),e-=2;break}i=t.length(),u.push(Ki(t,e,r+1,n)),e-=i-t.length()}else for(;c>0;)i=t.length(),u.push(Ki(t,c,r+1,n)),e-=i-t.length(),c-=i-t.length();if(u===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=t.bytes(c)),u===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var y=t.read,d=e,p=0;if(a===V.Type.BITSTRING&&(Vn(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var g={strict:!0,decodeBitStrings:!0},m=Ki(t,e,r+1,g),S=i-t.length();e-=S,a==V.Type.BITSTRING&&S++;var x=m.tagClass;S===c&&(x===V.Class.UNIVERSAL||x===V.Class.CONTEXT_SPECIFIC)&&(u=[m])}catch{}u===void 0&&(t.read=y,e=d)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=e}if(a===V.Type.BMPSTRING)for(u="";c>0;c-=2)Vn(t,e,2),u+=String.fromCharCode(t.getInt16()),e-=2;else u=t.getBytes(c),e-=c}var I=l===void 0?null:{bitStringContents:l};return V.create(s,a,h,u,I)}V.toDer=function(t){var e=wt.util.createBuffer(),r=t.tagClass|t.type,n=wt.util.createBuffer(),i=!1;if("bitStringContents"in t&&(i=!0,t.original&&(i=V.equals(t,t.original))),i)n.putBytes(t.bitStringContents);else if(t.composed){t.constructed?r|=32:n.putByte(0);for(var o=0;o<t.value.length;++o)t.value[o]!==void 0&&n.putBuffer(V.toDer(t.value[o]))}else if(t.type===V.Type.BMPSTRING)for(var o=0;o<t.value.length;++o)n.putInt16(t.value.charCodeAt(o));else t.type===V.Type.INTEGER&&t.value.length>1&&(t.value.charCodeAt(0)===0&&!(t.value.charCodeAt(1)&128)||t.value.charCodeAt(0)===255&&(t.value.charCodeAt(1)&128)===128)?n.putBytes(t.value.substr(1)):n.putBytes(t.value);if(e.putByte(r),n.length()<=127)e.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);e.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)e.putByte(a.charCodeAt(o))}return e.putBuffer(n),e};V.oidToDer=function(t){var e=t.split("."),r=wt.util.createBuffer();r.putByte(40*parseInt(e[0],10)+parseInt(e[1],10));for(var n,i,o,s,a=2;a<e.length;++a){n=!0,i=[],o=parseInt(e[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(t){var e;typeof t=="string"&&(t=wt.util.createBuffer(t));var r=t.getByte();e=Math.floor(r/40)+"."+r%40;for(var n=0;t.length()>0;)r=t.getByte(),n=n<<7,r&128?n+=r&127:(e+="."+(n+r),n=0);return e};V.utcTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(t.substr(2,2),10)-1,i=parseInt(t.substr(4,2),10),o=parseInt(t.substr(6,2),10),s=parseInt(t.substr(8,2),10),a=0;if(t.length>11){var c=t.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(t.substr(10,2),10),f+=2)}if(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,0),f&&(c=t.charAt(f),c==="+"||c==="-")){var u=parseInt(t.substr(f+1,2),10),l=parseInt(t.substr(f+4,2),10),h=u*60+l;h*=6e4,c==="+"?e.setTime(+e-h):e.setTime(+e+h)}return e};V.generalizedTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,4),10),n=parseInt(t.substr(4,2),10)-1,i=parseInt(t.substr(6,2),10),o=parseInt(t.substr(8,2),10),s=parseInt(t.substr(10,2),10),a=parseInt(t.substr(12,2),10),c=0,f=0,u=!1;t.charAt(t.length-1)==="Z"&&(u=!0);var l=t.length-5,h=t.charAt(l);if(h==="+"||h==="-"){var y=parseInt(t.substr(l+1,2),10),d=parseInt(t.substr(l+4,2),10);f=y*60+d,f*=6e4,h==="+"&&(f*=-1),u=!0}return t.charAt(14)==="."&&(c=parseFloat(t.substr(14),10)*1e3),u?(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,c),e.setTime(+e+f)):(e.setFullYear(r,n,i),e.setHours(o,s,a,c)),e};V.dateToUtcTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push((""+t.getUTCFullYear()).substr(2)),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};V.dateToGeneralizedTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push(""+t.getUTCFullYear()),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};V.integerToDer=function(t){var e=wt.util.createBuffer();if(t>=-128&&t<128)return e.putSignedInt(t,8);if(t>=-32768&&t<32768)return e.putSignedInt(t,16);if(t>=-8388608&&t<8388608)return e.putSignedInt(t,24);if(t>=-2147483648&&t<2147483648)return e.putSignedInt(t,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=t,r};V.derToInteger=function(t){typeof t=="string"&&(t=wt.util.createBuffer(t));var e=t.length()*8;if(e>32)throw new Error("Integer too large; max is 32-bits.");return t.getSignedInt(e)};V.validate=function(t,e,r,n){var i=!1;if((t.tagClass===e.tagClass||typeof e.tagClass>"u")&&(t.type===e.type||typeof e.type>"u"))if(t.constructed===e.constructed||typeof e.constructed>"u"){if(i=!0,e.value&&wt.util.isArray(e.value))for(var o=0,s=0;i&&s<e.value.length;++s)i=e.value[s].optional||!1,t.value[o]&&(i=V.validate(t.value[o],e.value[s],r,n),i?++o:e.value[s].optional&&(i=!0)),!i&&n&&n.push("["+e.name+'] Tag class "'+e.tagClass+'", type "'+e.type+'" expected value length "'+e.value.length+'", got "'+t.value.length+'"');if(i&&r&&(e.capture&&(r[e.capture]=t.value),e.captureAsn1&&(r[e.captureAsn1]=t),e.captureBitStringContents&&"bitStringContents"in t&&(r[e.captureBitStringContents]=t.bitStringContents),e.captureBitStringValue&&"bitStringContents"in t)){var a;if(t.bitStringContents.length<2)r[e.captureBitStringValue]="";else{var c=t.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[e.captureBitStringValue]=t.bitStringContents.slice(1)}}}else n&&n.push("["+e.name+'] Expected constructed "'+e.constructed+'", got "'+t.constructed+'"');else n&&(t.tagClass!==e.tagClass&&n.push("["+e.name+'] Expected tag class "'+e.tagClass+'", got "'+t.tagClass+'"'),t.type!==e.type&&n.push("["+e.name+'] Expected type "'+e.type+'", got "'+t.type+'"'));return i};var Bc=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
|
|
6
|
-
`);for(var i="",o=0;o<
|
|
7
|
-
`,n+=i+"Constructed: "+
|
|
8
|
-
`,t.composed){for(var s=0,a="",o=0;o<t.value.length;++o)t.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(t.value[o],e+1,r),o+1<t.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",t.type===V.Type.OID){var c=V.derToOid(t.value);n+=c,wt.pki&&wt.pki.oids&&c in wt.pki.oids&&(n+=" ("+wt.pki.oids[c]+") ")}if(t.type===V.Type.INTEGER)try{n+=V.derToInteger(t.value)}catch{n+="0x"+wt.util.bytesToHex(t.value)}else if(t.type===V.Type.BITSTRING){if(t.value.length>1?n+="0x"+wt.util.bytesToHex(t.value.slice(1)):n+="(none)",t.value.length>0){var f=t.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(t.type===V.Type.OCTETSTRING)Bc.test(t.value)||(n+="("+t.value+") "),n+="0x"+wt.util.bytesToHex(t.value);else if(t.type===V.Type.UTF8)try{n+=wt.util.decodeUtf8(t.value)}catch(u){if(u.message==="URI malformed")n+="0x"+wt.util.bytesToHex(t.value)+" (malformed UTF8)";else throw u}else t.type===V.Type.PRINTABLESTRING||t.type===V.Type.IA5String?n+=t.value:Bc.test(t.value)?n+="0x"+wt.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var xs=J((Hb,Cc)=>{var Ot=gt();Pt();Cc.exports=Ot.cipher=Ot.cipher||{};Ot.cipher.algorithms=Ot.cipher.algorithms||{};Ot.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ot.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Ot.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ot.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Ot.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Ot.cipher.algorithms[t]=e};Ot.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Ot.cipher.algorithms?Ot.cipher.algorithms[t]:null};var ms=Ot.cipher.BlockCipher=function(t){this.algorithm=t.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=t.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=t.decrypt,this.algorithm.initialize(t)};ms.prototype.start=function(t){t=t||{};var e={};for(var r in t)e[r]=t[r];e.decrypt=this._decrypt,this._finish=!1,this._input=Ot.util.createBuffer(),this.output=t.output||Ot.util.createBuffer(),this.mode.start(e)};ms.prototype.update=function(t){for(t&&this._input.putBuffer(t);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};ms.prototype.finish=function(t){t&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return t(this.blockSize,r,!1)},this.mode.unpad=function(r){return t(this.blockSize,r,!0)});var e={};return e.decrypt=this._decrypt,e.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,e)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,e))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,e))}});var vs=J((zb,Ic)=>{var Mt=gt();Pt();Mt.cipher=Mt.cipher||{};var it=Ic.exports=Mt.cipher.modes=Mt.cipher.modes||{};it.ecb=function(t){t=t||{},this.name="ECB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.ecb.prototype.start=function(t){};it.ecb.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};it.ecb.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};it.ecb.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};it.ecb.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};it.cbc=function(t){t=t||{},this.name="CBC",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.cbc.prototype.start=function(t){if(t.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in t)this._iv=Oi(t.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};it.cbc.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n]);this._prev=this._outBlock};it.cbc.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};it.cbc.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};it.cbc.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};it.cfb=function(t){t=t||{},this.name="CFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Oi(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.cfb.prototype.encrypt=function(t,e,r){var n=t.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]=t.getInt32()^this._outBlock[i],e.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]=t.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)t.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 e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.cfb.prototype.decrypt=function(t,e,r){var n=t.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]=t.getInt32(),e.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]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)t.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 e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb=function(t){t=t||{},this.name="OFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Oi(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ofb.prototype.encrypt=function(t,e,r){var n=t.length();if(t.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)e.putInt32(t.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(t.getInt32()^this._outBlock[i]);if(o>0)t.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 e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb.prototype.decrypt=it.ofb.prototype.encrypt;it.ctr=function(t){t=t||{},this.name="CTR",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Oi(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ctr.prototype.encrypt=function(t,e,r){var n=t.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)e.putInt32(t.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(t.getInt32()^this._outBlock[i]);if(o>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}Mi(this._inBlock)};it.ctr.prototype.decrypt=it.ctr.prototype.encrypt;it.gcm=function(t){t=t||{},this.name="GCM",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};it.gcm.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");var e=Mt.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=Mt.util.createBuffer(t.additionalData):r=Mt.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=Mt.util.createBuffer(t.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=e.length();if(n===12)this._j0=[e.getInt32(),e.getInt32(),e.getInt32(),1];else{for(this._j0=[0,0,0,0];e.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[e.getInt32(),e.getInt32(),e.getInt32(),e.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(bs(n*8)))}this._inBlock=this._j0.slice(0),Mi(this._inBlock),this._partialBytes=0,r=Mt.util.createBuffer(r),this._aDataLength=bs(r.length()*8);var i=r.length()%this.blockSize;for(i&&r.fillWithByte(0,this.blockSize-i),this._s=[0,0,0,0];r.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()])};it.gcm.prototype.encrypt=function(t,e,r){var n=t.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)e.putInt32(this._outBlock[i]^=t.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(t.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 t.read-=this.blockSize,e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Mi(this._inBlock)};it.gcm.prototype.decrypt=function(t,e,r){var n=t.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),Mi(this._inBlock),this._hashBlock[0]=t.getInt32(),this._hashBlock[1]=t.getInt32(),this._hashBlock[2]=t.getInt32(),this._hashBlock[3]=t.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};it.gcm.prototype.afterFinish=function(t,e){var r=!0;e.decrypt&&e.overflow&&t.truncate(this.blockSize-e.overflow),this.tag=Mt.util.createBuffer();var n=this._aDataLength.concat(bs(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)),e.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};it.gcm.prototype.multiply=function(t,e){for(var r=[0,0,0,0],n=e.slice(0),i=0;i<128;++i){var o=t[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};it.gcm.prototype.pow=function(t,e){for(var r=t[3]&1,n=3;n>0;--n)e[n]=t[n]>>>1|(t[n-1]&1)<<31;e[0]=t[0]>>>1,r&&(e[0]^=this._R)};it.gcm.prototype.tableMultiply=function(t){for(var e=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=t[n]>>>(7-r%8)*4&15,o=this._m[r][i];e[0]^=o[0],e[1]^=o[1],e[2]^=o[2],e[3]^=o[3]}return e};it.gcm.prototype.ghash=function(t,e,r){return e[0]^=r[0],e[1]^=r[1],e[2]^=r[2],e[3]^=r[3],this.tableMultiply(e)};it.gcm.prototype.generateHashTable=function(t,e){for(var r=8/e,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)*e;a[c]=1<<e-1<<f,o[s]=this.generateSubHashTable(this.multiply(a,t),e)}return o};it.gcm.prototype.generateSubHashTable=function(t,e){var r=1<<e,n=r>>>1,i=new Array(r);i[n]=t.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]=[t[0]^f[0],t[1]^f[1],t[2]^f[2],t[3]^f[3]]}return i};function Oi(t,e){if(typeof t=="string"&&(t=Mt.util.createBuffer(t)),Mt.util.isArray(t)&&t.length>4){var r=t;t=Mt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(t.length()<e)throw new Error("Invalid IV length; got "+t.length()+" bytes and expected "+e+" bytes.");if(!Mt.util.isArray(t)){for(var i=[],o=e/4,n=0;n<o;++n)i.push(t.getInt32());t=i}return t}function Mi(t){t[t.length-1]=t[t.length-1]+1&4294967295}function bs(t){return[t/4294967296|0,t&4294967295]}});var Bs=J((Gb,Rc)=>{var xt=gt();xs();vs();Pt();Rc.exports=xt.aes=xt.aes||{};xt.aes.startEncrypting=function(t,e,r,n){var i=Fi({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};xt.aes.createEncryptionCipher=function(t,e){return Fi({key:t,output:null,decrypt:!1,mode:e})};xt.aes.startDecrypting=function(t,e,r,n){var i=Fi({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};xt.aes.createDecryptionCipher=function(t,e){return Fi({key:t,output:null,decrypt:!0,mode:e})};xt.aes.Algorithm=function(t,e){Ss||_c();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return Es(r._w,n,i,!1)},decrypt:function(n,i){return Es(r._w,n,i,!0)}}}),r._init=!1};xt.aes.Algorithm.prototype.initialize=function(t){if(!this._init){var e=t.key,r;if(typeof e=="string"&&(e.length===16||e.length===24||e.length===32))e=xt.util.createBuffer(e);else if(xt.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=xt.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!xt.util.isArray(e)){r=e,e=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)e.push(r.getInt32())}}if(!xt.util.isArray(e)||!(e.length===4||e.length===6||e.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=Lc(e,t.decrypt&&!s),this._init=!0}};xt.aes._expandKey=function(t,e){return Ss||_c(),Lc(t,e)};xt.aes._updateBlock=Es;on("AES-ECB",xt.cipher.modes.ecb);on("AES-CBC",xt.cipher.modes.cbc);on("AES-CFB",xt.cipher.modes.cfb);on("AES-OFB",xt.cipher.modes.ofb);on("AES-CTR",xt.cipher.modes.ctr);on("AES-GCM",xt.cipher.modes.gcm);function on(t,e){var r=function(){return new xt.aes.Algorithm(t,e)};xt.cipher.registerAlgorithm(t,r)}var Ss=!1,nn=4,Qt,ws,Tc,Tr,ve;function _c(){Ss=!0,Tc=[0,1,2,4,8,16,32,64,128,27,54];for(var t=new Array(256),e=0;e<128;++e)t[e]=e<<1,t[e+128]=e+128<<1^283;Qt=new Array(256),ws=new Array(256),Tr=new Array(4),ve=new Array(4);for(var e=0;e<4;++e)Tr[e]=new Array(256),ve[e]=new Array(256);for(var r=0,n=0,i,o,s,a,c,f,u,e=0;e<256;++e){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Qt[r]=a,ws[a]=r,c=t[a],i=t[r],o=t[i],s=t[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)Tr[l][r]=f,ve[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=i^t[t[t[i^s]]],n^=t[t[n]])}}function Lc(t,e){for(var r=t.slice(0),n,i=1,o=r.length,s=o+6+1,a=nn*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Qt[n>>>16&255]<<24^Qt[n>>>8&255]<<16^Qt[n&255]<<8^Qt[n>>>24]^Tc[i]<<24,i++):o>6&&c%o===4&&(n=Qt[n>>>24]<<24^Qt[n>>>16&255]<<16^Qt[n>>>8&255]<<8^Qt[n&255]),r[c]=r[c-o]^n;if(e){var f,u=ve[0],l=ve[1],h=ve[2],y=ve[3],d=r.slice(0);a=r.length;for(var c=0,p=a-nn;c<a;c+=nn,p-=nn)if(c===0||c===a-nn)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<nn;++g)f=r[p+g],d[c+(3&-g)]=u[Qt[f>>>24]]^l[Qt[f>>>16&255]]^h[Qt[f>>>8&255]]^y[Qt[f&255]];r=d}return r}function Es(t,e,r,n){var i=t.length/4-1,o,s,a,c,f;n?(o=ve[0],s=ve[1],a=ve[2],c=ve[3],f=ws):(o=Tr[0],s=Tr[1],a=Tr[2],c=Tr[3],f=Qt);var u,l,h,y,d,p,g;u=e[0]^t[0],l=e[n?3:1]^t[1],h=e[2]^t[2],y=e[n?1:3]^t[3];for(var m=3,S=1;S<i;++S)d=o[u>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[y&255]^t[++m],p=o[l>>>24]^s[h>>>16&255]^a[y>>>8&255]^c[u&255]^t[++m],g=o[h>>>24]^s[y>>>16&255]^a[u>>>8&255]^c[l&255]^t[++m],y=o[y>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[h&255]^t[++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]^t[++m],r[n?3:1]=f[l>>>24]<<24^f[h>>>16&255]<<16^f[y>>>8&255]<<8^f[u&255]^t[++m],r[2]=f[h>>>24]<<24^f[y>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^t[++m],r[n?1:3]=f[y>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[h&255]^t[++m]}function Fi(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=xt.cipher.createDecipher(r,t.key):n=xt.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof xt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Pc=J((Wb,Dc)=>{var Bt=gt();xs();vs();Pt();Dc.exports=Bt.des=Bt.des||{};Bt.des.startEncrypting=function(t,e,r,n){var i=Vi({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};Bt.des.createEncryptionCipher=function(t,e){return Vi({key:t,output:null,decrypt:!1,mode:e})};Bt.des.startDecrypting=function(t,e,r,n){var i=Vi({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};Bt.des.createDecryptionCipher=function(t,e){return Vi({key:t,output:null,decrypt:!0,mode:e})};Bt.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return kc(r._keys,n,i,!1)},decrypt:function(n,i){return kc(r._keys,n,i,!0)}}}),r._init=!1};Bt.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=Bt.util.createBuffer(t.key);if(this.name.indexOf("3DES")===0&&e.length()!==24)throw new Error("Invalid Triple-DES key size: "+e.length()*8);this._keys=_p(e),this._init=!0}};_e("DES-ECB",Bt.cipher.modes.ecb);_e("DES-CBC",Bt.cipher.modes.cbc);_e("DES-CFB",Bt.cipher.modes.cfb);_e("DES-OFB",Bt.cipher.modes.ofb);_e("DES-CTR",Bt.cipher.modes.ctr);_e("3DES-ECB",Bt.cipher.modes.ecb);_e("3DES-CBC",Bt.cipher.modes.cbc);_e("3DES-CFB",Bt.cipher.modes.cfb);_e("3DES-OFB",Bt.cipher.modes.ofb);_e("3DES-CTR",Bt.cipher.modes.ctr);function _e(t,e){var r=function(){return new Bt.des.Algorithm(t,e)};Bt.cipher.registerAlgorithm(t,r)}var wp=[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],Ep=[-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],Sp=[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],Bp=[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],Ap=[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],Cp=[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],Ip=[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],Tp=[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 _p(t){for(var e=[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=t.length()>8?3:1,g=[],m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],S=0,x,I=0;I<p;I++){var B=t.getInt32(),E=t.getInt32();x=(B>>>4^E)&252645135,E^=x,B^=x<<4,x=(E>>>-16^B)&65535,B^=x,E^=x<<-16,x=(B>>>2^E)&858993459,E^=x,B^=x<<2,x=(E>>>-16^B)&65535,B^=x,E^=x<<-16,x=(B>>>1^E)&1431655765,E^=x,B^=x<<1,x=(E>>>8^B)&16711935,B^=x,E^=x<<8,x=(B>>>1^E)&1431655765,E^=x,B^=x<<1,x=B<<8|E>>>20&240,B=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=x;for(var L=0;L<m.length;++L){m[L]?(B=B<<2|B>>>26,E=E<<2|E>>>26):(B=B<<1|B>>>27,E=E<<1|E>>>27),B&=-15,E&=-15;var _=e[B>>>28]|r[B>>>24&15]|n[B>>>20&15]|i[B>>>16&15]|o[B>>>12&15]|s[B>>>8&15]|a[B>>>4&15],N=c[E>>>28]|f[E>>>24&15]|u[E>>>20&15]|l[E>>>16&15]|h[E>>>12&15]|y[E>>>8&15]|d[E>>>4&15];x=(N>>>16^_)&65535,g[S++]=_^x,g[S++]=N^x<<16}}return g}function kc(t,e,r,n){var i=t.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=e[0],c=e[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^t[h],d=(c>>>4|c<<28)^t[h+1];s=a,a=c,c=s^(Ep[y>>>24&63]|Bp[y>>>16&63]|Cp[y>>>8&63]|Tp[y&63]|wp[d>>>24&63]|Sp[d>>>16&63]|Ap[d>>>8&63]|Ip[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 Vi(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=Bt.cipher.createDecipher(r,t.key):n=Bt.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Bt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var _r=J(($b,Nc)=>{var qi=gt();Nc.exports=qi.md=qi.md||{};qi.md.algorithms=qi.md.algorithms||{}});var Kc=J((Yb,Uc)=>{var Xe=gt();_r();Pt();var Lp=Uc.exports=Xe.hmac=Xe.hmac||{};Lp.create=function(){var t=null,e=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 Xe.md.algorithms)e=Xe.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else e=o;if(s===null)s=t;else{if(typeof s=="string")s=Xe.util.createBuffer(s);else if(Xe.util.isArray(s)){var a=s;s=Xe.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var f=s.length();f>e.blockLength&&(e.start(),e.update(s.bytes()),s=e.digest()),r=Xe.util.createBuffer(),n=Xe.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<e.blockLength)for(var a=e.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);t=s,r=r.bytes(),n=n.bytes()}e.start(),e.update(r)},i.update=function(o){e.update(o)},i.getMac=function(){var o=e.digest().bytes();return e.start(),e.update(n),e.update(o),e.digest()},i.digest=i.getMac,i}});var Hi=J(()=>{});var Mc=J((Qb,Oc)=>{var jt=gt();Kc();_r();Pt();var Rp=jt.pkcs5=jt.pkcs5||{},Qe;jt.util.isNodejs&&!jt.options.usePureJavaScript&&(Qe=Hi());Oc.exports=jt.pbkdf2=Rp.pbkdf2=function(t,e,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),jt.util.isNodejs&&!jt.options.usePureJavaScript&&Qe.pbkdf2&&(i===null||typeof i!="object")&&(Qe.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),o?Qe.pbkdf2Sync.length===4?Qe.pbkdf2(t,e,r,n,function(x,I){if(x)return o(x);o(null,I.toString("binary"))}):Qe.pbkdf2(t,e,r,n,i,function(x,I){if(x)return o(x);o(null,I.toString("binary"))}):Qe.pbkdf2Sync.length===4?Qe.pbkdf2Sync(t,e,r,n).toString("binary"):Qe.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in jt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=jt.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=jt.hmac.create();u.start(i,t);var l="",h,y,d;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(e),u.update(jt.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=jt.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(e),u.update(jt.util.int32ToBytes(p)),h=d=u.digest().getBytes(),g=2,S()}function S(){if(g<=r)return u.start(null,null),u.update(d),y=u.digest().getBytes(),h=jt.util.xorBytes(h,y,s),d=y,++g,jt.util.setImmediate(S);l+=p<c?h:h.substr(0,f),++p,m()}m()}});var qc=J((jb,Vc)=>{var Gi=gt();Pt();var Fc=Vc.exports=Gi.pem=Gi.pem||{};Fc.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
|
|
9
|
-
`,n;if(
|
|
10
|
-
`),r+=
|
|
11
|
-
`,r+="-----END "+
|
|
12
|
-
`,r};
|
|
13
|
-
`;for(var o=0,s=-1,i=0;i<
|
|
14
|
-
`+
|
|
15
|
-
`+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function kp(t){return t.replace(/^\s+/,"")}});var Yc=J((Jb,$c)=>{var Le=gt();_r();Pt();var zc=$c.exports=Le.sha256=Le.sha256||{};Le.md.sha256=Le.md.algorithms.sha256=zc;zc.create=function(){Gc||Dp();var t=null,e=Le.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Le.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Le.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),Hc(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Le.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(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:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};Hc(l,r,i);var h=Le.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var As=null,Gc=!1,Wc=null;function Dp(){As=String.fromCharCode(128),As+=Le.util.fillString(String.fromCharCode(0),64),Wc=[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],Gc=!0}function Hc(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,m,S=r.length();S>=64;){for(f=0;f<16;++f)e[f]=r.getInt32();for(;f<64;++f)n=e[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[f]=n+e[f-7]+i+e[f-16]|0;for(u=t.h0,l=t.h1,h=t.h2,y=t.h3,d=t.h4,p=t.h5,g=t.h6,m=t.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+Wc[f]+e[f],i=o+c,m=g,g=p,p=d,d=y+n>>>0,y=h,h=l,l=u,u=n+i>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+y|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+g|0,t.h7=t.h7+m|0,S-=64}}});var Xc=J((tv,Zc)=>{var Re=gt();Pt();var Wi=null;Re.util.isNodejs&&!Re.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Wi=Hi());var Pp=Zc.exports=Re.prng=Re.prng||{};Pp.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(f,u){if(!u)return e.generateSync(f);var l=e.plugin.cipher,h=e.plugin.increment,y=e.plugin.formatKey,d=e.plugin.formatSeed,p=Re.util.createBuffer();e.key=null,g();function g(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return Re.util.nextTick(function(){o(g)});var S=l(e.key,e.seed);e.generated+=S.length,p.putBytes(S),e.key=y(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Re.util.setImmediate(g)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,y=e.plugin.formatSeed;e.key=null;for(var d=Re.util.createBuffer();d.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=u(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(u(e.key,l(e.seed))),e.seed=y(u(e.key,e.seed))}return d.getBytes(f)};function o(f){if(e.pools[0].messageLength>=32)return a(),f();var u=32-e.pools[0].messageLength<<5;e.seedFile(u,function(l,h){if(l)return f(l);e.collect(h),a(),f()})}function s(){if(e.pools[0].messageLength>=32)return a();var f=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(f)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var f=e.plugin.md.create();f.update(e.keyBytes);for(var u=1,l=0;l<32;++l)e.reseeds%u===0&&(f.update(e.pools[l].digest().getBytes()),e.pools[l].start()),u=u<<1;e.keyBytes=f.digest().getBytes(),f.start(),f.update(e.keyBytes);var h=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(f){var u=null,l=Re.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(B){return h.getRandomValues(B)});var y=Re.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(B){if(!(typeof QuotaExceededError<"u"&&B instanceof QuotaExceededError))throw B}}if(y.length()<f)for(var m,S,x,I=Math.floor(Math.random()*65536);y.length()<f;){S=16807*(I&65535),m=16807*(I>>16),S+=(m&32767)<<16,S+=m>>15,S=(S&2147483647)+(S>>31),I=S&4294967295;for(var g=0;g<3;++g)x=I>>>(g<<3),x^=Math.floor(Math.random()*256),y.putByte(x&255)}return y.getBytes(f)}return Wi?(e.seedFile=function(f,u){Wi.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},e.seedFileSync=function(f){return Wi.randomBytes(f).toString()}):(e.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},e.seedFileSync=c),e.collect=function(f){for(var u=f.length,l=0;l<u;++l)e.pools[e.pool].update(f.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(f,u){for(var l="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,h){function 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&&e.seedFile(h.forge.prng.needed,function(y,d){f.postMessage({forge:{prng:{err:y,bytes:d}}})})};f.addEventListener("message",u)}},e}});var Hn=J((ev,Cs)=>{var Ft=gt();Bs();Yc();Xc();Pt();(function(){if(Ft.random&&Ft.random.getBytes){Cs.exports=Ft.random;return}(function(t){var e={},r=new Array(4),n=Ft.util.createBuffer();e.formatKey=function(l){var h=Ft.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Ft.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=Ft.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return Ft.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=Ft.md.sha256;function i(){var l=Ft.prng.create(e);return l.getBytes=function(h,y){return l.generate(h,y)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=Ft.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ft.options.usePureJavaScript||!Ft.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ft.random)Ft.random=o;else for(var u in o)Ft.random[u]=o[u];Ft.random.createInstance=i,Cs.exports=Ft.random})(typeof jQuery<"u"?jQuery:null)})()});var tf=J((rv,Jc)=>{var te=gt();Pt();var Is=[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],Qc=[1,2,3,5],Np=function(t,e){return t<<e&65535|(t&65535)>>16-e},Up=function(t,e){return(t&65535)>>e|t<<16-e&65535};Jc.exports=te.rc2=te.rc2||{};te.rc2.expandKey=function(t,e){typeof t=="string"&&(t=te.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(Is[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Is[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Is[r.at(a+1)^r.at(a+o)]);return r};var jc=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(t=te.rc2.expandKey(t,e),f=0;f<64;f++)l.push(t.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=Np(d[f],Qc[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]=Up(d[f],Qc[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 S=0;S<d[m][0];S++)d[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},y=null;return y={start:function(d,p){d&&typeof d=="string"&&(d=te.util.createBuffer(d)),n=!1,i=te.util.createBuffer(),o=p||new te.util.createBuffer,s=d,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(),S=o.at(m-1);S>m?p=!1:o.truncate(S)}return p}},y};te.rc2.startEncrypting=function(t,e,r){var n=te.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};te.rc2.createEncryptionCipher=function(t,e){return jc(t,e,!0)};te.rc2.startDecrypting=function(t,e,r){var n=te.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};te.rc2.createDecryptionCipher=function(t,e){return jc(t,e,!1)}});var Zi=J((nv,ff)=>{var Ts=gt();ff.exports=Ts.jsbn=Ts.jsbn||{};var je,Kp=0xdeadbeefcafe,ef=(Kp&16777215)==15715070;function D(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}Ts.jsbn.BigInteger=D;function at(){return new D(null)}function Op(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Mp(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,f=this.data[t++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function rf(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,f=this.data[t++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(D.prototype.am=rf,je=28):ef&&navigator.appName=="Microsoft Internet Explorer"?(D.prototype.am=Mp,je=30):ef&&navigator.appName!="Netscape"?(D.prototype.am=Op,je=26):(D.prototype.am=rf,je=28);D.prototype.DB=je;D.prototype.DM=(1<<je)-1;D.prototype.DV=1<<je;var _s=52;D.prototype.FV=Math.pow(2,_s);D.prototype.F1=_s-je;D.prototype.F2=2*je-_s;var Fp="0123456789abcdefghijklmnopqrstuvwxyz",$i=new Array,sn,ue;sn="0".charCodeAt(0);for(ue=0;ue<=9;++ue)$i[sn++]=ue;sn="a".charCodeAt(0);for(ue=10;ue<36;++ue)$i[sn++]=ue;sn="A".charCodeAt(0);for(ue=10;ue<36;++ue)$i[sn++]=ue;function nf(t){return Fp.charAt(t)}function of(t,e){var r=$i[t.charCodeAt(e)];return r??-1}function Vp(t){for(var e=this.t-1;e>=0;--e)t.data[e]=this.data[e];t.t=this.t,t.s=this.s}function qp(t){this.t=1,this.s=t<0?-1:0,t>0?this.data[0]=t:t<-1?this.data[0]=t+this.DV:this.t=0}function pr(t){var e=at();return e.fromInt(t),e}function Hp(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=r==8?t[n]&255:of(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&D.ZERO.subTo(this,this)}function zp(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function Gp(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=nf(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=nf(n));return i?o:"0"}function Wp(){var t=at();return D.ZERO.subTo(this,t),t}function $p(){return this.s<0?this.negate():this}function Yp(t){var e=this.s-t.s;if(e!=0)return e;var r=this.t;if(e=r-t.t,e!=0)return this.s<0?-e:e;for(;--r>=0;)if((e=this.data[r]-t.data[r])!=0)return e;return 0}function Yi(t){var e=1,r;return(r=t>>>16)!=0&&(t=r,e+=16),(r=t>>8)!=0&&(t=r,e+=8),(r=t>>4)!=0&&(t=r,e+=4),(r=t>>2)!=0&&(t=r,e+=2),(r=t>>1)!=0&&(t=r,e+=1),e}function Zp(){return this.t<=0?0:this.DB*(this.t-1)+Yi(this.data[this.t-1]^this.s&this.DM)}function Xp(t,e){var r;for(r=this.t-1;r>=0;--r)e.data[r+t]=this.data[r];for(r=t-1;r>=0;--r)e.data[r]=0;e.t=this.t+t,e.s=this.s}function Qp(t,e){for(var r=t;r<this.t;++r)e.data[r-t]=this.data[r];e.t=Math.max(this.t-t,0),e.s=this.s}function jp(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function Jp(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function ty(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function ey(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&D.ZERO.subTo(e,e)}function ry(t){for(var e=this.abs(),r=t.t=2*e.t;--r>=0;)t.data[r]=0;for(r=0;r<e.t-1;++r){var n=e.am(r,e.data[r],t,2*r,0,1);(t.data[r+e.t]+=e.am(r+1,2*e.data[r],t,2*r+1,n,e.t-r-1))>=e.DV&&(t.data[r+e.t]-=e.DV,t.data[r+e.t+1]=1)}t.t>0&&(t.data[t.t-1]+=e.am(r,e.data[r],t,2*r,0,1)),t.s=0,t.clamp()}function ny(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=at());var o=at(),s=this.s,a=t.s,c=this.DB-Yi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,y=(1<<this.F1)/l,d=1<<this.F2,p=r.t,g=p-f,m=e??at();for(o.dlShiftTo(g,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),D.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--g>=0;){var S=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,S,r,g,0,f))<S)for(o.dlShiftTo(g,m),r.subTo(m,r);r.data[p]<--S;)r.subTo(m,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&D.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&D.ZERO.subTo(r,r)}}}function iy(t){var e=at();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(D.ZERO)>0&&t.subTo(e,e),e}function Lr(t){this.m=t}function oy(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function sy(t){return t}function ay(t){t.divRemTo(this.m,null,t)}function cy(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function fy(t,e){t.squareTo(e),this.reduce(e)}Lr.prototype.convert=oy;Lr.prototype.revert=sy;Lr.prototype.reduce=ay;Lr.prototype.mulTo=cy;Lr.prototype.sqrTo=fy;function uy(){if(this.t<1)return 0;var t=this.data[0];if(!(t&1))return 0;var e=t&3;return e=e*(2-(t&15)*e)&15,e=e*(2-(t&255)*e)&255,e=e*(2-((t&65535)*e&65535))&65535,e=e*(2-t*e%this.DV)%this.DV,e>0?this.DV-e:-e}function Rr(t){this.m=t,this.mp=t.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}function ly(t){var e=at();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(D.ZERO)>0&&this.m.subTo(e,e),e}function hy(t){var e=at();return t.copyTo(e),this.reduce(e),e}function dy(t){for(;t.t<=this.mt2;)t.data[t.t++]=0;for(var e=0;e<this.m.t;++e){var r=t.data[e]&32767,n=r*this.mpl+((r*this.mph+(t.data[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(r=e+this.m.t,t.data[r]+=this.m.am(0,n,t,e,0,this.m.t);t.data[r]>=t.DV;)t.data[r]-=t.DV,t.data[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)}function py(t,e){t.squareTo(e),this.reduce(e)}function yy(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Rr.prototype.convert=ly;Rr.prototype.revert=hy;Rr.prototype.reduce=dy;Rr.prototype.mulTo=yy;Rr.prototype.sqrTo=py;function gy(){return(this.t>0?this.data[0]&1:this.s)==0}function my(t,e){if(t>4294967295||t<1)return D.ONE;var r=at(),n=at(),i=e.convert(this),o=Yi(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function xy(t,e){var r;return t<256||e.isEven()?r=new Lr(e):r=new Rr(e),this.exp(t,r)}D.prototype.copyTo=Vp;D.prototype.fromInt=qp;D.prototype.fromString=Hp;D.prototype.clamp=zp;D.prototype.dlShiftTo=Xp;D.prototype.drShiftTo=Qp;D.prototype.lShiftTo=jp;D.prototype.rShiftTo=Jp;D.prototype.subTo=ty;D.prototype.multiplyTo=ey;D.prototype.squareTo=ry;D.prototype.divRemTo=ny;D.prototype.invDigit=uy;D.prototype.isEven=gy;D.prototype.exp=my;D.prototype.toString=Gp;D.prototype.negate=Wp;D.prototype.abs=$p;D.prototype.compareTo=Yp;D.prototype.bitLength=Zp;D.prototype.mod=iy;D.prototype.modPowInt=xy;D.ZERO=pr(0);D.ONE=pr(1);function by(){var t=at();return this.copyTo(t),t}function vy(){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 wy(){return this.t==0?this.s:this.data[0]<<24>>24}function Ey(){return this.t==0?this.s:this.data[0]<<16>>16}function Sy(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function By(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Ay(t){if(t==null&&(t=10),this.signum()==0||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=pr(r),i=at(),o=at(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Cy(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=of(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&D.ZERO.subTo(this,this)}function Iy(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(D.ONE.shiftLeft(t-1),Ls,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(D.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function Ty(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function _y(t){return this.compareTo(t)==0}function Ly(t){return this.compareTo(t)<0?this:t}function Ry(t){return this.compareTo(t)>0?this:t}function ky(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function Dy(t,e){return t&e}function Py(t){var e=at();return this.bitwiseTo(t,Dy,e),e}function Ls(t,e){return t|e}function Ny(t){var e=at();return this.bitwiseTo(t,Ls,e),e}function sf(t,e){return t^e}function Uy(t){var e=at();return this.bitwiseTo(t,sf,e),e}function af(t,e){return t&~e}function Ky(t){var e=at();return this.bitwiseTo(t,af,e),e}function Oy(){for(var t=at(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function My(t){var e=at();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function Fy(t){var e=at();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function Vy(t){if(t==0)return-1;var e=0;return t&65535||(t>>=16,e+=16),t&255||(t>>=8,e+=8),t&15||(t>>=4,e+=4),t&3||(t>>=2,e+=2),t&1||++e,e}function qy(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+Vy(this.data[t]);return this.s<0?this.t*this.DB:-1}function Hy(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function zy(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=Hy(this.data[r]^e);return t}function Gy(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function Wy(t,e){var r=D.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function $y(t){return this.changeBit(t,Ls)}function Yy(t){return this.changeBit(t,af)}function Zy(t){return this.changeBit(t,sf)}function Xy(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function Qy(t){var e=at();return this.addTo(t,e),e}function jy(t){var e=at();return this.subTo(t,e),e}function Jy(t){var e=at();return this.multiplyTo(t,e),e}function t1(t){var e=at();return this.divRemTo(t,e,null),e}function e1(t){var e=at();return this.divRemTo(t,null,e),e}function r1(t){var e=at(),r=at();return this.divRemTo(t,e,r),new Array(e,r)}function n1(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function i1(t,e){if(t!=0){for(;this.t<=e;)this.data[this.t++]=0;for(this.data[e]+=t;this.data[e]>=this.DV;)this.data[e]-=this.DV,++e>=this.t&&(this.data[this.t++]=0),++this.data[e]}}function zn(){}function cf(t){return t}function o1(t,e,r){t.multiplyTo(e,r)}function s1(t,e){t.squareTo(e)}zn.prototype.convert=cf;zn.prototype.revert=cf;zn.prototype.mulTo=o1;zn.prototype.sqrTo=s1;function a1(t){return this.exp(t,new zn)}function c1(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function f1(t,e,r){--e;var n=r.t=this.t+t.t-e;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(e-this.t,0);n<t.t;++n)r.data[this.t+n-e]=this.am(e-n,t.data[n],r,0,0,this.t+n-e);r.clamp(),r.drShiftTo(1,r)}function an(t){this.r2=at(),this.q3=at(),D.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function u1(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=at();return t.copyTo(e),this.reduce(e),e}function l1(t){return t}function h1(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)}function d1(t,e){t.squareTo(e),this.reduce(e)}function p1(t,e,r){t.multiplyTo(e,r),this.reduce(r)}an.prototype.convert=u1;an.prototype.revert=l1;an.prototype.reduce=h1;an.prototype.mulTo=p1;an.prototype.sqrTo=d1;function y1(t,e){var r=t.bitLength(),n,i=pr(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new Lr(e):e.isEven()?o=new an(e):o=new Rr(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=at();for(o.sqrTo(s[1],u);a<=f;)s[a]=at(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,h,y=!0,d=at(),p;for(r=Yi(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&f:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),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&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function g1(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function m1(t){if(t<=0)return 0;var e=this.DV%t,r=this.s<0?t-1:0;if(this.t>0)if(e==0)r=this.data[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this.data[n])%t;return r}function x1(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return D.ZERO;for(var r=t.clone(),n=this.clone(),i=pr(1),o=pr(0),s=pr(0),a=pr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(D.ONE)!=0)return D.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var we=[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],b1=(1<<26)/we[we.length-1];function v1(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=we[we.length-1]){for(e=0;e<we.length;++e)if(r.data[0]==we[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<we.length;){for(var n=we[e],i=e+1;i<we.length&&n<b1;)n*=we[i++];for(n=r.modInt(n);e<i;)if(n%we[e++]==0)return!1}return r.millerRabin(t)}function w1(t){var e=this.subtract(D.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=E1(),o,s=0;s<t;++s){do o=new D(this.bitLength(),i);while(o.compareTo(D.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(D.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(D.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function E1(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}D.prototype.chunkSize=Sy;D.prototype.toRadix=Ay;D.prototype.fromRadix=Cy;D.prototype.fromNumber=Iy;D.prototype.bitwiseTo=ky;D.prototype.changeBit=Wy;D.prototype.addTo=Xy;D.prototype.dMultiply=n1;D.prototype.dAddOffset=i1;D.prototype.multiplyLowerTo=c1;D.prototype.multiplyUpperTo=f1;D.prototype.modInt=m1;D.prototype.millerRabin=w1;D.prototype.clone=by;D.prototype.intValue=vy;D.prototype.byteValue=wy;D.prototype.shortValue=Ey;D.prototype.signum=By;D.prototype.toByteArray=Ty;D.prototype.equals=_y;D.prototype.min=Ly;D.prototype.max=Ry;D.prototype.and=Py;D.prototype.or=Ny;D.prototype.xor=Uy;D.prototype.andNot=Ky;D.prototype.not=Oy;D.prototype.shiftLeft=My;D.prototype.shiftRight=Fy;D.prototype.getLowestSetBit=qy;D.prototype.bitCount=zy;D.prototype.testBit=Gy;D.prototype.setBit=$y;D.prototype.clearBit=Yy;D.prototype.flipBit=Zy;D.prototype.add=Qy;D.prototype.subtract=jy;D.prototype.multiply=Jy;D.prototype.divide=t1;D.prototype.remainder=e1;D.prototype.divideAndRemainder=r1;D.prototype.modPow=y1;D.prototype.modInverse=x1;D.prototype.pow=a1;D.prototype.gcd=g1;D.prototype.isProbablePrime=v1});var pf=J((iv,df)=>{var ke=gt();_r();Pt();var lf=df.exports=ke.sha1=ke.sha1||{};ke.md.sha1=ke.md.algorithms.sha1=lf;lf.create=function(){hf||S1();var t=null,e=ke.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=ke.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=ke.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),uf(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=ke.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Rs.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};uf(l,r,i);var h=ke.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var Rs=null,hf=!1;function S1(){Rs=String.fromCharCode(128),Rs+=ke.util.fillString(String.fromCharCode(0),64),hf=!0}function uf(t,e,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,u=0;u<16;++u)n=r.getInt32(),e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var mf=J((ov,gf)=>{var De=gt();Pt();Hn();pf();var yf=gf.exports=De.pkcs1=De.pkcs1||{};yf.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=De.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=e.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",h=c-e.length,y=0;y<h;y++)l+="\0";var d=u.getBytes()+l+""+e;if(!i)i=De.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=i.length,f.digestLength=o.digestLength,f}var p=Xi(i,a-o.digestLength-1,s),g=De.util.xorBytes(d,p,d.length),m=Xi(g,o.digestLength,s),S=De.util.xorBytes(i,m,i.length);return"\0"+S+g};yf.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var g=new Error("RSAES-OAEP encoded message length is invalid.");throw g.length=e.length,g.expectedLength=s,g}if(i===void 0?i=De.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),f=e.substring(1,i.digestLength+1),u=e.substring(1+i.digestLength),l=Xi(u,i.digestLength,o),h=De.util.xorBytes(f,l,f.length),y=Xi(h,s-i.digestLength-1,o),d=De.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 S=1,x=i.digestLength,I=i.digestLength;I<d.length;I++){var B=d.charCodeAt(I),E=B&1^1,L=S?65534:0;g|=B&L,S=S&E,x+=S}if(g||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function Xi(t,e,r){r||(r=De.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var xf=J((sv,ks)=>{var yr=gt();Pt();Zi();Hn();(function(){if(yr.prime){ks.exports=yr.prime;return}var t=ks.exports=yr.prime=yr.prime||{},e=yr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,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||yr.random,g={nextBytes:function(m){for(var S=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=S.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,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 S=10;"maxBlockTime"in y&&(S=y.maxBlockTime),a(p,l,h,g,m,S,d)}function a(l,h,y,d,p,g,m){var S=+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-S<g);yr.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,S=m*30/8,x=y.workerScript||"forge/prime.worker.js";if(g===-1)return yr.util.estimateCores(function(B,E){B&&(E=2),g=E-1,I()});I();function I(){g=Math.max(1,g);for(var B=[],E=0;E<g;++E)B[E]=new Worker(x);for(var L=g,E=0;E<g;++E)B[E].addEventListener("message",N);var _=!1;function N(M){if(!_){--L;var K=M.data;if(K.found){for(var F=0;F<B.length;++F)B[F].terminate();return _=!0,d(null,new e(K.prime,16))}p.bitLength()>l&&(p=f(l,h));var H=p.toString(16);M.target.postMessage({hex:H,workLoad:m}),p.dAddOffset(S,0)}}}}function f(l,h){var y=new e(l,h),d=l-1;return y.testBit(d)||y.bitwiseTo(e.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 ji=J((av,Af)=>{var W=gt();qn();Zi();Ui();mf();xf();Hn();Pt();typeof st>"u"&&(st=W.jsbn.BigInteger);var st,Ds=W.util.isNodejs?Hi():null,w=W.asn1,le=W.util;W.pki=W.pki||{};Af.exports=W.pki.rsa=W.rsa=W.rsa||{};var Q=W.pki,B1=[6,4,2,4,2,4,6,2],A1={name:"PrivateKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},C1={name:"RSAPrivateKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},I1={name:"RSAPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:w.Class.UNIVERSAL,type:w.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},T1=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},_1={name:"DigestInfo",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:w.Class.UNIVERSAL,type:w.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:w.Class.UNIVERSAL,type:w.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:w.Class.UNIVERSAL,type:w.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:w.Class.UNIVERSAL,type:w.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},L1=function(t){var e;if(t.algorithm in Q.oids)e=Q.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=w.oidToDer(e).getBytes(),i=w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[]),o=w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[]);o.value.push(w.create(w.Class.UNIVERSAL,w.Type.OID,!1,n)),o.value.push(w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,""));var s=w.create(w.Class.UNIVERSAL,w.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),w.toDer(i).getBytes()},Sf=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(st.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(st.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new st(W.util.bytesToHex(W.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(st.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};Q.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=Bf(t,e,r)):(i=W.util.createBuffer(),i.putBytes(t));for(var s=new st(i.toHex(),16),a=Sf(s,e,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new st(W.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Sf(s,e,r),c=a.toString(16),f=W.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),n!==!1?Qi(f.getBytes(),e,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||W.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:t,rng:i,eInt:e||65537,e:new st(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new st(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,f=c-1;t.pqState===0?(t.num=new st(c,t.rng),t.num.testBit(f)||t.num.bitwiseTo(st.ONE.shiftLeft(f),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(k1(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(B1[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(st.ONE),t.q1=t.q.subtract(st.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(st.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var u=t.e.modInverse(t.phi);t.keys={privateKey:Q.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:Q.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};Q.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(bf("generateKeyPair"))return Ds.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:Q.privateKeyFromPem(f),publicKey:Q.publicKeyFromPem(c)})});if(vf("generateKey")&&vf("exportKey"))return le.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Ef(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return le.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(w.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(wf("generateKey")&&wf("exportKey")){var i=le.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Ef(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=le.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=Q.privateKeyFromAsn1(w.fromDer(W.util.createBuffer(l)));n(null,{privateKey:h,publicKey:Q.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(bf("generateKeyPairSync")){var o=Ds.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:Q.privateKeyFromPem(o.privateKey),publicKey:Q.publicKeyFromPem(o.publicKey)}}}var s=Q.rsa.createKeyPairGenerationState(t,e,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;R1(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return Bf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=Qi(f,r,!0);var u=w.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!w.validate(u,_1,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=w.derToOid(l.algorithmIdentifier);if(!(d===W.oids.md2||d===W.oids.md5||d===W.oids.sha1||d===W.oids.sha224||d===W.oids.sha256||d===W.oids.sha384||d===W.oids.sha512||d===W.oids["sha512-224"]||d===W.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=d,y}if((d===W.oids.md2||d===W.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Qi(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var h=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Qi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(y,d){return W.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:L1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(h,c,l)},c};Q.wrapRsaPrivateKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,w.integerToDer(0).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.OID,!1,w.oidToDer(Q.oids.rsaEncryption).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,"")]),w.create(w.Class.UNIVERSAL,w.Type.OCTETSTRING,!1,w.toDer(t).getBytes())])};Q.privateKeyFromAsn1=function(t){var e={},r=[];if(w.validate(t,A1,e,r)&&(t=w.fromDer(W.util.createBuffer(e.privateKey))),e={},r=[],!w.validate(t,C1,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(e.privateKeyModulus).toHex(),o=W.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(e.privateKeyPrime1).toHex(),c=W.util.createBuffer(e.privateKeyPrime2).toHex(),f=W.util.createBuffer(e.privateKeyExponent1).toHex(),u=W.util.createBuffer(e.privateKeyExponent2).toHex(),l=W.util.createBuffer(e.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new st(i,16),new st(o,16),new st(s,16),new st(a,16),new st(c,16),new st(f,16),new st(u,16),new st(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,w.integerToDer(0).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.n)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.e)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.d)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.p)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.q)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.dP)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.dQ)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.qInv))])};Q.publicKeyFromAsn1=function(t){var e={},r=[];if(w.validate(t,T1,e,r)){var n=w.derToOid(e.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!w.validate(t,I1,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(e.publicKeyModulus).toHex(),s=W.util.createBuffer(e.publicKeyExponent).toHex();return Q.setRsaPublicKey(new st(o,16),new st(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.OID,!1,w.oidToDer(Q.oids.rsaEncryption).getBytes()),w.create(w.Class.UNIVERSAL,w.Type.NULL,!1,"")]),w.create(w.Class.UNIVERSAL,w.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(t)])])};Q.publicKeyToRSAPublicKey=function(t){return w.create(w.Class.UNIVERSAL,w.Type.SEQUENCE,!0,[w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.n)),w.create(w.Class.UNIVERSAL,w.Type.INTEGER,!1,Pe(t.e))])};function Bf(t,e,r){var n=W.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=W.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(t),n}function Qi(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=W.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function R1(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(t.q=c,t.p.compareTo(t.q)<0){var f=t.p;t.p=t.q,t.q=f}if(t.p.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)!==0){t.p=null,i();return}if(t.q.subtract(st.ONE).gcd(t.e).compareTo(st.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(st.ONE),t.q1=t.q.subtract(st.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(st.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var u=t.e.modInverse(t.phi);t.keys={privateKey:Q.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:Q.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Pe(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=W.util.hexToBytes(e);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function k1(t){return t<=100?27:t<=150?18:t<=200?15:t<=250?12:t<=300?9:t<=350?8:t<=400?7:t<=500?6:t<=600?5:t<=800?4:t<=1250?3:2}function bf(t){return W.util.isNodejs&&typeof Ds[t]=="function"}function vf(t){return typeof le.globalScope<"u"&&typeof le.globalScope.crypto=="object"&&typeof le.globalScope.crypto.subtle=="object"&&typeof le.globalScope.crypto.subtle[t]=="function"}function wf(t){return typeof le.globalScope<"u"&&typeof le.globalScope.msCrypto=="object"&&typeof le.globalScope.msCrypto.subtle=="object"&&typeof le.globalScope.msCrypto.subtle[t]=="function"}function Ef(t){for(var e=W.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var Rf=J((cv,Lf)=>{var z=gt();Bs();qn();Pc();_r();Ui();Mc();qc();Hn();tf();ji();Pt();typeof Cf>"u"&&(Cf=z.jsbn.BigInteger);var Cf,C=z.asn1,et=z.pki=z.pki||{};Lf.exports=et.pbe=z.pbe=z.pbe||{};var kr=et.oids,D1={name:"EncryptedPrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},P1={name:"PBES2Algorithms",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},N1={name:"pkcs-12PbeParams",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"iterations"}]};et.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=z.random.getBytesSync(r.saltSize),i=r.count,o=C.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=kr["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=kr["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=kr["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=kr.desCBC,l=z.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var y="hmacWith"+r.prfAlgorithm.toUpperCase(),d=_f(y),p=z.pkcs5.pbkdf2(e,n,i,s,d),g=z.random.getBytesSync(f),m=l(p);m.start(g),m.update(C.toDer(t)),m.finish(),c=m.output.getBytes();var S=U1(n,o,s,y);a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr.pkcs5PBES2).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr.pkcs5PBKDF2).getBytes()),S]),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(u).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,g)])])])}else if(r.algorithm==="3des"){s=24;var x=new z.util.ByteBuffer(n),p=et.pbe.generatePkcs12Key(e,x,1,i,s),g=et.pbe.generatePkcs12Key(e,x,2,i,s),m=z.des.createEncryptionCipher(p);m.start(g),m.update(C.toDer(t)),m.finish(),c=m.output.getBytes(),a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(kr["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,n),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,o.getBytes())])])}else{var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var I=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[a,C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,c)]);return I};et.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!C.validate(t,D1,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=C.derToOid(n.encryptionOid),a=et.pbe.getCipher(s,n.encryptionParams,e),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=C.fromDer(a.output)),r};et.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:C.toDer(t).getBytes()};return z.pem.encode(r,{maxline:e})};et.encryptedPrivateKeyFromPem=function(t){var e=z.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return C.fromDer(e.body)};et.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=et.wrapRsaPrivateKey(et.privateKeyToAsn1(t));return n=et.encryptPrivateKeyInfo(n,e,r),et.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=z.pbe.opensslDeriveBytes(e,o.substr(0,8),s),u=a(f);u.start(o),u.update(C.toDer(et.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:z.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return z.pem.encode(l)};et.decryptRsaPrivateKey=function(t,e){var r=null,n=z.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(e,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(z.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=et.decryptPrivateKeyInfo(C.fromDer(r),e):r=C.fromDer(r),r!==null&&(r=et.privateKeyFromAsn1(r)),r};et.pbe.generatePkcs12Key=function(t,e,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),y=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(y/f),g=new z.util.ByteBuffer;for(a=0;a<p;a++)g.putByte(e.at(a%y));var m=f*Math.ceil(h/f),S=new z.util.ByteBuffer;for(a=0;a<m;a++)S.putByte(l.at(a%h));var x=g;x.putBuffer(S);for(var I=Math.ceil(i/c),B=1;B<=I;B++){var E=new z.util.ByteBuffer;E.putBytes(d.bytes()),E.putBytes(x.bytes());for(var L=0;L<n;L++)o.start(),o.update(E.getBytes()),E=o.digest();var _=new z.util.ByteBuffer;for(a=0;a<f;a++)_.putByte(E.at(a%c));var N=Math.ceil(y/f)+Math.ceil(h/f),M=new z.util.ByteBuffer;for(s=0;s<N;s++){var K=new z.util.ByteBuffer(x.getBytes(f)),F=511;for(a=_.length()-1;a>=0;a--)F=F>>8,F+=_.at(a)+K.at(a),K.setAt(a,F&255);M.putBuffer(K)}x=M,u.putBuffer(E)}return u.truncate(u.length()-i),u};et.pbe.getCipher=function(t,e,r){switch(t){case et.oids.pkcs5PBES2:return et.pbe.getCipherForPBES2(t,e,r);case et.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case et.oids["pbewithSHAAnd40BitRC2-CBC"]:return et.pbe.getCipherForPKCS12PBE(t,e,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=t,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};et.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!C.validate(e,P1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=C.derToOid(n.kdfOid),t!==et.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}if(t=C.derToOid(n.encOid),t!==et.oids["aes128-CBC"]&&t!==et.oids["aes192-CBC"]&&t!==et.oids["aes256-CBC"]&&t!==et.oids["des-EDE3-CBC"]&&t!==et.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(et.oids[t]){case"aes128-CBC":c=16,f=z.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=z.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=z.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=z.des.createDecryptionCipher;break;case"desCBC":c=8,f=z.des.createDecryptionCipher;break}var u=Tf(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,y=f(l);return y.start(h),y};et.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!C.validate(e,N1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=z.util.createBuffer(n.salt),a=z.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case et.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=z.des.startDecrypting;break;case et.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,g){var m=z.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=t,o}var l=Tf(n.prfOid),h=et.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=et.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,y)};et.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[If(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(If(n,i[s-1]+t+e));return i.join("").substr(0,r)};function If(t,e){return t.start().update(e).digest().getBytes()}function Tf(t){var e;if(!t)e="hmacWithSHA1";else if(e=et.oids[C.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return _f(e)}function _f(t){var e=z.md;switch(t){case"hmacWithSHA224":e=z.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function U1(t,e,r,n){var i=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,t),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,z.util.hexToBytes(r.toString(16))),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(et.oids[n]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")])),i}});var iu=J((nw,nu)=>{"use strict";nu.exports=qg;function qg(t,e){for(var r=new Array(arguments.length-1),n=0,i=2,o=!0;i<arguments.length;)r[n++]=arguments[i++];return new Promise(function(a,c){r[n]=function(u){if(o)if(o=!1,u)c(u);else{for(var l=new Array(arguments.length-1),h=0;h<l.length;)l[h++]=arguments[h];a.apply(null,l)}};try{t.apply(e||null,r)}catch(f){o&&(o=!1,c(f))}})}});var cu=J(au=>{"use strict";var ro=au;ro.length=function(e){var r=e.length;if(!r)return 0;for(var n=0;--r%4>1&&e.charAt(r)==="=";)++n;return Math.ceil(e.length*3)/4-n};var pn=new Array(64),su=new Array(123);for(Ae=0;Ae<64;)su[pn[Ae]=Ae<26?Ae+65:Ae<52?Ae+71:Ae<62?Ae-4:Ae-59|43]=Ae++;var Ae;ro.encode=function(e,r,n){for(var i=null,o=[],s=0,a=0,c;r<n;){var f=e[r++];switch(a){case 0:o[s++]=pn[f>>2],c=(f&3)<<4,a=1;break;case 1:o[s++]=pn[c|f>>4],c=(f&15)<<2,a=2;break;case 2:o[s++]=pn[c|f>>6],o[s++]=pn[f&63],a=0;break}s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),s=0)}return a&&(o[s++]=pn[c],o[s++]=61,a===1&&(o[s++]=61)),i?(s&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))};var ou="invalid encoding";ro.decode=function(e,r,n){for(var i=n,o=0,s,a=0;a<e.length;){var c=e.charCodeAt(a++);if(c===61&&o>1)break;if((c=su[c])===void 0)throw Error(ou);switch(o){case 0:s=c,o=1;break;case 1:r[n++]=s<<2|(c&48)>>4,s=c,o=2;break;case 2:r[n++]=(s&15)<<4|(c&60)>>2,s=c,o=3;break;case 3:r[n++]=(s&3)<<6|c,o=0;break}}if(o===1)throw Error(ou);return n-i};ro.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}});var uu=J((ow,fu)=>{"use strict";fu.exports=no;function no(){this._listeners={}}no.prototype.on=function(e,r,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:r,ctx:n||this}),this};no.prototype.off=function(e,r){if(e===void 0)this._listeners={};else if(r===void 0)this._listeners[e]=[];else for(var n=this._listeners[e],i=0;i<n.length;)n[i].fn===r?n.splice(i,1):++i;return this};no.prototype.emit=function(e){var r=this._listeners[e];if(r){for(var n=[],i=1;i<arguments.length;)n.push(arguments[i++]);for(i=0;i<r.length;)r[i].fn.apply(r[i++].ctx,n)}return this}});var mu=J((sw,gu)=>{"use strict";gu.exports=lu(lu);function lu(t){return typeof Float32Array<"u"?function(){var e=new Float32Array([-0]),r=new Uint8Array(e.buffer),n=r[3]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3]}function o(c,f,u){e[0]=c,f[u]=r[3],f[u+1]=r[2],f[u+2]=r[1],f[u+3]=r[0]}t.writeFloatLE=n?i:o,t.writeFloatBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],e[0]}function a(c,f){return r[3]=c[f],r[2]=c[f+1],r[1]=c[f+2],r[0]=c[f+3],e[0]}t.readFloatLE=n?s:a,t.readFloatBE=n?a:s}():function(){function e(n,i,o,s){var a=i<0?1:0;if(a&&(i=-i),i===0)n(1/i>0?0:2147483648,o,s);else if(isNaN(i))n(2143289344,o,s);else if(i>34028234663852886e22)n((a<<31|2139095040)>>>0,o,s);else if(i<11754943508222875e-54)n((a<<31|Math.round(i/1401298464324817e-60))>>>0,o,s);else{var c=Math.floor(Math.log(i)/Math.LN2),f=Math.round(i*Math.pow(2,-c)*8388608)&8388607;n((a<<31|c+127<<23|f)>>>0,o,s)}}t.writeFloatLE=e.bind(null,hu),t.writeFloatBE=e.bind(null,du);function r(n,i,o){var s=n(i,o),a=(s>>31)*2+1,c=s>>>23&255,f=s&8388607;return c===255?f?NaN:a*(1/0):c===0?a*1401298464324817e-60*f:a*Math.pow(2,c-150)*(f+8388608)}t.readFloatLE=r.bind(null,pu),t.readFloatBE=r.bind(null,yu)}(),typeof Float64Array<"u"?function(){var e=new Float64Array([-0]),r=new Uint8Array(e.buffer),n=r[7]===128;function i(c,f,u){e[0]=c,f[u]=r[0],f[u+1]=r[1],f[u+2]=r[2],f[u+3]=r[3],f[u+4]=r[4],f[u+5]=r[5],f[u+6]=r[6],f[u+7]=r[7]}function o(c,f,u){e[0]=c,f[u]=r[7],f[u+1]=r[6],f[u+2]=r[5],f[u+3]=r[4],f[u+4]=r[3],f[u+5]=r[2],f[u+6]=r[1],f[u+7]=r[0]}t.writeDoubleLE=n?i:o,t.writeDoubleBE=n?o:i;function s(c,f){return r[0]=c[f],r[1]=c[f+1],r[2]=c[f+2],r[3]=c[f+3],r[4]=c[f+4],r[5]=c[f+5],r[6]=c[f+6],r[7]=c[f+7],e[0]}function a(c,f){return r[7]=c[f],r[6]=c[f+1],r[5]=c[f+2],r[4]=c[f+3],r[3]=c[f+4],r[2]=c[f+5],r[1]=c[f+6],r[0]=c[f+7],e[0]}t.readDoubleLE=n?s:a,t.readDoubleBE=n?a:s}():function(){function e(n,i,o,s,a,c){var f=s<0?1:0;if(f&&(s=-s),s===0)n(0,a,c+i),n(1/s>0?0:2147483648,a,c+o);else if(isNaN(s))n(0,a,c+i),n(2146959360,a,c+o);else if(s>17976931348623157e292)n(0,a,c+i),n((f<<31|2146435072)>>>0,a,c+o);else{var u;if(s<22250738585072014e-324)u=s/5e-324,n(u>>>0,a,c+i),n((f<<31|u/4294967296)>>>0,a,c+o);else{var l=Math.floor(Math.log(s)/Math.LN2);l===1024&&(l=1023),u=s*Math.pow(2,-l),n(u*4503599627370496>>>0,a,c+i),n((f<<31|l+1023<<20|u*1048576&1048575)>>>0,a,c+o)}}}t.writeDoubleLE=e.bind(null,hu,0,4),t.writeDoubleBE=e.bind(null,du,4,0);function r(n,i,o,s,a){var c=n(s,a+i),f=n(s,a+o),u=(f>>31)*2+1,l=f>>>20&2047,h=4294967296*(f&1048575)+c;return l===2047?h?NaN:u*(1/0):l===0?u*5e-324*h:u*Math.pow(2,l-1075)*(h+4503599627370496)}t.readDoubleLE=r.bind(null,pu,0,4),t.readDoubleBE=r.bind(null,yu,4,0)}(),t}function hu(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}function du(t,e,r){e[r]=t>>>24,e[r+1]=t>>>16&255,e[r+2]=t>>>8&255,e[r+3]=t&255}function pu(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16|t[e+3]<<24)>>>0}function yu(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}});var xu=J((exports,module)=>{"use strict";module.exports=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(t){}return null}});var vu=J(bu=>{"use strict";var oa=bu;oa.length=function(e){for(var r=0,n=0,i=0;i<e.length;++i)n=e.charCodeAt(i),n<128?r+=1:n<2048?r+=2:(n&64512)===55296&&(e.charCodeAt(i+1)&64512)===56320?(++i,r+=4):r+=3;return r};oa.read=function(e,r,n){var i=n-r;if(i<1)return"";for(var o=null,s=[],a=0,c;r<n;)c=e[r++],c<128?s[a++]=c:c>191&&c<224?s[a++]=(c&31)<<6|e[r++]&63:c>239&&c<365?(c=((c&7)<<18|(e[r++]&63)<<12|(e[r++]&63)<<6|e[r++]&63)-65536,s[a++]=55296+(c>>10),s[a++]=56320+(c&1023)):s[a++]=(c&15)<<12|(e[r++]&63)<<6|e[r++]&63,a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,s)),a=0);return o?(a&&o.push(String.fromCharCode.apply(String,s.slice(0,a))),o.join("")):String.fromCharCode.apply(String,s.slice(0,a))};oa.write=function(e,r,n){for(var i=n,o,s,a=0;a<e.length;++a)o=e.charCodeAt(a),o<128?r[n++]=o:o<2048?(r[n++]=o>>6|192,r[n++]=o&63|128):(o&64512)===55296&&((s=e.charCodeAt(a+1))&64512)===56320?(o=65536+((o&1023)<<10)+(s&1023),++a,r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=o&63|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=o&63|128);return n-i}});var Eu=J((cw,wu)=>{"use strict";wu.exports=Hg;function Hg(t,e,r){var n=r||8192,i=n>>>1,o=null,s=n;return function(c){if(c<1||c>i)return t(c);s+c>n&&(o=t(n),s=0);var f=e.call(o,s,s+=c);return s&7&&(s=(s|7)+1),f}}});var Bu=J((fw,Su)=>{"use strict";Su.exports=Vt;var Yn=Nr();function Vt(t,e){this.lo=t>>>0,this.hi=e>>>0}var Pr=Vt.zero=new Vt(0,0);Pr.toNumber=function(){return 0};Pr.zzEncode=Pr.zzDecode=function(){return this};Pr.length=function(){return 1};var zg=Vt.zeroHash="\0\0\0\0\0\0\0\0";Vt.fromNumber=function(e){if(e===0)return Pr;var r=e<0;r&&(e=-e);var n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new Vt(n,i)};Vt.from=function(e){if(typeof e=="number")return Vt.fromNumber(e);if(Yn.isString(e))if(Yn.Long)e=Yn.Long.fromString(e);else return Vt.fromNumber(parseInt(e,10));return e.low||e.high?new Vt(e.low>>>0,e.high>>>0):Pr};Vt.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var r=~this.lo+1>>>0,n=~this.hi>>>0;return r||(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296};Vt.prototype.toLong=function(e){return Yn.Long?new Yn.Long(this.lo|0,this.hi|0,!!e):{low:this.lo|0,high:this.hi|0,unsigned:!!e}};var br=String.prototype.charCodeAt;Vt.fromHash=function(e){return e===zg?Pr:new Vt((br.call(e,0)|br.call(e,1)<<8|br.call(e,2)<<16|br.call(e,3)<<24)>>>0,(br.call(e,4)|br.call(e,5)<<8|br.call(e,6)<<16|br.call(e,7)<<24)>>>0)};Vt.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)};Vt.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this};Vt.prototype.zzDecode=function(){var e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this};Vt.prototype.length=function(){var e=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?e<16384?e<128?1:2:e<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}});var Nr=J(sa=>{"use strict";var G=sa;G.asPromise=iu();G.base64=cu();G.EventEmitter=uu();G.float=mu();G.inquire=xu();G.utf8=vu();G.pool=Eu();G.LongBits=Bu();G.isNode=!!(typeof globalThis<"u"&&globalThis&&globalThis.process&&globalThis.process.versions&&globalThis.process.versions.node);G.global=G.isNode&&globalThis||typeof window<"u"&&window||typeof self<"u"&&self||sa;G.emptyArray=Object.freeze?Object.freeze([]):[];G.emptyObject=Object.freeze?Object.freeze({}):{};G.isInteger=Number.isInteger||function(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e};G.isString=function(e){return typeof e=="string"||e instanceof String};G.isObject=function(e){return e&&typeof e=="object"};G.isset=G.isSet=function(e,r){var n=e[r];return n!=null&&e.hasOwnProperty(r)?typeof n!="object"||(Array.isArray(n)?n.length:Object.keys(n).length)>0:!1};G.Buffer=function(){try{var t=G.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch{return null}}();G._Buffer_from=null;G._Buffer_allocUnsafe=null;G.newBuffer=function(e){return typeof e=="number"?G.Buffer?G._Buffer_allocUnsafe(e):new G.Array(e):G.Buffer?G._Buffer_from(e):typeof Uint8Array>"u"?e:new Uint8Array(e)};G.Array=typeof Uint8Array<"u"?Uint8Array:Array;G.Long=G.global.dcodeIO&&G.global.dcodeIO.Long||G.global.Long||G.inquire("long");G.key2Re=/^true|false|0|1$/;G.key32Re=/^-?(?:0|[1-9][0-9]*)$/;G.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/;G.longToHash=function(e){return e?G.LongBits.from(e).toHash():G.LongBits.zeroHash};G.longFromHash=function(e,r){var n=G.LongBits.fromHash(e);return G.Long?G.Long.fromBits(n.lo,n.hi,r):n.toNumber(!!r)};function Au(t,e,r){for(var n=Object.keys(e),i=0;i<n.length;++i)(t[n[i]]===void 0||!r)&&(t[n[i]]=e[n[i]]);return t}G.merge=Au;G.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)};function Cu(t){function e(r,n){if(!(this instanceof e))return new e(r,n);Object.defineProperty(this,"message",{get:function(){return r}}),Error.captureStackTrace?Error.captureStackTrace(this,e):Object.defineProperty(this,"stack",{value:new Error().stack||""}),n&&Au(this,n)}return e.prototype=Object.create(Error.prototype,{constructor:{value:e,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return t},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),e}G.newError=Cu;G.ProtocolError=Cu("ProtocolError");G.oneOfGetter=function(e){for(var r={},n=0;n<e.length;++n)r[e[n]]=1;return function(){for(var i=Object.keys(this),o=i.length-1;o>-1;--o)if(r[i[o]]===1&&this[i[o]]!==void 0&&this[i[o]]!==null)return i[o]}};G.oneOfSetter=function(e){return function(r){for(var n=0;n<e.length;++n)e[n]!==r&&delete this[e[n]]}};G.toJSONOptions={longs:String,enums:String,bytes:String,json:!0};G._configure=function(){var t=G.Buffer;if(!t){G._Buffer_from=G._Buffer_allocUnsafe=null;return}G._Buffer_from=t.from!==Uint8Array.from&&t.from||function(r,n){return new t(r,n)},G._Buffer_allocUnsafe=t.allocUnsafe||function(r){return new t(r)}}});var fa=J((lw,Ru)=>{"use strict";Ru.exports=Lt;var Ce=Nr(),ca,_u=Ce.LongBits,Gg=Ce.utf8;function Ie(t,e){return RangeError("index out of range: "+t.pos+" + "+(e||1)+" > "+t.len)}function Lt(t){this.buf=t,this.pos=0,this.len=t.length}var Iu=typeof Uint8Array<"u"?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new Lt(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new Lt(e);throw Error("illegal buffer")},Lu=function(){return Ce.Buffer?function(r){return(Lt.create=function(i){return Ce.Buffer.isBuffer(i)?new ca(i):Iu(i)})(r)}:Iu};Lt.create=Lu();Lt.prototype._slice=Ce.Array.prototype.subarray||Ce.Array.prototype.slice;Lt.prototype.uint32=function(){var e=4294967295;return function(){if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,Ie(this,10);return e}}();Lt.prototype.int32=function(){return this.uint32()|0};Lt.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(e&1)|0};function aa(){var t=new _u(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw Ie(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw Ie(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}Lt.prototype.bool=function(){return this.uint32()!==0};function io(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}Lt.prototype.fixed32=function(){if(this.pos+4>this.len)throw Ie(this,4);return io(this.buf,this.pos+=4)};Lt.prototype.sfixed32=function(){if(this.pos+4>this.len)throw Ie(this,4);return io(this.buf,this.pos+=4)|0};function Tu(){if(this.pos+8>this.len)throw Ie(this,8);return new _u(io(this.buf,this.pos+=4),io(this.buf,this.pos+=4))}Lt.prototype.float=function(){if(this.pos+4>this.len)throw Ie(this,4);var e=Ce.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e};Lt.prototype.double=function(){if(this.pos+8>this.len)throw Ie(this,4);var e=Ce.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e};Lt.prototype.bytes=function(){var e=this.uint32(),r=this.pos,n=this.pos+e;if(n>this.len)throw Ie(this,e);if(this.pos+=e,Array.isArray(this.buf))return this.buf.slice(r,n);if(r===n){var i=Ce.Buffer;return i?i.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,r,n)};Lt.prototype.string=function(){var e=this.bytes();return Gg.read(e,0,e.length)};Lt.prototype.skip=function(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Ie(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Ie(this);while(this.buf[this.pos++]&128);return this};Lt.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this};Lt._configure=function(t){ca=t,Lt.create=Lu(),ca._configure();var e=Ce.Long?"toLong":"toNumber";Ce.merge(Lt.prototype,{int64:function(){return aa.call(this)[e](!1)},uint64:function(){return aa.call(this)[e](!0)},sint64:function(){return aa.call(this).zzDecode()[e](!1)},fixed64:function(){return Tu.call(this)[e](!0)},sfixed64:function(){return Tu.call(this)[e](!1)}})}});var Nu=J((hw,Pu)=>{"use strict";Pu.exports=Ur;var Du=fa();(Ur.prototype=Object.create(Du.prototype)).constructor=Ur;var ku=Nr();function Ur(t){Du.call(this,t)}Ur._configure=function(){ku.Buffer&&(Ur.prototype._slice=ku.Buffer.prototype.slice)};Ur.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))};Ur._configure()});var ga=J((dw,Mu)=>{"use strict";Mu.exports=ct;var he=Nr(),ua,oo=he.LongBits,Uu=he.base64,Ku=he.utf8;function Zn(t,e,r){this.fn=t,this.len=e,this.next=void 0,this.val=r}function ha(){}function Wg(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function ct(){this.len=0,this.head=new Zn(ha,0,0),this.tail=this.head,this.states=null}var Ou=function(){return he.Buffer?function(){return(ct.create=function(){return new ua})()}:function(){return new ct}};ct.create=Ou();ct.alloc=function(e){return new he.Array(e)};he.Array!==Array&&(ct.alloc=he.pool(ct.alloc,he.Array.prototype.subarray));ct.prototype._push=function(e,r,n){return this.tail=this.tail.next=new Zn(e,r,n),this.len+=r,this};function da(t,e,r){e[r]=t&255}function $g(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}function pa(t,e){this.len=t,this.next=void 0,this.val=e}pa.prototype=Object.create(Zn.prototype);pa.prototype.fn=$g;ct.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new pa((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this};ct.prototype.int32=function(e){return e<0?this._push(ya,10,oo.fromNumber(e)):this.uint32(e)};ct.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)};function ya(t,e,r){for(;t.hi;)e[r++]=t.lo&127|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[r++]=t.lo&127|128,t.lo=t.lo>>>7;e[r++]=t.lo}ct.prototype.uint64=function(e){var r=oo.from(e);return this._push(ya,r.length(),r)};ct.prototype.int64=ct.prototype.uint64;ct.prototype.sint64=function(e){var r=oo.from(e).zzEncode();return this._push(ya,r.length(),r)};ct.prototype.bool=function(e){return this._push(da,1,e?1:0)};function la(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}ct.prototype.fixed32=function(e){return this._push(la,4,e>>>0)};ct.prototype.sfixed32=ct.prototype.fixed32;ct.prototype.fixed64=function(e){var r=oo.from(e);return this._push(la,4,r.lo)._push(la,4,r.hi)};ct.prototype.sfixed64=ct.prototype.fixed64;ct.prototype.float=function(e){return this._push(he.float.writeFloatLE,4,e)};ct.prototype.double=function(e){return this._push(he.float.writeDoubleLE,8,e)};var Yg=he.Array.prototype.set?function(e,r,n){r.set(e,n)}:function(e,r,n){for(var i=0;i<e.length;++i)r[n+i]=e[i]};ct.prototype.bytes=function(e){var r=e.length>>>0;if(!r)return this._push(da,1,0);if(he.isString(e)){var n=ct.alloc(r=Uu.length(e));Uu.decode(e,n,0),e=n}return this.uint32(r)._push(Yg,r,e)};ct.prototype.string=function(e){var r=Ku.length(e);return r?this.uint32(r)._push(Ku.write,r,e):this._push(da,1,0)};ct.prototype.fork=function(){return this.states=new Wg(this),this.head=this.tail=new Zn(ha,0,0),this.len=0,this};ct.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Zn(ha,0,0),this.len=0),this};ct.prototype.ldelim=function(){var e=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=r,this.len+=n),this};ct.prototype.finish=function(){for(var e=this.head.next,r=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r};ct._configure=function(t){ua=t,ct.create=Ou(),ua._configure()}});var qu=J((pw,Vu)=>{"use strict";Vu.exports=Ke;var Fu=ga();(Ke.prototype=Object.create(Fu.prototype)).constructor=Ke;var vr=Nr();function Ke(){Fu.call(this)}Ke._configure=function(){Ke.alloc=vr._Buffer_allocUnsafe,Ke.writeBytesBuffer=vr.Buffer&&vr.Buffer.prototype instanceof Uint8Array&&vr.Buffer.prototype.set.name==="set"?function(e,r,n){r.set(e,n)}:function(e,r,n){if(e.copy)e.copy(r,n,0,e.length);else for(var i=0;i<e.length;)r[n++]=e[i++]}};Ke.prototype.bytes=function(e){vr.isString(e)&&(e=vr._Buffer_from(e,"base64"));var r=e.length>>>0;return this.uint32(r),r&&this._push(Ke.writeBytesBuffer,r,e),this};function Zg(t,e,r){t.length<40?vr.utf8.write(t,e,r):e.utf8Write?e.utf8Write(t,r):e.write(t,r)}Ke.prototype.string=function(e){var r=vr.Buffer.byteLength(e);return this.uint32(r),r&&this._push(Zg,r,e),this};Ke._configure()});var tl=J((p8,Ju)=>{var Et=gt();_r();Pt();var Qn=Ju.exports=Et.sha512=Et.sha512||{};Et.md.sha512=Et.md.algorithms.sha512=Qn;var Qu=Et.sha384=Et.sha512.sha384=Et.sha512.sha384||{};Qu.create=function(){return Qn.create("SHA-384")};Et.md.sha384=Et.md.algorithms.sha384=Qu;Et.sha512.sha256=Et.sha512.sha256||{create:function(){return Qn.create("SHA-512/256")}};Et.md["sha512/256"]=Et.md.algorithms["sha512/256"]=Et.sha512.sha256;Et.sha512.sha224=Et.sha512.sha224||{create:function(){return Qn.create("SHA-512/224")}};Et.md["sha512/224"]=Et.md.algorithms["sha512/224"]=Et.sha512.sha224;Qn.create=function(t){if(ju||o2(),typeof t>"u"&&(t="SHA-512"),!(t in Vr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Vr[t],r=null,n=Et.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=Et.util.createBuffer(),r=new Array(e.length);for(var f=0;f<e.length;++f)r[f]=e[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=Et.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),Xu(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Et.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(Ba.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);Xu(p,i,c);var g=Et.util.createBuffer(),m;t==="SHA-512"?m=p.length:t==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)g.putInt32(p[d][0]),(d!==m-1||t!=="SHA-512/224")&&g.putInt32(p[d][1]);return g},a};var Ba=null,ju=!1,Aa=null,Vr=null;function o2(){Ba=String.fromCharCode(128),Ba+=Et.util.fillString(String.fromCharCode(0),128),Aa=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],Vr={},Vr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Vr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Vr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Vr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],ju=!0}function Xu(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,m,S,x,I,B,E,L,_,N,M,K,F,H,Z,A,k,T,R,v,U,O,q=r.length();q>=128;){for(A=0;A<16;++A)e[A][0]=r.getInt32()>>>0,e[A][1]=r.getInt32()>>>0;for(;A<80;++A)R=e[A-2],k=R[0],T=R[1],n=((k>>>19|T<<13)^(T>>>29|k<<3)^k>>>6)>>>0,i=((k<<13|T>>>19)^(T<<3|k>>>29)^(k<<26|T>>>6))>>>0,U=e[A-15],k=U[0],T=U[1],o=((k>>>1|T<<31)^(k>>>8|T<<24)^k>>>7)>>>0,s=((k<<31|T>>>1)^(k<<24|T>>>8)^(k<<25|T>>>7))>>>0,v=e[A-7],O=e[A-16],T=i+v[1]+s+O[1],e[A][0]=n+v[0]+o+O[0]+(T/4294967296>>>0)>>>0,e[A][1]=T>>>0;for(p=t[0][0],g=t[0][1],m=t[1][0],S=t[1][1],x=t[2][0],I=t[2][1],B=t[3][0],E=t[3][1],L=t[4][0],_=t[4][1],N=t[5][0],M=t[5][1],K=t[6][0],F=t[6][1],H=t[7][0],Z=t[7][1],A=0;A<80;++A)f=((L>>>14|_<<18)^(L>>>18|_<<14)^(_>>>9|L<<23))>>>0,u=((L<<18|_>>>14)^(L<<14|_>>>18)^(_<<23|L>>>9))>>>0,l=(K^L&(N^K))>>>0,h=(F^_&(M^F))>>>0,a=((p>>>28|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&S|I&(g^S))>>>0,T=Z+u+h+Aa[A][1]+e[A][1],n=H+f+l+Aa[A][0]+e[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+d,o=a+y+(T/4294967296>>>0)>>>0,s=T>>>0,H=K,Z=F,K=N,F=M,N=L,M=_,T=E+i,L=B+n+(T/4294967296>>>0)>>>0,_=T>>>0,B=x,E=I,x=m,I=S,m=p,S=g,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,g=T>>>0;T=t[0][1]+g,t[0][0]=t[0][0]+p+(T/4294967296>>>0)>>>0,t[0][1]=T>>>0,T=t[1][1]+S,t[1][0]=t[1][0]+m+(T/4294967296>>>0)>>>0,t[1][1]=T>>>0,T=t[2][1]+I,t[2][0]=t[2][0]+x+(T/4294967296>>>0)>>>0,t[2][1]=T>>>0,T=t[3][1]+E,t[3][0]=t[3][0]+B+(T/4294967296>>>0)>>>0,t[3][1]=T>>>0,T=t[4][1]+_,t[4][0]=t[4][0]+L+(T/4294967296>>>0)>>>0,t[4][1]=T>>>0,T=t[5][1]+M,t[5][0]=t[5][0]+N+(T/4294967296>>>0)>>>0,t[5][1]=T>>>0,T=t[6][1]+F,t[6][0]=t[6][0]+K+(T/4294967296>>>0)>>>0,t[6][1]=T>>>0,T=t[7][1]+Z,t[7][0]=t[7][0]+H+(T/4294967296>>>0)>>>0,t[7][1]=T>>>0,q-=128}}});var kl=J((Q4,Rl)=>{var wn=1e3,En=wn*60,Sn=En*60,Gr=Sn*24,P2=Gr*7,N2=Gr*365.25;Rl.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return U2(t);if(r==="number"&&isFinite(t))return e.long?O2(t):K2(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function U2(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*N2;case"weeks":case"week":case"w":return r*P2;case"days":case"day":case"d":return r*Gr;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Sn;case"minutes":case"minute":case"mins":case"min":case"m":return r*En;case"seconds":case"second":case"secs":case"sec":case"s":return r*wn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function K2(t){var e=Math.abs(t);return e>=Gr?Math.round(t/Gr)+"d":e>=Sn?Math.round(t/Sn)+"h":e>=En?Math.round(t/En)+"m":e>=wn?Math.round(t/wn)+"s":t+"ms"}function O2(t){var e=Math.abs(t);return e>=Gr?lo(t,e,Gr,"day"):e>=Sn?lo(t,e,Sn,"hour"):e>=En?lo(t,e,En,"minute"):e>=wn?lo(t,e,wn,"second"):t+" ms"}function lo(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var Pl=J((j4,Dl)=>{function M2(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=kl(),r.destroy=f,Object.keys(t).forEach(u=>{r[u]=t[u]}),r.names=[],r.skips=[],r.formatters={};function e(u){let l=0;for(let h=0;h<u.length;h++)l=(l<<5)-l+u.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=e;function r(u){let l,h=null,y,d;function p(...g){if(!p.enabled)return;let m=p,S=Number(new Date),x=S-(l||S);m.diff=x,m.prev=l,m.curr=S,l=S,g[0]=r.coerce(g[0]),typeof g[0]!="string"&&g.unshift("%O");let I=0;g[0]=g[0].replace(/%([a-zA-Z%])/g,(E,L)=>{if(E==="%%")return"%";I++;let _=r.formatters[L];if(typeof _=="function"){let N=g[I];E=_.call(m,N),g.splice(I,1),I--}return E}),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}Dl.exports=M2});var Nl=J((oe,ho)=>{oe.formatArgs=V2;oe.save=q2;oe.load=H2;oe.useColors=F2;oe.storage=z2();oe.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();oe.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function F2(){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 V2(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ho.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}oe.log=console.debug||console.log||(()=>{});function q2(t){try{t?oe.storage.setItem("debug",t):oe.storage.removeItem("debug")}catch{}}function H2(){let t;try{t=oe.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function z2(){try{return localStorage}catch{}}ho.exports=Pl()(oe);var{formatters:G2}=ho.exports;G2.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Bm={};Ut(Bm,{webTransport:()=>Sm});function ir(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function He(t=0){return globalThis.Buffer?.alloc!=null?ir(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function ce(t=0){return globalThis.Buffer?.allocUnsafe!=null?ir(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var _h=Math.pow(2,7),Lh=Math.pow(2,14),Rh=Math.pow(2,21),ko=Math.pow(2,28),Do=Math.pow(2,35),Po=Math.pow(2,42),No=Math.pow(2,49),lt=128,Zt=127;function Jt(t){if(t<_h)return 1;if(t<Lh)return 2;if(t<Rh)return 3;if(t<ko)return 4;if(t<Do)return 5;if(t<Po)return 6;if(t<No)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function kh(t,e,r=0){switch(Jt(t)){case 8:e[r++]=t&255|lt,t/=128;case 7:e[r++]=t&255|lt,t/=128;case 6:e[r++]=t&255|lt,t/=128;case 5:e[r++]=t&255|lt,t/=128;case 4:e[r++]=t&255|lt,t>>>=7;case 3:e[r++]=t&255|lt,t>>>=7;case 2:e[r++]=t&255|lt,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Dh(t,e,r=0){switch(Jt(t)){case 8:e.set(r++,t&255|lt),t/=128;case 7:e.set(r++,t&255|lt),t/=128;case 6:e.set(r++,t&255|lt),t/=128;case 5:e.set(r++,t&255|lt),t/=128;case 4:e.set(r++,t&255|lt),t>>>=7;case 3:e.set(r++,t&255|lt),t>>>=7;case 2:e.set(r++,t&255|lt),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function Ph(t,e){let r=t[e],n=0;if(n+=r&Zt,r<lt||(r=t[e+1],n+=(r&Zt)<<7,r<lt)||(r=t[e+2],n+=(r&Zt)<<14,r<lt)||(r=t[e+3],n+=(r&Zt)<<21,r<lt)||(r=t[e+4],n+=(r&Zt)*ko,r<lt)||(r=t[e+5],n+=(r&Zt)*Do,r<lt)||(r=t[e+6],n+=(r&Zt)*Po,r<lt)||(r=t[e+7],n+=(r&Zt)*No,r<lt))return n;throw new RangeError("Could not decode varint")}function Nh(t,e){let r=t.get(e),n=0;if(n+=r&Zt,r<lt||(r=t.get(e+1),n+=(r&Zt)<<7,r<lt)||(r=t.get(e+2),n+=(r&Zt)<<14,r<lt)||(r=t.get(e+3),n+=(r&Zt)<<21,r<lt)||(r=t.get(e+4),n+=(r&Zt)*ko,r<lt)||(r=t.get(e+5),n+=(r&Zt)*Do,r<lt)||(r=t.get(e+6),n+=(r&Zt)*Po,r<lt)||(r=t.get(e+7),n+=(r&Zt)*No,r<lt))return n;throw new RangeError("Could not decode varint")}function or(t,e,r=0){return e==null&&(e=ce(Jt(t))),e instanceof Uint8Array?kh(t,e,r):Dh(t,e,r)}function ge(t,e=0){return t instanceof Uint8Array?Ph(t,e):Nh(t,e)}function yt(t,e){e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=ce(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ir(r)}function It(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var m0=Symbol.for("@achingbrain/uint8arraylist");function g0(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function ui(t){return!!t?.[m0]}var re=class t{constructor(...e){Object.defineProperty(this,m0,{value:!0}),this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(ui(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(ui(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=g0(this.bufs,e);return r.buf[r.index]}set(e,r){let n=g0(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(ui(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return yt(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:yt(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=n,o}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let f=e>=a&&e<c,u=r>a&&r<=c;if(f&&u){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(f){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!ui(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let h=f;h>=0;h--){let 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(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(e,r){let n=ce(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=He(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=ce(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=He(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=He(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=He(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!It(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function li(t){return t[Symbol.asyncIterator]!=null}var hi=t=>{let e=Jt(t),r=ce(e);return or(t,r),hi.bytes=e,r};hi.bytes=0;function di(t,e){e=e??{};let r=e.lengthEncoder??hi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return li(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}di.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??hi;return new re(r(t.byteLength),t)};var Wr=Dt(v0(),1);var Kh=8,Oh=1024*1024*4,Er;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(Er||(Er={}));var Uo=t=>{let e=ge(t);return Uo.bytes=Jt(e),e};Uo.bytes=0;function _n(t,e){let r=new re,n=Er.LENGTH,i=-1,o=e?.lengthDecoder??Uo,s=e?.maxLengthLength??Kh,a=e?.maxDataLength??Oh;function*c(){for(;r.byteLength>0;){if(n===Er.LENGTH)try{if(i=o(r),i<0)throw(0,Wr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Wr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),e?.onLength!=null&&e.onLength(i),n=Er.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Wr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===Er.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(f),yield f,n=Er.LENGTH}}}return li(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Wr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Wr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}_n.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return _n(n,{...e??{},onLength:o=>{r=o}})};function $r(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var pi=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Yr=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new pi(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let r=this.head;this.head=r.next=new pi(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var Ko=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Zr(t={}){return Fh(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},t)}function Fh(t,e){e=e??{};let r=e.onEnd,n=new Yr,i,o,s,a=$r(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((g,m)=>{o=S=>{o=null,n.push(S);try{g(t(n))}catch(x){m(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=$r()})}},f=g=>o!=null?o(g):(n.push(g),i),u=g=>(n=new Yr,o!=null?o({error:g}):(n.push({error:g}),i)),l=g=>{if(s)return i;if(e?.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 Yr,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 S,x;m!=null&&(S=new Promise((I,B)=>{x=()=>{B(new Ko)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,S])}finally{x!=null&&m!=null&&m?.removeEventListener("abort",x)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(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 yi=class extends Error{code;constructor(e,r){super(e),this.code=r}},Oo=class extends yi{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function w0(t){let e=Zr();t.sink(e).catch(o=>{e.end(o)}),t.sink=async o=>{for await(let s of o)e.push(s);e.end()};let r=t.source;t.source[Symbol.iterator]!=null?r=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(r=t.source[Symbol.asyncIterator]());let n=new re;return{read:async(o,s)=>{s?.signal?.throwIfAborted();let a,c=new Promise((f,u)=>{a=()=>{u(new Oo("Read aborted"))},s?.signal?.addEventListener("abort",a)});try{if(o==null){let{done:u,value:l}=await Promise.race([r.next(),c]);return u===!0?new re:l}for(;n.byteLength<o;){let{value:u,done:l}=await Promise.race([r.next(),c]);if(l===!0)throw new yi("unexpected end of input","ERR_UNEXPECTED_EOF");n.append(u)}let f=n.sublist(0,o);return n.consume(o),f}finally{a!=null&&s?.signal?.removeEventListener("abort",a)}},write:async(o,s)=>{s?.signal?.throwIfAborted(),o instanceof Uint8Array?e.push(o):e.push(o.subarray()),await e.onEmpty(s)},unwrap:()=>{let o=t.source;return t.source=async function*(){yield*n,yield*o}(),t}}}var gi=class extends Error{code;constructor(e,r){super(e),this.code=r}},E0=t=>ge(t);E0.bytes=0;function Mo(t,e){let r=w0(t);return{read:async i=>{let o=-1,s=new re,a=e?.lengthDecoder??E0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(o>-1)break;if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new gi("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new gi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(di.single(i,e),o)},unwrap:()=>r.unwrap()}}function Fo(){let t=$r(),e=!1;return{sink:async r=>{if(e)throw new Error("already piped");e=!0,t.resolve(r)},source:async function*(){yield*await t.promise}()}}function S0(){let t=Fo(),e=Fo();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function Vh(t){return t[Symbol.asyncIterator]!=null}function qh(...t){let e=[];for(let r of t)Vh(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Zr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var B0=qh;function A0(t,...e){if(t==null)throw new Error("Empty pipeline");if(Vo(t)){let n=t;t=()=>n.source}else if(I0(t)||C0(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Vo(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++)Vo(r[n])&&(r[n]=zh(r[n]));return Hh(...r)}var Hh=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},C0=t=>t?.[Symbol.asyncIterator]!=null,I0=t=>t?.[Symbol.iterator]!=null,Vo=t=>t==null?!1:t.sink!=null&&t.source!=null,zh=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Zr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(C0(o))i=async function*(){yield*o,n.end()};else if(I0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return B0(n,i())}return t.source};var T0=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Gh=t=>t instanceof Uint8Array;var ze=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),_0=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Wh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Wh)throw new Error("Non little-endian hardware is not supported");function mi(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function xi(t){if(typeof t=="string"&&(t=mi(t)),!Gh(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var $h=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function L0(t,e){if(e!==void 0&&(typeof e!="object"||!$h(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function Sr(t,e){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function R0(t,e){if(t.length!==e.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<t.length;n++)r&&(r=t[n]===e[n]);return r}function qo(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}function Ho(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Yh(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function k0(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Zh(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("hash must be wrapped by utils.wrapConstructor");Ho(t.outputLen),Ho(t.blockLen)}function Xh(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Qh(t,e){k0(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var jh={number:Ho,bool:Yh,bytes:k0,hash:Zh,exists:Xh,output:Qh},Xt=jh;var Wt=(t,e)=>t[e++]&255|(t[e++]&255)<<8,zo=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=xi(e),Sr(e,32);let r=Wt(e,0),n=Wt(e,2),i=Wt(e,4),o=Wt(e,6),s=Wt(e,8),a=Wt(e,10),c=Wt(e,12),f=Wt(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Wt(e,16+2*u)}process(e,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],h=s[5],y=s[6],d=s[7],p=s[8],g=s[9],m=Wt(e,r+0),S=Wt(e,r+2),x=Wt(e,r+4),I=Wt(e,r+6),B=Wt(e,r+8),E=Wt(e,r+10),L=Wt(e,r+12),_=Wt(e,r+14),N=o[0]+(m&8191),M=o[1]+((m>>>13|S<<3)&8191),K=o[2]+((S>>>10|x<<6)&8191),F=o[3]+((x>>>7|I<<9)&8191),H=o[4]+((I>>>4|B<<12)&8191),Z=o[5]+(B>>>1&8191),A=o[6]+((B>>>14|E<<2)&8191),k=o[7]+((E>>>11|L<<5)&8191),T=o[8]+((L>>>8|_<<8)&8191),R=o[9]+(_>>>5|i),v=0,U=v+N*a+M*(5*g)+K*(5*p)+F*(5*d)+H*(5*y);v=U>>>13,U&=8191,U+=Z*(5*h)+A*(5*l)+k*(5*u)+T*(5*f)+R*(5*c),v+=U>>>13,U&=8191;let O=v+N*c+M*a+K*(5*g)+F*(5*p)+H*(5*d);v=O>>>13,O&=8191,O+=Z*(5*y)+A*(5*h)+k*(5*l)+T*(5*u)+R*(5*f),v+=O>>>13,O&=8191;let q=v+N*f+M*c+K*a+F*(5*g)+H*(5*p);v=q>>>13,q&=8191,q+=Z*(5*d)+A*(5*y)+k*(5*h)+T*(5*l)+R*(5*u),v+=q>>>13,q&=8191;let $=v+N*u+M*f+K*c+F*a+H*(5*g);v=$>>>13,$&=8191,$+=Z*(5*p)+A*(5*d)+k*(5*y)+T*(5*h)+R*(5*l),v+=$>>>13,$&=8191;let Y=v+N*l+M*u+K*f+F*c+H*a;v=Y>>>13,Y&=8191,Y+=Z*(5*g)+A*(5*p)+k*(5*d)+T*(5*y)+R*(5*h),v+=Y>>>13,Y&=8191;let rt=v+N*h+M*l+K*u+F*f+H*c;v=rt>>>13,rt&=8191,rt+=Z*a+A*(5*g)+k*(5*p)+T*(5*d)+R*(5*y),v+=rt>>>13,rt&=8191;let X=v+N*y+M*h+K*l+F*u+H*f;v=X>>>13,X&=8191,X+=Z*c+A*a+k*(5*g)+T*(5*p)+R*(5*d),v+=X>>>13,X&=8191;let j=v+N*d+M*y+K*h+F*l+H*u;v=j>>>13,j&=8191,j+=Z*f+A*c+k*a+T*(5*g)+R*(5*p),v+=j>>>13,j&=8191;let mt=v+N*p+M*d+K*y+F*h+H*l;v=mt>>>13,mt&=8191,mt+=Z*u+A*f+k*c+T*a+R*(5*g),v+=mt>>>13,mt&=8191;let dt=v+N*g+M*p+K*d+F*y+H*h;v=dt>>>13,dt&=8191,dt+=Z*l+A*u+k*f+T*c+R*a,v+=dt>>>13,dt&=8191,v=(v<<2)+v|0,v=v+U|0,U=v&8191,v=v>>>13,O+=v,o[0]=U,o[1]=O,o[2]=q,o[3]=$,o[4]=Y,o[5]=rt,o[6]=X,o[7]=j,o[8]=mt,o[9]=dt}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=i,i=e[a]>>>13,e[a]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,n[0]=e[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)e[a]=e[a]&o|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+r[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+r[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){Xt.exists(this);let{buffer:r,blockLen:n}=this;e=xi(e);let i=e.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(e,o);continue}r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){Xt.exists(this),Xt.output(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)e[o++]=n[s]>>>0,e[o++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}};function Jh(t){let e=(n,i)=>t(i).update(xi(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var D0=Jh(t=>new zo(t));var td=mi("expand 16-byte k"),ed=mi("expand 32-byte k"),rd=ze(td),nd=ze(ed),bi=t=>!(t.byteOffset%4),P0=t=>{let{core:e,rounds:r,counterRight:n,counterLen:i,allow128bitKeys:o,extendNonceFn:s,blockLen:a}=L0({rounds:20,counterRight:!1,counterLen:8,allow128bitKeys:!0,blockLen:64},t);Xt.number(i),Xt.number(r),Xt.number(a),Xt.bool(n),Xt.bool(o);let c=a/4;if(a%4!==0)throw new Error("Salsa/ChaCha: blockLen must be aligned to 4 bytes");return(f,u,l,h,y=0)=>{if(Xt.bytes(f),Xt.bytes(u),Xt.bytes(l),h||(h=new Uint8Array(l.length)),Xt.bytes(h),Xt.number(y),y<0||y>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");if(h.length<l.length)throw new Error(`Salsa/ChaCha: output (${h.length}) is shorter than data (${l.length})`);let d=[],p,g;if(f.length===32)bi(f)?p=f:(p=f.slice(),d.push(p)),g=nd;else if(f.length===16&&o)p=new Uint8Array(32),p.set(f),p.set(f,16),g=rd,d.push(p);else throw new Error(`Salsa/ChaCha: invalid 32-byte key, got length=${f.length}`);if(bi(u)||(u=u.slice(),d.push(u)),s){if(u.length<=16)throw new Error("Salsa/ChaCha: extended nonce must be bigger than 16 bytes");p=s(g,p,u.subarray(0,16),new Uint8Array(32)),d.push(p),u=u.subarray(16)}let m=16-i;if(u.length!==m)throw new Error(`Salsa/ChaCha: nonce must be ${m} or 16 bytes`);if(m!==12){let N=new Uint8Array(12);N.set(u,n?0:12-u.length),d.push(u=N)}let S=new Uint8Array(a),x=ze(S),I=ze(p),B=ze(u),E=bi(l)&&ze(l),L=bi(h)&&ze(h);d.push(x);let _=l.length;for(let N=0,M=y;N<_;M++){if(e(g,I,B,x,M,r),M>=2**32-1)throw new Error("Salsa/ChaCha: counter overflow");let K=Math.min(a,_-N);if(K===a&&L&&E){let F=N/4;if(N%4!==0)throw new Error("Salsa/ChaCha: invalid block position");for(let H=0;H<c;H++)L[F+H]=E[F+H]^x[H];N+=a;continue}for(let F=0;F<K;F++)h[N+F]=l[N+F]^S[F];N+=K}for(let N=0;N<d.length;N++)d[N].fill(0);return h}};var ft=(t,e)=>t<<e|t>>>32-e;function id(t,e,r,n,i,o=20){let s=t[0],a=t[1],c=t[2],f=t[3],u=e[0],l=e[1],h=e[2],y=e[3],d=e[4],p=e[5],g=e[6],m=e[7],S=i,x=r[0],I=r[1],B=r[2],E=s,L=a,_=c,N=f,M=u,K=l,F=h,H=y,Z=d,A=p,k=g,T=m,R=S,v=x,U=I,O=B;for(let $=0;$<o;$+=2)E=E+M|0,R=ft(R^E,16),Z=Z+R|0,M=ft(M^Z,12),E=E+M|0,R=ft(R^E,8),Z=Z+R|0,M=ft(M^Z,7),L=L+K|0,v=ft(v^L,16),A=A+v|0,K=ft(K^A,12),L=L+K|0,v=ft(v^L,8),A=A+v|0,K=ft(K^A,7),_=_+F|0,U=ft(U^_,16),k=k+U|0,F=ft(F^k,12),_=_+F|0,U=ft(U^_,8),k=k+U|0,F=ft(F^k,7),N=N+H|0,O=ft(O^N,16),T=T+O|0,H=ft(H^T,12),N=N+H|0,O=ft(O^N,8),T=T+O|0,H=ft(H^T,7),E=E+K|0,O=ft(O^E,16),k=k+O|0,K=ft(K^k,12),E=E+K|0,O=ft(O^E,8),k=k+O|0,K=ft(K^k,7),L=L+F|0,R=ft(R^L,16),T=T+R|0,F=ft(F^T,12),L=L+F|0,R=ft(R^L,8),T=T+R|0,F=ft(F^T,7),_=_+H|0,v=ft(v^_,16),Z=Z+v|0,H=ft(H^Z,12),_=_+H|0,v=ft(v^_,8),Z=Z+v|0,H=ft(H^Z,7),N=N+M|0,U=ft(U^N,16),A=A+U|0,M=ft(M^A,12),N=N+M|0,U=ft(U^N,8),A=A+U|0,M=ft(M^A,7);let q=0;n[q++]=s+E|0,n[q++]=a+L|0,n[q++]=c+_|0,n[q++]=f+N|0,n[q++]=u+M|0,n[q++]=l+K|0,n[q++]=h+F|0,n[q++]=y+H|0,n[q++]=d+Z|0,n[q++]=p+A|0,n[q++]=g+k|0,n[q++]=m+T|0,n[q++]=S+R|0,n[q++]=x+v|0,n[q++]=I+U|0,n[q++]=B+O|0}var od=P0({core:id,counterRight:!1,counterLen:4,allow128bitKeys:!1});var sd=new Uint8Array(16),N0=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(sd.subarray(r))},U0=(t,e,r,n,i)=>{let o=t(e,r,new Uint8Array(32)),s=D0.create(o);i&&N0(s,i),N0(s,n);let a=new Uint8Array(16),c=_0(a);qo(c,0,BigInt(i?i.length:0),!0),qo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f},ad=t=>(e,r,n)=>(Sr(e,32),Sr(r),{tagLength:16,encrypt:(o,s)=>{let a=o.length,c=a+16;s?Sr(s,c):s=new Uint8Array(c),t(e,r,o,s,1);let f=U0(t,e,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?Sr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=U0(t,e,r,f,n);if(!R0(u,l))throw new Error("invalid tag");return t(e,r,f,s,1),s}}),Go=ad(od);function vi(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Wo(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Ln(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");vi(t.outputLen),vi(t.blockLen)}function Xr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function K0(t,e){Wo(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var wi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var O0=t=>t instanceof Uint8Array;var Ei=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),me=(t,e)=>t<<32-e|t>>>e,cd=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!cd)throw new Error("Non little-endian hardware is not supported");function $o(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function sr(t){if(typeof t=="string"&&(t=$o(t)),!O0(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function Si(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!O0(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Qr=class{clone(){return this._cloneInto()}},Rx={}.toString;function Bi(t){let e=n=>t().update(sr(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Br(t=32){if(wi&&typeof wi.getRandomValues=="function")return wi.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function fd(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}var jr=class extends Qr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Ei(this.buffer)}update(e){Xr(this);let{view:r,buffer:n,blockLen:i}=this;e=sr(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=Ei(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Xr(this),K0(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;fd(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=Ei(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var Ai=BigInt(4294967295),Yo=BigInt(32);function M0(t,e=!1){return e?{h:Number(t&Ai),l:Number(t>>Yo&Ai)}:{h:Number(t>>Yo&Ai)|0,l:Number(t&Ai)|0}}function ud(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=M0(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var ld=(t,e)=>BigInt(t>>>0)<<Yo|BigInt(e>>>0),hd=(t,e,r)=>t>>>r,dd=(t,e,r)=>t<<32-r|e>>>r,pd=(t,e,r)=>t>>>r|e<<32-r,yd=(t,e,r)=>t<<32-r|e>>>r,gd=(t,e,r)=>t<<64-r|e>>>r-32,md=(t,e,r)=>t>>>r-32|e<<64-r,xd=(t,e)=>e,bd=(t,e)=>t,vd=(t,e,r)=>t<<r|e>>>32-r,wd=(t,e,r)=>e<<r|t>>>32-r,Ed=(t,e,r)=>e<<r-32|t>>>64-r,Sd=(t,e,r)=>t<<r-32|e>>>64-r;function Bd(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Ad=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Cd=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Id=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Td=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,_d=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Ld=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var Rd={fromBig:M0,split:ud,toBig:ld,shrSH:hd,shrSL:dd,rotrSH:pd,rotrSL:yd,rotrBH:gd,rotrBL:md,rotr32H:xd,rotr32L:bd,rotlSH:vd,rotlSL:wd,rotlBH:Ed,rotlBL:Sd,add:Bd,add3L:Ad,add3H:Cd,add4L:Id,add4H:Td,add5H:Ld,add5L:_d},tt=Rd;var[kd,Dd]=(()=>tt.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),ar=new Uint32Array(80),cr=new Uint32Array(80),Zo=class extends jr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:h,Gh:y,Gl:d,Hh:p,Hl:g}=this;return[e,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g]}set(e,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=h|0,this.Gh=y|0,this.Gl=d|0,this.Hh=p|0,this.Hl=g|0}process(e,r){for(let x=0;x<16;x++,r+=4)ar[x]=e.getUint32(r),cr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let I=ar[x-15]|0,B=cr[x-15]|0,E=tt.rotrSH(I,B,1)^tt.rotrSH(I,B,8)^tt.shrSH(I,B,7),L=tt.rotrSL(I,B,1)^tt.rotrSL(I,B,8)^tt.shrSL(I,B,7),_=ar[x-2]|0,N=cr[x-2]|0,M=tt.rotrSH(_,N,19)^tt.rotrBH(_,N,61)^tt.shrSH(_,N,6),K=tt.rotrSL(_,N,19)^tt.rotrBL(_,N,61)^tt.shrSL(_,N,6),F=tt.add4L(L,K,cr[x-7],cr[x-16]),H=tt.add4H(F,E,M,ar[x-7],ar[x-16]);ar[x]=H|0,cr[x]=F|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:y,Fl:d,Gh:p,Gl:g,Hh:m,Hl:S}=this;for(let x=0;x<80;x++){let I=tt.rotrSH(l,h,14)^tt.rotrSH(l,h,18)^tt.rotrBH(l,h,41),B=tt.rotrSL(l,h,14)^tt.rotrSL(l,h,18)^tt.rotrBL(l,h,41),E=l&y^~l&p,L=h&d^~h&g,_=tt.add5L(S,B,L,Dd[x],cr[x]),N=tt.add5H(_,m,I,E,kd[x],ar[x]),M=_|0,K=tt.rotrSH(n,i,28)^tt.rotrBH(n,i,34)^tt.rotrBH(n,i,39),F=tt.rotrSL(n,i,28)^tt.rotrBL(n,i,34)^tt.rotrBL(n,i,39),H=n&o^n&a^o&a,Z=i&s^i&c^s&c;m=p|0,S=g|0,p=y|0,g=d|0,y=l|0,d=h|0,{h:l,l:h}=tt.add(f|0,u|0,N|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let A=tt.add3L(M,F,Z);n=tt.add3H(A,N,K,H),i=A|0}({h:n,l:i}=tt.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=tt.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=tt.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=tt.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:h}=tt.add(this.Eh|0,this.El|0,l|0,h|0),{h:y,l:d}=tt.add(this.Fh|0,this.Fl|0,y|0,d|0),{h:p,l:g}=tt.add(this.Gh|0,this.Gl|0,p|0,g|0),{h:m,l:S}=tt.add(this.Hh|0,this.Hl|0,m|0,S|0),this.set(n,i,o,s,a,c,f,u,l,h,y,d,p,g,m,S)}roundClean(){ar.fill(0),cr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Xo=Bi(()=>new Zo);var Ti={};Ut(Ti,{bitGet:()=>Fd,bitLen:()=>Md,bitMask:()=>Rn,bitSet:()=>Vd,bytesToHex:()=>Ge,bytesToNumberBE:()=>We,bytesToNumberLE:()=>xe,concatBytes:()=>Ye,createHmacDrbg:()=>Jo,ensureBytes:()=>bt,equalBytes:()=>Kd,hexToBytes:()=>Ar,hexToNumber:()=>jo,numberToBytesBE:()=>fr,numberToBytesLE:()=>$e,numberToHexUnpadded:()=>q0,numberToVarBytesBE:()=>Ud,utf8ToBytes:()=>Od,validateObject:()=>fe});var V0=BigInt(0),Ci=BigInt(1),Pd=BigInt(2),Ii=t=>t instanceof Uint8Array,Nd=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Ge(t){if(!Ii(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Nd[t[r]];return e}function q0(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function jo(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function Ar(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let r=new Uint8Array(e/2);for(let n=0;n<r.length;n++){let i=n*2,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function We(t){return jo(Ge(t))}function xe(t){if(!Ii(t))throw new Error("Uint8Array expected");return jo(Ge(Uint8Array.from(t).reverse()))}function fr(t,e){return Ar(t.toString(16).padStart(e*2,"0"))}function $e(t,e){return fr(t,e).reverse()}function Ud(t){return Ar(q0(t))}function bt(t,e,r){let n;if(typeof e=="string")try{n=Ar(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Ii(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function Ye(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!Ii(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Kd(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function Od(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Md(t){let e;for(e=0;t>V0;t>>=Ci,e+=1);return e}function Fd(t,e){return t>>BigInt(e)&Ci}var Vd=(t,e,r)=>t|(r?Ci:V0)<<BigInt(e),Rn=t=>(Pd<<BigInt(t-1))-Ci,Qo=t=>new Uint8Array(t),F0=t=>Uint8Array.from(t);function Jo(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=Qo(t),i=Qo(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Qo())=>{i=a(F0([0]),l),n=a(),l.length!==0&&(i=a(F0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let y=n.slice();h.push(y),l+=n.length}return Ye(...h)};return(l,h)=>{s(),c(l);let y;for(;!(y=h(f()));)c();return s(),y}}var qd={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function fe(t,e,r={}){let n=(i,o,s)=>{let a=qd[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var Kt=BigInt(0),St=BigInt(1),Cr=BigInt(2),Hd=BigInt(3),ts=BigInt(4),H0=BigInt(5),z0=BigInt(8),zd=BigInt(9),Gd=BigInt(16);function ut(t,e){let r=t%e;return r>=Kt?r:e+r}function es(t,e,r){if(r<=Kt||e<Kt)throw new Error("Expected power/modulo > 0");if(r===St)return Kt;let n=St;for(;e>Kt;)e&St&&(n=n*t%r),t=t*t%r,e>>=St;return n}function vt(t,e,r){let n=t;for(;e-- >Kt;)n*=n,n%=r;return n}function _i(t,e){if(t===Kt||e<=Kt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ut(t,e),n=e,i=Kt,o=St,s=St,a=Kt;for(;r!==Kt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==St)throw new Error("invert: does not exist");return ut(i,e)}function Wd(t){let e=(t-St)/Cr,r,n,i;for(r=t-St,n=0;r%Cr===Kt;r/=Cr,n++);for(i=Cr;i<t&&es(i,e,t)!==t-St;i++);if(n===1){let s=(t+St)/ts;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+St)/Cr;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let 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,St<<BigInt(f-y-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=y}return l}}function $d(t){if(t%ts===Hd){let e=(t+St)/ts;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%z0===H0){let e=(t-H0)/z0;return function(n,i){let o=n.mul(i,Cr),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,Cr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return t%Gd,Wd(t)}var G0=(t,e)=>(ut(t,e)&St)===St,Yd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function rs(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Yd.reduce((n,i)=>(n[i]="function",n),e);return fe(t,r)}function Zd(t,e,r){if(r<Kt)throw new Error("Expected power > 0");if(r===Kt)return t.ONE;if(r===St)return e;let n=t.ONE,i=e;for(;r>Kt;)r&St&&(n=t.mul(n,i)),i=t.sqr(i),r>>=St;return n}function Xd(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function ns(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Li(t,e,r=!1,n={}){if(t<=Kt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=ns(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=$d(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Rn(i),ZERO:Kt,ONE:St,create:c=>ut(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Kt<=c&&c<t},is0:c=>c===Kt,isOdd:c=>(c&St)===St,neg:c=>ut(-c,t),eql:(c,f)=>c===f,sqr:c=>ut(c*c,t),add:(c,f)=>ut(c+f,t),sub:(c,f)=>ut(c-f,t),mul:(c,f)=>ut(c*f,t),pow:(c,f)=>Zd(a,c,f),div:(c,f)=>ut(c*_i(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>_i(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Xd(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?$e(c,o):fr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?xe(c):We(c)}});return Object.freeze(a)}function W0(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}function $0(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function is(t){let e=$0(t);return e+Math.ceil(e/2)}function Y0(t,e,r=!1){let n=t.length,i=$0(e),o=is(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?We(t):xe(t),a=ut(s,e-St)+St;return r?$e(a,i):fr(a,i)}var jd=BigInt(0),os=BigInt(1);function Ri(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>jd;)o&os&&(s=s.add(a)),a=a.double(),o>>=os;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=t.ZERO,u=t.BASE,l=BigInt(2**i-1),h=2**i,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+=os);let m=p,S=p+Math.abs(g)-1,x=d%2!==0,I=g<0;g===0?u=u.add(r(x,o[m])):f=f.add(r(I,o[S]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function kn(t){return rs(t.Fp),fe(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...ns(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var be=BigInt(0),ne=BigInt(1),ki=BigInt(2),Jd=BigInt(8),tp={zip215:!0};function ep(t){let e=kn(t);return fe(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Di(t){let e=ep(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,f=ki<<BigInt(a*8)-ne,u=r.create,l=e.uvRatio||((R,v)=>{try{return{isValid:!0,value:r.sqrt(R*r.inv(v))}}catch{return{isValid:!1,value:be}}}),h=e.adjustScalarBytes||(R=>R),y=e.domain||((R,v,U)=>{if(v.length||U)throw new Error("Contexts/pre-hash are not supported");return R}),d=R=>typeof R=="bigint"&&be<R,p=(R,v)=>d(R)&&d(v)&&R<v,g=R=>R===be||p(R,f);function m(R,v){if(p(R,v))return R;throw new Error(`Expected valid scalar < ${v}, got ${typeof R} ${R}`)}function S(R){return R===be?R:m(R,n)}let x=new Map;function I(R){if(!(R instanceof B))throw new Error("ExtendedPoint expected")}class B{constructor(v,U,O,q){if(this.ex=v,this.ey=U,this.ez=O,this.et=q,!g(v))throw new Error("x required");if(!g(U))throw new Error("y required");if(!g(O))throw new Error("z required");if(!g(q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(v){if(v instanceof B)throw new Error("extended point not allowed");let{x:U,y:O}=v||{};if(!g(U)||!g(O))throw new Error("invalid affine point");return new B(U,O,ne,u(U*O))}static normalizeZ(v){let U=r.invertBatch(v.map(O=>O.ez));return v.map((O,q)=>O.toAffine(U[q])).map(B.fromAffine)}_setWindowSize(v){this._WINDOW_SIZE=v,x.delete(this)}assertValidity(){let{a:v,d:U}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:O,ey:q,ez:$,et:Y}=this,rt=u(O*O),X=u(q*q),j=u($*$),mt=u(j*j),dt=u(rt*v),zt=u(j*u(dt+X)),Gt=u(mt+u(U*u(rt*X)));if(zt!==Gt)throw new Error("bad point: equation left != right (1)");let Nt=u(O*q),Yt=u($*Y);if(Nt!==Yt)throw new Error("bad point: equation left != right (2)")}equals(v){I(v);let{ex:U,ey:O,ez:q}=this,{ex:$,ey:Y,ez:rt}=v,X=u(U*rt),j=u($*q),mt=u(O*rt),dt=u(Y*q);return X===j&&mt===dt}is0(){return this.equals(B.ZERO)}negate(){return new B(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:v}=e,{ex:U,ey:O,ez:q}=this,$=u(U*U),Y=u(O*O),rt=u(ki*u(q*q)),X=u(v*$),j=U+O,mt=u(u(j*j)-$-Y),dt=X+Y,zt=dt-rt,Gt=X-Y,Nt=u(mt*zt),Yt=u(dt*Gt),qe=u(mt*Gt),wr=u(zt*dt);return new B(Nt,Yt,wr,qe)}add(v){I(v);let{a:U,d:O}=e,{ex:q,ey:$,ez:Y,et:rt}=this,{ex:X,ey:j,ez:mt,et:dt}=v;if(U===BigInt(-1)){let c0=u(($-q)*(j+X)),f0=u(($+q)*(j-X)),Ro=u(f0-c0);if(Ro===be)return this.double();let u0=u(Y*ki*dt),l0=u(rt*ki*mt),h0=l0+u0,d0=f0+c0,p0=l0-u0,bh=u(h0*Ro),vh=u(d0*p0),wh=u(h0*p0),Eh=u(Ro*d0);return new B(bh,vh,Eh,wh)}let zt=u(q*X),Gt=u($*j),Nt=u(rt*O*dt),Yt=u(Y*mt),qe=u((q+$)*(X+j)-zt-Gt),wr=Yt-Nt,In=Yt+Nt,a0=u(Gt-U*zt),yh=u(qe*wr),gh=u(In*a0),mh=u(qe*a0),xh=u(wr*In);return new B(yh,gh,xh,mh)}subtract(v){return this.add(v.negate())}wNAF(v){return _.wNAFCached(this,x,v,B.normalizeZ)}multiply(v){let{p:U,f:O}=this.wNAF(m(v,n));return B.normalizeZ([U,O])[0]}multiplyUnsafe(v){let U=S(v);return U===be?L:this.equals(L)||U===ne?this:this.equals(E)?this.wNAF(U).p:_.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(v){let{ex:U,ey:O,ez:q}=this,$=this.is0();v==null&&(v=$?Jd:r.inv(q));let Y=u(U*v),rt=u(O*v),X=u(q*v);if($)return{x:be,y:ne};if(X!==ne)throw new Error("invZ was invalid");return{x:Y,y:rt}}clearCofactor(){let{h:v}=e;return v===ne?this:this.multiplyUnsafe(v)}static fromHex(v,U=!1){let{d:O,a:q}=e,$=r.BYTES;v=bt("pointHex",v,$);let Y=v.slice(),rt=v[$-1];Y[$-1]=rt&-129;let X=xe(Y);X===be||(U?m(X,f):m(X,r.ORDER));let j=u(X*X),mt=u(j-ne),dt=u(O*j-q),{isValid:zt,value:Gt}=l(mt,dt);if(!zt)throw new Error("Point.fromHex: invalid y coordinate");let Nt=(Gt&ne)===ne,Yt=(rt&128)!==0;if(!U&&Gt===be&&Yt)throw new Error("Point.fromHex: x=0 and x_0=1");return Yt!==Nt&&(Gt=u(-Gt)),B.fromAffine({x:Gt,y:X})}static fromPrivateKey(v){return K(v).point}toRawBytes(){let{x:v,y:U}=this.toAffine(),O=$e(U,r.BYTES);return O[O.length-1]|=v&ne?128:0,O}toHex(){return Ge(this.toRawBytes())}}B.BASE=new B(e.Gx,e.Gy,ne,u(e.Gx*e.Gy)),B.ZERO=new B(be,ne,ne,be);let{BASE:E,ZERO:L}=B,_=Ri(B,a*8);function N(R){return ut(R,n)}function M(R){return N(xe(R))}function K(R){let v=a;R=bt("private key",R,v);let U=bt("hashed private key",o(R),2*v),O=h(U.slice(0,v)),q=U.slice(v,2*v),$=M(O),Y=E.multiply($),rt=Y.toRawBytes();return{head:O,prefix:q,scalar:$,point:Y,pointBytes:rt}}function F(R){return K(R).pointBytes}function H(R=new Uint8Array,...v){let U=Ye(...v);return M(o(y(U,bt("context",R),!!i)))}function Z(R,v,U={}){R=bt("message",R),i&&(R=i(R));let{prefix:O,scalar:q,pointBytes:$}=K(v),Y=H(U.context,O,R),rt=E.multiply(Y).toRawBytes(),X=H(U.context,rt,$,R),j=N(Y+X*q);S(j);let mt=Ye(rt,$e(j,r.BYTES));return bt("result",mt,a*2)}let A=tp;function k(R,v,U,O=A){let{context:q,zip215:$}=O,Y=r.BYTES;R=bt("signature",R,2*Y),v=bt("message",v),i&&(v=i(v));let rt=xe(R.slice(Y,2*Y)),X,j,mt;try{X=B.fromHex(U,$),j=B.fromHex(R.slice(0,Y),$),mt=E.multiplyUnsafe(rt)}catch{return!1}if(!$&&X.isSmallOrder())return!1;let dt=H(q,j.toRawBytes(),X.toRawBytes(),v);return j.add(X.multiplyUnsafe(dt)).subtract(mt).clearCofactor().equals(B.ZERO)}return E._setWindowSize(8),{CURVE:e,getPublicKey:F,sign:Z,verify:k,ExtendedPoint:B,utils:{getExtendedPublicKey:K,randomPrivateKey:()=>s(r.BYTES),precompute(R=8,v=B.BASE){return v._setWindowSize(R),v.multiply(BigInt(3)),v}}}}var Dn=BigInt(0),ss=BigInt(1);function rp(t){return fe(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function Z0(t){let e=rp(t),{P:r}=e,n=x=>ut(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>es(x,r-BigInt(2),r));function f(x,I,B){let E=n(x*(I-B));return I=n(I-E),B=n(B+E),[I,B]}function u(x){if(typeof x=="bigint"&&Dn<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function h(x,I){let B=u(x),E=u(I),L=B,_=ss,N=Dn,M=B,K=ss,F=Dn,H;for(let A=BigInt(i-1);A>=Dn;A--){let k=E>>A&ss;F^=k,H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1],F=k;let T=_+N,R=n(T*T),v=_-N,U=n(v*v),O=R-U,q=M+K,$=M-K,Y=n($*T),rt=n(q*v),X=Y+rt,j=Y-rt;M=n(X*X),K=n(L*n(j*j)),_=n(R*U),N=n(O*(R+n(l*O)))}H=f(F,_,M),_=H[0],M=H[1],H=f(F,N,K),N=H[0],K=H[1];let Z=c(N);return n(_*Z)}function y(x){return $e(n(x),o)}function d(x){let I=bt("u coordinate",x,o);return s===o&&(I[s-1]&=127),xe(I)}function p(x){let I=bt("scalar",x);if(I.length!==o&&I.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${I.length}`);return xe(a(I))}function g(x,I){let B=d(I),E=p(x),L=h(B,E);if(L===Dn)throw new Error("Invalid private or public key received");return y(L)}let m=y(e.Gu);function S(x){return g(x,m)}return{scalarMult:g,scalarMultBase:S,getSharedSecret:(x,I)=>g(x,I),getPublicKey:x=>S(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:m}}var Pn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),X0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),nb=BigInt(0),np=BigInt(1),as=BigInt(2),ip=BigInt(5),Q0=BigInt(10),op=BigInt(20),sp=BigInt(40),j0=BigInt(80);function J0(t){let e=Pn,n=t*t%e*t%e,i=vt(n,as,e)*n%e,o=vt(i,np,e)*t%e,s=vt(o,ip,e)*o%e,a=vt(s,Q0,e)*s%e,c=vt(a,op,e)*a%e,f=vt(c,sp,e)*c%e,u=vt(f,j0,e)*f%e,l=vt(u,j0,e)*f%e,h=vt(l,Q0,e)*s%e;return{pow_p_5_8:vt(h,as,e)*t%e,b2:n}}function tc(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function ap(t,e){let r=Pn,n=ut(e*e*e,r),i=ut(n*n*e,r),o=J0(t*i).pow_p_5_8,s=ut(t*n*o,r),a=ut(e*s*s,r),c=s,f=ut(s*X0,r),u=a===t,l=a===ut(-t,r),h=a===ut(-t*X0,r);return u&&(s=c),(l||h)&&(s=f),G0(s,r)&&(s=ut(-s,r)),{isValid:u||l,value:s}}var Ze=Li(Pn,void 0,!0),cs={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ze,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Xo,randomBytes:Br,adjustScalarBytes:tc,uvRatio:ap},Jr=Di(cs);function ec(t,e,r){if(e.length>255)throw new Error("Context is too big");return Si($o("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var ib=Di({...cs,domain:ec}),ob=Di({...cs,domain:ec,prehash:Xo}),Nn=(()=>Z0({P:Pn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Pn,{pow_p_5_8:r,b2:n}=J0(t);return ut(vt(r,BigInt(3),e)*n,e)},adjustScalarBytes:tc,randomBytes:Br}))();var cp=(Ze.ORDER+BigInt(3))/BigInt(8),sb=Ze.pow(as,cp),ab=Ze.sqrt(Ze.neg(Ze.ONE)),cb=(Ze.ORDER-BigInt(5))/BigInt(8),fb=BigInt(486662);var ub=W0(Ze,Ze.neg(BigInt(486664)));var lb=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),hb=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),db=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),pb=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var yb=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Pi=class extends Qr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ln(e);let n=sr(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return Xr(this),this.iHash.update(e),this}digestInto(e){Xr(this),Wo(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},tn=(t,e,r)=>new Pi(t,e).update(r).digest();tn.create=(t,e)=>new Pi(t,e);function nc(t,e,r){return Ln(t),r===void 0&&(r=new Uint8Array(t.outputLen)),tn(t,sr(r),sr(e))}var fs=new Uint8Array([0]),rc=new Uint8Array;function ic(t,e,r,n=32){if(Ln(t),vi(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=rc);let o=new Uint8Array(i*t.outputLen),s=tn.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)fs[0]=f+1,a.update(f===0?rc:c).update(r).update(fs).digestInto(c),o.set(c,t.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),fs.fill(0),o.slice(0,n)}var fp=(t,e,r)=>t&e^~t&r,up=(t,e,r)=>t&e^t&r^e&r,lp=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ur=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),lr=new Uint32Array(64),us=class extends jr{constructor(){super(64,32,8,!1),this.A=ur[0]|0,this.B=ur[1]|0,this.C=ur[2]|0,this.D=ur[3]|0,this.E=ur[4]|0,this.F=ur[5]|0,this.G=ur[6]|0,this.H=ur[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)lr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=lr[l-15],y=lr[l-2],d=me(h,7)^me(h,18)^h>>>3,p=me(y,17)^me(y,19)^y>>>10;lr[l]=p+lr[l-7]+d+lr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=me(a,6)^me(a,11)^me(a,25),y=u+h+fp(a,c,f)+lp[l]+lr[l]|0,p=(me(n,2)^me(n,13)^me(n,22))+up(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(){lr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var en=Bi(()=>new us);var ls={hashSHA256(t){return en(t)},getHKDF(t,e){let r=nc(en,e,t),i=ic(en,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let t=Nn.utils.randomPrivateKey();return{publicKey:Nn.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Nn.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Nn.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return Go(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){return Go(n,e,r).decrypt(t,i)}};var hp=t=>globalThis.Buffer?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t),rn=t=>{let e=hp(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};rn.bytes=2;var Un=t=>{if(t.length<2)throw RangeError("Could not decode int16BE");return t instanceof Uint8Array?new DataView(t.buffer,t.byteOffset,t.byteLength).getUint16(0,!1):t.getUint16(0)};Un.bytes=2;function oc(t){return yt([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function sc(t){return yt([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function ac(t){return yt([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function cc(t){if(t.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:t.subarray(0,32),ciphertext:t.subarray(32,t.length),ns:new Uint8Array(0)}}function fc(t){if(t.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:t.subarray(0,32),ns:t.subarray(32,80),ciphertext:t.subarray(80,t.length)}}function uc(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:new Uint8Array(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var hc=16;function dc(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=t.encrypt(n.subarray(i,o),t.session);e?.encryptedPackets.increment(),yield rn(s.byteLength),yield s}}}function pc(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-hc<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-hc),{plaintext:c,valid:f}=t.decrypt(s,t.session,a);if(!f)throw e?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");e?.decryptedPackets.increment(),yield c}}}var nt=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},On=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},Ir=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var h4=Dt(qn(),1),d4=Dt(Rf(),1);var T2=Dt(gt(),1);var Os={};Ut(Os,{base10:()=>q1});function K1(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,g=0,m=0,S=d.length;m!==S&&d[m]===0;)m++,p++;for(var x=(S-m)*u+1>>>0,I=new Uint8Array(x);m!==S;){for(var B=d[m],E=0,L=x-1;(B!==0||E<g)&&L!==-1;L--,E++)B+=256*I[L]>>>0,I[L]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");g=E,m++}for(var _=x-g;_!==x&&I[_]===0;)_++;for(var N=c.repeat(p);_<x;++_)N+=t.charAt(I[_]);return N}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var g=0,m=0;d[p]===c;)g++,p++;for(var S=(d.length-p)*f+1>>>0,x=new Uint8Array(S);d[p];){var I=r[d.charCodeAt(p)];if(I===255)return;for(var B=0,E=S-1;(I!==0||B<m)&&E!==-1;E--,B++)I+=a*x[E]>>>0,x[E]=I%256>>>0,I=I/256>>>0;if(I!==0)throw new Error("Non-zero carry");m=B,p++}if(d[p]!==" "){for(var L=S-m;L!==S&&x[L]===0;)L++;for(var _=new Uint8Array(g+(S-L)),N=g;L!==S;)_[N++]=x[L++];return _}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var O1=K1,M1=O1,kf=M1;var uv=new Uint8Array(0);var Df=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},Je=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var Pf=t=>new TextEncoder().encode(t),Nf=t=>new TextDecoder().decode(t);var Ps=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Ns=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Kf(this,e)}},Us=class{constructor(e){this.decoders=e}or(e){return Kf(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Kf=(t,e)=>new Us({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Ks=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Ps(e,r,n),this.decoder=new Ns(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},cn=({name:t,prefix:e,encode:r,decode:n})=>new Ks(t,e,r,n),gr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=kf(r,e);return cn({prefix:t,name:e,encode:n,decode:o=>Je(i(o))})},F1=(t,e,r,n)=>{let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[t[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},V1=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Tt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>cn({prefix:e,name:t,encode(i){return V1(i,n,r)},decode(i){return F1(i,n,r,t)}});var q1=gr({prefix:"9",name:"base10",alphabet:"0123456789"});var Ms={};Ut(Ms,{base16:()=>H1,base16upper:()=>z1});var H1=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),z1=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Fs={};Ut(Fs,{base2:()=>G1});var G1=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Vs={};Ut(Vs,{base256emoji:()=>X1});var Of=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}"),W1=Of.reduce((t,e,r)=>(t[r]=e,t),[]),$1=Of.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Y1(t){return t.reduce((e,r)=>(e+=W1[r],e),"")}function Z1(t){let e=[];for(let r of t){let n=$1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var X1=cn({prefix:"\u{1F680}",name:"base256emoji",encode:Y1,decode:Z1});var qs={};Ut(qs,{base32:()=>Ee,base32hex:()=>tg,base32hexpad:()=>rg,base32hexpadupper:()=>ng,base32hexupper:()=>eg,base32pad:()=>j1,base32padupper:()=>J1,base32upper:()=>Q1,base32z:()=>ig});var Ee=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Q1=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),j1=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),J1=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),tg=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),eg=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),rg=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ng=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ig=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Hs={};Ut(Hs,{base36:()=>og,base36upper:()=>sg});var og=gr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),sg=gr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var zs={};Ut(zs,{base58btc:()=>Ct,base58flickr:()=>ag});var Ct=gr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),ag=gr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ws={};Ut(Ws,{base64:()=>fn,base64pad:()=>cg,base64url:()=>Gs,base64urlpad:()=>fg});var fn=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),cg=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Gs=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),fg=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var $s={};Ut($s,{base8:()=>ug});var ug=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ys={};Ut(Ys,{identity:()=>lg});var lg=cn({prefix:"\0",name:"identity",encode:t=>Nf(t),decode:t=>Pf(t)});var Av=new TextEncoder,Cv=new TextDecoder;var Qs={};Ut(Qs,{identity:()=>xr});var Ne={};Ut(Ne,{Digest:()=>Dr,create:()=>Se,decode:()=>mr,equals:()=>Xs});var pg=Vf,Mf=128,yg=127,gg=~yg,mg=Math.pow(2,31);function Vf(t,e,r){e=e||[],r=r||0;for(var n=r;t>=mg;)e[r++]=t&255|Mf,t/=128;for(;t≫)e[r++]=t&255|Mf,t>>>=7;return e[r]=t|0,Vf.bytes=r-n+1,e}var xg=Zs,bg=128,Ff=127;function Zs(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw Zs.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Ff)<<i:(s&Ff)*Math.pow(2,i),i+=7}while(s>=bg);return Zs.bytes=o-n,r}var vg=Math.pow(2,7),wg=Math.pow(2,14),Eg=Math.pow(2,21),Sg=Math.pow(2,28),Bg=Math.pow(2,35),Ag=Math.pow(2,42),Cg=Math.pow(2,49),Ig=Math.pow(2,56),Tg=Math.pow(2,63),_g=function(t){return t<vg?1:t<wg?2:t<Eg?3:t<Sg?4:t<Bg?5:t<Ag?6:t<Cg?7:t<Ig?8:t<Tg?9:10},Lg={encode:pg,decode:xg,encodingLength:_g},Rg=Lg,Gn=Rg;var Wn=(t,e=0)=>[Gn.decode(t,e),Gn.decode.bytes],un=(t,e,r=0)=>(Gn.encode(t,e,r),e),ln=t=>Gn.encodingLength(t);var Se=(t,e)=>{let r=e.byteLength,n=ln(t),i=n+ln(r),o=new Uint8Array(i+r);return un(t,o,0),un(r,o,n),o.set(e,i),new Dr(t,r,e,o)},mr=t=>{let e=Je(t),[r,n]=Wn(e),[i,o]=Wn(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Dr(r,i,s,e)},Xs=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Df(t.bytes,r.bytes)}},Dr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var qf=0,kg="identity",Hf=Je,Dg=t=>Se(qf,Hf(t)),xr={code:qf,name:kg,encode:Hf,digest:Dg};var ta={};Ut(ta,{sha256:()=>$t,sha512:()=>Pg});var Js=({name:t,code:e,encode:r})=>new js(t,e,r),js=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?Se(this.code,r):r.then(n=>Se(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Gf=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),$t=Js({name:"sha2-256",code:18,encode:Gf("SHA-256")}),Pg=Js({name:"sha2-512",code:19,encode:Gf("SHA-512")});var Wf=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Ug(r,ea(t),e||Ct.encoder);default:return Kg(r,ea(t),e||Ee.encoder)}};var $f=new WeakMap,ea=t=>{let e=$f.get(t);if(e==null){let r=new Map;return $f.set(t,r),r}return e},Be=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==$n)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Og)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=Se(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Xs(e.multihash,n.multihash)}toString(e){return Wf(this,e)}toJSON(){return{"/":Wf(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s||Yf(n,i,o.bytes))}else if(r[Mg]===!0){let{version:n,multihash:i,code:o}=r,s=mr(i);return t.create(n,o,s)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==$n)throw new Error(`Version 0 CID must use dag-pb (code: ${$n}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=Yf(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,$n,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=Je(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Dr(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=Wn(e.subarray(r));return r+=h,l},i=n(),o=$n;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,i]=Ng(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return ea(o).set(n,e),o}},Ng=(t,e)=>{switch(t[0]){case"Q":{let r=e||Ct;return[Ct.prefix,r.decode(`${Ct.prefix}${t}`)]}case Ct.prefix:{let r=e||Ct;return[Ct.prefix,r.decode(t)]}case Ee.prefix:{let r=e||Ee;return[Ee.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},Ug=(t,e,r)=>{let{prefix:n}=r;if(n!==Ct.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},Kg=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},$n=112,Og=18,Yf=(t,e,r)=>{let n=ln(t),i=n+ln(e),o=new Uint8Array(i+r.byteLength);return un(t,o,0),un(e,o,n),o.set(r,i),o},Mg=Symbol.for("@ipld/js-cid/CID");var Ue={...Ys,...Fs,...$s,...Os,...Ms,...qs,...Hs,...zs,...Ws,...Vs},qv={...ta,...Qs};function Xf(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var Zf=Xf("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),ra=Xf("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=ce(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Fg={utf8:Zf,"utf-8":Zf,hex:Ue.base16,latin1:ra,ascii:ra,binary:ra,...Ue},to=Fg;function _t(t,e="utf8"){let r=to[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ir(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var Sa={};Ut(Sa,{Ed25519PrivateKey:()=>Fr,Ed25519PublicKey:()=>Xn,generateKeyPair:()=>e2,generateKeyPairFromSeed:()=>$u,unmarshalEd25519PrivateKey:()=>Jg,unmarshalEd25519PublicKey:()=>t2});var hn=32,tr=64,eo=32;async function Qf(){let t=Jr.utils.randomPrivateKey(),e=Jr.getPublicKey(t);return{privateKey:eu(t,e),publicKey:e}}async function jf(t){if(t.length!==eo)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=Jr.getPublicKey(e);return{privateKey:eu(e,r),publicKey:r}}async function Jf(t,e){let r=t.subarray(0,eo);return Jr.sign(e,r)}async function tu(t,e,r){return Jr.verify(e,r,t)}function eu(t,e){let r=new Uint8Array(tr);for(let n=0;n<eo;n++)r[n]=t[n],r[eo+n]=e[n];return r}var ee={get(t=globalThis){let e=t.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var na={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function ia(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=ee.get();r*=8;async function c(l,h){let y=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=_t(h));let g;if(h.length===0){g=await a.subtle.importKey("jwk",na,{name:"AES-GCM"},!0,["encrypt"]);try{let S={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(S,x,{name:e,length:r},!0,["encrypt"])}catch{g=await a.subtle.importKey("jwk",na,{name:"AES-GCM"},!0,["encrypt"])}}else{let S={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(S,x,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,g,l);return yt([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:e,iv:d};typeof h=="string"&&(h=_t(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,I,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",na,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,I,{name:e,length:r},!0,["decrypt"])}let S=await a.subtle.decrypt(g,m,p);return new Uint8Array(S)}return{encrypt:c,decrypt:f}}async function dn(t,e){let n=await ia().encrypt(t,e);return fn.encode(n)}var ma=Dt(fa(),1),Hu=Dt(Nu(),1),zu=Dt(Nr(),1),xa=Dt(ga(),1),Gu=Dt(qu(),1);function Xg(){zu.default._configure(),ma.default._configure(Hu.default),xa.default._configure(Gu.default)}Xg();var Wu=["uint64","int64","sint64","fixed64","sfixed64"];function Qg(t){for(let e of Wu){if(t[e]==null)continue;let r=t[e];t[e]=function(){return BigInt(r.call(this).toString())}}return t}function ba(t){return Qg(new ma.default(t))}function jg(t){for(let e of Wu){if(t[e]==null)continue;let r=t[e];t[e]=function(n){return r.call(this,n.toString())}}return t}function va(){return jg(xa.default.create())}function Kr(t,e){let r=ba(t instanceof Uint8Array?t:t.subarray());return e.decode(r)}function Or(t,e){let r=va();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var yn;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(yn||(yn={}));function so(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function wa(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return so("enum",yn.VARINT,r,n)}function Mr(t,e){return so("message",yn.LENGTH_DELIMITED,t,e)}var At;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(At||(At={}));var Ea;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(Ea||(Ea={}));(function(t){t.codec=()=>wa(Ea)})(At||(At={}));var Oe;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(Oe||(Oe={}));var Me;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),At.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=At.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(Me||(Me={}));var Xn=class{_key;constructor(e){this._key=gn(e,hn)}async verify(e,r){return tu(this._key,r,e)}marshal(){return this._key}get bytes(){return Oe.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},Fr=class{_key;_publicKey;constructor(e,r){this._key=gn(e,tr),this._publicKey=gn(r,hn)}async sign(e){return Jf(this._key,e)}get public(){return new Xn(this._publicKey)}marshal(){return this._key}get bytes(){return Me.encode({Type:At.Ed25519,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=xr.digest(this.public.bytes);return Ct.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Jg(t){if(t.length>tr){t=gn(t,tr+hn);let n=t.subarray(0,tr),i=t.subarray(tr,t.length);return new Fr(n,i)}t=gn(t,tr);let e=t.subarray(0,tr),r=t.subarray(hn);return new Fr(e,r)}function t2(t){return t=gn(t,hn),new Xn(t)}async function e2(){let{privateKey:t,publicKey:e}=await Qf();return new Fr(t,e)}async function $u(t){let{privateKey:e,publicKey:r}=await jf(t);return new Fr(e,r)}function gn(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new nt(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}function ot(t,e="utf8"){let r=to[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var Fw=Dt(Pt(),1),Vw=Dt(Zi(),1),Yu=Dt(gt(),1);function Te(t,e){let r=Uint8Array.from(t.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return ot(r,"base64url")}function ie(t){let e=Zu(t);return new Yu.default.jsbn.BigInteger(ot(e,"base16"),16)}function Zu(t,e){let r=_t(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=yt([new Uint8Array(e-r.length),r])}return r}var r2={"P-256":256,"P-384":384,"P-521":521},n2=Object.keys(r2),jw=n2.join(" / ");var Ta={};Ut(Ta,{MAX_KEY_SIZE:()=>ti,RsaPrivateKey:()=>mn,RsaPublicKey:()=>Jn,fromJwk:()=>p2,generateKeyPair:()=>y2,unmarshalRsaPrivateKey:()=>h2,unmarshalRsaPublicKey:()=>d2});var jn=Dt(gt(),1);var U8=Dt(tl(),1);function co(t){if(isNaN(t)||t<=0)throw new nt("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Br(t)}var x8=Dt(ji(),1),Ca=Dt(gt(),1);function el(t,e){return e.map(r=>ie(t[r]))}function rl(t){return Ca.default.pki.setRsaPrivateKey(...el(t,["n","e","d","p","q","dp","dq","qi"]))}function nl(t){return Ca.default.pki.setRsaPublicKey(...el(t,["n","e"]))}var qr={};Ut(qr,{jwkToPkcs1:()=>a2,jwkToPkix:()=>f2,pkcs1ToJwk:()=>s2,pkixToJwk:()=>c2});var w8=Dt(qn(),1),E8=Dt(ji(),1);var er=Dt(gt(),1);function s2(t){let e=er.default.asn1.fromDer(ot(t,"ascii")),r=er.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Te(r.n),e:Te(r.e),d:Te(r.d),p:Te(r.p),q:Te(r.q),dp:Te(r.dP),dq:Te(r.dQ),qi:Te(r.qInv),alg:"RS256"}}function a2(t){if(t.n==null||t.e==null||t.d==null||t.p==null||t.q==null||t.dp==null||t.dq==null||t.qi==null)throw new nt("JWK was missing components","ERR_INVALID_PARAMETERS");let e=er.default.pki.privateKeyToAsn1({n:ie(t.n),e:ie(t.e),d:ie(t.d),p:ie(t.p),q:ie(t.q),dP:ie(t.dp),dQ:ie(t.dq),qInv:ie(t.qi)});return _t(er.default.asn1.toDer(e).getBytes(),"ascii")}function c2(t){let e=er.default.asn1.fromDer(ot(t,"ascii")),r=er.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Te(r.n),e:Te(r.e)}}function f2(t){if(t.n==null||t.e==null)throw new nt("JWK was missing components","ERR_INVALID_PARAMETERS");let e=er.default.pki.publicKeyToAsn1({n:ie(t.n),e:ie(t.e)});return _t(er.default.asn1.toDer(e).getBytes(),"ascii")}async function il(t){let e=await ee.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await al(e);return{privateKey:r[0],publicKey:r[1]}}async function Ia(t){let r=[await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await u2(t)],n=await al({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function ol(t,e){let r=await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ee.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(e));return new Uint8Array(n,0,n.byteLength)}async function sl(t,e,r){let n=await ee.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ee.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r)}async function al(t){if(t.privateKey==null||t.publicKey==null)throw new nt("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ee.get().subtle.exportKey("jwk",t.privateKey),ee.get().subtle.exportKey("jwk",t.publicKey)])}async function u2(t){return ee.get().subtle.importKey("jwk",{kty:t.kty,n:t.n,e:t.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function cl(t,e,r,n){let i=e?nl(t):rl(t),o=ot(Uint8Array.from(r),"ascii"),s=n(o,i);return _t(s,"ascii")}function fl(t,e){return cl(t,!0,e,(r,n)=>n.encrypt(r))}function ul(t,e){return cl(t,!1,e,(r,n)=>n.decrypt(r))}function fo(t){if(t.kty!=="RSA")throw new nt("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new nt("invalid key modulus","ERR_INVALID_KEY_MODULUS");return _t(t.n,"base64url").length*8}var ti=8192,Jn=class{_key;constructor(e){this._key=e}async verify(e,r){return sl(this._key,r,e)}marshal(){return qr.jwkToPkix(this._key)}get bytes(){return Oe.encode({Type:At.RSA,Data:this.marshal()}).subarray()}encrypt(e){return fl(this._key,e)}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},mn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return co(16)}async sign(e){return ol(this._key,e)}get public(){if(this._publicKey==null)throw new nt("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Jn(this._publicKey)}decrypt(e){return ul(this._key,e)}marshal(){return qr.jwkToPkcs1(this._key)}get bytes(){return Me.encode({Type:At.RSA,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=await this.public.hash();return ot(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new jn.default.util.ByteBuffer(this.marshal()),i=jn.default.asn1.fromDer(n),o=jn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return jn.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function h2(t){let e=qr.pkcs1ToJwk(t);if(fo(e)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await Ia(e);return new mn(r.privateKey,r.publicKey)}function d2(t){let e=qr.pkixToJwk(t);if(fo(e)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Jn(e)}async function p2(t){if(fo(t)>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Ia(t);return new mn(e.privateKey,e.publicKey)}async function y2(t){if(t>ti)throw new nt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await il(t);return new mn(e.privateKey,e.publicKey)}var ka={};Ut(ka,{Secp256k1PrivateKey:()=>ri,Secp256k1PublicKey:()=>ei,generateKeyPair:()=>I2,unmarshalSecp256k1PrivateKey:()=>A2,unmarshalSecp256k1PublicKey:()=>C2});function g2(t){let e=kn(t);fe(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:m2,hexToBytes:x2}=Ti,Hr={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Hr;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:m2(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Hr,r=typeof t=="string"?x2(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=Hr._parseInt(r.subarray(2)),{d:s,l:a}=Hr._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},rr=BigInt(0),de=BigInt(1),q8=BigInt(2),ll=BigInt(3),H8=BigInt(4);function b2(t){let e=g2(t),{Fp:r}=e,n=e.toBytes||((d,p,g)=>{let m=p.toAffine();return Ye(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),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}=e,m=r.sqr(d),S=r.mul(m,d);return r.add(r.add(S,r.mul(d,p)),g)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&rr<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:g,wrapPrivateKey:m,n:S}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Ge(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(g*2,"0")}let x;try{x=typeof d=="bigint"?d:We(bt("private key",d,g))}catch{throw new Error(`private key must be ${g} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=ut(x,S)),a(x),x}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,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 S=x=>r.eql(x,r.ZERO);return S(g)&&S(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,S)=>m.toAffine(g[S])).map(l.fromAffine)}static fromHex(p){let g=l.fromAffine(i(bt("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(e.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),S=o(p);if(!r.eql(m,S))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:g,py:m,pz:S}=this,{px:x,py:I,pz:B}=p,E=r.eql(r.mul(g,B),r.mul(x,S)),L=r.eql(r.mul(m,B),r.mul(I,S));return E&&L}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:g}=e,m=r.mul(g,ll),{px:S,py:x,pz:I}=this,B=r.ZERO,E=r.ZERO,L=r.ZERO,_=r.mul(S,S),N=r.mul(x,x),M=r.mul(I,I),K=r.mul(S,x);return K=r.add(K,K),L=r.mul(S,I),L=r.add(L,L),B=r.mul(p,L),E=r.mul(m,M),E=r.add(B,E),B=r.sub(N,E),E=r.add(N,E),E=r.mul(B,E),B=r.mul(K,B),L=r.mul(m,L),M=r.mul(p,M),K=r.sub(_,M),K=r.mul(p,K),K=r.add(K,L),L=r.add(_,_),_=r.add(L,_),_=r.add(_,M),_=r.mul(_,K),E=r.add(E,_),M=r.mul(x,I),M=r.add(M,M),_=r.mul(M,K),B=r.sub(B,_),L=r.mul(M,N),L=r.add(L,L),L=r.add(L,L),new l(B,E,L)}add(p){u(p);let{px:g,py:m,pz:S}=this,{px:x,py:I,pz:B}=p,E=r.ZERO,L=r.ZERO,_=r.ZERO,N=e.a,M=r.mul(e.b,ll),K=r.mul(g,x),F=r.mul(m,I),H=r.mul(S,B),Z=r.add(g,m),A=r.add(x,I);Z=r.mul(Z,A),A=r.add(K,F),Z=r.sub(Z,A),A=r.add(g,S);let k=r.add(x,B);return A=r.mul(A,k),k=r.add(K,H),A=r.sub(A,k),k=r.add(m,S),E=r.add(I,B),k=r.mul(k,E),E=r.add(F,H),k=r.sub(k,E),_=r.mul(N,A),E=r.mul(M,H),_=r.add(E,_),E=r.sub(F,_),_=r.add(F,_),L=r.mul(E,_),F=r.add(K,K),F=r.add(F,K),H=r.mul(N,H),A=r.mul(M,A),F=r.add(F,H),H=r.sub(K,H),H=r.mul(N,H),A=r.add(A,H),K=r.mul(F,A),L=r.add(L,K),K=r.mul(k,A),E=r.mul(Z,E),E=r.sub(E,K),K=r.mul(Z,F),_=r.mul(k,_),_=r.add(_,K),new l(E,L,_)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return y.wNAFCached(this,f,p,g=>{let m=r.invertBatch(g.map(S=>S.pz));return g.map((S,x)=>S.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let g=l.ZERO;if(p===rr)return g;if(a(p),p===de)return this;let{endo:m}=e;if(!m)return y.unsafeLadder(this,p);let{k1neg:S,k1:x,k2neg:I,k2:B}=m.splitScalar(p),E=g,L=g,_=this;for(;x>rr||B>rr;)x&de&&(E=E.add(_)),B&de&&(L=L.add(_)),_=_.double(),x>>=de,B>>=de;return S&&(E=E.negate()),I&&(L=L.negate()),L=new l(r.mul(L.px,m.beta),L.py,L.pz),E.add(L)}multiply(p){a(p);let g=p,m,S,{endo:x}=e;if(x){let{k1neg:I,k1:B,k2neg:E,k2:L}=x.splitScalar(g),{p:_,f:N}=this.wNAF(B),{p:M,f:K}=this.wNAF(L);_=y.constTimeNegate(I,_),M=y.constTimeNegate(E,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),m=_.add(M),S=N.add(K)}else{let{p:I,f:B}=this.wNAF(g);m=I,S=B}return l.normalizeZ([m,S])[0]}multiplyAndAddUnsafe(p,g,m){let S=l.BASE,x=(B,E)=>E===rr||E===de||!B.equals(S)?B.multiplyUnsafe(E):B.multiply(E),I=x(this,g).add(x(p,m));return I.is0()?void 0:I}toAffine(p){let{px:g,py:m,pz:S}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(S));let I=r.mul(g,p),B=r.mul(m,p),E=r.mul(S,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:I,y:B}}isTorsionFree(){let{h:p,isTorsionFree:g}=e;if(p===de)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}=e;return p===de?this:g?g(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ge(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,y=Ri(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function v2(t){let e=kn(t);return fe(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function hl(t){let e=v2(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return rr<A&&A<r.ORDER}function a(A){return ut(A,n)}function c(A){return _i(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=b2({...e,toBytes(A,k,T){let R=k.toAffine(),v=r.toBytes(R.x),U=Ye;return T?U(Uint8Array.from([k.hasEvenY()?2:3]),v):U(Uint8Array.from([4]),v,r.toBytes(R.y))},fromBytes(A){let k=A.length,T=A[0],R=A.subarray(1);if(k===i&&(T===2||T===3)){let v=We(R);if(!s(v))throw new Error("Point is not on curve");let U=l(v),O=r.sqrt(U),q=(O&de)===de;return(T&1)===1!==q&&(O=r.neg(O)),{x:v,y:O}}else if(k===o&&T===4){let v=r.fromBytes(R.subarray(0,r.BYTES)),U=r.fromBytes(R.subarray(r.BYTES,2*r.BYTES));return{x:v,y:U}}else throw new Error(`Point of length ${k} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),y=A=>Ge(fr(A,e.nByteLength));function d(A){let k=n>>de;return A>k}function p(A){return d(A)?a(-A):A}let g=(A,k,T)=>We(A.slice(k,T));class m{constructor(k,T,R){this.r=k,this.s=T,this.recovery=R,this.assertValidity()}static fromCompact(k){let T=e.nByteLength;return k=bt("compactSignature",k,T*2),new m(g(k,0,T),g(k,T,2*T))}static fromDER(k){let{r:T,s:R}=Hr.toSig(bt("DER",k));return new m(T,R)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(k){return new m(this.r,this.s,k)}recoverPublicKey(k){let{r:T,s:R,recovery:v}=this,U=L(bt("msgHash",k));if(v==null||![0,1,2,3].includes(v))throw new Error("recovery id invalid");let O=v===2||v===3?T+e.n:T;if(O>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=v&1?"03":"02",$=f.fromHex(q+y(O)),Y=c(O),rt=a(-U*Y),X=a(R*Y),j=f.BASE.multiplyAndAddUnsafe($,rt,X);if(!j)throw new Error("point at infinify");return j.assertValidity(),j}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Ar(this.toDERHex())}toDERHex(){return Hr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Ar(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let S={isValidPrivateKey(A){try{return u(A),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let A=is(e.n);return Y0(e.randomBytes(A),e.n)},precompute(A=8,k=f.BASE){return k._setWindowSize(A),k.multiply(BigInt(3)),k}};function x(A,k=!0){return f.fromPrivateKey(A).toRawBytes(k)}function I(A){let k=A instanceof Uint8Array,T=typeof A=="string",R=(k||T)&&A.length;return k?R===i||R===o:T?R===2*i||R===2*o:A instanceof f}function B(A,k,T=!0){if(I(A))throw new Error("first arg must be private key");if(!I(k))throw new Error("second arg must be public key");return f.fromHex(k).multiply(u(A)).toRawBytes(T)}let E=e.bits2int||function(A){let k=We(A),T=A.length*8-e.nBitLength;return T>0?k>>BigInt(T):k},L=e.bits2int_modN||function(A){return a(E(A))},_=Rn(e.nBitLength);function N(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(rr<=A&&A<_))throw new Error(`bigint expected < 2^${e.nBitLength}`);return fr(A,e.nByteLength)}function M(A,k,T=K){if(["recovered","canonical"].some(dt=>dt in T))throw new Error("sign() legacy options not supported");let{hash:R,randomBytes:v}=e,{lowS:U,prehash:O,extraEntropy:q}=T;U==null&&(U=!0),A=bt("msgHash",A),O&&(A=bt("prehashed msgHash",R(A)));let $=L(A),Y=u(k),rt=[N(Y),N($)];if(q!=null){let dt=q===!0?v(r.BYTES):q;rt.push(bt("extraEntropy",dt))}let X=Ye(...rt),j=$;function mt(dt){let zt=E(dt);if(!h(zt))return;let Gt=c(zt),Nt=f.BASE.multiply(zt).toAffine(),Yt=a(Nt.x);if(Yt===rr)return;let qe=a(Gt*a(j+Yt*Y));if(qe===rr)return;let wr=(Nt.x===Yt?0:2)|Number(Nt.y&de),In=qe;return U&&d(qe)&&(In=p(qe),wr^=1),new m(Yt,In,wr)}return{seed:X,k2sig:mt}}let K={lowS:e.lowS,prehash:!1},F={lowS:e.lowS,prehash:!1};function H(A,k,T=K){let{seed:R,k2sig:v}=M(A,k,T),U=e;return Jo(U.hash.outputLen,U.nByteLength,U.hmac)(R,v)}f.BASE._setWindowSize(8);function Z(A,k,T,R=F){let v=A;if(k=bt("msgHash",k),T=bt("publicKey",T),"strict"in R)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:O}=R,q,$;try{if(typeof v=="string"||v instanceof Uint8Array)try{q=m.fromDER(v)}catch(Nt){if(!(Nt instanceof Hr.Err))throw Nt;q=m.fromCompact(v)}else if(typeof v=="object"&&typeof v.r=="bigint"&&typeof v.s=="bigint"){let{r:Nt,s:Yt}=v;q=new m(Nt,Yt)}else throw new Error("PARSE");$=f.fromHex(T)}catch(Nt){if(Nt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&q.hasHighS())return!1;O&&(k=e.hash(k));let{r:Y,s:rt}=q,X=L(k),j=c(rt),mt=a(X*j),dt=a(Y*j),zt=f.BASE.multiplyAndAddUnsafe($,mt,dt)?.toAffine();return zt?a(zt.x)===Y:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:B,sign:H,verify:Z,ProjectivePoint:f,Signature:m,utils:S}}function w2(t){return{hash:t,hmac:(e,...r)=>tn(t,e,Si(...r)),randomBytes:Br}}function dl(t,e){let r=n=>hl({...t,...w2(n)});return Object.freeze({...r(e),create:r})}var gl=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),pl=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),E2=BigInt(1),_a=BigInt(2),yl=(t,e)=>(t+e/_a)/e;function S2(t){let e=gl,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=t*t*t%e,u=f*f*t%e,l=vt(u,r,e)*u%e,h=vt(l,r,e)*u%e,y=vt(h,_a,e)*f%e,d=vt(y,i,e)*y%e,p=vt(d,o,e)*d%e,g=vt(p,a,e)*p%e,m=vt(g,c,e)*g%e,S=vt(m,a,e)*p%e,x=vt(S,r,e)*u%e,I=vt(x,s,e)*d%e,B=vt(I,n,e)*f%e,E=vt(B,_a,e);if(!La.eql(La.sqr(E),t))throw new Error("Cannot find square root");return E}var La=Li(gl,void 0,void 0,{sqrt:S2}),nr=dl({a:BigInt(0),b:BigInt(7),Fp:La,n:pl,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=pl,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-E2*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=yl(o*t,e),c=yl(-n*t,e),f=ut(t-a*r-c*i,e),u=ut(-a*n-c*o,e),l=f>s,h=u>s;if(l&&(f=e-f),h&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},en),j8=BigInt(0);var J8=nr.ProjectivePoint;function ml(){return nr.utils.randomPrivateKey()}async function xl(t,e){let{digest:r}=await $t.digest(e);try{return nr.sign(r,t).toDERRawBytes()}catch(n){throw new nt(String(n),"ERR_INVALID_INPUT")}}async function bl(t,e,r){try{let{digest:n}=await $t.digest(r);return nr.verify(e,n,t)}catch(n){throw new nt(String(n),"ERR_INVALID_INPUT")}}function vl(t){return nr.ProjectivePoint.fromHex(t).toRawBytes(!0)}function wl(t){try{nr.getPublicKey(t,!0)}catch(e){throw new nt(String(e),"ERR_INVALID_PRIVATE_KEY")}}function Ra(t){try{nr.ProjectivePoint.fromHex(t)}catch(e){throw new nt(String(e),"ERR_INVALID_PUBLIC_KEY")}}function El(t){try{return nr.getPublicKey(t,!0)}catch(e){throw new nt(String(e),"ERR_INVALID_PRIVATE_KEY")}}var ei=class{_key;constructor(e){Ra(e),this._key=e}async verify(e,r){return bl(this._key,r,e)}marshal(){return vl(this._key)}get bytes(){return Oe.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}},ri=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??El(e),wl(this._key),Ra(this._publicKey)}async sign(e){return xl(this._key,e)}get public(){return new ei(this._publicKey)}marshal(){return this._key}get bytes(){return Me.encode({Type:At.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return It(this.bytes,e.bytes)}async hash(){let{bytes:e}=await $t.digest(this.bytes);return e}async id(){let e=await this.public.hash();return ot(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return dn(this.bytes,e);throw new nt(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function A2(t){return new ri(t)}function C2(t){return new ei(t)}async function I2(){let t=ml();return new ri(t)}var zr={rsa:Ta,ed25519:Sa,secp256k1:ka};function Sl(t){let e=Object.keys(zr).join(" / ");return new nt(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Bl(t){let e=Oe.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return zr.rsa.unmarshalRsaPublicKey(r);case At.Ed25519:return zr.ed25519.unmarshalEd25519PublicKey(r);case At.Secp256k1:return zr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Sl(e.Type??"unknown")}}async function Al(t){let e=Me.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case At.RSA:return zr.rsa.unmarshalRsaPrivateKey(r);case At.Ed25519:return zr.ed25519.unmarshalEd25519PrivateKey(r);case At.Secp256k1:return zr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Sl(e.Type??"RSA")}}var Cl=Symbol.for("@libp2p/peer-id");var _2=Symbol.for("nodejs.util.inspect.custom"),Il=Object.values(Ue).map(t=>t.decoder).reduce((t,e)=>t.or(e),Ue.identity.decoder),Tl=114,Da=36,Pa=37,ni=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Cl]=!0;toString(){return this.string==null&&(this.string=Ct.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return Be.createV1(Tl,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return It(this.multihash.bytes,e);if(typeof e=="string")return Na(e).equals(this);if(e?.multihash?.bytes!=null)return It(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[_2](){return`PeerId(${this.toString()})`}},xn=class extends ni{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},bn=class extends ni{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},vn=class extends ni{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Na(t,e){if(e=e??Il,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=mr(Ct.decode(`z${t}`));return t.startsWith("12D")?new bn({multihash:r}):t.startsWith("16U")?new vn({multihash:r}):new xn({multihash:r})}return L2(Il.decode(t))}function L2(t){try{let e=mr(t);if(e.code===xr.code){if(e.digest.length===Da)return new bn({multihash:e});if(e.digest.length===Pa)return new vn({multihash:e})}if(e.code===$t.code)return new xn({multihash:e})}catch{return R2(Be.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function R2(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Tl)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===$t.code)return new xn({multihash:t.multihash});if(e.code===xr.code){if(e.digest.length===Da)return new bn({multihash:t.multihash});if(e.digest.length===Pa)return new vn({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Ua(t,e){return t.length===Da?new bn({multihash:Se(xr.code,t),privateKey:e}):t.length===Pa?new vn({multihash:Se(xr.code,t),privateKey:e}):new xn({multihash:await $t.digest(t),publicKey:t,privateKey:e})}var uo;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.webtransportCerthashes.push(r.bytes());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(uo||(uo={}));var ii;(function(t){let e;t.codec=()=>(e==null&&(e=Mr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),(i.writeDefaults===!0||r.identityKey!=null&&r.identityKey.byteLength>0)&&(n.uint32(10),n.bytes(r.identityKey??new Uint8Array(0))),(i.writeDefaults===!0||r.identitySig!=null&&r.identitySig.byteLength>0)&&(n.uint32(18),n.bytes(r.identitySig??new Uint8Array(0))),r.extensions!=null&&(n.uint32(34),uo.codec().encode(r.extensions,n,{writeDefaults:!1})),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:new Uint8Array(0),identitySig:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.identityKey=r.bytes();break;case 2:i.identitySig=r.bytes();break;case 4:i.extensions=uo.codec().decode(r,r.uint32());break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Or(r,t.codec()),t.decode=r=>Kr(r,t.codec())})(ii||(ii={}));async function _l(t,e,r){let n=await D2(t,Ll(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return k2(t.publicKey,n,r)}function k2(t,e,r){return ii.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function D2(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await Al(t.privateKey)).sign(e)}async function Ka(t){return Ua(t.identityKey)}function Oa(t){return ii.decode(t)}function Ll(t){let e=_t("noise-libp2p-static-key:");return yt([e,t],e.length+t.length)}async function Ma(t,e,r){let n=await Ua(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Ll(t);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(e.identitySig==null)throw new Error("Signature was missing from message");if(!await Bl(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function oi(t){return!(!(t instanceof Uint8Array)||t.length!==32)}var se=Dt(Nl(),1);se.default.formatters.b=t=>t==null?"undefined":Ct.baseEncode(t);se.default.formatters.t=t=>t==null?"undefined":Ee.baseEncode(t);se.default.formatters.m=t=>t==null?"undefined":fn.baseEncode(t);se.default.formatters.p=t=>t==null?"undefined":t.toString();se.default.formatters.c=t=>t==null?"undefined":t.toString();se.default.formatters.k=t=>t==null?"undefined":t.toString();se.default.formatters.a=t=>t==null?"undefined":t.toString();function W2(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function Bn(t){let e=W2(`${t}:trace`);return se.default.enabled(`${t}:trace`)&&se.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,se.default)(`${t}:trace`)),Object.assign((0,se.default)(t),{error:(0,se.default)(`${t}:error`),trace:e})}var qt=Bn("libp2p:noise");var pe;T0?pe=qt:pe=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function Ul(t){pe(`LOCAL_STATIC_PUBLIC_KEY ${ot(t.publicKey,"hex")}`),pe(`LOCAL_STATIC_PRIVATE_KEY ${ot(t.privateKey,"hex")}`)}function Fa(t){t?(pe(`LOCAL_PUBLIC_EPHEMERAL_KEY ${ot(t.publicKey,"hex")}`),pe(`LOCAL_PRIVATE_EPHEMERAL_KEY ${ot(t.privateKey,"hex")}`)):pe("Missing local ephemeral keys.")}function Kl(t){pe(`REMOTE_STATIC_PUBLIC_KEY ${ot(t,"hex")}`)}function Va(t){pe(`REMOTE_EPHEMERAL_PUBLIC_KEY ${ot(t,"hex")}`)}function Ol(t){t.cs1&&t.cs2?(pe(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${ot(t.cs1.k,"hex")}`),pe(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${ot(t.cs2.k,"hex")}`)):pe("Missing cipher state.")}var $2="Cipherstate has reached maximum n, a new handshake must be performed",po=class{n;bytes;view;constructor(e=0){this.n=e,this.bytes=new Uint8Array(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,e,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>4294967295)throw new Error($2)}};var yo=class{crypto;constructor(e){this.crypto=e}encryptWithAd(e,r,n){let i=this.encrypt(e.k,e.n,r,n);return e.n.increment(),i}decryptWithAd(e,r,n,i){let{plaintext:o,valid:s}=this.decrypt(e.k,e.n,r,n,i);return s&&e.n.increment(),{plaintext:o,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return new Uint8Array(32)}isEmptyKey(e){let r=this.createEmptyKey();return It(r,e)}encrypt(e,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,e)}encryptAndHash(e,r){let n;return this.hasKey(e.cs)?n=this.encryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,n),n}decrypt(e,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,e,o);return s?{plaintext:s,valid:!0}:{plaintext:new Uint8Array(0),valid:!1}}decryptAndHash(e,r){let n,i=!0;return this.hasKey(e.cs)?{plaintext:n,valid:i}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:i}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return qt.error(i),new Uint8Array(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(yt([e,r],e.length+r.length))}mixKey(e,r){let[n,i]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(i),e.ck=n}initializeKey(e){return{k:e,n:new po}}initializeSymmetric(e){let r=_t(e,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(e){if(e.length<=32){let r=new Uint8Array(32);return r.set(e),r}else return this.getHash(e,new Uint8Array(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,new Uint8Array(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,new Uint8Array(0),r),i=this.createEmptyKey(),o=new Uint8Array(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,new Uint8Array(0),r.ciphertext)}};var go=class extends yo{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=new Uint8Array(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=new Uint8Array(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let o=e.e.publicKey;this.mixHash(e.ss,o);let s=this.encryptAndHash(e.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(e,r){e.e=this.crypto.generateX25519KeyPair();let n=e.e.publicKey;this.mixHash(e.ss,n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let i=e.s.publicKey,o=this.encryptAndHash(e.ss,i);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,i=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let o=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(e,r){return oi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(oi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&oi(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&oi(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=new Uint8Array(32),s;return e?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let i;if(e.mc===0)i=this.writeMessageA(e.hs,r,n);else if(e.mc===1)i=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);i=s,e.h=o,e.cs1=a,e.cs2=c}else if(e.mc>2)if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,i}recvMessage(e,r){let n=new Uint8Array(0),i=!1;if(e.mc===0)({plaintext:n,valid:i}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:i}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(e.hs,r);n=s,i=a,e.h=o,e.cs1=c,e.cs2=f}return e.mc++,{plaintext:n,valid:i}}};var mo=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(e,r,n,i,o,s,a,c){this.isInitiator=e,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new go(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Ul(this.session.hs.s),this.isInitiator){qt.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,new Uint8Array(0));await this.connection.write(oc(e)),qt.trace("Stage 0 - Initiator finished sending first message."),Fa(this.session.hs.e)}else{qt.trace("Stage 0 - Responder waiting to receive first message...");let e=cc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Ir("xx handshake stage 0 validation fail");qt.trace("Stage 0 - Responder received first message."),Va(this.session.hs.re)}}async exchange(){if(this.isInitiator){qt.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=fc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Ir("xx handshake stage 1 validation fail");qt.trace("Stage 1 - Initiator received the message."),Va(this.session.hs.re),Kl(this.session.hs.rs),qt.trace("Initiator going to check remote's signature...");try{let i=Oa(r);this.remotePeer=this.remotePeer||await Ka(i),await Ma(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new On(`Error occurred while verifying signed payload: ${o.message}`)}qt.trace("All good with the signature!")}else{qt.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(sc(e)),qt.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Fa(this.session.hs.e)}}async finish(){if(this.isInitiator){qt.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(ac(e)),qt.trace("Stage 2 - Initiator sent message with signed payload.")}else{qt.trace("Stage 2 - Responder waiting for third handshake message...");let e=uc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Ir("xx handshake stage 2 validation fail");qt.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Oa(r);this.remotePeer=this.remotePeer||await Ka(i),await Ma(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new On(`Error occurred while verifying signed payload: ${o.message}`)}}Ol(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,new Uint8Array(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,new Uint8Array(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new Ir("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?e.cs1:e.cs2:r?e.cs2:e.cs1}setRemoteNoiseExtension(e){e&&(this.remoteExtensions=e)}};function Ml(t){return{xxHandshakeSuccesses:t.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:t.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:t.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:t.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:t.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var xo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(e={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=e;this.crypto=i??ls,this.extensions=n,this.metrics=s?Ml(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??new Uint8Array(0)}async secureOutbound(e,r,n){let i=Mo(r,{lengthEncoder:rn,lengthDecoder:Un,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(e,r,n){let i=Mo(r,{lengthEncoder:rn,lengthDecoder:Un,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(e){let r=await _l(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:i,connection:o}=e,s=new mo(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(e,r){let[n,i]=S0(),o=e.unwrap();return await A0(n,dc(r,this.metrics),o,s=>_n(s,{lengthDecoder:Un}),pc(r,this.metrics),n),i}};function Fl(t={}){return()=>new xo(t)}var ql=Symbol.for("@libp2p/transport");var Vl;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Vl||(Vl={}));var bo=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(o*=e,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Hl=45,Y2=15,An=new bo;function qa(t){if(!(t.length>Y2))return An.new(t).parseWith(()=>An.readIPv4Addr())}function Ha(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Hl))return An.new(t).parseWith(()=>An.readIPv6Addr())}function vo(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Hl))return An.new(t).parseWith(()=>An.readIPAddr())}var Z3=parseInt("0xFFFF",16),X3=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function wo(t){return!!qa(t)}function Eo(t){return!!Ha(t)}function So(t){return!!vo(t)}var Wl=wo,J2=Eo,za=function(t){let e=0;if(t=t.toString().trim(),Wl(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(J2(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=Wl(r[n]),s;o&&(s=za(r[n]),r[n]=ot(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,ot(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},$l=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Cn={},Ga={},em=[[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"]];em.forEach(t=>{let e=rm(...t);Ga[e.code]=e,Cn[e.name]=e});function rm(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function pt(t){if(typeof t=="number"){if(Ga[t]!=null)return Ga[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(Cn[t]!=null)return Cn[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var DE=pt("ip4"),PE=pt("ip6"),NE=pt("ipcidr");function $a(t,e){switch(pt(t).code){case 4:case 41:return im(e);case 42:return Xl(e);case 6:case 273:case 33:case 132:return jl(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Xl(e);case 421:return cm(e);case 444:return Ql(e);case 445:return Ql(e);case 466:return am(e);default:return ot(e,"base16")}}function Ya(t,e){switch(pt(t).code){case 4:return Yl(e);case 41:return Yl(e);case 42:return Zl(e);case 6:case 273:case 33:case 132:return Za(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Zl(e);case 421:return om(e);case 444:return fm(e);case 445:return um(e);case 466:return sm(e);default:return _t(e,"base16")}}var Wa=Object.values(Ue).map(t=>t.decoder),nm=function(){let t=Wa[0].or(Wa[1]);return Wa.slice(2).forEach(e=>t=t.or(e)),t}();function Yl(t){if(!So(t))throw new Error("invalid ip address");return za(t)}function im(t){let e=$l(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!So(e))throw new Error("invalid ip address");return e}function Za(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function jl(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Zl(t){let e=_t(t),r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function Xl(t){let e=ge(t);if(t=t.slice(Jt(e)),t.length!==e)throw new Error("inconsistent lengths");return ot(t)}function om(t){let e;t[0]==="Q"||t[0]==="1"?e=mr(Ct.decode(`z${t}`)).bytes:e=Be.parse(t).multihash.bytes;let r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function sm(t){let e=nm.decode(t),r=Uint8Array.from(or(e.length));return yt([r,e],r.length+e.length)}function am(t){let e=ge(t),r=t.slice(Jt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+ot(r,"base64url")}function cm(t){let e=ge(t),r=t.slice(Jt(e));if(r.length!==e)throw new Error("inconsistent lengths");return ot(r,"base58btc")}function fm(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let r=Ee.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Za(n);return yt([r,i],r.length+i.length)}function um(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let r=Ee.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Za(n);return yt([r,i],r.length+i.length)}function Ql(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=ot(e,"base32"),i=jl(r);return`${n}:${i}`}function Jl(t){t=Xa(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=pt(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw eh("invalid address: "+t);if(a.path===!0){n=Xa(i.slice(o).join("/")),e.push([a.code,Ya(a.code,n)]),r.push([a.code,n]);break}let c=Ya(a.code,i[o]);e.push([a.code,c]),r.push([a.code,$a(a.code,c)])}return{string:th(r),bytes:ja(e),tuples:e,stringTuples:r,path:n}}function Qa(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=ge(t,i),s=Jt(o),a=pt(o),c=lm(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let f=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw eh("Invalid address Uint8Array: "+ot(t,"base16"));e.push([o,f]);let u=$a(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:th(r),tuples:e,stringTuples:r,path:n}}function th(t){let e=[];return t.map(r=>{let n=pt(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Xa(e.join("/"))}function ja(t){return yt(t.map(e=>{let r=pt(e[0]),n=Uint8Array.from(or(r.code));return e.length>1&&e[1]!=null&&(n=yt([n,e[1]])),n}))}function lm(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=ge(e instanceof Uint8Array?e:Uint8Array.from(e));return r+Jt(r)}}function Xa(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function eh(t){return new Error("Error parsing address: "+t)}var hm=Symbol.for("nodejs.util.inspect.custom"),dm=[pt("dns").code,pt("dns4").code,pt("dns6").code,pt("dnsaddr").code],pm=new Map,nh=Symbol.for("@multiformats/js-multiaddr/multiaddr");function ym(t){return!!t?.[nh]}var rh=class t{bytes;#e;#t;#r;#n;[nh]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Qa(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=Jl(e)}else if(ym(e))r=Qa(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=pt("tcp"),a=pt("udp"),c=pt("ip4"),f=pt("ip6"),u=pt("dns6"),l=pt("ip6zone");for(let[y,d]of this.stringTuples())y===l.code&&(o=`%${d??""}`),dm.includes(y)&&(r=s.name,i=443,n=`${d??""}${o}`,e=y===u.code?6:4),(y===s.code||y===a.code)&&(r=pt(y).name,i=parseInt(d??"")),(y===c.code||y===f.code)&&(r=pt(y).name,n=`${d??""}${o}`,e=y===f.code?6:4);if(e==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:r,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},pt(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>pt(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(ja(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Cn.p2p.code&&e.push([n,i]),n===Cn["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?ot(Ct.decode(`z${n}`),"base58btc"):ot(Be.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return It(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=pm.get(r.name);if(n==null)throw new nt(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[hm](){return`Multiaddr(${this.#e})`}};var gm=t=>t.toString().split("/").slice(1),si=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),Rt=t=>({match:e=>si(r=>r===t).match(e),pattern:t}),Co=()=>({match:t=>si(e=>typeof e=="string").match(t),pattern:"{string}"}),ih=()=>({match:t=>si(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),ye=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Ct.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),Bo=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{Gs.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),Fe=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Ve=(...t)=>({match:e=>{let r;for(let n of t){let i=n.match(e);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),kt=(...t)=>({match:e=>{for(let r of t){let n=r.match(e);if(n===!1)return!1;e=n}return e},pattern:`and(${t.map(e=>e.pattern).join(", ")})`});function Ht(...t){function e(i){let o=gm(i);for(let s of t){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return e(i)!==!1}function n(i){let o=e(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var t0=kt(Rt("dns4"),Co()),e0=kt(Rt("dns6"),Co()),r0=kt(Rt("dnsaddr"),Co()),oh=kt(Rt("dns"),Co()),aS=Ht(t0),cS=Ht(e0),fS=Ht(r0),uS=Ht(Ve(oh,r0,t0,e0)),sh=kt(Rt("ip4"),si(wo)),ah=kt(Rt("ip6"),si(Eo)),ch=Ve(sh,ah),Io=Ve(ch,oh,t0,e0,r0),lS=Ht(sh),hS=Ht(ah),dS=Ht(ch),To=kt(Io,Rt("tcp"),ih()),ai=kt(Io,Rt("udp"),ih()),mm=Ve(To,ai),pS=Ht(To),yS=Ht(ai),n0=kt(ai,Rt("quic")),_o=kt(ai,Rt("quic-v1")),xm=Ve(n0,_o),gS=Ht(n0),mS=Ht(_o),Ja=Ve(Io,To,ai,n0,_o),fh=Ve(kt(Ja,Rt("ws"),Fe(ye()))),xS=Ht(fh),uh=Ve(kt(Ja,Rt("wss"),Fe(ye())),kt(Ja,Rt("tls"),Rt("ws"),Fe(ye()))),bS=Ht(uh),lh=kt(mm,Rt("webrtc-direct"),Bo(),Fe(Bo()),Fe(ye())),vS=Ht(lh),hh=kt(_o,Rt("webtransport"),Bo(),Bo(),Fe(ye())),Lo=Ht(hh),Ao=Ve(fh,uh,kt(To,Fe(ye())),kt(xm,Fe(ye())),kt(Io,Fe(ye())),lh,hh,ye()),wS=Ht(Ao),bm=kt(Ao,Rt("p2p-circuit"),ye()),ES=Ht(bm),vm=Ve(kt(Ao,Rt("p2p-circuit"),Rt("webrtc"),ye()),kt(Ao,Rt("webrtc"),Fe(ye())),Rt("webrtc")),SS=Ht(vm);var ci=Bn("libp2p:webtransport:stream");async function i0(t,e,r,n,i){let o=t.writable.getWriter(),s=t.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")||ci.error(`WebTransport writer closed unexpectedly: streamId=${e} err=${h.message}`)}c=!0,c&&f&&a()})().catch(()=>{ci.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await s.closed.catch(y=>y);h!=null&&ci.error(`WebTransport reader closed unexpectedly: streamId=${e} err=${h.message}`),f=!0,c&&f&&a()}().catch(()=>{ci.error("WebTransport failed to cleanup closed stream")});let u=!1,l={id:e,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){c||(o.abort(h).catch(y=>{ci.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 re(h.value)}}(),sink:async function(h){if(u)throw new Error("sink already called on stream");u=!0;try{this.writeStatus="writing";for await(let 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 o0(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async t=>new Promise(()=>{})}}function dh(t,e){return e.filter(n=>!!t.find(i=>It(n,i))).length===e.length}var wm=Object.values(Ue).map(t=>t.decoder).reduce((t,e)=>t.or(e));function Em(t){return Ne.decode(wm.decode(t))}function ph(t){if(!Lo.matches(t))throw new nt("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let e=t.stringTuples(),r=e.filter(([s,a])=>s===pt("certhash").code).map(([s,a])=>Em(a??"")),n=e.filter(([s,a])=>s===pt("p2p").code).map(([s,a])=>Na(a??""))[0],i=t.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var ae=Bn("libp2p:webtransport"),s0=class{components;config;metrics;constructor(e,r={}){this.components=e,this.config={maxInboundStreams:r.maxInboundStreams??1e3},e.metrics!=null&&(this.metrics={dialerEvents:e.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[ql]=!0;async dial(e,r){r?.signal?.throwIfAborted(),ae("dialing %s",e);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=ph(e);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{},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){ae.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=>{ae.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()=>{ae("Closing webtransport"),f("close")},abort:d=>{ae("aborting webtransport due to passed err",d),f("abort")},remoteAddr:e,timeline:{open:Date.now()},...o0()},h=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(y),skipProtection:!0})}catch(y){throw ae.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(e,r,n,i){let o=await e.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let h of l)await s.write(h)}},f=Fl()(),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{ae.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{ae.error(`Failed to close authentication stream reader: ${l.message}`)}),!dh(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(e){let r=0,n=this.config;return{protocol:"webtransport",createStreamMuxer:i=>{typeof i=="function"&&(i={onIncomingStream:i});let o=[];return async function(){let a=e.incomingBidirectionalStreams.getReader();for(;;){let{done:c,value:f}=await a.read();if(c)break;if(o.length>=n.maxInboundStreams)f.writable.close().catch(u=>{ae.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${u.message}`)}),f.readable.cancel().catch(u=>{ae.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${u.message}`)});else{let u=await i0(f,String(r++),"inbound",o,i?.onStreamEnd);o.push(u),i?.onIncomingStream?.(u)}}}().catch(()=>{ae.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:o,newStream:async a=>{let c=await e.createBidirectionalStream(),f=await i0(c,String(r++),i?.direction??"outbound",o,i?.onStreamEnd);return o.push(f),f},close:async a=>{ae("Closing webtransport muxer"),await Promise.all(o.map(async c=>c.close(a)))},abort:a=>{ae("Aborting webtransport muxer with err:",a);for(let c of o)c.abort(a)},...o0()}}}}createListener(e){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(e){return e.filter(Lo.exactMatch)}};function Sm(t={}){return e=>new s0(e,t)}return Th(Bm);})();
|
|
2
|
+
"use strict";var Libp2PWebtransport=(()=>{var Pl=Object.create;var ei=Object.defineProperty;var Dl=Object.getOwnPropertyDescriptor;var kl=Object.getOwnPropertyNames;var Ul=Object.getPrototypeOf,Kl=Object.prototype.hasOwnProperty;var lt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Nt=(e,t)=>{for(var r in t)ei(e,r,{get:t[r],enumerable:!0})},i0=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of kl(t))!Kl.call(e,i)&&i!==r&&ei(e,i,{get:()=>t[i],enumerable:!(n=Dl(t,i))||n.enumerable});return e};var Wt=(e,t,r)=>(r=e!=null?Pl(Ul(e)):{},i0(t||!e||!e.__esModule?ei(r,"default",{value:e,enumerable:!0}):r,e)),Ol=e=>i0(ei({},"__esModule",{value:!0}),e);var f0=lt((Ym,c0)=>{"use strict";function a0(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function $l(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 a0(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),a0(new i,r)}}c0.exports=$l});var pt=lt((z2,ac)=>{ac.exports={options:{usePureJavaScript:!1}}});var uc=lt((G2,fc)=>{var ss={};fc.exports=ss;var cc={};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=wd(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=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:hc.encode,decode:hc.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,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)},Ti=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){Ti(Bd,arguments,i)};b.getItem=function(e,t,r,n){return Ti(Ad,arguments,n)};b.removeItem=function(e,t,r,n){Ti(Cd,arguments,n)};b.clearItems=function(e,t,r){Ti(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 _i=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();_i();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=Li(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 Li(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(Li(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Li(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=Li(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+=`
|
|
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
|
+
`,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 Dt=pt();Lt();xc.exports=Dt.cipher=Dt.cipher||{};Dt.cipher.algorithms=Dt.cipher.algorithms||{};Dt.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Dt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};Dt.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Dt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};Dt.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),Dt.cipher.algorithms[e]=t};Dt.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in Dt.cipher.algorithms?Dt.cipher.algorithms[e]:null};var ls=Dt.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=Dt.util.createBuffer(),this.output=e.output||Dt.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 kt=pt();Lt();kt.cipher=kt.cipher||{};var nt=bc.exports=kt.cipher.modes=kt.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=Ri(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=kt.util.createBuffer(),this._partialBytes=0};nt.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ri(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=kt.util.createBuffer(),this._partialBytes=0};nt.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ri(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=kt.util.createBuffer(),this._partialBytes=0};nt.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ri(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}Ni(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=kt.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=kt.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=kt.util.createBuffer(e.additionalData):r=kt.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=kt.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),Ni(this._inBlock),this._partialBytes=0,r=kt.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),Ni(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),Ni(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=kt.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 Ri(e,t){if(typeof e=="string"&&(e=kt.util.createBuffer(e)),kt.util.isArray(e)&&e.length>4){var r=e;e=kt.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(!kt.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Ni(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=Pi({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};gt.aes.createEncryptionCipher=function(e,t){return Pi({key:e,output:null,decrypt:!1,mode:t})};gt.aes.startDecrypting=function(e,t,r,n){var i=Pi({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};gt.aes.createDecryptionCipher=function(e,t){return Pi({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 Pi(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=Di({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createEncryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!1,mode:t})};Et.des.startDecrypting=function(e,t,r,n){var i=Di({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createDecryptionCipher=function(e,t){return Di({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 Di(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 ki=pt();Ic.exports=ki.md=ki.md||{};ki.md.algorithms=ki.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 Ui=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=Ui());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 Oi=pt();Lt();var Nc=Pc.exports=Oi.pem=Oi.pem||{};Nc.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
|
|
9
|
+
`,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=Ki(n)),e.contentDomain&&(n={name:"Content-Domain",values:[e.contentDomain]},r+=Ki(n)),e.dekInfo&&(n={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&n.values.push(e.dekInfo.parameters),r+=Ki(n)),e.headers)for(var i=0;i<e.headers.length;++i)r+=Ki(e.headers[i]);return e.procType&&(r+=`\r
|
|
10
|
+
`),r+=Oi.util.encode64(e.body,t.maxline||64)+`\r
|
|
11
|
+
`,r+="-----END "+e.type+`-----\r
|
|
12
|
+
`,r};Nc.decode=function(e){for(var t=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(e),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Oi.util.decode64(o[3])};if(t.push(a),!!o[2]){for(var c=o[2].split(i),f=0;o&&f<c.length;){for(var u=c[f].replace(/\s+$/,""),l=f+1;l<c.length;++l){var 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(Fd(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 Ki(e){for(var t=e.name+": ",r=[],n=function(c,f){return" "+f},i=0;i<e.values.length;++i)r.push(e.values[i].replace(/^(\S+\r\n)/,n));t+=r.join(",")+`\r
|
|
13
|
+
`;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
|
+
`+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 Mi=null;Ae.util.isNodejs&&!Ae.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Mi=Ui());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 Mi?(t.seedFile=function(f,u){Mi.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},t.seedFileSync=function(f){return Mi.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",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 Ut=pt();xs();Fc();qc();Lt();(function(){if(Ut.random&&Ut.random.getBytes){vs.exports=Ut.random;return}(function(e){var t={},r=new Array(4),n=Ut.util.createBuffer();t.formatKey=function(l){var h=Ut.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Ut.aes._expandKey(l,!1)},t.formatSeed=function(l){var h=Ut.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 Ut.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=Ut.md.sha256;function i(){var l=Ut.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=Ut.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ut.options.usePureJavaScript||!Ut.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(!Ut.random)Ut.random=o;else for(var u in o)Ut.random[u]=o[u];Ut.random.createInstance=i,vs.exports=Ut.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 qi=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",Fi=new Array,Qr,ae;Qr="0".charCodeAt(0);for(ae=0;ae<=9;++ae)Fi[Qr++]=ae;Qr="a".charCodeAt(0);for(ae=10;ae<36;++ae)Fi[Qr++]=ae;Qr="A".charCodeAt(0);for(ae=10;ae<36;++ae)Fi[Qr++]=ae;function Zc(e){return Yd.charAt(e)}function Xc(e,t){var r=Fi[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 Vi(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function np(){return this.t<=0?0:this.DB*(this.t-1)+Vi(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-Vi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),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=Vi(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function 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=Vi(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=Hi(i,a-o.digestLength-1,s),g=Ie.util.xorBytes(d,p,d.length),m=Hi(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=Hi(u,i.digestLength,o),h=Ie.util.xorBytes(f,l,f.length),y=Hi(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 Hi(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();qi();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 Gi=lt((db,mf)=>{var $=pt();Pn();qi();_i();ff();uf();Dn();Lt();typeof ot>"u"&&(ot=$.jsbn.BigInteger);var ot,Is=$.util.isNodejs?Ui():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?zi(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||$.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new ot(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new ot(null);r.fromInt(30);for(var n=0,i=function(l,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=zi(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=zi(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var h=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:zi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(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 zi(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=$.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function 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();_i();Rc();Dc();Dn();$c();Gi();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?eo(e,t,Ur,"day"):t>=pn?eo(e,t,pn,"hour"):t>=dn?eo(e,t,dn,"minute"):t>=hn?eo(e,t,hn,"second"):e+" ms"}function eo(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,ro)=>{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 ":" ")+"+"+ro.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{}}ro.exports=zu()(ne);var{formatters:Xg}=ro.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 ri(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(ri(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(ri(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(ri(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(!ri(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 ni(e){return e[Symbol.asyncIterator]!=null}var ii=e=>{let t=Xt(e),r=Vt(t);return Je(e,r),ii.bytes=t,r};ii.bytes=0;function oi(e,t){t=t??{};let r=t.lengthEncoder??ii;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ni(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}oi.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??ii;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 ni(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 si=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 si(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 si(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 ai=class extends Error{code;constructor(t,r){super(t),this.code=r}},To=class extends ai{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 ai("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 ci=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 ci("message length length too long","ERR_MSG_LENGTH_TOO_LONG")}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new ci("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(oi.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 fi(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ui(e){if(typeof e=="string")e=fi(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 li(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=ui(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=ui(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(ui(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=fi("expand 16-byte k"),sh=fi("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 hi=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(hi),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(hi,c-d);if(l&&p===hi){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+=hi;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 li(i),li(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),li(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 di(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");di(e.outputLen),di(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 pi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var L0=e=>e instanceof Uint8Array;var yi=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 gi(...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 mi(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(pi&&typeof pi.getRandomValues=="function")return pi.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=yi(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=yi(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=yi(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 xi=BigInt(4294967295),qo=BigInt(32);function R0(e,t=!1){return t?{h:Number(e&xi),l:Number(e>>qo&xi)}:{h:Number(e>>qo&xi)|0,l:Number(e&xi)|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=mi(()=>new Ho);var wi={};Nt(wi,{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),bi=BigInt(1),qh=BigInt(2),vi=e=>e instanceof Uint8Array,Hh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Oe(e){if(!vi(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(!vi(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(vi(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(!vi(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>>=bi,t+=1);return t}function Yh(e,t){return e>>BigInt(t)&bi}var Zh=(e,t,r)=>e|(r?bi:P0)<<BigInt(t),En=e=>(qh<<BigInt(e-1))-bi,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 Ei(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 Si(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*Ei(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>Ei(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 Bi(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),Ai=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 Ci(e){let t=fd(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=Ai<<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(Ai*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*Ai*ut),t0=u(et*Ai*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,_=Bi(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=Si(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=Ci(rs);function W0(e,t,r){if(t.length>255)throw new Error("Context is too big");return gi(Vo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var u2=Ci({...rs,domain:W0}),l2=Ci({...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 Ii=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 Ii(e,t).update(r).digest();$r.create=(e,t)=>new Ii(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),di(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=mi(()=>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},Wi=Y1;function At(e,t="utf8"){let r=Wi[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,Yi=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!==Yi)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,Yi);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<Yi;n++)r[n]=e[n],r[Yi+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 Zi(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 Zi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Zi(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=Zi(this.buf,this.pos+=4),r=Zi(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 Xi(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 Xi("enum",sn.VARINT,r,n)}function Lr(e,t){return Xi("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=Wi[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(qi(),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(Gi(),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(Gi(),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 ji(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(ji(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(ji(t)>$n)throw new rt("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Gn(t)}async function bg(e){if(ji(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}=wi,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=Bi(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 Ei(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,gi(...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=Si(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 to;(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())})(to||(to={}));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),to.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=to.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 Kt=yn("libp2p:noise");var ue;m0?ue=Kt: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",no=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 io=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 Kt.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 no}}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 oo=class extends io{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 so=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 oo(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if($u(this.session.hs.s),this.isInitiator){Kt.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)),Kt.trace("Stage 0 - Initiator finished sending first message."),_a(this.session.hs.e)}else{Kt.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");Kt.trace("Stage 0 - Responder received first message."),La(this.session.hs.re)}}async exchange(){if(this.isInitiator){Kt.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");Kt.trace("Stage 1 - Initiator received the message."),La(this.session.hs.re),Wu(this.session.hs.rs),Kt.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}`)}Kt.trace("All good with the signature!")}else{Kt.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)),Kt.trace("Stage 1 - Responder sent the second handshake message with signed payload."),_a(this.session.hs.e)}}async finish(){if(this.isInitiator){Kt.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(j0(t)),Kt.trace("Stage 2 - Initiator sent message with signed payload.")}else{Kt.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");Kt.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 ao=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 so(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 ao(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 co=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 co;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 fo(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 uo(e){return!!Ra(e)}function lo(e){return!!Na(e)}function ho(e){return!!fo(e)}var rl=uo,im=lo,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(!ho(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(!ho(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}),go=()=>({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}"}),po=()=>({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 Ot(...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"),go()),za=_t(Tt("dns6"),go()),Ga=_t(Tt("dnsaddr"),go()),yl=_t(Tt("dns"),go()),p3=Ot(Ha),y3=Ot(za),g3=Ot(Ga),m3=Ot(De(yl,Ga,Ha,za)),gl=_t(Tt("ip4"),Jn(uo)),ml=_t(Tt("ip6"),Jn(lo)),xl=De(gl,ml),mo=De(xl,yl,Ha,za,Ga),x3=Ot(gl),b3=Ot(ml),v3=Ot(xl),xo=_t(mo,Tt("tcp"),pl()),jn=_t(mo,Tt("udp"),pl()),Em=De(xo,jn),w3=Ot(xo),E3=Ot(jn),$a=_t(jn,Tt("quic")),bo=_t(jn,Tt("quic-v1")),Sm=De($a,bo),S3=Ot($a),B3=Ot(bo),qa=De(mo,xo,jn,$a,bo),bl=De(_t(qa,Tt("ws"),Pe(le()))),A3=Ot(bl),vl=De(_t(qa,Tt("wss"),Pe(le())),_t(qa,Tt("tls"),Tt("ws"),Pe(le()))),C3=Ot(vl),wl=_t(Em,Tt("webrtc-direct"),po(),Pe(po()),Pe(le())),I3=Ot(wl),El=_t(bo,Tt("webtransport"),po(),po(),Pe(le())),vo=Ot(El),yo=De(bl,vl,_t(xo,Pe(le())),_t(Sm,Pe(le())),_t(mo,Pe(le())),wl,El,le()),T3=Ot(yo),Bm=_t(yo,Tt("p2p-circuit"),le()),_3=Ot(Bm),Am=De(_t(yo,Tt("p2p-circuit"),Tt("webrtc"),le()),_t(yo,Tt("webrtc"),Pe(le())),Tt("webrtc")),L3=Ot(Am);var ti=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")||ti.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}c=!0,c&&f&&a()})().catch(()=>{ti.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await s.closed.catch(y=>y);h!=null&&ti.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),f=!0,c&&f&&a()}().catch(()=>{ti.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=>{ti.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);})();
|
|
16
16
|
//! TODO unclear how to add backpressure here?
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|