@libp2p/webtransport 4.0.10 → 4.0.11
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 +9 -9
- package/package.json +2 -2
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};ds.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=Rc[t];if(!r){r=Rc[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 Yd(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 Tt=pt((Cb,Kc)=>{var Dc=ht(),Uc=Pc(),b=Kc.exports=Dc.util=Dc.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){b.nextTick=process.nextTick,typeof setImmediate=="function"?b.setImmediate=setImmediate:b.setImmediate=b.nextTick;return}if(typeof setImmediate=="function"){b.setImmediate=function(){return setImmediate.apply(void 0,arguments)},b.nextTick=function(a){return setImmediate(a)};return}if(b.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===e){c.stopPropagation();var f=t.slice();t.length=0,f.forEach(function(u){u()})}};var s=a,e="forge.setImmediate",t=[];b.setImmediate=function(c){t.push(c),t.length===1&&window.postMessage(e,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),t=[];new MutationObserver(function(){var c=t.slice();t.length=0,c.forEach(function(f){f()})}).observe(i,{attributes:!0});var o=b.setImmediate;b.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.length===1&&i.setAttribute("a",n=!n))}}b.nextTick=b.setImmediate})();b.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;b.globalScope=function(){return b.isNodejs?globalThis:typeof self>"u"?window:self}();b.isArray=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};b.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};b.isArrayBufferView=function(e){return e&&b.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function Rn(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=ps;function ps(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 ps||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=ps;var Zd=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>Zd&&(this.data.substr(0,1),this._constructedStringLength=0)};b.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};b.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};b.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))};b.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this};b.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};b.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(b.encodeUtf8(e))};b.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};b.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};b.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))};b.ByteStringBuffer.prototype.putInt=function(e,t){Rn(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};b.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};b.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};b.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};b.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e};b.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e};b.ByteStringBuffer.prototype.getInt=function(e){Rn(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};b.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};b.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this};b.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};b.ByteStringBuffer.prototype.copy=function(){var e=b.createBuffer(this.data);return e.read=this.read,e};b.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};b.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};b.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};b.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.ByteStringBuffer.prototype.toString=function(){return b.decodeUtf8(this.bytes())};function Xd(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=Xd;b.DataBuffer.prototype.length=function(){return this.write-this.read};b.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};b.DataBuffer.prototype.accommodate=function(e,t){if(this.length()>=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this};b.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};b.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};b.DataBuffer.prototype.putBytes=function(e,t){if(b.isArrayBufferView(e)){var r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(b.isArrayBuffer(e)){var r=new Uint8Array(e);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(e instanceof b.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&b.isArrayBufferView(e.data)){var r=new Uint8Array(e.data.byteLength,e.read,e.length());this.accommodate(r.byteLength);var i=new Uint8Array(e.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(e instanceof b.ByteStringBuffer&&(e=e.data,t="binary"),t=t||"binary",typeof e=="string"){var o;if(t==="hex")return this.accommodate(Math.ceil(e.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.hex.decode(e,o,this.write),this;if(t==="base64")return this.accommodate(Math.ceil(e.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=b.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=b.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};b.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};b.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};b.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};b.DataBuffer.prototype.putInt24=function(e){return this.accommodate(3),this.data.setInt16(this.write,e>>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this};b.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};b.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};b.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this};b.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};b.DataBuffer.prototype.putInt=function(e,t){Rn(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};b.DataBuffer.prototype.putSignedInt=function(e,t){return Rn(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};b.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};b.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};b.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};b.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};b.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};b.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};b.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};b.DataBuffer.prototype.getInt=function(e){Rn(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};b.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};b.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this};b.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};b.DataBuffer.prototype.copy=function(){return new b.DataBuffer(this)};b.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this};b.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};b.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};b.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.byteLength;++t){var r=this.data.getUint8(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return b.binary.raw.encode(t);if(e==="hex")return b.binary.hex.encode(t);if(e==="base64")return b.binary.base64.encode(t);if(e==="utf8")return b.text.utf8.decode(t);if(e==="utf16")return b.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};b.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=b.encodeUtf8(e)),new b.ByteBuffer(e)};b.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};b.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};b.hexToBytes=function(e){var t="",r=0;for(e.length&!0&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t};b.bytesToHex=function(e){return b.createBuffer(e).toHex()};b.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var ir="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",or=[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],kc="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+=ir.charAt(i>>2),r+=ir.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=ir.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":ir.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
|
|
4
|
-
`,r=r.substr(t));return n+=r,n};b.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t="",r,n,i,o,s=0;s<e.length;)r=
|
|
5
|
-
`,r=r.substr(t));return n+=r,n};b.binary.base64.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/4)*3)),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,f=r;c<e.length;)i=or[e.charCodeAt(c++)-43],o=or[e.charCodeAt(c++)-43],s=or[e.charCodeAt(c++)-43],a=or[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,kc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,kc,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 ys=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}},gs=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},Qd=function(e,t,r,n){var i=gs(e,t);i===null&&(i={}),i[r]=n,ys(e,t,i)},Jd=function(e,t,r){var n=gs(e,t);return n!==null&&(n=r in n?n[r]:null),n},jd=function(e,t,r){var n=gs(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),ys(e,t,n)}},tp=function(e,t){ys(e,t,null)},Li=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){Li(Qd,arguments,i)};b.getItem=function(e,t,r,n){return Li(Jd,arguments,n)};b.removeItem=function(e,t,r,n){Li(jd,arguments,n)};b.clearItems=function(e,t,r){Li(tp,arguments,r)};b.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};b.format=function(e){for(var t=/%./g,r,n,i=0,o=[],s=0;r=t.exec(e);){n=e.substring(s,t.lastIndex-2),n.length>0&&o.push(n),s=t.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")};b.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",f=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",u=f.length>3?f.length%3:0;return c+(u?f.substr(0,u)+a:"")+f.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-f).toFixed(o).slice(2):"")};b.formatSize=function(e){return e>=1073741824?e=b.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=b.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=b.formatNumber(e/1024,0)+" KiB":e=b.formatNumber(e,0)+" bytes",e};b.bytesFromIP=function(e){return e.indexOf(".")!==-1?b.bytesFromIPv4(e):e.indexOf(":")!==-1?b.bytesFromIPv6(e):null};b.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=b.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};b.bytesFromIPv6=function(e){var t=0;e=e.split(":").filter(function(s){return s.length===0&&++t,!0});for(var r=(8-e.length+t)*2,n=b.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=b.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};b.bytesToIP=function(e){return e.length===4?b.bytesToIPv4(e):e.length===16?b.bytesToIPv6(e):null};b.bytesToIPv4=function(e){if(e.length!==4)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")};b.bytesToIPv6=function(e){if(e.length!==16)return null;for(var t=[],r=[],n=0,i=0;i<e.length;i+=2){for(var o=b.bytesToHex(e[i]+e[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=t.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}t.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),c.start===0&&t.unshift(""),c.end===7&&t.push(""))}return t.join(":")};b.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in b&&!e.update)return t(null,b.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return b.cores=navigator.hardwareConcurrency,t(null,b.cores);if(typeof Worker>"u")return b.cores=1,t(null,b.cores);if(typeof Blob>"u")return b.cores=2,t(null,b.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var f=Math.floor(s.reduce(function(u,l){return u+l},0)/s.length);return b.cores=Math.max(1,f),URL.revokeObjectURL(r),t(null,b.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(d){if(f.push(d.data),f.length===s){for(var g=0;g<s;++g)c[g].terminate();a(null,f)}}),c.push(l)}for(var u=0;u<s;++u)c[u].postMessage(u)}function o(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],d=0;d<s;++d)if(f!==d){var g=a[d];(u.st>g.st&&u.st<g.et||g.st>u.st&&g.st<u.et)&&l.push(d)}return c.reduce(function(h,p){return Math.max(h,p.length)},0)}}});var Ri=pt((Tb,Oc)=>{var Nn=ht();Nn.pki=Nn.pki||{};var xs=Oc.exports=Nn.pki.oids=Nn.oids=Nn.oids||{};function D(e,t){xs[e]=t,xs[t]=e}function ft(e,t){xs[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 Dn=pt((_b,Vc)=>{var mt=ht();Tt();Ri();var V=Vc.exports=mt.asn1=mt.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(e,t,r,n,i){if(mt.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||mt.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(e,t){var r;if(mt.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(mt.util.isArray(e)){if(!mt.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function Pn(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 ep=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;Pn(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=mt.util.createBuffer(e));var r=e.length(),n=Ni(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 Ni(e,t,r,n){var i;Pn(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=ep(e,t);if(t-=i-e.length(),c!==void 0&&c>t){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=e.length(),f.remaining=t,f.requested=c,f}c=t}var u,l,d=(o&32)===32;if(d)if(u=[],c===void 0)for(;;){if(Pn(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),u.push(Ni(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Ni(e,c,r+1,n)),t-=i-e.length(),c-=i-e.length();if(u===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=e.bytes(c)),u===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var g=e.read,h=t,p=0;if(a===V.Type.BITSTRING&&(Pn(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},x=Ni(e,t,r+1,y),v=i-e.length();t-=v,a==V.Type.BITSTRING&&v++;var m=x.tagClass;v===c&&(m===V.Class.UNIVERSAL||m===V.Class.CONTEXT_SPECIFIC)&&(u=[x])}catch{}u===void 0&&(e.read=g,t=h)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=t}if(a===V.Type.BMPSTRING)for(u="";c>0;c-=2)Pn(e,t,2),u+=String.fromCharCode(e.getInt16()),t-=2;else u=e.getBytes(c),t-=c}var I=l===void 0?null:{bitStringContents:l};return V.create(s,a,d,u,I)}V.toDer=function(e){var t=mt.util.createBuffer(),r=e.tagClass|e.type,n=mt.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=mt.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=mt.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),f+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),f&&(c=e.charAt(f),c==="+"||c==="-")){var u=parseInt(e.substr(f+1,2),10),l=parseInt(e.substr(f+4,2),10),d=u*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,f=0,u=!1;e.charAt(e.length-1)==="Z"&&(u=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var g=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);f=g*60+h,f*=6e4,d==="+"&&(f*=-1),u=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),u?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+f)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=mt.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=mt.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&mt.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var Mc=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
|
|
2
|
+
"use strict";var Libp2PWebtransport=(()=>{var th=Object.create;var ri=Object.defineProperty;var eh=Object.getOwnPropertyDescriptor;var rh=Object.getOwnPropertyNames;var nh=Object.getPrototypeOf,ih=Object.prototype.hasOwnProperty;var pt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Rt=(e,t)=>{for(var r in t)ri(e,r,{get:t[r],enumerable:!0})},d0=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of rh(t))!ih.call(e,i)&&i!==r&&ri(e,i,{get:()=>t[i],enumerable:!(n=eh(t,i))||n.enumerable});return e};var Xt=(e,t,r)=>(r=e!=null?th(nh(e)):{},d0(t||!e||!e.__esModule?ri(r,"default",{value:e,enumerable:!0}):r,e)),oh=e=>d0(ri({},"__esModule",{value:!0}),e);var S0=pt((um,E0)=>{"use strict";function w0(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function dh(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 w0(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),w0(new i,r)}}E0.exports=dh});var ht=pt((mb,Ac)=>{Ac.exports={options:{usePureJavaScript:!1}}});var Tc=pt((bb,Cc)=>{var fs={};Cc.exports=fs;var Ic={};fs.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=qd(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};fs.decode=function(e,t){if(typeof e!="string")throw new TypeError('"input" must be a string.');if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');var r=Ic[t];if(!r){r=Ic[t]=[];for(var n=0;n<t.length;++n)r[t.charCodeAt(n)]=n}e=e.replace(/\s/g,"");for(var i=t.length,o=t.charAt(0),s=[0],n=0;n<e.length;n++){var a=r[e.charCodeAt(n)];if(a===void 0)return;for(var c=0,f=a;c<s.length;++c)f+=s[c]*i,s[c]=f&255,f>>=8;for(;f>0;)s.push(f&255),f>>=8}for(var u=0;e[u]===o&&u<e.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function qd(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 _t=pt((vb,Nc)=>{var _c=ht(),Lc=Tc(),b=Nc.exports=_c.util=_c.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){b.nextTick=process.nextTick,typeof setImmediate=="function"?b.setImmediate=setImmediate:b.setImmediate=b.nextTick;return}if(typeof setImmediate=="function"){b.setImmediate=function(){return setImmediate.apply(void 0,arguments)},b.nextTick=function(a){return setImmediate(a)};return}if(b.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===e){c.stopPropagation();var f=t.slice();t.length=0,f.forEach(function(u){u()})}};var s=a,e="forge.setImmediate",t=[];b.setImmediate=function(c){t.push(c),t.length===1&&window.postMessage(e,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),t=[];new MutationObserver(function(){var c=t.slice();t.length=0,c.forEach(function(f){f()})}).observe(i,{attributes:!0});var o=b.setImmediate;b.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.length===1&&i.setAttribute("a",n=!n))}}b.nextTick=b.setImmediate})();b.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;b.globalScope=function(){return b.isNodejs?globalThis:typeof self>"u"?window:self}();b.isArray=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};b.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};b.isArrayBufferView=function(e){return e&&b.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function Rn(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=us;function us(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 us||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=us;var Hd=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>Hd&&(this.data.substr(0,1),this._constructedStringLength=0)};b.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};b.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};b.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))};b.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this};b.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};b.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(b.encodeUtf8(e))};b.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};b.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};b.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))};b.ByteStringBuffer.prototype.putInt=function(e,t){Rn(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};b.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};b.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};b.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};b.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e};b.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e};b.ByteStringBuffer.prototype.getInt=function(e){Rn(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};b.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};b.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this};b.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};b.ByteStringBuffer.prototype.copy=function(){var e=b.createBuffer(this.data);return e.read=this.read,e};b.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};b.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};b.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};b.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.ByteStringBuffer.prototype.toString=function(){return b.decodeUtf8(this.bytes())};function zd(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=zd;b.DataBuffer.prototype.length=function(){return this.write-this.read};b.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};b.DataBuffer.prototype.accommodate=function(e,t){if(this.length()>=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this};b.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};b.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};b.DataBuffer.prototype.putBytes=function(e,t){if(b.isArrayBufferView(e)){var r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(b.isArrayBuffer(e)){var r=new Uint8Array(e);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(e instanceof b.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&b.isArrayBufferView(e.data)){var r=new Uint8Array(e.data.byteLength,e.read,e.length());this.accommodate(r.byteLength);var i=new Uint8Array(e.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(e instanceof b.ByteStringBuffer&&(e=e.data,t="binary"),t=t||"binary",typeof e=="string"){var o;if(t==="hex")return this.accommodate(Math.ceil(e.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.hex.decode(e,o,this.write),this;if(t==="base64")return this.accommodate(Math.ceil(e.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=b.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=b.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};b.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};b.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};b.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};b.DataBuffer.prototype.putInt24=function(e){return this.accommodate(3),this.data.setInt16(this.write,e>>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this};b.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};b.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};b.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this};b.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};b.DataBuffer.prototype.putInt=function(e,t){Rn(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};b.DataBuffer.prototype.putSignedInt=function(e,t){return Rn(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};b.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};b.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};b.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};b.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};b.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};b.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};b.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};b.DataBuffer.prototype.getInt=function(e){Rn(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};b.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};b.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this};b.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};b.DataBuffer.prototype.copy=function(){return new b.DataBuffer(this)};b.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this};b.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};b.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};b.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.byteLength;++t){var r=this.data.getUint8(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return b.binary.raw.encode(t);if(e==="hex")return b.binary.hex.encode(t);if(e==="base64")return b.binary.base64.encode(t);if(e==="utf8")return b.text.utf8.decode(t);if(e==="utf16")return b.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};b.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=b.encodeUtf8(e)),new b.ByteBuffer(e)};b.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};b.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};b.hexToBytes=function(e){var t="",r=0;for(e.length&!0&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t};b.bytesToHex=function(e){return b.createBuffer(e).toHex()};b.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var sr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",ar=[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],Rc="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+=sr.charAt(i>>2),r+=sr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=sr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":sr.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=ar[e.charCodeAt(s++)-43],n=ar[e.charCodeAt(s++)-43],i=ar[e.charCodeAt(s++)-43],o=ar[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:Lc.encode,decode:Lc.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+=sr.charAt(i>>2),r+=sr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=sr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":sr.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=ar[e.charCodeAt(c++)-43],o=ar[e.charCodeAt(c++)-43],s=ar[e.charCodeAt(c++)-43],a=ar[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,Rc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,Rc,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 ls=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}},hs=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},Gd=function(e,t,r,n){var i=hs(e,t);i===null&&(i={}),i[r]=n,ls(e,t,i)},$d=function(e,t,r){var n=hs(e,t);return n!==null&&(n=r in n?n[r]:null),n},Wd=function(e,t,r){var n=hs(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),ls(e,t,n)}},Yd=function(e,t){ls(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(Gd,arguments,i)};b.getItem=function(e,t,r,n){return Ti($d,arguments,n)};b.removeItem=function(e,t,r,n){Ti(Wd,arguments,n)};b.clearItems=function(e,t,r){Ti(Yd,arguments,r)};b.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};b.format=function(e){for(var t=/%./g,r,n,i=0,o=[],s=0;r=t.exec(e);){n=e.substring(s,t.lastIndex-2),n.length>0&&o.push(n),s=t.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")};b.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",f=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",u=f.length>3?f.length%3:0;return c+(u?f.substr(0,u)+a:"")+f.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-f).toFixed(o).slice(2):"")};b.formatSize=function(e){return e>=1073741824?e=b.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=b.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=b.formatNumber(e/1024,0)+" KiB":e=b.formatNumber(e,0)+" bytes",e};b.bytesFromIP=function(e){return e.indexOf(".")!==-1?b.bytesFromIPv4(e):e.indexOf(":")!==-1?b.bytesFromIPv6(e):null};b.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=b.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};b.bytesFromIPv6=function(e){var t=0;e=e.split(":").filter(function(s){return s.length===0&&++t,!0});for(var r=(8-e.length+t)*2,n=b.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=b.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};b.bytesToIP=function(e){return e.length===4?b.bytesToIPv4(e):e.length===16?b.bytesToIPv6(e):null};b.bytesToIPv4=function(e){if(e.length!==4)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")};b.bytesToIPv6=function(e){if(e.length!==16)return null;for(var t=[],r=[],n=0,i=0;i<e.length;i+=2){for(var o=b.bytesToHex(e[i]+e[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=t.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}t.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),c.start===0&&t.unshift(""),c.end===7&&t.push(""))}return t.join(":")};b.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in b&&!e.update)return t(null,b.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return b.cores=navigator.hardwareConcurrency,t(null,b.cores);if(typeof Worker>"u")return b.cores=1,t(null,b.cores);if(typeof Blob>"u")return b.cores=2,t(null,b.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var f=Math.floor(s.reduce(function(u,l){return u+l},0)/s.length);return b.cores=Math.max(1,f),URL.revokeObjectURL(r),t(null,b.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(d){if(f.push(d.data),f.length===s){for(var g=0;g<s;++g)c[g].terminate();a(null,f)}}),c.push(l)}for(var u=0;u<s;++u)c[u].postMessage(u)}function o(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],d=0;d<s;++d)if(f!==d){var g=a[d];(u.st>g.st&&u.st<g.et||g.st>u.st&&g.st<u.et)&&l.push(d)}return c.reduce(function(h,p){return Math.max(h,p.length)},0)}}});var _i=pt((wb,Pc)=>{var Nn=ht();Nn.pki=Nn.pki||{};var ds=Pc.exports=Nn.pki.oids=Nn.oids=Nn.oids||{};function D(e,t){ds[e]=t,ds[t]=e}function ft(e,t){ds[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 Dn=pt((Eb,Uc)=>{var mt=ht();_t();_i();var V=Uc.exports=mt.asn1=mt.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(e,t,r,n,i){if(mt.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||mt.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(e,t){var r;if(mt.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(mt.util.isArray(e)){if(!mt.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function Pn(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 Zd=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;Pn(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=mt.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;Pn(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Zd(e,t);if(t-=i-e.length(),c!==void 0&&c>t){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=e.length(),f.remaining=t,f.requested=c,f}c=t}var u,l,d=(o&32)===32;if(d)if(u=[],c===void 0)for(;;){if(Pn(e,t,2),e.bytes(2)==="\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===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=e.bytes(c)),u===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var g=e.read,h=t,p=0;if(a===V.Type.BITSTRING&&(Pn(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},x=Li(e,t,r+1,y),v=i-e.length();t-=v,a==V.Type.BITSTRING&&v++;var m=x.tagClass;v===c&&(m===V.Class.UNIVERSAL||m===V.Class.CONTEXT_SPECIFIC)&&(u=[x])}catch{}u===void 0&&(e.read=g,t=h)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=t}if(a===V.Type.BMPSTRING)for(u="";c>0;c-=2)Pn(e,t,2),u+=String.fromCharCode(e.getInt16()),t-=2;else u=e.getBytes(c),t-=c}var C=l===void 0?null:{bitStringContents:l};return V.create(s,a,d,u,C)}V.toDer=function(e){var t=mt.util.createBuffer(),r=e.tagClass|e.type,n=mt.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=mt.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=mt.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),f+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),f&&(c=e.charAt(f),c==="+"||c==="-")){var u=parseInt(e.substr(f+1,2),10),l=parseInt(e.substr(f+4,2),10),d=u*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,f=0,u=!1;e.charAt(e.length-1)==="Z"&&(u=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var g=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);f=g*60+h,f*=6e4,d==="+"&&(f*=-1),u=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),u?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+f)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=mt.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=mt.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&mt.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var Dc=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
|
|
6
6
|
`);for(var i="",o=0;o<t*r;++o)i+=" ";switch(n+=i+"Tag: ",e.tagClass){case V.Class.UNIVERSAL:n+="Universal:";break;case V.Class.APPLICATION:n+="Application:";break;case V.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case V.Class.PRIVATE:n+="Private:";break}if(e.tagClass===V.Class.UNIVERSAL)switch(n+=e.type,e.type){case V.Type.NONE:n+=" (None)";break;case V.Type.BOOLEAN:n+=" (Boolean)";break;case V.Type.INTEGER:n+=" (Integer)";break;case V.Type.BITSTRING:n+=" (Bit string)";break;case V.Type.OCTETSTRING:n+=" (Octet string)";break;case V.Type.NULL:n+=" (Null)";break;case V.Type.OID:n+=" (Object Identifier)";break;case V.Type.ODESC:n+=" (Object Descriptor)";break;case V.Type.EXTERNAL:n+=" (External or Instance of)";break;case V.Type.REAL:n+=" (Real)";break;case V.Type.ENUMERATED:n+=" (Enumerated)";break;case V.Type.EMBEDDED:n+=" (Embedded PDV)";break;case V.Type.UTF8:n+=" (UTF8)";break;case V.Type.ROID:n+=" (Relative Object Identifier)";break;case V.Type.SEQUENCE:n+=" (Sequence)";break;case V.Type.SET:n+=" (Set)";break;case V.Type.PRINTABLESTRING:n+=" (Printable String)";break;case V.Type.IA5String:n+=" (IA5String (ASCII))";break;case V.Type.UTCTIME:n+=" (UTC time)";break;case V.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case V.Type.BMPSTRING:n+=" (BMP String)";break}else n+=e.type;if(n+=`
|
|
7
7
|
`,n+=i+"Constructed: "+e.constructed+`
|
|
8
|
-
`,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,mt.pki&&mt.pki.oids&&c in mt.pki.oids&&(n+=" ("+mt.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+mt.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+mt.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var f=e.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)Mc.test(e.value)||(n+="("+e.value+") "),n+="0x"+mt.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=mt.util.decodeUtf8(e.value)}catch(u){if(u.message==="URI malformed")n+="0x"+mt.util.bytesToHex(e.value)+" (malformed UTF8)";else throw u}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:Mc.test(e.value)?n+="0x"+mt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var bs=pt((Lb,Fc)=>{var Dt=ht();Tt();Fc.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 ms=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)};ms.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=Dt.util.createBuffer(),this.output=e.output||Dt.util.createBuffer(),this.mode.start(t)};ms.prototype.update=function(e){for(e&&this._input.putBuffer(e);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};ms.prototype.finish=function(e){e&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return e(this.blockSize,r,!1)},this.mode.unpad=function(r){return e(this.blockSize,r,!0)});var t={};return t.decrypt=this._decrypt,t.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,t)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,t))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,t))}});var ws=pt((Rb,qc)=>{var Ut=ht();Tt();Ut.cipher=Ut.cipher||{};var nt=qc.exports=Ut.cipher.modes=Ut.cipher.modes||{};nt.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};nt.ecb.prototype.start=function(e){};nt.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};nt.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};nt.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};nt.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};nt.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=Pi(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};nt.cbc.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n]);this._prev=this._outBlock};nt.cbc.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};nt.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.cbc.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};nt.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Ut.util.createBuffer(),this._partialBytes=0};nt.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Pi(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32()^this._outBlock[i],t.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};nt.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32(),t.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};nt.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Ut.util.createBuffer(),this._partialBytes=0};nt.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Pi(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(e.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};nt.ofb.prototype.decrypt=nt.ofb.prototype.encrypt;nt.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Ut.util.createBuffer(),this._partialBytes=0};nt.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Pi(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}Di(this._inBlock)};nt.ctr.prototype.decrypt=nt.ctr.prototype.encrypt;nt.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Ut.util.createBuffer(),this._partialBytes=0,this._R=3774873600};nt.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Ut.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Ut.util.createBuffer(e.additionalData):r=Ut.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Ut.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(vs(n*8)))}this._inBlock=this._j0.slice(0),Di(this._inBlock),this._partialBytes=0,r=Ut.util.createBuffer(r),this._aDataLength=vs(r.length()*8);var i=r.length()%this.blockSize;for(i&&r.fillWithByte(0,this.blockSize-i),this._s=[0,0,0,0];r.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()])};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),Di(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),Di(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};nt.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Ut.util.createBuffer();var n=this._aDataLength.concat(vs(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),t.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};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 Pi(e,t){if(typeof e=="string"&&(e=Ut.util.createBuffer(e)),Ut.util.isArray(e)&&e.length>4){var r=e;e=Ut.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Ut.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Di(e){e[e.length-1]=e[e.length-1]+1&4294967295}function vs(e){return[e/4294967296|0,e&4294967295]}});var As=pt((Nb,$c)=>{var yt=ht();bs();ws();Tt();$c.exports=yt.aes=yt.aes||{};yt.aes.startEncrypting=function(e,t,r,n){var i=Ui({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};yt.aes.createEncryptionCipher=function(e,t){return Ui({key:e,output:null,decrypt:!1,mode:t})};yt.aes.startDecrypting=function(e,t,r,n){var i=Ui({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};yt.aes.createDecryptionCipher=function(e,t){return Ui({key:e,output:null,decrypt:!0,mode:t})};yt.aes.Algorithm=function(e,t){Bs||zc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return Ss(r._w,n,i,!1)},decrypt:function(n,i){return Ss(r._w,n,i,!0)}}}),r._init=!1};yt.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=yt.util.createBuffer(t);else if(yt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=yt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!yt.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(!yt.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=Gc(t,e.decrypt&&!s),this._init=!0}};yt.aes._expandKey=function(e,t){return Bs||zc(),Gc(e,t)};yt.aes._updateBlock=Ss;Jr("AES-ECB",yt.cipher.modes.ecb);Jr("AES-CBC",yt.cipher.modes.cbc);Jr("AES-CFB",yt.cipher.modes.cfb);Jr("AES-OFB",yt.cipher.modes.ofb);Jr("AES-CTR",yt.cipher.modes.ctr);Jr("AES-GCM",yt.cipher.modes.gcm);function Jr(e,t){var r=function(){return new yt.aes.Algorithm(e,t)};yt.cipher.registerAlgorithm(e,r)}var Bs=!1,Qr=4,Gt,Es,Hc,vr,pe;function zc(){Bs=!0,Hc=[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;Gt=new Array(256),Es=new Array(256),vr=new Array(4),pe=new Array(4);for(var t=0;t<4;++t)vr[t]=new Array(256),pe[t]=new Array(256);for(var r=0,n=0,i,o,s,a,c,f,u,t=0;t<256;++t){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Gt[r]=a,Es[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,pe[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=i^e[e[e[i^s]]],n^=e[e[n]])}}function Gc(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Qr*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Gt[n>>>16&255]<<24^Gt[n>>>8&255]<<16^Gt[n&255]<<8^Gt[n>>>24]^Hc[i]<<24,i++):o>6&&c%o===4&&(n=Gt[n>>>24]<<24^Gt[n>>>16&255]<<16^Gt[n>>>8&255]<<8^Gt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=pe[0],l=pe[1],d=pe[2],g=pe[3],h=r.slice(0);a=r.length;for(var c=0,p=a-Qr;c<a;c+=Qr,p-=Qr)if(c===0||c===a-Qr)h[c]=r[p],h[c+1]=r[p+3],h[c+2]=r[p+2],h[c+3]=r[p+1];else for(var y=0;y<Qr;++y)f=r[p+y],h[c+(3&-y)]=u[Gt[f>>>24]]^l[Gt[f>>>16&255]]^d[Gt[f>>>8&255]]^g[Gt[f&255]];r=h}return r}function Ss(e,t,r,n){var i=e.length/4-1,o,s,a,c,f;n?(o=pe[0],s=pe[1],a=pe[2],c=pe[3],f=Es):(o=vr[0],s=vr[1],a=vr[2],c=vr[3],f=Gt);var u,l,d,g,h,p,y;u=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],g=t[n?1:3]^e[3];for(var x=3,v=1;v<i;++v)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[g&255]^e[++x],p=o[l>>>24]^s[d>>>16&255]^a[g>>>8&255]^c[u&255]^e[++x],y=o[d>>>24]^s[g>>>16&255]^a[u>>>8&255]^c[l&255]^e[++x],g=o[g>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^e[++x],u=h,l=p,d=y;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[g&255]^e[++x],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[g>>>8&255]<<8^f[u&255]^e[++x],r[2]=f[d>>>24]<<24^f[g>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++x],r[n?1:3]=f[g>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^e[++x]}function Ui(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=yt.cipher.createDecipher(r,e.key):n=yt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof yt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Zc=pt((Pb,Yc)=>{var wt=ht();bs();ws();Tt();Yc.exports=wt.des=wt.des||{};wt.des.startEncrypting=function(e,t,r,n){var i=ki({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};wt.des.createEncryptionCipher=function(e,t){return ki({key:e,output:null,decrypt:!1,mode:t})};wt.des.startDecrypting=function(e,t,r,n){var i=ki({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};wt.des.createDecryptionCipher=function(e,t){return ki({key:e,output:null,decrypt:!0,mode:t})};wt.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return Wc(r._keys,n,i,!1)},decrypt:function(n,i){return Wc(r._keys,n,i,!0)}}}),r._init=!1};wt.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=wt.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=up(t),this._init=!0}};we("DES-ECB",wt.cipher.modes.ecb);we("DES-CBC",wt.cipher.modes.cbc);we("DES-CFB",wt.cipher.modes.cfb);we("DES-OFB",wt.cipher.modes.ofb);we("DES-CTR",wt.cipher.modes.ctr);we("3DES-ECB",wt.cipher.modes.ecb);we("3DES-CBC",wt.cipher.modes.cbc);we("3DES-CFB",wt.cipher.modes.cfb);we("3DES-OFB",wt.cipher.modes.ofb);we("3DES-CTR",wt.cipher.modes.ctr);function we(e,t){var r=function(){return new wt.des.Algorithm(e,t)};wt.cipher.registerAlgorithm(e,r)}var rp=[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],np=[-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],ip=[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],op=[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],sp=[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],ap=[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],cp=[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],fp=[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 up(e){for(var t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],g=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,y=[],x=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],v=0,m,I=0;I<p;I++){var S=e.getInt32(),B=e.getInt32();m=(S>>>4^B)&252645135,B^=m,S^=m<<4,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>2^B)&858993459,B^=m,S^=m<<2,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=(B>>>8^S)&16711935,S^=m,B^=m<<8,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=S<<8|B>>>20&240,S=B<<24|B<<8&16711680|B>>>8&65280|B>>>24&240,B=m;for(var R=0;R<x.length;++R){x[R]?(S=S<<2|S>>>26,B=B<<2|B>>>26):(S=S<<1|S>>>27,B=B<<1|B>>>27),S&=-15,B&=-15;var L=t[S>>>28]|r[S>>>24&15]|n[S>>>20&15]|i[S>>>16&15]|o[S>>>12&15]|s[S>>>8&15]|a[S>>>4&15],O=c[B>>>28]|f[B>>>24&15]|u[B>>>20&15]|l[B>>>16&15]|d[B>>>12&15]|g[B>>>8&15]|h[B>>>4&15];m=(O>>>16^L)&65535,y[v++]=L^m,y[v++]=O^m<<16}}return y}function Wc(e,t,r,n){var i=e.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=t[0],c=t[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var f=0;f<i;f+=3){for(var u=o[f+1],l=o[f+2],d=o[f];d!=u;d+=l){var g=c^e[d],h=(c>>>4|c<<28)^e[d+1];s=a,a=c,c=s^(np[g>>>24&63]|op[g>>>16&63]|ap[g>>>8&63]|fp[g&63]|rp[h>>>24&63]|ip[h>>>16&63]|sp[h>>>8&63]|cp[h&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function ki(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=wt.cipher.createDecipher(r,e.key):n=wt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof wt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var wr=pt((Db,Xc)=>{var Ki=ht();Xc.exports=Ki.md=Ki.md||{};Ki.md.algorithms=Ki.md.algorithms||{}});var Jc=pt((Ub,Qc)=>{var Fe=ht();wr();Tt();var lp=Qc.exports=Fe.hmac=Fe.hmac||{};lp.create=function(){var e=null,t=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in Fe.md.algorithms)t=Fe.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else t=o;if(s===null)s=e;else{if(typeof s=="string")s=Fe.util.createBuffer(s);else if(Fe.util.isArray(s)){var a=s;s=Fe.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var f=s.length();f>t.blockLength&&(t.start(),t.update(s.bytes()),s=t.digest()),r=Fe.util.createBuffer(),n=Fe.util.createBuffer(),f=s.length();for(var c=0;c<f;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(f<t.blockLength)for(var a=t.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);e=s,r=r.bytes(),n=n.bytes()}t.start(),t.update(r)},i.update=function(o){t.update(o)},i.getMac=function(){var o=t.digest().bytes();return t.start(),t.update(n),t.update(o),t.digest()},i.digest=i.getMac,i}});var Oi=pt(()=>{});var tf=pt((Ob,jc)=>{var $t=ht();Jc();wr();Tt();var hp=$t.pkcs5=$t.pkcs5||{},qe;$t.util.isNodejs&&!$t.options.usePureJavaScript&&(qe=Oi());jc.exports=$t.pbkdf2=hp.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),$t.util.isNodejs&&!$t.options.usePureJavaScript&&qe.pbkdf2&&(i===null||typeof i!="object")&&(qe.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?qe.pbkdf2Sync.length===4?qe.pbkdf2(e,t,r,n,function(m,I){if(m)return o(m);o(null,I.toString("binary"))}):qe.pbkdf2(e,t,r,n,i,function(m,I){if(m)return o(m);o(null,I.toString("binary"))}):qe.pbkdf2Sync.length===4?qe.pbkdf2Sync(e,t,r,n).toString("binary"):qe.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in $t.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=$t.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=$t.hmac.create();u.start(i,e);var l="",d,g,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update($t.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var y=2;y<=r;++y)u.start(null,null),u.update(h),g=u.digest().getBytes(),d=$t.util.xorBytes(d,g,s),h=g;l+=p<c?d:d.substr(0,f)}return l}var p=1,y;function x(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update($t.util.int32ToBytes(p)),d=h=u.digest().getBytes(),y=2,v()}function v(){if(y<=r)return u.start(null,null),u.update(h),g=u.digest().getBytes(),d=$t.util.xorBytes(d,g,s),h=g,++y,$t.util.setImmediate(v);l+=p<c?d:d.substr(0,f),++p,x()}x()}});var nf=pt((Mb,rf)=>{var Vi=ht();Tt();var ef=rf.exports=Vi.pem=Vi.pem||{};ef.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
|
|
9
|
-
`,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=
|
|
10
|
-
`),r+=
|
|
8
|
+
`,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,mt.pki&&mt.pki.oids&&c in mt.pki.oids&&(n+=" ("+mt.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+mt.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+mt.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var f=e.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)Dc.test(e.value)||(n+="("+e.value+") "),n+="0x"+mt.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=mt.util.decodeUtf8(e.value)}catch(u){if(u.message==="URI malformed")n+="0x"+mt.util.bytesToHex(e.value)+" (malformed UTF8)";else throw u}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:Dc.test(e.value)?n+="0x"+mt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var ys=pt((Sb,kc)=>{var Dt=ht();_t();kc.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 ps=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)};ps.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)};ps.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()};ps.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 xs=pt((Bb,Kc)=>{var Ut=ht();_t();Ut.cipher=Ut.cipher||{};var nt=Kc.exports=Ut.cipher.modes=Ut.cipher.modes||{};nt.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};nt.ecb.prototype.start=function(e){};nt.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};nt.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};nt.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};nt.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};nt.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=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=Ut.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=Ut.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=Ut.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=Ut.util.createBuffer(),this._partialBytes=0,this._R=3774873600};nt.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Ut.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Ut.util.createBuffer(e.additionalData):r=Ut.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Ut.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(gs(n*8)))}this._inBlock=this._j0.slice(0),Ni(this._inBlock),this._partialBytes=0,r=Ut.util.createBuffer(r),this._aDataLength=gs(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=Ut.util.createBuffer();var n=this._aDataLength.concat(gs(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=Ut.util.createBuffer(e)),Ut.util.isArray(e)&&e.length>4){var r=e;e=Ut.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Ut.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Ni(e){e[e.length-1]=e[e.length-1]+1&4294967295}function gs(e){return[e/4294967296|0,e&4294967295]}});var ws=pt((Ab,Fc)=>{var yt=ht();ys();xs();_t();Fc.exports=yt.aes=yt.aes||{};yt.aes.startEncrypting=function(e,t,r,n){var i=Pi({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};yt.aes.createEncryptionCipher=function(e,t){return Pi({key:e,output:null,decrypt:!1,mode:t})};yt.aes.startDecrypting=function(e,t,r,n){var i=Pi({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};yt.aes.createDecryptionCipher=function(e,t){return Pi({key:e,output:null,decrypt:!0,mode:t})};yt.aes.Algorithm=function(e,t){vs||Mc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return bs(r._w,n,i,!1)},decrypt:function(n,i){return bs(r._w,n,i,!0)}}}),r._init=!1};yt.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=yt.util.createBuffer(t);else if(yt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=yt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!yt.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(!yt.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=Vc(t,e.decrypt&&!s),this._init=!0}};yt.aes._expandKey=function(e,t){return vs||Mc(),Vc(e,t)};yt.aes._updateBlock=bs;Jr("AES-ECB",yt.cipher.modes.ecb);Jr("AES-CBC",yt.cipher.modes.cbc);Jr("AES-CFB",yt.cipher.modes.cfb);Jr("AES-OFB",yt.cipher.modes.ofb);Jr("AES-CTR",yt.cipher.modes.ctr);Jr("AES-GCM",yt.cipher.modes.gcm);function Jr(e,t){var r=function(){return new yt.aes.Algorithm(e,t)};yt.cipher.registerAlgorithm(e,r)}var vs=!1,Qr=4,Yt,ms,Oc,Er,ye;function Mc(){vs=!0,Oc=[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),ms=new Array(256),Er=new Array(4),ye=new Array(4);for(var t=0;t<4;++t)Er[t]=new Array(256),ye[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,ms[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)Er[l][r]=f,ye[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 Vc(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Qr*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Yt[n>>>16&255]<<24^Yt[n>>>8&255]<<16^Yt[n&255]<<8^Yt[n>>>24]^Oc[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=ye[0],l=ye[1],d=ye[2],g=ye[3],h=r.slice(0);a=r.length;for(var c=0,p=a-Qr;c<a;c+=Qr,p-=Qr)if(c===0||c===a-Qr)h[c]=r[p],h[c+1]=r[p+3],h[c+2]=r[p+2],h[c+3]=r[p+1];else for(var y=0;y<Qr;++y)f=r[p+y],h[c+(3&-y)]=u[Yt[f>>>24]]^l[Yt[f>>>16&255]]^d[Yt[f>>>8&255]]^g[Yt[f&255]];r=h}return r}function bs(e,t,r,n){var i=e.length/4-1,o,s,a,c,f;n?(o=ye[0],s=ye[1],a=ye[2],c=ye[3],f=ms):(o=Er[0],s=Er[1],a=Er[2],c=Er[3],f=Yt);var u,l,d,g,h,p,y;u=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],g=t[n?1:3]^e[3];for(var x=3,v=1;v<i;++v)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[g&255]^e[++x],p=o[l>>>24]^s[d>>>16&255]^a[g>>>8&255]^c[u&255]^e[++x],y=o[d>>>24]^s[g>>>16&255]^a[u>>>8&255]^c[l&255]^e[++x],g=o[g>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^e[++x],u=h,l=p,d=y;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[g&255]^e[++x],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[g>>>8&255]<<8^f[u&255]^e[++x],r[2]=f[d>>>24]<<24^f[g>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++x],r[n?1:3]=f[g>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^e[++x]}function Pi(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=yt.cipher.createDecipher(r,e.key):n=yt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof yt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var zc=pt((Ib,Hc)=>{var wt=ht();ys();xs();_t();Hc.exports=wt.des=wt.des||{};wt.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};wt.des.createEncryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!1,mode:t})};wt.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};wt.des.createDecryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!0,mode:t})};wt.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return qc(r._keys,n,i,!1)},decrypt:function(n,i){return qc(r._keys,n,i,!0)}}}),r._init=!1};wt.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=wt.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=ip(t),this._init=!0}};Ee("DES-ECB",wt.cipher.modes.ecb);Ee("DES-CBC",wt.cipher.modes.cbc);Ee("DES-CFB",wt.cipher.modes.cfb);Ee("DES-OFB",wt.cipher.modes.ofb);Ee("DES-CTR",wt.cipher.modes.ctr);Ee("3DES-ECB",wt.cipher.modes.ecb);Ee("3DES-CBC",wt.cipher.modes.cbc);Ee("3DES-CFB",wt.cipher.modes.cfb);Ee("3DES-OFB",wt.cipher.modes.ofb);Ee("3DES-CTR",wt.cipher.modes.ctr);function Ee(e,t){var r=function(){return new wt.des.Algorithm(e,t)};wt.cipher.registerAlgorithm(e,r)}var Xd=[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],Qd=[-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],Jd=[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],jd=[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],tp=[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],ep=[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],rp=[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],np=[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 ip(e){for(var t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],g=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,y=[],x=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],v=0,m,C=0;C<p;C++){var S=e.getInt32(),B=e.getInt32();m=(S>>>4^B)&252645135,B^=m,S^=m<<4,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>2^B)&858993459,B^=m,S^=m<<2,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=(B>>>8^S)&16711935,S^=m,B^=m<<8,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=S<<8|B>>>20&240,S=B<<24|B<<8&16711680|B>>>8&65280|B>>>24&240,B=m;for(var R=0;R<x.length;++R){x[R]?(S=S<<2|S>>>26,B=B<<2|B>>>26):(S=S<<1|S>>>27,B=B<<1|B>>>27),S&=-15,B&=-15;var L=t[S>>>28]|r[S>>>24&15]|n[S>>>20&15]|i[S>>>16&15]|o[S>>>12&15]|s[S>>>8&15]|a[S>>>4&15],O=c[B>>>28]|f[B>>>24&15]|u[B>>>20&15]|l[B>>>16&15]|d[B>>>12&15]|g[B>>>8&15]|h[B>>>4&15];m=(O>>>16^L)&65535,y[v++]=L^m,y[v++]=O^m<<16}}return y}function qc(e,t,r,n){var i=e.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=t[0],c=t[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var f=0;f<i;f+=3){for(var u=o[f+1],l=o[f+2],d=o[f];d!=u;d+=l){var g=c^e[d],h=(c>>>4|c<<28)^e[d+1];s=a,a=c,c=s^(Qd[g>>>24&63]|jd[g>>>16&63]|ep[g>>>8&63]|np[g&63]|Xd[h>>>24&63]|Jd[h>>>16&63]|tp[h>>>8&63]|rp[h&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function Di(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=wt.cipher.createDecipher(r,e.key):n=wt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof wt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Sr=pt((Cb,Gc)=>{var Ui=ht();Gc.exports=Ui.md=Ui.md||{};Ui.md.algorithms=Ui.md.algorithms||{}});var Wc=pt((Tb,$c)=>{var ze=ht();Sr();_t();var op=$c.exports=ze.hmac=ze.hmac||{};op.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 ze.md.algorithms)t=ze.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=ze.util.createBuffer(s);else if(ze.util.isArray(s)){var a=s;s=ze.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=ze.util.createBuffer(),n=ze.util.createBuffer(),f=s.length();for(var c=0;c<f;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(f<t.blockLength)for(var a=t.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);e=s,r=r.bytes(),n=n.bytes()}t.start(),t.update(r)},i.update=function(o){t.update(o)},i.getMac=function(){var o=t.digest().bytes();return t.start(),t.update(n),t.update(o),t.digest()},i.digest=i.getMac,i}});var ki=pt(()=>{});var Zc=pt((Rb,Yc)=>{var Zt=ht();Wc();Sr();_t();var sp=Zt.pkcs5=Zt.pkcs5||{},Ge;Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&(Ge=ki());Yc.exports=Zt.pbkdf2=sp.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&Ge.pbkdf2&&(i===null||typeof i!="object")&&(Ge.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?Ge.pbkdf2Sync.length===4?Ge.pbkdf2(e,t,r,n,function(m,C){if(m)return o(m);o(null,C.toString("binary"))}):Ge.pbkdf2(e,t,r,n,i,function(m,C){if(m)return o(m);o(null,C.toString("binary"))}):Ge.pbkdf2Sync.length===4?Ge.pbkdf2Sync(e,t,r,n).toString("binary"):Ge.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="",d,g,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Zt.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var y=2;y<=r;++y)u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Zt.util.xorBytes(d,g,s),h=g;l+=p<c?d:d.substr(0,f)}return l}var p=1,y;function x(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Zt.util.int32ToBytes(p)),d=h=u.digest().getBytes(),y=2,v()}function v(){if(y<=r)return u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Zt.util.xorBytes(d,g,s),h=g,++y,Zt.util.setImmediate(v);l+=p<c?d:d.substr(0,f),++p,x()}x()}});var Jc=pt((Nb,Qc)=>{var Oi=ht();_t();var Xc=Qc.exports=Oi.pem=Oi.pem||{};Xc.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
11
|
`,r+="-----END "+e.type+`-----\r
|
|
12
|
-
`,r};
|
|
12
|
+
`,r};Xc.decode=function(e){for(var t=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(e),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Oi.util.decode64(o[3])};if(t.push(a),!!o[2]){for(var c=o[2].split(i),f=0;o&&f<c.length;){for(var u=c[f].replace(/\s+$/,""),l=f+1;l<c.length;++l){var d=c[l];if(!/\s/.test(d[0]))break;u+=d,f=l}if(o=u.match(n),o){for(var g={name:o[1],values:[]},h=o[2].split(","),p=0;p<h.length;++p)g.values.push(ap(h[p]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=h[0]||"";else if(!a.dekInfo&&g.name==="DEK-Info"){if(g.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:h[0],parameters:h[1]||null}}else a.headers.push(g);else{if(g.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(g.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:h[0],type:h[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(t.length===0)throw new Error("Invalid PEM formatted message.");return t};function Ki(e){for(var t=e.name+": ",r=[],n=function(c,f){return" "+f},i=0;i<e.values.length;++i)r.push(e.values[i].replace(/^(\S+\r\n)/,n));t+=r.join(",")+`\r
|
|
13
13
|
`;for(var o=0,s=-1,i=0;i<t.length;++i,++o)if(o>65&&s!==-1){var a=t[s];a===","?(++s,t=t.substr(0,s)+`\r
|
|
14
14
|
`+t.substr(s)):t=t.substr(0,s)+`\r
|
|
15
|
-
`+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function dp(e){return e.replace(/^\s+/,"")}});var uf=pt((Vb,ff)=>{var Ee=ht();wr();Tt();var sf=ff.exports=Ee.sha256=Ee.sha256||{};Ee.md.sha256=Ee.md.algorithms.sha256=sf;sf.create=function(){af||pp();var e=null,t=Ee.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Ee.util.createBuffer(),e={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ee.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),of(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ee.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Is.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};of(l,r,i);var d=Ee.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var Is=null,af=!1,cf=null;function pp(){Is="\x80",Is+=Ee.util.fillString("\0",64),cf=[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],af=!0}function of(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v=r.length();v>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)n=t[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[f]=n+t[f-7]+i+t[f-16]|0;for(u=e.h0,l=e.h1,d=e.h2,g=e.h3,h=e.h4,p=e.h5,y=e.h6,x=e.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=x+s+a+cf[f]+t[f],i=o+c,x=y,y=p,p=h,h=g+n>>>0,g=d,d=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+g|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+x|0,v-=64}}});var hf=pt((Fb,lf)=>{var Se=ht();Tt();var Fi=null;Se.util.isNodejs&&!Se.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Fi=Oi());var yp=lf.exports=Se.prng=Se.prng||{};yp.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(f,u){if(!u)return t.generateSync(f);var l=t.plugin.cipher,d=t.plugin.increment,g=t.plugin.formatKey,h=t.plugin.formatSeed,p=Se.util.createBuffer();t.key=null,y();function y(x){if(x)return u(x);if(p.length()>=f)return u(null,p.getBytes(f));if(t.generated>1048575&&(t.key=null),t.key===null)return Se.util.nextTick(function(){o(y)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=g(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Se.util.setImmediate(y)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,g=t.plugin.formatSeed;t.key=null;for(var h=Se.util.createBuffer();h.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(u(t.key,l(t.seed))),t.seed=g(u(t.key,t.seed))}return h.getBytes(f)};function o(f){if(t.pools[0].messageLength>=32)return a(),f();var u=32-t.pools[0].messageLength<<5;t.seedFile(u,function(l,d){if(l)return f(l);t.collect(d),a(),f()})}function s(){if(t.pools[0].messageLength>=32)return a();var f=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(f)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var f=t.plugin.md.create();f.update(t.keyBytes);for(var u=1,l=0;l<32;++l)t.reseeds%u===0&&(f.update(t.pools[l].digest().getBytes()),t.pools[l].start()),u=u<<1;t.keyBytes=f.digest().getBytes(),f.start(),f.update(t.keyBytes);var d=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(f){var u=null,l=Se.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(S){return d.getRandomValues(S)});var g=Se.util.createBuffer();if(u)for(;g.length()<f;){var h=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(g.length()<f)for(var x,v,m,I=Math.floor(Math.random()*65536);g.length()<f;){v=16807*(I&65535),x=16807*(I>>16),v+=(x&32767)<<16,v+=x>>15,v=(v&2147483647)+(v>>31),I=v&4294967295;for(var y=0;y<3;++y)m=I>>>(y<<3),m^=Math.floor(Math.random()*256),g.putByte(m&255)}return g.getBytes(f)}return Fi?(t.seedFile=function(f,u){Fi.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Fi.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,d){function g(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(g,h){f.postMessage({forge:{prng:{err:g,bytes:h}}})})};f.addEventListener("message",u)}},t}});var Un=pt((qb,Cs)=>{var kt=ht();As();uf();hf();Tt();(function(){if(kt.random&&kt.random.getBytes){Cs.exports=kt.random;return}(function(e){var t={},r=new Array(4),n=kt.util.createBuffer();t.formatKey=function(l){var d=kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),kt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return kt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=kt.md.sha256;function i(){var l=kt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),kt.options.usePureJavaScript||!kt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!kt.random)kt.random=o;else for(var u in o)kt.random[u]=o[u];kt.random.createInstance=i,Cs.exports=kt.random})(typeof jQuery<"u"?jQuery:null)})()});var gf=pt((Hb,yf)=>{var Zt=ht();Tt();var Ts=[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],df=[1,2,3,5],gp=function(e,t){return e<<t&65535|(e&65535)>>16-t},xp=function(e,t){return(e&65535)>>t|e<<16-t&65535};yf.exports=Zt.rc2=Zt.rc2||{};Zt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Zt.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(Ts[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Ts[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Ts[r.at(a+1)^r.at(a+o)]);return r};var pf=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Zt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=gp(h[f],df[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=xp(h[f],df[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var x=0;x<h.length;x++)for(var v=0;v<h[x][0];v++)h[x][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(h,p){h&&typeof h=="string"&&(h=Zt.util.createBuffer(h)),n=!1,i=Zt.util.createBuffer(),o=p||new Zt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var x=o.length(),v=o.at(x-1);v>x?p=!1:o.truncate(v)}return p}},g};Zt.rc2.startEncrypting=function(e,t,r){var n=Zt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Zt.rc2.createEncryptionCipher=function(e,t){return pf(e,t,!0)};Zt.rc2.startDecrypting=function(e,t,r){var n=Zt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Zt.rc2.createDecryptionCipher=function(e,t){return pf(e,t,!1)}});var zi=pt((zb,Bf)=>{var _s=ht();Bf.exports=_s.jsbn=_s.jsbn||{};var He,mp=0xdeadbeefcafe,xf=(mp&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))}_s.jsbn.BigInteger=P;function ot(){return new P(null)}function bp(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 vp(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 mf(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=mf,He=28):xf&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=vp,He=30):xf&&navigator.appName!="Netscape"?(P.prototype.am=bp,He=26):(P.prototype.am=mf,He=28);P.prototype.DB=He;P.prototype.DM=(1<<He)-1;P.prototype.DV=1<<He;var Ls=52;P.prototype.FV=Math.pow(2,Ls);P.prototype.F1=Ls-He;P.prototype.F2=2*He-Ls;var wp="0123456789abcdefghijklmnopqrstuvwxyz",qi=new Array,jr,ie;jr=48;for(ie=0;ie<=9;++ie)qi[jr++]=ie;jr=97;for(ie=10;ie<36;++ie)qi[jr++]=ie;jr=65;for(ie=10;ie<36;++ie)qi[jr++]=ie;function bf(e){return wp.charAt(e)}function vf(e,t){var r=qi[e.charCodeAt(t)];return r??-1}function Ep(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 Sp(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 sr(e){var t=ot();return t.fromInt(e),t}function Bp(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:vf(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 Ap(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function Ip(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=bf(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+=bf(n));return i?o:"0"}function Cp(){var e=ot();return P.ZERO.subTo(this,e),e}function Tp(){return this.s<0?this.negate():this}function _p(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 Hi(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 Lp(){return this.t<=0?0:this.DB*(this.t-1)+Hi(this.data[this.t-1]^this.s&this.DM)}function Rp(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 Np(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 Pp(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 Dp(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function Up(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function kp(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 Kp(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 Op(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=ot());var o=ot(),s=this.s,a=e.s,c=this.DB-Hi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,x=t??ot();for(o.dlShiftTo(y,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),P.ONE.dlShiftTo(f,x),x.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,x),r.subTo(x,r);r.data[p]<--v;)r.subTo(x,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&P.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function Mp(e){var t=ot();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 Vp(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function Fp(e){return e}function qp(e){e.divRemTo(this.m,null,e)}function Hp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function zp(e,t){e.squareTo(t),this.reduce(t)}Er.prototype.convert=Vp;Er.prototype.revert=Fp;Er.prototype.reduce=qp;Er.prototype.mulTo=Hp;Er.prototype.sqrTo=zp;function Gp(){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 $p(e){var t=ot();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 Wp(e){var t=ot();return e.copyTo(t),this.reduce(t),t}function Yp(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 Zp(e,t){e.squareTo(t),this.reduce(t)}function Xp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Sr.prototype.convert=$p;Sr.prototype.revert=Wp;Sr.prototype.reduce=Yp;Sr.prototype.mulTo=Xp;Sr.prototype.sqrTo=Zp;function Qp(){return(this.t>0?this.data[0]&1:this.s)==0}function Jp(e,t){if(e>4294967295||e<1)return P.ONE;var r=ot(),n=ot(),i=t.convert(this),o=Hi(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 jp(e,t){var r;return e<256||t.isEven()?r=new Er(t):r=new Sr(t),this.exp(e,r)}P.prototype.copyTo=Ep;P.prototype.fromInt=Sp;P.prototype.fromString=Bp;P.prototype.clamp=Ap;P.prototype.dlShiftTo=Rp;P.prototype.drShiftTo=Np;P.prototype.lShiftTo=Pp;P.prototype.rShiftTo=Dp;P.prototype.subTo=Up;P.prototype.multiplyTo=kp;P.prototype.squareTo=Kp;P.prototype.divRemTo=Op;P.prototype.invDigit=Gp;P.prototype.isEven=Qp;P.prototype.exp=Jp;P.prototype.toString=Ip;P.prototype.negate=Cp;P.prototype.abs=Tp;P.prototype.compareTo=_p;P.prototype.bitLength=Lp;P.prototype.mod=Mp;P.prototype.modPowInt=jp;P.ZERO=sr(0);P.ONE=sr(1);function ty(){var e=ot();return this.copyTo(e),e}function ey(){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 ry(){return this.t==0?this.s:this.data[0]<<24>>24}function ny(){return this.t==0?this.s:this.data[0]<<16>>16}function iy(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function oy(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function sy(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=sr(r),i=ot(),o=ot(),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 ay(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=vf(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 cy(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),Rs,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 fy(){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 uy(e){return this.compareTo(e)==0}function ly(e){return this.compareTo(e)<0?this:e}function hy(e){return this.compareTo(e)>0?this:e}function dy(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 py(e,t){return e&t}function yy(e){var t=ot();return this.bitwiseTo(e,py,t),t}function Rs(e,t){return e|t}function gy(e){var t=ot();return this.bitwiseTo(e,Rs,t),t}function wf(e,t){return e^t}function xy(e){var t=ot();return this.bitwiseTo(e,wf,t),t}function Ef(e,t){return e&~t}function my(e){var t=ot();return this.bitwiseTo(e,Ef,t),t}function by(){for(var e=ot(),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 vy(e){var t=ot();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function wy(e){var t=ot();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function Ey(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 Sy(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+Ey(this.data[e]);return this.s<0?this.t*this.DB:-1}function By(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function Ay(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=By(this.data[r]^t);return e}function Iy(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function Cy(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function Ty(e){return this.changeBit(e,Rs)}function _y(e){return this.changeBit(e,Ef)}function Ly(e){return this.changeBit(e,wf)}function Ry(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 Ny(e){var t=ot();return this.addTo(e,t),t}function Py(e){var t=ot();return this.subTo(e,t),t}function Dy(e){var t=ot();return this.multiplyTo(e,t),t}function Uy(e){var t=ot();return this.divRemTo(e,t,null),t}function ky(e){var t=ot();return this.divRemTo(e,null,t),t}function Ky(e){var t=ot(),r=ot();return this.divRemTo(e,t,r),new Array(t,r)}function Oy(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function My(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 Sf(e){return e}function Vy(e,t,r){e.multiplyTo(t,r)}function Fy(e,t){e.squareTo(t)}kn.prototype.convert=Sf;kn.prototype.revert=Sf;kn.prototype.mulTo=Vy;kn.prototype.sqrTo=Fy;function qy(e){return this.exp(e,new kn)}function Hy(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 zy(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function tn(e){this.r2=ot(),this.q3=ot(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function Gy(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=ot();return e.copyTo(t),this.reduce(t),t}function $y(e){return e}function Wy(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 Yy(e,t){e.squareTo(t),this.reduce(t)}function Zy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}tn.prototype.convert=Gy;tn.prototype.revert=$y;tn.prototype.reduce=Wy;tn.prototype.mulTo=Zy;tn.prototype.sqrTo=Yy;function Xy(e,t){var r=e.bitLength(),n,i=sr(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 tn(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=ot();for(o.sqrTo(s[1],u);a<=f;)s[a]=ot(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=ot(),p;for(r=Hi(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&f:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[d].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function Qy(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 Jy(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 jy(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return P.ZERO;for(var r=e.clone(),n=this.clone(),i=sr(1),o=sr(0),s=sr(0),a=sr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(P.ONE)!=0)return P.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var ye=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509],t1=(1<<26)/ye[ye.length-1];function e1(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=ye[ye.length-1]){for(t=0;t<ye.length;++t)if(r.data[0]==ye[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<ye.length;){for(var n=ye[t],i=t+1;i<ye.length&&n<t1;)n*=ye[i++];for(n=r.modInt(n);t<i;)if(n%ye[t++]==0)return!1}return r.millerRabin(e)}function r1(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=n1(),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 n1(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=iy;P.prototype.toRadix=sy;P.prototype.fromRadix=ay;P.prototype.fromNumber=cy;P.prototype.bitwiseTo=dy;P.prototype.changeBit=Cy;P.prototype.addTo=Ry;P.prototype.dMultiply=Oy;P.prototype.dAddOffset=My;P.prototype.multiplyLowerTo=Hy;P.prototype.multiplyUpperTo=zy;P.prototype.modInt=Jy;P.prototype.millerRabin=r1;P.prototype.clone=ty;P.prototype.intValue=ey;P.prototype.byteValue=ry;P.prototype.shortValue=ny;P.prototype.signum=oy;P.prototype.toByteArray=fy;P.prototype.equals=uy;P.prototype.min=ly;P.prototype.max=hy;P.prototype.and=yy;P.prototype.or=gy;P.prototype.xor=xy;P.prototype.andNot=my;P.prototype.not=by;P.prototype.shiftLeft=vy;P.prototype.shiftRight=wy;P.prototype.getLowestSetBit=Sy;P.prototype.bitCount=Ay;P.prototype.testBit=Iy;P.prototype.setBit=Ty;P.prototype.clearBit=_y;P.prototype.flipBit=Ly;P.prototype.add=Ny;P.prototype.subtract=Py;P.prototype.multiply=Dy;P.prototype.divide=Uy;P.prototype.remainder=ky;P.prototype.divideAndRemainder=Ky;P.prototype.modPow=Xy;P.prototype.modInverse=jy;P.prototype.pow=qy;P.prototype.gcd=Qy;P.prototype.isProbablePrime=e1});var _f=pt((Gb,Tf)=>{var Be=ht();wr();Tt();var If=Tf.exports=Be.sha1=Be.sha1||{};Be.md.sha1=Be.md.algorithms.sha1=If;If.create=function(){Cf||i1();var e=null,t=Be.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Be.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Be.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),Af(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(Ns.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};Af(l,r,i);var d=Be.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var Ns=null,Cf=!1;function i1(){Ns="\x80",Ns+=Be.util.fillString("\0",64),Cf=!0}function Af(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 Nf=pt(($b,Rf)=>{var Ae=ht();Tt();Un();_f();var Lf=Rf.exports=Ae.pkcs1=Ae.pkcs1||{};Lf.encode_rsa_oaep=function(e,t,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Ae.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=t.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",d=c-t.length,g=0;g<d;g++)l+="\0";var h=u.getBytes()+l+""+t;if(!i)i=Ae.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=i.length,f.digestLength=o.digestLength,f}var p=Gi(i,a-o.digestLength-1,s),y=Ae.util.xorBytes(h,p,h.length),x=Gi(y,o.digestLength,s),v=Ae.util.xorBytes(i,x,i.length);return"\0"+v+y};Lf.decode_rsa_oaep=function(e,t,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(e.n.bitLength()/8);if(t.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}if(i===void 0?i=Ae.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=t.charAt(0),f=t.substring(1,i.digestLength+1),u=t.substring(1+i.digestLength),l=Gi(u,i.digestLength,o),d=Ae.util.xorBytes(f,l,f.length),g=Gi(d,s-i.digestLength-1,o),h=Ae.util.xorBytes(u,g,u.length),p=h.substring(0,i.digestLength),y=c!=="\0",x=0;x<i.digestLength;++x)y|=a.charAt(x)!==p.charAt(x);for(var v=1,m=i.digestLength,I=i.digestLength;I<h.length;I++){var S=h.charCodeAt(I),B=S&1^1,R=v?65534:0;y|=S&R,v=v&B,m+=v}if(y||h.charCodeAt(m)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(m+1)};function Gi(e,t,r){r||(r=Ae.md.sha1.create());for(var n="",i=Math.ceil(t/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var Pf=pt((Wb,Ps)=>{var ar=ht();Tt();zi();Un();(function(){if(ar.prime){Ps.exports=ar.prime;return}var e=Ps.exports=ar.prime=ar.prime||{},t=ar.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,g){typeof d=="function"&&(g=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||ar.random,y={nextBytes:function(x){for(var v=p.getBytesSync(x.length),m=0;m<x.length;++m)x[m]=v.charCodeAt(m)}};if(h.name==="PRIMEINC")return o(l,y,h.options,g);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,g,h){return"workers"in g?c(l,d,g,h):s(l,d,g,h)}function s(l,d,g,h){var p=f(l,d),y=0,x=u(p.bitLength());"millerRabinTests"in g&&(x=g.millerRabinTests);var v=10;"maxBlockTime"in g&&(v=g.maxBlockTime),a(p,l,d,y,x,v,h)}function a(l,d,g,h,p,y,x){var v=+new Date;do{if(l.bitLength()>d&&(l=f(d,g)),l.isProbablePrime(p))return x(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-v<y);ar.util.setImmediate(function(){a(l,d,g,h,p,y,x)})}function c(l,d,g,h){if(typeof Worker>"u")return s(l,d,g,h);var p=f(l,d),y=g.workers,x=g.workLoad||100,v=x*30/8,m=g.workerScript||"forge/prime.worker.js";if(y===-1)return ar.util.estimateCores(function(S,B){S&&(B=2),y=B-1,I()});I();function I(){y=Math.max(1,y);for(var S=[],B=0;B<y;++B)S[B]=new Worker(m);for(var R=y,B=0;B<y;++B)S[B].addEventListener("message",O);var L=!1;function O(M){if(!L){--R;var k=M.data;if(k.found){for(var H=0;H<S.length;++H)S[H].terminate();return L=!0,h(null,new t(k.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:x}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var Wi=pt((Yb,Vf)=>{var $=ht();Dn();zi();Ri();Nf();Pf();Un();Tt();typeof it>"u"&&(it=$.jsbn.BigInteger);var it,Ds=$.util.isNodejs?Oi():null,E=$.asn1,oe=$.util;$.pki=$.pki||{};Vf.exports=$.pki.rsa=$.rsa=$.rsa||{};var Q=$.pki,o1=[6,4,2,4,2,4,6,2],s1={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"}]},a1={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"}]},c1={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"}]},f1=$.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"}]}]},u1={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"}]},l1=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()},Of=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(it.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(it.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new it($.util.bytesToHex($.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(it.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=Mf(e,t,r)):(i=$.util.createBuffer(),i.putBytes(e));for(var s=new it(i.toHex(),16),a=Of(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 it($.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Of(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?$i(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 it(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 it(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new it(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(it.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(d1(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(o1[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(it.ONE).gcd(e.e).compareTo(it.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(it.ONE),e.q1=e.q.subtract(it.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(it.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!$.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(Df("generateKeyPair"))return Ds.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(Uf("generateKey")&&Uf("exportKey"))return oe.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Kf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return oe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(kf("generateKey")&&kf("exportKey")){var i=oe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Kf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=oe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(Df("generateKeyPairSync")){var o=Ds.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;h1(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 Mf(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=$i(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,u1,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===$.oids.md2||h===$.oids.md5||h===$.oids.sha1||h===$.oids.sha224||h===$.oids.sha256||h===$.oids.sha384||h===$.oids.sha512||h===$.oids["sha512-224"]||h===$.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===$.oids.md2||h===$.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=$i(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var d=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:$i};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return $.pkcs1.decode_rsa_oaep(h,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:l1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(d,c,l)},c};Q.wrapRsaPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,E.toDer(e).getBytes())])};Q.privateKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,s1,t,r)&&(e=E.fromDer($.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,a1,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 it(i,16),new it(o,16),new it(s,16),new it(a,16),new it(c,16),new it(f,16),new it(u,16),new it(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,f1,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,c1,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 it(o,16),new it(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.e))])};function Mf(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 $i(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 h1(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(it.ONE).gcd(e.e).compareTo(it.ONE)!==0){e.p=null,i();return}if(e.q.subtract(it.ONE).gcd(e.e).compareTo(it.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(it.ONE),e.q1=e.q.subtract(it.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(it.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function Ie(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=$.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 d1(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function Df(e){return $.util.isNodejs&&typeof Ds[e]=="function"}function Uf(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.crypto=="object"&&typeof oe.globalScope.crypto.subtle=="object"&&typeof oe.globalScope.crypto.subtle[e]=="function"}function kf(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.msCrypto=="object"&&typeof oe.globalScope.msCrypto.subtle=="object"&&typeof oe.globalScope.msCrypto.subtle[e]=="function"}function Kf(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 $f=pt((Zb,Gf)=>{var q=ht();As();Dn();Zc();wr();Ri();tf();nf();Un();gf();Wi();Tt();typeof Ff>"u"&&(Ff=q.jsbn.BigInteger);var Ff,C=q.asn1,tt=q.pki=q.pki||{};Gf.exports=tt.pbe=q.pbe=q.pbe||{};var Br=tt.oids,p1={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"}]},y1={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"}]}]},g1={name:"pkcs-12PbeParams",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=q.random.getBytesSync(r.saltSize),i=r.count,o=C.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=Br["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Br["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Br["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Br.desCBC,l=q.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),h=zf(g),p=q.pkcs5.pbkdf2(t,n,i,s,h),y=q.random.getBytesSync(f),x=l(p);x.start(y),x.update(C.toDer(e)),x.finish(),c=x.output.getBytes();var v=x1(n,o,s,g);a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(Br.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(Br.pkcs5PBKDF2).getBytes()),v]),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(u).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var m=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,m,1,i,s),y=tt.pbe.generatePkcs12Key(t,m,2,i,s),x=q.des.createEncryptionCipher(p);x.start(y),x.update(C.toDer(e)),x.finish(),c=x.output.getBytes(),a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(Br["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,n),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var I=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[a,C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,c)]);return I};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!C.validate(e,p1,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=C.derToOid(n.encryptionOid),a=tt.pbe.getCipher(s,n.encryptionParams,t),c=q.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=C.fromDer(a.output)),r};tt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:C.toDer(e).getBytes()};return q.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=q.pem.decode(e)[0];if(t.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return C.fromDer(t.body)};tt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=tt.wrapRsaPrivateKey(tt.privateKeyToAsn1(e));return n=tt.encryptPrivateKeyInfo(n,t,r),tt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=q.pbe.opensslDeriveBytes(t,o.substr(0,8),s),u=a(f);u.start(o),u.update(C.toDer(tt.privateKeyToAsn1(e))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:q.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return q.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=q.pem.decode(e)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=q.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=q.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=q.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=q.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=q.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return q.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return q.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return q.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=q.util.hexToBytes(n.dekInfo.parameters),c=q.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(q.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=tt.decryptPrivateKeyInfo(C.fromDer(r),t):r=C.fromDer(r),r!==null&&(r=tt.privateKeyFromAsn1(r)),r};tt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in q.md))throw new Error('"sha1" hash algorithm unavailable.');o=q.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new q.util.ByteBuffer,l=new q.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),g=t.length(),h=new q.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new q.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var x=f*Math.ceil(d/f),v=new q.util.ByteBuffer;for(a=0;a<x;a++)v.putByte(l.at(a%d));var m=y;m.putBuffer(v);for(var I=Math.ceil(i/c),S=1;S<=I;S++){var B=new q.util.ByteBuffer;B.putBytes(h.bytes()),B.putBytes(m.bytes());for(var R=0;R<n;R++)o.start(),o.update(B.getBytes()),B=o.digest();var L=new q.util.ByteBuffer;for(a=0;a<f;a++)L.putByte(B.at(a%c));var O=Math.ceil(g/f)+Math.ceil(d/f),M=new q.util.ByteBuffer;for(s=0;s<O;s++){var k=new q.util.ByteBuffer(m.getBytes(f)),H=511;for(a=L.length()-1;a>=0;a--)H=H>>8,H+=L.at(a)+k.at(a),k.setAt(a,H&255);M.putBuffer(k)}m=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!C.validate(t,y1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(e=C.derToOid(n.kdfOid),e!==tt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=C.derToOid(n.encOid),e!==tt.oids["aes128-CBC"]&&e!==tt.oids["aes192-CBC"]&&e!==tt.oids["aes256-CBC"]&&e!==tt.oids["des-EDE3-CBC"]&&e!==tt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=q.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=q.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=q.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=q.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=q.des.createDecryptionCipher;break;case"desCBC":c=8,f=q.des.createDecryptionCipher;break}var u=Hf(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,g=f(l);return g.start(d),g};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!C.validate(t,g1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=q.util.createBuffer(n.salt),a=q.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(e){case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=q.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var x=q.rc2.createDecryptionCipher(p,40);return x.start(y,null),x};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=Hf(n.prfOid),d=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,g)};tt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in q.md))throw new Error('"md5" hash algorithm unavailable.');n=q.md.md5.create()}t===null&&(t="");for(var i=[qf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(qf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function qf(e,t){return e.start().update(t).digest().getBytes()}function Hf(e){var t;if(!e)t="hmacWithSHA1";else if(t=tt.oids[C.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return zf(t)}function zf(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 x1(e,t,r,n){var i=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,e),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,q.util.hexToBytes(r.toString(16))),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(tt.oids[n]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")])),i}});var Fu=pt((f4,Vu)=>{var bt=ht();wr();Tt();var zn=Vu.exports=bt.sha512=bt.sha512||{};bt.md.sha512=bt.md.algorithms.sha512=zn;var Ou=bt.sha384=bt.sha512.sha384=bt.sha512.sha384||{};Ou.create=function(){return zn.create("SHA-384")};bt.md.sha384=bt.md.algorithms.sha384=Ou;bt.sha512.sha256=bt.sha512.sha256||{create:function(){return zn.create("SHA-512/256")}};bt.md["sha512/256"]=bt.md.algorithms["sha512/256"]=bt.sha512.sha256;bt.sha512.sha224=bt.sha512.sha224||{create:function(){return zn.create("SHA-512/224")}};bt.md["sha512/224"]=bt.md.algorithms["sha512/224"]=bt.sha512.sha224;zn.create=function(e){if(Mu||Og(),typeof e>"u"&&(e="SHA-512"),!(e in Ur))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=Ur[e],r=null,n=bt.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=bt.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=bt.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),Ku(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=bt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(Ea.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);Ku(p,i,c);var y=bt.util.createBuffer(),x;e==="SHA-512"?x=p.length:e==="SHA-384"?x=p.length-2:x=p.length-4;for(var h=0;h<x;++h)y.putInt32(p[h][0]),(h!==x-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var Ea=null,Mu=!1,Sa=null,Ur=null;function Og(){Ea="\x80",Ea+=bt.util.fillString("\0",128),Sa=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],Ur={},Ur["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Ur["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Ur["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Ur["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Mu=!0}function Ku(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v,m,I,S,B,R,L,O,M,k,H,z,Z,A,N,T,_,w,U,K,F=r.length();F>=128;){for(A=0;A<16;++A)t[A][0]=r.getInt32()>>>0,t[A][1]=r.getInt32()>>>0;for(;A<80;++A)_=t[A-2],N=_[0],T=_[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,U=t[A-15],N=U[0],T=U[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[A-7],K=t[A-16],T=i+w[1]+s+K[1],t[A][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[A][1]=T>>>0;for(p=e[0][0],y=e[0][1],x=e[1][0],v=e[1][1],m=e[2][0],I=e[2][1],S=e[3][0],B=e[3][1],R=e[4][0],L=e[4][1],O=e[5][0],M=e[5][1],k=e[6][0],H=e[6][1],z=e[7][0],Z=e[7][1],A=0;A<80;++A)f=((R>>>14|L<<18)^(R>>>18|L<<14)^(L>>>9|R<<23))>>>0,u=((R<<18|L>>>14)^(R<<14|L>>>18)^(L<<23|R>>>9))>>>0,l=(k^R&(O^k))>>>0,d=(H^L&(M^H))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&x|m&(p^x))>>>0,h=(y&v|I&(y^v))>>>0,T=Z+u+d+Sa[A][1]+t[A][1],n=z+f+l+Sa[A][0]+t[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=k,Z=H,k=O,H=M,O=R,M=L,T=B+i,R=S+n+(T/4294967296>>>0)>>>0,L=T>>>0,S=m,B=I,m=x,I=v,x=p,v=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=e[0][1]+y,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+x+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+I,e[2][0]=e[2][0]+m+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+L,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+k+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,F-=128}}});var $x={};Lt($x,{webTransport:()=>Gx});function w0(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function E0(e=0){return globalThis.Buffer?.allocUnsafe!=null?w0(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var dh=Math.pow(2,7),ph=Math.pow(2,14),yh=Math.pow(2,21),Co=Math.pow(2,28),To=Math.pow(2,35),_o=Math.pow(2,42),Lo=Math.pow(2,49),at=128,qt=127;function Ht(e){if(e<dh)return 1;if(e<ph)return 2;if(e<yh)return 3;if(e<Co)return 4;if(e<To)return 5;if(e<_o)return 6;if(e<Lo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function gh(e,t,r=0){switch(Ht(e)){case 8:t[r++]=e&255|at,e/=128;case 7:t[r++]=e&255|at,e/=128;case 6:t[r++]=e&255|at,e/=128;case 5:t[r++]=e&255|at,e/=128;case 4:t[r++]=e&255|at,e>>>=7;case 3:t[r++]=e&255|at,e>>>=7;case 2:t[r++]=e&255|at,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function xh(e,t,r=0){switch(Ht(e)){case 8:t.set(r++,e&255|at),e/=128;case 7:t.set(r++,e&255|at),e/=128;case 6:t.set(r++,e&255|at),e/=128;case 5:t.set(r++,e&255|at),e/=128;case 4:t.set(r++,e&255|at),e>>>=7;case 3:t.set(r++,e&255|at),e>>>=7;case 2:t.set(r++,e&255|at),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function mh(e,t){let r=e[t],n=0;if(n+=r&qt,r<at||(r=e[t+1],n+=(r&qt)<<7,r<at)||(r=e[t+2],n+=(r&qt)<<14,r<at)||(r=e[t+3],n+=(r&qt)<<21,r<at)||(r=e[t+4],n+=(r&qt)*Co,r<at)||(r=e[t+5],n+=(r&qt)*To,r<at)||(r=e[t+6],n+=(r&qt)*_o,r<at)||(r=e[t+7],n+=(r&qt)*Lo,r<at))return n;throw new RangeError("Could not decode varint")}function bh(e,t){let r=e.get(t),n=0;if(n+=r&qt,r<at||(r=e.get(t+1),n+=(r&qt)<<7,r<at)||(r=e.get(t+2),n+=(r&qt)<<14,r<at)||(r=e.get(t+3),n+=(r&qt)<<21,r<at)||(r=e.get(t+4),n+=(r&qt)*Co,r<at)||(r=e.get(t+5),n+=(r&qt)*To,r<at)||(r=e.get(t+6),n+=(r&qt)*_o,r<at)||(r=e.get(t+7),n+=(r&qt)*Lo,r<at))return n;throw new RangeError("Could not decode varint")}function Xe(e,t,r=0){return t==null&&(t=E0(Ht(e))),t instanceof Uint8Array?gh(e,t,r):xh(e,t,r)}function fe(e,t=0){return e instanceof Uint8Array?mh(e,t):bh(e,t)}function mn(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function De(e=0){return globalThis.Buffer?.alloc!=null?mn(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function bn(e=0){return globalThis.Buffer?.allocUnsafe!=null?mn(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Ro(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=bn(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return mn(r)}function S0(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 A0=Symbol.for("@achingbrain/uint8arraylist");function B0(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 Mr(e){return!!e?.[A0]}var St=class e{bufs;length;[A0]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Mr(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(Mr(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=B0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=B0(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(Mr(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 Ro(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:Ro(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(!Mr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=bn(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=De(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=De(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=De(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=bn(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=De(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=De(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=De(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=De(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=De(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(!S0(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 I0(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function C0(e=0){return globalThis.Buffer?.allocUnsafe!=null?I0(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function ii(e){return e[Symbol.asyncIterator]!=null}var oi=e=>{let t=Ht(e),r=C0(t);return Xe(e,r),oi.bytes=t,r};oi.bytes=0;function vn(e,t){t=t??{};let r=t.lengthEncoder??oi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ii(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}vn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??oi;return new St(r(e.byteLength),e)};var Vr=Yt(L0(),1);var wh=8,Eh=1024*1024*4,dr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(dr||(dr={}));var No=e=>{let t=fe(e);return No.bytes=Ht(t),t};No.bytes=0;function wn(e,t){let r=new St,n=dr.LENGTH,i=-1,o=t?.lengthDecoder??No,s=t?.maxLengthLength??wh,a=t?.maxDataLength??Eh;function*c(){for(;r.byteLength>0;){if(n===dr.LENGTH)try{if(i=o(r),i<0)throw(0,Vr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Vr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),t?.onLength!=null&&t.onLength(i),n=dr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Vr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===dr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(f),yield f,n=dr.LENGTH}}}return ii(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Vr.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,Vr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}wn.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 wn(n,{...t??{},onLength:o=>{r=o}})};function ue(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var si=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function R0(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new si(r?.errorMessage,r?.errorCode));let n,i=new si(r?.errorMessage,r?.errorCode);try{return await Promise.race([e,new Promise((o,s)=>{n=()=>{s(i)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var Po=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=ue(),this.haveNext=ue()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let t=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=ue(),t}async throw(t){return this.ended=!0,t!=null&&this.haveNext.reject(t),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,r){await this._push(t,r)}async end(t,r){t!=null?await this.throw(t):await this._push(void 0,r)}async _push(t,r){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=ue(),await R0(this.needNext.promise,r?.signal,r)}};function N0(){return new Po}var ai=class extends Error{code;constructor(t,r){super(t),this.code=r}},Do=class extends ai{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function P0(e,t){let r=N0();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new St;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new Do("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new St:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new ai("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let u=i.sublist(0,s);return i.consume(s),u}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=e.source;e.source=async function*(){t?.yieldBytes===!1?yield i:yield*i,yield*s}()}return e}}}var ci=class extends Error{code;constructor(t,r){super(t),this.code=r}},D0=e=>fe(e);D0.bytes=0;function Uo(e,t={}){let r=P0(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=Ht(t.maxDataLength)),{read:async i=>{let o=-1,s=new St,a=t?.lengthDecoder??D0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new ci("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}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(vn.single(i,t),o)},writeV:async(i,o)=>{let s=new St(...i.map(a=>vn.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function ko(){let e=ue(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function U0(){let e=ko(),t=ko();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}var fi=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}},Fr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new fi(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 fi(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var Ko=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function ui(e={}){return Bh(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 Bh(e,t){t=t??{};let r=t.onEnd,n=new Fr,i,o,s,a=ue(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,x)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(m){x(m)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ue()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Fr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Fr,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let x=y?.signal;if(x?.throwIfAborted(),n.isEmpty())return;let v,m;x!=null&&(v=new Promise((I,S)=>{m=()=>{S(new Ko)},x.addEventListener("abort",m)}));try{await Promise.race([a.promise,v])}finally{m!=null&&x!=null&&x?.removeEventListener("abort",m)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:y=>p.onEmpty(y)},i}function Ah(e){return e[Symbol.asyncIterator]!=null}function Ih(...e){let t=[];for(let r of e)Ah(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=ui({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 k0=Ih;function K0(e,...t){if(e==null)throw new Error("Empty pipeline");if(Oo(e)){let n=e;e=()=>n.source}else if(M0(e)||O0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Oo(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++)Oo(r[n])&&(r[n]=Th(r[n]));return Ch(...r)}var Ch=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},O0=e=>e?.[Symbol.asyncIterator]!=null,M0=e=>e?.[Symbol.iterator]!=null,Oo=e=>e==null?!1:e.sink!=null&&e.source!=null,Th=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=ui({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(O0(o))i=async function*(){yield*o,n.end()};else if(M0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return k0(n,i())}return e.source};function Qe(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function ct(e=0){return globalThis.Buffer?.alloc!=null?Qe(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function pr(e=0){return globalThis.Buffer?.allocUnsafe!=null?Qe(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var qr=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var _h=e=>e instanceof Uint8Array;var Ue=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),V0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Lh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Lh)throw new Error("Non little-endian hardware is not supported");function li(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function hi(e){if(typeof e=="string")e=li(e);else if(_h(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var Rh=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function F0(e,t){if(t!==void 0&&(typeof t!="object"||!Rh(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 q0(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 Mo=(e,t)=>(Object.assign(t,e),t);function Vo(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 di(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Fo(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Hr(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 qo(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 H0(e,t){Hr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Mt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Ho=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=hi(t),yr(t,32);let r=Mt(t,0),n=Mt(t,2),i=Mt(t,4),o=Mt(t,6),s=Mt(t,8),a=Mt(t,10),c=Mt(t,12),f=Mt(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]=Mt(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],x=Mt(t,r+0),v=Mt(t,r+2),m=Mt(t,r+4),I=Mt(t,r+6),S=Mt(t,r+8),B=Mt(t,r+10),R=Mt(t,r+12),L=Mt(t,r+14),O=o[0]+(x&8191),M=o[1]+((x>>>13|v<<3)&8191),k=o[2]+((v>>>10|m<<6)&8191),H=o[3]+((m>>>7|I<<9)&8191),z=o[4]+((I>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),A=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|L<<8)&8191),_=o[9]+(L>>>5|i),w=0,U=w+O*a+M*(5*y)+k*(5*p)+H*(5*h)+z*(5*g);w=U>>>13,U&=8191,U+=Z*(5*d)+A*(5*l)+N*(5*u)+T*(5*f)+_*(5*c),w+=U>>>13,U&=8191;let K=w+O*c+M*a+k*(5*y)+H*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+A*(5*d)+N*(5*l)+T*(5*u)+_*(5*f),w+=K>>>13,K&=8191;let F=w+O*f+M*c+k*a+H*(5*y)+z*(5*p);w=F>>>13,F&=8191,F+=Z*(5*h)+A*(5*g)+N*(5*d)+T*(5*l)+_*(5*u),w+=F>>>13,F&=8191;let W=w+O*u+M*f+k*c+H*a+z*(5*y);w=W>>>13,W&=8191,W+=Z*(5*p)+A*(5*h)+N*(5*g)+T*(5*d)+_*(5*l),w+=W>>>13,W&=8191;let Y=w+O*l+M*u+k*f+H*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+A*(5*p)+N*(5*h)+T*(5*g)+_*(5*d),w+=Y>>>13,Y&=8191;let rt=w+O*d+M*l+k*u+H*f+z*c;w=rt>>>13,rt&=8191,rt+=Z*a+A*(5*y)+N*(5*p)+T*(5*h)+_*(5*g),w+=rt>>>13,rt&=8191;let X=w+O*g+M*d+k*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+A*a+N*(5*y)+T*(5*p)+_*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+k*d+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+A*c+N*a+T*(5*y)+_*(5*p),w+=J>>>13,J&=8191;let dt=w+O*p+M*h+k*g+H*d+z*l;w=dt>>>13,dt&=8191,dt+=Z*u+A*f+N*c+T*a+_*(5*y),w+=dt>>>13,dt&=8191;let lt=w+O*y+M*p+k*h+H*g+z*d;w=lt>>>13,lt&=8191,lt+=Z*l+A*u+N*f+T*c+_*a,w+=lt>>>13,lt&=8191,w=(w<<2)+w|0,w=w+U|0,U=w&8191,w=w>>>13,K+=w,o[0]=U,o[1]=K,o[2]=F,o[3]=W,o[4]=Y,o[5]=rt,o[6]=X,o[7]=J,o[8]=dt,o[9]=lt}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){qo(this);let{buffer:r,blockLen:n}=this;t=hi(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){qo(this),H0(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 Nh(e){let t=(n,i)=>e(i).update(hi(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var z0=Nh(e=>new Ho(e));var Ph=li("expand 16-byte k"),Dh=li("expand 32-byte k"),Uh=Ue(Ph),kh=Ue(Dh);function G(e,t){return e<<t|e>>>32-t}function zo(e){return e.byteOffset%4===0}var pi=64,Kh=16,$0=2**32-1,G0=new Uint32Array;function Oh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(pi),u=Ue(f),l=zo(i)&&zo(o),d=l?Ue(i):G0,g=l?Ue(o):G0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=$0)throw new Error("arx: counter overflow");let p=Math.min(pi,c-h);if(l&&p===pi){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let x=0,v;x<Kh;x++)v=y+x,g[v]=d[v]^u[x];h+=pi;continue}for(let y=0,x;y<p;y++)x=h+y,o[x]=i[x]^f[y];h+=p}}function Go(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=F0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return di(i),di(s),Fo(o),Fo(r),(a,c,f,u,l=0)=>{Hr(a),Hr(c),Hr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Hr(u),di(l),l<0||l>=$0)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let g=[],h=a.length,p,y;if(h===32)p=a.slice(),g.push(p),y=kh;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=Uh,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);zo(c)||(c=c.slice(),g.push(c));let x=Ue(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,x,Ue(c.subarray(0,16)),x),c=c.subarray(16)}let v=16-i;if(v!==c.length)throw new Error(`arx: nonce must be ${v} or 16 bytes`);if(v!==12){let I=new Uint8Array(12);I.set(c,o?0:12-c.length),c=I,g.push(c)}let m=Ue(c);for(Oh(e,y,x,m,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function Z0(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],f=e[3],u=t[0],l=t[1],d=t[2],g=t[3],h=t[4],p=t[5],y=t[6],x=t[7],v=i,m=r[0],I=r[1],S=r[2],B=s,R=a,L=c,O=f,M=u,k=l,H=d,z=g,Z=h,A=p,N=y,T=x,_=v,w=m,U=I,K=S;for(let W=0;W<o;W+=2)B=B+M|0,_=G(_^B,16),Z=Z+_|0,M=G(M^Z,12),B=B+M|0,_=G(_^B,8),Z=Z+_|0,M=G(M^Z,7),R=R+k|0,w=G(w^R,16),A=A+w|0,k=G(k^A,12),R=R+k|0,w=G(w^R,8),A=A+w|0,k=G(k^A,7),L=L+H|0,U=G(U^L,16),N=N+U|0,H=G(H^N,12),L=L+H|0,U=G(U^L,8),N=N+U|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+k|0,K=G(K^B,16),N=N+K|0,k=G(k^N,12),B=B+k|0,K=G(K^B,8),N=N+K|0,k=G(k^N,7),R=R+H|0,_=G(_^R,16),T=T+_|0,H=G(H^T,12),R=R+H|0,_=G(_^R,8),T=T+_|0,H=G(H^T,7),L=L+z|0,w=G(w^L,16),Z=Z+w|0,z=G(z^Z,12),L=L+z|0,w=G(w^L,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,U=G(U^O,16),A=A+U|0,M=G(M^A,12),O=O+M|0,U=G(U^O,8),A=A+U|0,M=G(M^A,7);let F=0;n[F++]=s+B|0,n[F++]=a+R|0,n[F++]=c+L|0,n[F++]=f+O|0,n[F++]=u+M|0,n[F++]=l+k|0,n[F++]=d+H|0,n[F++]=g+z|0,n[F++]=h+Z|0,n[F++]=p+A|0,n[F++]=y+N|0,n[F++]=x+T|0,n[F++]=v+_|0,n[F++]=m+w|0,n[F++]=I+U|0,n[F++]=S+K|0}function Mh(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],f=t[1],u=t[2],l=t[3],d=t[4],g=t[5],h=t[6],p=t[7],y=r[0],x=r[1],v=r[2],m=r[3];for(let S=0;S<20;S+=2)i=i+c|0,y=G(y^i,16),d=d+y|0,c=G(c^d,12),i=i+c|0,y=G(y^i,8),d=d+y|0,c=G(c^d,7),o=o+f|0,x=G(x^o,16),g=g+x|0,f=G(f^g,12),o=o+f|0,x=G(x^o,8),g=g+x|0,f=G(f^g,7),s=s+u|0,v=G(v^s,16),h=h+v|0,u=G(u^h,12),s=s+u|0,v=G(v^s,8),h=h+v|0,u=G(u^h,7),a=a+l|0,m=G(m^a,16),p=p+m|0,l=G(l^p,12),a=a+l|0,m=G(m^a,8),p=p+m|0,l=G(l^p,7),i=i+f|0,m=G(m^i,16),h=h+m|0,f=G(f^h,12),i=i+f|0,m=G(m^i,8),h=h+m|0,f=G(f^h,7),o=o+u|0,y=G(y^o,16),p=p+y|0,u=G(u^p,12),o=o+u|0,y=G(y^o,8),p=p+y|0,u=G(u^p,7),s=s+l|0,x=G(x^s,16),d=d+x|0,l=G(l^d,12),s=s+l|0,x=G(x^s,8),d=d+x|0,l=G(l^d,7),a=a+c|0,v=G(v^a,16),g=g+v|0,c=G(c^g,12),a=a+c|0,v=G(v^a,8),g=g+v|0,c=G(c^g,7);let I=0;n[I++]=i,n[I++]=o,n[I++]=s,n[I++]=a,n[I++]=y,n[I++]=x,n[I++]=v,n[I++]=m}var Vh=Go(Z0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),Fh=Go(Z0,{counterRight:!1,counterLength:8,extendNonceFn:Mh,allowShortKeys:!1});var qh=new Uint8Array(16),W0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(qh.subarray(r))},Hh=new Uint8Array(32);function Y0(e,t,r,n,i){let o=e(t,r,Hh),s=z0.create(o);i&&W0(s,i),W0(s,n);let a=new Uint8Array(16),c=V0(a);Vo(c,0,BigInt(i?i.length:0),!0),Vo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var X0=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=Y0(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=Y0(e,t,r,f,n);if(!q0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),$o=Mo({blockSize:64,nonceLength:12,tagLength:16},X0(Vh)),f2=Mo({blockSize:64,nonceLength:24,tagLength:16},X0(Fh));function yi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Wo(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 En(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");yi(e.outputLen),yi(e.blockLen)}function zr(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 Q0(e,t){Wo(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var gi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var J0=e=>e instanceof Uint8Array;var xi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),le=(e,t)=>e<<32-t|e>>>t,zh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!zh)throw new Error("Non little-endian hardware is not supported");function Yo(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=Yo(e)),!J0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function mi(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!J0(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var Gr=class{clone(){return this._cloneInto()}},p2={}.toString;function bi(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(gi&&typeof gi.getRandomValues=="function")return gi.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function Gh(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 $r=class extends Gr{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=xi(this.buffer)}update(t){zr(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=xi(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){zr(this),Q0(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;Gh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=xi(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 vi=BigInt(4294967295),Zo=BigInt(32);function j0(e,t=!1){return t?{h:Number(e&vi),l:Number(e>>Zo&vi)}:{h:Number(e>>Zo&vi)|0,l:Number(e&vi)|0}}function $h(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}=j0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var Wh=(e,t)=>BigInt(e>>>0)<<Zo|BigInt(t>>>0),Yh=(e,t,r)=>e>>>r,Zh=(e,t,r)=>e<<32-r|t>>>r,Xh=(e,t,r)=>e>>>r|t<<32-r,Qh=(e,t,r)=>e<<32-r|t>>>r,Jh=(e,t,r)=>e<<64-r|t>>>r-32,jh=(e,t,r)=>e>>>r-32|t<<64-r,td=(e,t)=>t,ed=(e,t)=>e,rd=(e,t,r)=>e<<r|t>>>32-r,nd=(e,t,r)=>t<<r|e>>>32-r,id=(e,t,r)=>t<<r-32|e>>>64-r,od=(e,t,r)=>e<<r-32|t>>>64-r;function sd(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var ad=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),cd=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,fd=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),ud=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,ld=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),hd=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var dd={fromBig:j0,split:$h,toBig:Wh,shrSH:Yh,shrSL:Zh,rotrSH:Xh,rotrSL:Qh,rotrBH:Jh,rotrBL:jh,rotr32H:td,rotr32L:ed,rotlSH:rd,rotlSL:nd,rotlBH:id,rotlBL:od,add:sd,add3L:ad,add3H:cd,add4L:fd,add4H:ud,add5H:hd,add5L:ld},j=dd;var[pd,yd]=j.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),je=new Uint32Array(80),tr=new Uint32Array(80),Xo=class extends $r{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:g,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y]}set(t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y){this.Ah=t|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=d|0,this.Gh=g|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let m=0;m<16;m++,r+=4)je[m]=t.getUint32(r),tr[m]=t.getUint32(r+=4);for(let m=16;m<80;m++){let I=je[m-15]|0,S=tr[m-15]|0,B=j.rotrSH(I,S,1)^j.rotrSH(I,S,8)^j.shrSH(I,S,7),R=j.rotrSL(I,S,1)^j.rotrSL(I,S,8)^j.shrSL(I,S,7),L=je[m-2]|0,O=tr[m-2]|0,M=j.rotrSH(L,O,19)^j.rotrBH(L,O,61)^j.shrSH(L,O,6),k=j.rotrSL(L,O,19)^j.rotrBL(L,O,61)^j.shrSL(L,O,6),H=j.add4L(R,k,tr[m-7],tr[m-16]),z=j.add4H(H,B,M,je[m-7],je[m-16]);je[m]=z|0,tr[m]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:g,Fl:h,Gh:p,Gl:y,Hh:x,Hl:v}=this;for(let m=0;m<80;m++){let I=j.rotrSH(l,d,14)^j.rotrSH(l,d,18)^j.rotrBH(l,d,41),S=j.rotrSL(l,d,14)^j.rotrSL(l,d,18)^j.rotrBL(l,d,41),B=l&g^~l&p,R=d&h^~d&y,L=j.add5L(v,S,R,yd[m],tr[m]),O=j.add5H(L,x,I,B,pd[m],je[m]),M=L|0,k=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),H=j.rotrSL(n,i,28)^j.rotrBL(n,i,34)^j.rotrBL(n,i,39),z=n&o^n&a^o&a,Z=i&s^i&c^s&c;x=p|0,v=y|0,p=g|0,y=h|0,g=l|0,h=d|0,{h:l,l:d}=j.add(f|0,u|0,O|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let A=j.add3L(M,H,Z);n=j.add3H(A,O,k,z),i=A|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:x,l:v}=j.add(this.Hh|0,this.Hl|0,x|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v)}roundClean(){je.fill(0),tr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Qo=bi(()=>new Xo);var Si={};Lt(Si,{bitGet:()=>Ed,bitLen:()=>wd,bitMask:()=>Sn,bitSet:()=>Sd,bytesToHex:()=>ke,bytesToNumberBE:()=>Ke,bytesToNumberLE:()=>he,concatBytes:()=>Me,createHmacDrbg:()=>ts,ensureBytes:()=>gt,equalBytes:()=>bd,hexToBytes:()=>xr,hexToNumber:()=>jo,numberToBytesBE:()=>er,numberToBytesLE:()=>Oe,numberToHexUnpadded:()=>rc,numberToVarBytesBE:()=>md,utf8ToBytes:()=>vd,validateObject:()=>ne});var ec=BigInt(0),wi=BigInt(1),gd=BigInt(2),Ei=e=>e instanceof Uint8Array,xd=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function ke(e){if(!Ei(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=xd[e[r]];return t}function rc(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function jo(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}function xr(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let r=new Uint8Array(t/2);for(let n=0;n<r.length;n++){let i=n*2,o=e.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function Ke(e){return jo(ke(e))}function he(e){if(!Ei(e))throw new Error("Uint8Array expected");return jo(ke(Uint8Array.from(e).reverse()))}function er(e,t){return xr(e.toString(16).padStart(t*2,"0"))}function Oe(e,t){return er(e,t).reverse()}function md(e){return xr(rc(e))}function gt(e,t,r){let n;if(typeof t=="string")try{n=xr(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(Ei(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function Me(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!Ei(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function bd(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 vd(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function wd(e){let t;for(t=0;e>ec;e>>=wi,t+=1);return t}function Ed(e,t){return e>>BigInt(t)&wi}var Sd=(e,t,r)=>e|(r?wi:ec)<<BigInt(t),Sn=e=>(gd<<BigInt(e-1))-wi,Jo=e=>new Uint8Array(e),tc=e=>Uint8Array.from(e);function ts(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=Jo(e),i=Jo(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Jo())=>{i=a(tc([0]),l),n=a(),l.length!==0&&(i=a(tc([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let g=n.slice();d.push(g),l+=n.length}return Me(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var Bd={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function ne(e,t,r={}){let n=(i,o,s)=>{let a=Bd[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 Rt=BigInt(0),vt=BigInt(1),mr=BigInt(2),Ad=BigInt(3),es=BigInt(4),nc=BigInt(5),ic=BigInt(8),Id=BigInt(9),Cd=BigInt(16);function st(e,t){let r=e%t;return r>=Rt?r:t+r}function rs(e,t,r){if(r<=Rt||t<Rt)throw new Error("Expected power/modulo > 0");if(r===vt)return Rt;let n=vt;for(;t>Rt;)t&vt&&(n=n*e%r),e=e*e%r,t>>=vt;return n}function xt(e,t,r){let n=e;for(;t-- >Rt;)n*=n,n%=r;return n}function Bi(e,t){if(e===Rt||t<=Rt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=st(e,t),n=t,i=Rt,o=vt,s=vt,a=Rt;for(;r!==Rt;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==vt)throw new Error("invert: does not exist");return st(i,t)}function Td(e){let t=(e-vt)/mr,r,n,i;for(r=e-vt,n=0;r%mr===Rt;r/=mr,n++);for(i=mr;i<e&&rs(i,t,e)!==e-vt;i++);if(n===1){let s=(e+vt)/es;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+vt)/mr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,vt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function _d(e){if(e%es===Ad){let t=(e+vt)/es;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%ic===nc){let t=(e-nc)/ic;return function(n,i){let o=n.mul(i,mr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,mr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return e%Cd,Td(e)}var oc=(e,t)=>(st(e,t)&vt)===vt,Ld=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ns(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Ld.reduce((n,i)=>(n[i]="function",n),t);return ne(e,r)}function Rd(e,t,r){if(r<Rt)throw new Error("Expected power > 0");if(r===Rt)return e.ONE;if(r===vt)return t;let n=e.ONE,i=t;for(;r>Rt;)r&vt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=vt;return n}function Nd(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 is(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ai(e,t,r=!1,n={}){if(e<=Rt)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=is(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=_d(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:Sn(i),ZERO:Rt,ONE:vt,create:c=>st(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Rt<=c&&c<e},is0:c=>c===Rt,isOdd:c=>(c&vt)===vt,neg:c=>st(-c,e),eql:(c,f)=>c===f,sqr:c=>st(c*c,e),add:(c,f)=>st(c+f,e),sub:(c,f)=>st(c-f,e),mul:(c,f)=>st(c*f,e),pow:(c,f)=>Rd(a,c,f),div:(c,f)=>st(c*Bi(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>Bi(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Nd(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Oe(c,o):er(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?he(c):Ke(c)}});return Object.freeze(a)}function sc(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 ac(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 os(e){let t=ac(e);return t+Math.ceil(t/2)}function cc(e,t,r=!1){let n=e.length,i=ac(t),o=os(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Ke(e):he(e),a=st(s,t-vt)+vt;return r?Oe(a,i):er(a,i)}var Dd=BigInt(0),ss=BigInt(1);function Ii(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>Dd;)o&ss&&(s=s.add(a)),a=a.double(),o>>=ss;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),d=2**i,g=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=g,y>c&&(y-=d,s+=ss);let x=p,v=p+Math.abs(y)-1,m=h%2!==0,I=y<0;y===0?u=u.add(r(m,o[x])):f=f.add(r(I,o[v]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function Bn(e){return ns(e.Fp),ne(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...is(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var de=BigInt(0),jt=BigInt(1),Ci=BigInt(2),Ud=BigInt(8),kd={zip215:!0};function Kd(e){let t=Bn(e);return ne(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function Ti(e){let t=Kd(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=Ci<<BigInt(a*8)-jt,u=r.create,l=t.uvRatio||((_,w)=>{try{return{isValid:!0,value:r.sqrt(_*r.inv(w))}}catch{return{isValid:!1,value:de}}}),d=t.adjustScalarBytes||(_=>_),g=t.domain||((_,w,U)=>{if(w.length||U)throw new Error("Contexts/pre-hash are not supported");return _}),h=_=>typeof _=="bigint"&&de<_,p=(_,w)=>h(_)&&h(w)&&_<w,y=_=>_===de||p(_,f);function x(_,w){if(p(_,w))return _;throw new Error(`Expected valid scalar < ${w}, got ${typeof _} ${_}`)}function v(_){return _===de?_:x(_,n)}let m=new Map;function I(_){if(!(_ instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,U,K,F){if(this.ex=w,this.ey=U,this.ez=K,this.et=F,!y(w))throw new Error("x required");if(!y(U))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(F))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:U,y:K}=w||{};if(!y(U)||!y(K))throw new Error("invalid affine point");return new S(U,K,jt,u(U*K))}static normalizeZ(w){let U=r.invertBatch(w.map(K=>K.ez));return w.map((K,F)=>K.toAffine(U[F])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,m.delete(this)}assertValidity(){let{a:w,d:U}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:F,ez:W,et:Y}=this,rt=u(K*K),X=u(F*F),J=u(W*W),dt=u(J*J),lt=u(rt*w),Kt=u(J*u(lt+X)),Ot=u(dt+u(U*u(rt*X)));if(Kt!==Ot)throw new Error("bad point: equation left != right (1)");let _t=u(K*F),Ft=u(W*Y);if(_t!==Ft)throw new Error("bad point: equation left != right (2)")}equals(w){I(w);let{ex:U,ey:K,ez:F}=this,{ex:W,ey:Y,ez:rt}=w,X=u(U*rt),J=u(W*F),dt=u(K*rt),lt=u(Y*F);return X===J&&dt===lt}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:U,ey:K,ez:F}=this,W=u(U*U),Y=u(K*K),rt=u(Ci*u(F*F)),X=u(w*W),J=U+K,dt=u(u(J*J)-W-Y),lt=X+Y,Kt=lt-rt,Ot=X-Y,_t=u(dt*Kt),Ft=u(lt*Ot),Pe=u(dt*Ot),hr=u(Kt*lt);return new S(_t,Ft,hr,Pe)}add(w){I(w);let{a:U,d:K}=t,{ex:F,ey:W,ez:Y,et:rt}=this,{ex:X,ey:J,ez:dt,et:lt}=w;if(U===BigInt(-1)){let d0=u((W-F)*(J+X)),p0=u((W+F)*(J-X)),Io=u(p0-d0);if(Io===de)return this.double();let y0=u(Y*Ci*lt),g0=u(rt*Ci*dt),x0=g0+y0,m0=p0+d0,b0=g0-y0,nh=u(x0*Io),ih=u(m0*b0),oh=u(x0*b0),sh=u(Io*m0);return new S(nh,ih,sh,oh)}let Kt=u(F*X),Ot=u(W*J),_t=u(rt*K*lt),Ft=u(Y*dt),Pe=u((F+W)*(X+J)-Kt-Ot),hr=Ft-_t,gn=Ft+_t,h0=u(Ot-U*Kt),jl=u(Pe*hr),th=u(gn*h0),eh=u(Pe*h0),rh=u(hr*gn);return new S(jl,th,rh,eh)}subtract(w){return this.add(w.negate())}wNAF(w){return L.wNAFCached(this,m,w,S.normalizeZ)}multiply(w){let{p:U,f:K}=this.wNAF(x(w,n));return S.normalizeZ([U,K])[0]}multiplyUnsafe(w){let U=v(w);return U===de?R:this.equals(R)||U===jt?this:this.equals(B)?this.wNAF(U).p:L.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return L.unsafeLadder(this,n).is0()}toAffine(w){let{ex:U,ey:K,ez:F}=this,W=this.is0();w==null&&(w=W?Ud:r.inv(F));let Y=u(U*w),rt=u(K*w),X=u(F*w);if(W)return{x:de,y:jt};if(X!==jt)throw new Error("invZ was invalid");return{x:Y,y:rt}}clearCofactor(){let{h:w}=t;return w===jt?this:this.multiplyUnsafe(w)}static fromHex(w,U=!1){let{d:K,a:F}=t,W=r.BYTES;w=gt("pointHex",w,W);let Y=w.slice(),rt=w[W-1];Y[W-1]=rt&-129;let X=he(Y);X===de||(U?x(X,f):x(X,r.ORDER));let J=u(X*X),dt=u(J-jt),lt=u(K*J-F),{isValid:Kt,value:Ot}=l(dt,lt);if(!Kt)throw new Error("Point.fromHex: invalid y coordinate");let _t=(Ot&jt)===jt,Ft=(rt&128)!==0;if(!U&&Ot===de&&Ft)throw new Error("Point.fromHex: x=0 and x_0=1");return Ft!==_t&&(Ot=u(-Ot)),S.fromAffine({x:Ot,y:X})}static fromPrivateKey(w){return k(w).point}toRawBytes(){let{x:w,y:U}=this.toAffine(),K=Oe(U,r.BYTES);return K[K.length-1]|=w&jt?128:0,K}toHex(){return ke(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,jt,u(t.Gx*t.Gy)),S.ZERO=new S(de,jt,jt,de);let{BASE:B,ZERO:R}=S,L=Ii(S,a*8);function O(_){return st(_,n)}function M(_){return O(he(_))}function k(_){let w=a;_=gt("private key",_,w);let U=gt("hashed private key",o(_),2*w),K=d(U.slice(0,w)),F=U.slice(w,2*w),W=M(K),Y=B.multiply(W),rt=Y.toRawBytes();return{head:K,prefix:F,scalar:W,point:Y,pointBytes:rt}}function H(_){return k(_).pointBytes}function z(_=new Uint8Array,...w){let U=Me(...w);return M(o(g(U,gt("context",_),!!i)))}function Z(_,w,U={}){_=gt("message",_),i&&(_=i(_));let{prefix:K,scalar:F,pointBytes:W}=k(w),Y=z(U.context,K,_),rt=B.multiply(Y).toRawBytes(),X=z(U.context,rt,W,_),J=O(Y+X*F);v(J);let dt=Me(rt,Oe(J,r.BYTES));return gt("result",dt,a*2)}let A=kd;function N(_,w,U,K=A){let{context:F,zip215:W}=K,Y=r.BYTES;_=gt("signature",_,2*Y),w=gt("message",w),i&&(w=i(w));let rt=he(_.slice(Y,2*Y)),X,J,dt;try{X=S.fromHex(U,W),J=S.fromHex(_.slice(0,Y),W),dt=B.multiplyUnsafe(rt)}catch{return!1}if(!W&&X.isSmallOrder())return!1;let lt=z(F,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(lt)).subtract(dt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:k,randomPrivateKey:()=>s(r.BYTES),precompute(_=8,w=S.BASE){return w._setWindowSize(_),w.multiply(BigInt(3)),w}}}}var An=BigInt(0),as=BigInt(1);function Od(e){return ne(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function fc(e){let t=Od(e),{P:r}=t,n=m=>st(m,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(m=>m),c=t.powPminus2||(m=>rs(m,r-BigInt(2),r));function f(m,I,S){let B=n(m*(I-S));return I=n(I-B),S=n(S+B),[I,S]}function u(m){if(typeof m=="bigint"&&An<=m&&m<r)return m;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(m,I){let S=u(m),B=u(I),R=S,L=as,O=An,M=S,k=as,H=An,z;for(let A=BigInt(i-1);A>=An;A--){let N=B>>A&as;H^=N,z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,k),O=z[0],k=z[1],H=N;let T=L+O,_=n(T*T),w=L-O,U=n(w*w),K=_-U,F=M+k,W=M-k,Y=n(W*T),rt=n(F*w),X=Y+rt,J=Y-rt;M=n(X*X),k=n(R*n(J*J)),L=n(_*U),O=n(K*(_+n(l*K)))}z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,k),O=z[0],k=z[1];let Z=c(O);return n(L*Z)}function g(m){return Oe(n(m),o)}function h(m){let I=gt("u coordinate",m,o);return s===o&&(I[s-1]&=127),he(I)}function p(m){let I=gt("scalar",m);if(I.length!==o&&I.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${I.length}`);return he(a(I))}function y(m,I){let S=h(I),B=p(m),R=d(S,B);if(R===An)throw new Error("Invalid private or public key received");return g(R)}let x=g(t.Gu);function v(m){return y(m,x)}return{scalarMult:y,scalarMultBase:v,getSharedSecret:(m,I)=>y(m,I),getPublicKey:m=>v(m),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:x}}var In=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),uc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),V2=BigInt(0),Md=BigInt(1),cs=BigInt(2),Vd=BigInt(5),lc=BigInt(10),Fd=BigInt(20),qd=BigInt(40),hc=BigInt(80);function dc(e){let t=In,n=e*e%t*e%t,i=xt(n,cs,t)*n%t,o=xt(i,Md,t)*e%t,s=xt(o,Vd,t)*o%t,a=xt(s,lc,t)*s%t,c=xt(a,Fd,t)*a%t,f=xt(c,qd,t)*c%t,u=xt(f,hc,t)*f%t,l=xt(u,hc,t)*f%t,d=xt(l,lc,t)*s%t;return{pow_p_5_8:xt(d,cs,t)*e%t,b2:n}}function pc(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function Hd(e,t){let r=In,n=st(t*t*t,r),i=st(n*n*t,r),o=dc(e*i).pow_p_5_8,s=st(e*n*o,r),a=st(t*s*s,r),c=s,f=st(s*uc,r),u=a===e,l=a===st(-e,r),d=a===st(-e*uc,r);return u&&(s=c),(l||d)&&(s=f),oc(s,r)&&(s=st(-s,r)),{isValid:u||l,value:s}}var Ve=Ai(In,void 0,!0),fs={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ve,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Qo,randomBytes:gr,adjustScalarBytes:pc,uvRatio:Hd},Wr=Ti(fs);function yc(e,t,r){if(t.length>255)throw new Error("Context is too big");return mi(Yo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var F2=Ti({...fs,domain:yc}),q2=Ti({...fs,domain:yc,prehash:Qo}),Cn=fc({P:In,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=In,{pow_p_5_8:r,b2:n}=dc(e);return st(xt(r,BigInt(3),t)*n,t)},adjustScalarBytes:pc,randomBytes:gr});var zd=(Ve.ORDER+BigInt(3))/BigInt(8),H2=Ve.pow(cs,zd),z2=Ve.sqrt(Ve.neg(Ve.ONE)),G2=(Ve.ORDER-BigInt(5))/BigInt(8),$2=BigInt(486662);var W2=sc(Ve,Ve.neg(BigInt(486664)));var Y2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),Z2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),X2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),Q2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var J2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var _i=class extends Gr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,En(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 zr(this),this.iHash.update(t),this}digestInto(t){zr(this),Wo(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()}},Yr=(e,t,r)=>new _i(e,t).update(r).digest();Yr.create=(e,t)=>new _i(e,t);function xc(e,t,r){return En(e),r===void 0&&(r=new Uint8Array(e.outputLen)),Yr(e,Je(r),Je(t))}var us=new Uint8Array([0]),gc=new Uint8Array;function mc(e,t,r,n=32){if(En(e),yi(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=gc);let o=new Uint8Array(i*e.outputLen),s=Yr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)us[0]=f+1,a.update(f===0?gc:c).update(r).update(us).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),us.fill(0),o.slice(0,n)}var Gd=(e,t,r)=>e&t^~e&r,$d=(e,t,r)=>e&t^e&r^t&r,Wd=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),rr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),nr=new Uint32Array(64),ls=class extends $r{constructor(){super(64,32,8,!1),this.A=rr[0]|0,this.B=rr[1]|0,this.C=rr[2]|0,this.D=rr[3]|0,this.E=rr[4]|0,this.F=rr[5]|0,this.G=rr[6]|0,this.H=rr[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,r){for(let l=0;l<16;l++,r+=4)nr[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=nr[l-15],g=nr[l-2],h=le(d,7)^le(d,18)^d>>>3,p=le(g,17)^le(g,19)^g>>>10;nr[l]=p+nr[l-7]+h+nr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let d=le(a,6)^le(a,11)^le(a,25),g=u+d+Gd(a,c,f)+Wd[l]+nr[l]|0,p=(le(n,2)^le(n,13)^le(n,22))+$d(n,i,o)|0;u=f,f=c,c=a,a=s+g|0,s=o,o=i,i=n,n=g+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,i,o,s,a,c,f,u)}roundClean(){nr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Zr=bi(()=>new ls);var hs={hashSHA256(e){return Zr(e.subarray())},getHKDF(e,t){let r=xc(Zr,t,e),i=mc(Zr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let 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.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return $o(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return $o(n,t,r).decrypt(e.subarray(),i)}};var bc=hs;var Xr=e=>{let t=pr(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Xr.bytes=2;var Tn=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};Tn.bytes=2;function vc(e){return new St(e.ne,e.ciphertext)}function wc(e){return new St(e.ne,e.ns,e.ciphertext)}function Ec(e){return new St(e.ns,e.ciphertext)}function Sc(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:ct(0)}}function Bc(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 Ac(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:ct(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var Cc=16;function Tc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new St(Xr(s.byteLength),s)}}}function _c(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-Cc<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-Cc),{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 Ln=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 uE=Yt(Dn(),1),lE=Yt($f(),1);var Xb=Symbol.for("@libp2p/connection");var Jb=Symbol.for("@libp2p/content-routing");var ev=Symbol.for("@libp2p/peer-discovery");var Wf=Symbol.for("@libp2p/peer-id");var iv=Symbol.for("@libp2p/peer-routing");var Yf;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(Yf||(Yf={}));var Xf=Symbol.for("@libp2p/transport");var Zf;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Zf||(Zf={}));var et=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var Us=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},uv=globalThis.CustomEvent??Us;var ax=Yt(ht(),1);function Ar(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}var Vs={};Lt(Vs,{base10:()=>S1});function m1(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,x=0,v=h.length;x!==v&&h[x]===0;)x++,p++;for(var m=(v-x)*u+1>>>0,I=new Uint8Array(m);x!==v;){for(var S=h[x],B=0,R=m-1;(S!==0||B<y)&&R!==-1;R--,B++)S+=256*I[R]>>>0,I[R]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");y=B,x++}for(var L=m-y;L!==m&&I[L]===0;)L++;for(var O=c.repeat(p);L<m;++L)O+=e.charAt(I[L]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,x=0;h[p]===c;)y++,p++;for(var v=(h.length-p)*f+1>>>0,m=new Uint8Array(v);h[p];){var I=r[h.charCodeAt(p)];if(I===255)return;for(var S=0,B=v-1;(I!==0||S<x)&&B!==-1;B--,S++)I+=a*m[B]>>>0,m[B]=I%256>>>0,I=I/256>>>0;if(I!==0)throw new Error("Non-zero carry");x=S,p++}if(h[p]!==" "){for(var R=v-x;R!==v&&m[R]===0;)R++;for(var L=new Uint8Array(y+(v-R)),O=y;R!==v;)L[O++]=m[R++];return L}}}function g(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:g}}var b1=m1,v1=b1,Qf=v1;var qv=new Uint8Array(0);var Jf=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},ze=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var jf=e=>new TextEncoder().encode(e),tu=e=>new TextDecoder().decode(e);var ks=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")}},Ks=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 ru(this,t)}},Os=class{constructor(t){this.decoders=t}or(t){return ru(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`)}},ru=(e,t)=>new Os({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),Ms=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ks(t,r,n),this.decoder=new Ks(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},en=({name:e,prefix:t,encode:r,decode:n})=>new Ms(e,t,r,n),cr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Qf(r,t);return en({prefix:e,name:t,encode:n,decode:o=>ze(i(o))})},w1=(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},E1=(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},Bt=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>en({prefix:t,name:e,encode(i){return E1(i,n,r)},decode(i){return w1(i,n,r,e)}});var S1=cr({prefix:"9",name:"base10",alphabet:"0123456789"});var Fs={};Lt(Fs,{base16:()=>B1,base16upper:()=>A1});var B1=Bt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),A1=Bt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var qs={};Lt(qs,{base2:()=>I1});var I1=Bt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Hs={};Lt(Hs,{base256emoji:()=>R1});var nu=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}"),C1=nu.reduce((e,t,r)=>(e[r]=t,e),[]),T1=nu.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function _1(e){return e.reduce((t,r)=>(t+=C1[r],t),"")}function L1(e){let t=[];for(let r of e){let n=T1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var R1=en({prefix:"\u{1F680}",name:"base256emoji",encode:_1,decode:L1});var zs={};Lt(zs,{base32:()=>Ge,base32hex:()=>U1,base32hexpad:()=>K1,base32hexpadupper:()=>O1,base32hexupper:()=>k1,base32pad:()=>P1,base32padupper:()=>D1,base32upper:()=>N1,base32z:()=>M1});var Ge=Bt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),N1=Bt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),P1=Bt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),D1=Bt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),U1=Bt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),k1=Bt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),K1=Bt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),O1=Bt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),M1=Bt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Gs={};Lt(Gs,{base36:()=>V1,base36upper:()=>F1});var V1=cr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),F1=cr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var $s={};Lt($s,{base58btc:()=>At,base58flickr:()=>q1});var At=cr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),q1=cr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ys={};Lt(Ys,{base64:()=>Yi,base64pad:()=>H1,base64url:()=>Ws,base64urlpad:()=>z1});var Yi=Bt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),H1=Bt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ws=Bt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),z1=Bt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Zs={};Lt(Zs,{base8:()=>G1});var G1=Bt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Xs={};Lt(Xs,{identity:()=>$1});var $1=en({prefix:"\0",name:"identity",encode:e=>tu(e),decode:e=>jf(e)});var nw=new TextEncoder,iw=new TextDecoder;var js={};Lt(js,{identity:()=>ur});var Ce={};Lt(Ce,{Digest:()=>Ir,create:()=>ge,decode:()=>fr,equals:()=>Js});var Z1=su,iu=128,X1=127,Q1=~X1,J1=Math.pow(2,31);function su(e,t,r){t=t||[],r=r||0;for(var n=r;e>=J1;)t[r++]=e&255|iu,e/=128;for(;e&Q1;)t[r++]=e&255|iu,e>>>=7;return t[r]=e|0,su.bytes=r-n+1,t}var j1=Qs,tg=128,ou=127;function Qs(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Qs.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&ou)<<i:(s&ou)*Math.pow(2,i),i+=7}while(s>=tg);return Qs.bytes=o-n,r}var eg=Math.pow(2,7),rg=Math.pow(2,14),ng=Math.pow(2,21),ig=Math.pow(2,28),og=Math.pow(2,35),sg=Math.pow(2,42),ag=Math.pow(2,49),cg=Math.pow(2,56),fg=Math.pow(2,63),ug=function(e){return e<eg?1:e<rg?2:e<ng?3:e<ig?4:e<og?5:e<sg?6:e<ag?7:e<cg?8:e<fg?9:10},lg={encode:Z1,decode:j1,encodingLength:ug},hg=lg,Kn=hg;var On=(e,t=0)=>[Kn.decode(e,t),Kn.decode.bytes],rn=(e,t,r=0)=>(Kn.encode(e,t,r),t),nn=e=>Kn.encodingLength(e);var ge=(e,t)=>{let r=t.byteLength,n=nn(e),i=n+nn(r),o=new Uint8Array(i+r);return rn(e,o,0),rn(r,o,n),o.set(t,i),new Ir(e,r,t,o)},fr=e=>{let t=ze(e),[r,n]=On(t),[i,o]=On(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Ir(r,i,s,t)},Js=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Jf(e.bytes,r.bytes)}},Ir=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var au=0,dg="identity",cu=ze,pg=e=>ge(au,cu(e)),ur={code:au,name:dg,encode:cu,digest:pg};var ra={};Lt(ra,{sha256:()=>Vt,sha512:()=>yg});var ea=({name:e,code:t,encode:r})=>new ta(e,t,r),ta=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?ge(this.code,r):r.then(n=>ge(this.code,n))}else throw Error("Unknown type, must be binary type")}};var uu=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Vt=ea({name:"sha2-256",code:18,encode:uu("SHA-256")}),yg=ea({name:"sha2-512",code:19,encode:uu("SHA-512")});var lu=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return xg(r,na(e),t||At.encoder);default:return mg(r,na(e),t||Ge.encoder)}};var hu=new WeakMap,na=e=>{let t=hu.get(e);if(t==null){let r=new Map;return hu.set(e,r),r}return t},xe=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==Mn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==bg)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=ge(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&Js(t.multihash,n.multihash)}toString(t){return lu(this,t)}toJSON(){return{"/":lu(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||du(n,i,o.bytes))}else if(r[vg]===!0){let{version:n,multihash:i,code:o}=r,s=fr(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!==Mn)throw new Error(`Version 0 CID must use dag-pb (code: ${Mn}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=du(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Mn,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=ze(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Ir(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=On(t.subarray(r));return r+=d,l},i=n(),o=Mn;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]=gg(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 na(o).set(n,t),o}},gg=(e,t)=>{switch(e[0]){case"Q":{let r=t||At;return[At.prefix,r.decode(`${At.prefix}${e}`)]}case At.prefix:{let r=t||At;return[At.prefix,r.decode(e)]}case Ge.prefix:{let r=t||Ge;return[Ge.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},xg=(e,t,r)=>{let{prefix:n}=r;if(n!==At.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},mg=(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},Mn=112,bg=18,du=(e,t,r)=>{let n=nn(e),i=n+nn(t),o=new Uint8Array(i+r.byteLength);return rn(e,o,0),rn(t,o,n),o.set(r,i),o},vg=Symbol.for("@ipld/js-cid/CID");var Nt={...Xs,...qs,...Zs,...Vs,...Fs,...zs,...Gs,...$s,...Ys,...Hs},vw={...ra,...js};function Xi(e=0){return globalThis.Buffer?.allocUnsafe!=null?Ar(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function yu(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var pu=yu("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ia=yu("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=Xi(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),wg={utf8:pu,"utf-8":pu,hex:Nt.base16,latin1:ia,ascii:ia,binary:ia,...Nt},Qi=wg;function te(e,t="utf8"){let r=Qi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Ar(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var wa={};Lt(wa,{Ed25519PrivateKey:()=>Dr,Ed25519PublicKey:()=>Hn,generateKeyPair:()=>Dg,generateKeyPairFromSeed:()=>ku,unmarshalEd25519PrivateKey:()=>Ng,unmarshalEd25519PublicKey:()=>Pg});function Wt(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 kw=Yt(Tt(),1),Kw=Yt(zi(),1),gu=Yt(ht(),1);function Cr(e,t){if(globalThis.Buffer!=null)return Ar(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Xi(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Ar(r)}function ee(e,t="utf8"){let r=Qi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function me(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=Cr([new Uint8Array(t-r.length),r])}return ee(r,"base64url")}function re(e){let t=xu(e);return new gu.default.jsbn.BigInteger(ee(t,"base16"),16)}function xu(e,t){let r=te(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=Cr([new Uint8Array(t-r.length),r])}return r}function se(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var on=32,$e=64,Ji=32;function mu(){let e=Wr.utils.randomPrivateKey(),t=Wr.getPublicKey(e);return{privateKey:Eu(e,t),publicKey:t}}function bu(e){if(e.length!==Ji)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=Wr.getPublicKey(t);return{privateKey:Eu(t,r),publicKey:r}}function vu(e,t){let r=e.subarray(0,Ji);return Wr.sign(t instanceof Uint8Array?t:t.subarray(),r)}function wu(e,t,r){return Wr.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function Eu(e,t){let r=new Uint8Array($e);for(let n=0;n<Ji;n++)r[n]=e[n],r[Ji+n]=t[n];return r}var Xt={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var oa={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function sa(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=Xt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=te(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",oa,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",oa,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(p,y,l);return Cr([g,p.iv,new Uint8Array(x)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=te(d));let x;if(d.length===0)try{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,I,{name:t,length:r},!0,["decrypt"])}catch{x=await a.subtle.importKey("jwk",oa,{name:"AES-GCM"},!0,["decrypt"])}else{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,I,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(y,x,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function sn(e,t){let n=await sa().encrypt(e,t);return Yi.encode(n)}var aa=new Float32Array([-0]),lr=new Uint8Array(aa.buffer);function Bu(e,t,r){aa[0]=e,t[r]=lr[0],t[r+1]=lr[1],t[r+2]=lr[2],t[r+3]=lr[3]}function Au(e,t){return lr[0]=e[t],lr[1]=e[t+1],lr[2]=e[t+2],lr[3]=e[t+3],aa[0]}var ca=new Float64Array([-0]),zt=new Uint8Array(ca.buffer);function Iu(e,t,r){ca[0]=e,t[r]=zt[0],t[r+1]=zt[1],t[r+2]=zt[2],t[r+3]=zt[3],t[r+4]=zt[4],t[r+5]=zt[5],t[r+6]=zt[6],t[r+7]=zt[7]}function Cu(e,t){return zt[0]=e[t],zt[1]=e[t+1],zt[2]=e[t+2],zt[3]=e[t+3],zt[4]=e[t+4],zt[5]=e[t+5],zt[6]=e[t+6],zt[7]=e[t+7],ca[0]}var Sg=BigInt(Number.MAX_SAFE_INTEGER),Bg=BigInt(Number.MIN_SAFE_INTEGER),Qt=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 Tr;if(t<Sg&&t>Bg)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>Tu&&(i=0n,++n>Tu&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Tr;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):Tr}},Tr=new Qt(0,0);Tr.toBigInt=function(){return 0n};Tr.zzEncode=Tr.zzDecode=function(){return this};Tr.length=function(){return 1};var Tu=4294967296n;function _u(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 Lu(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 fa(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function be(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function ji(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var ua=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,be(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw be(this,4);return ji(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw be(this,4);return ji(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw be(this,4);let t=Au(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw be(this,4);let t=Cu(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw be(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return Lu(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw be(this,t);this.pos+=t}else do if(this.pos>=this.len)throw be(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new Qt(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw be(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw be(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw be(this,8);let t=ji(this.buf,this.pos+=4),r=ji(this.buf,this.pos+=4);return new Qt(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 la(e){return new ua(e instanceof Uint8Array?e:e.subarray())}function _r(e,t){let r=la(e);return t.decode(r)}function to(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Lr(e=0){return globalThis.Buffer?.allocUnsafe!=null?to(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Pu(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Nu=Pu("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ha=Pu("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=Lr(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),Ag={utf8:Nu,"utf-8":Nu,hex:Nt.base16,latin1:ha,ascii:ha,binary:ha,...Nt},Du=Ag;function Uu(e,t="utf8"){let r=Du[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?to(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function da(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Lr(s);i+s>t&&(n=Lr(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Rr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function pa(){}var ga=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},Ig=da();function Cg(e){return globalThis.Buffer!=null?Lr(e):Ig(e)}var qn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Rr(pa,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Rr(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new xa((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(Vn,10,Qt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=Qt.fromBigInt(t);return this._push(Vn,r.length(),r)}uint64Number(t){let r=Qt.fromNumber(t);return this._push(Vn,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=Qt.fromBigInt(t).zzEncode();return this._push(Vn,r.length(),r)}sint64Number(t){let r=Qt.fromNumber(t).zzEncode();return this._push(Vn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(ya,1,t?1:0)}fixed32(t){return this._push(Fn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=Qt.fromBigInt(t);return this._push(Fn,4,r.lo)._push(Fn,4,r.hi)}fixed64Number(t){let r=Qt.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(Bu,4,t)}double(t){return this._push(Iu,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(ya,1,0):this.uint32(r)._push(_g,r,t)}string(t){let r=_u(t);return r!==0?this.uint32(r)._push(fa,r,t):this._push(ya,1,0)}fork(){return this.states=new ga(this),this.head=this.tail=new Rr(pa,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 Rr(pa,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=Cg(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function ya(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 xa=class extends Rr{next;constructor(t,r){super(Tg,t,r),this.next=void 0}};function Vn(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 _g(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(qn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(Lg,t,e),this},qn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(Rg,t,e),this});function Lg(e,t,r){t.set(e,r)}function Rg(e,t,r){e.length<40?fa(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(Uu(e),r)}function ma(){return new qn}function Nr(e,t){let r=ma();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var an;(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"})(an||(an={}));function eo(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ba(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 eo("enum",an.VARINT,r,n)}function Pr(e,t){return eo("message",an.LENGTH_DELIMITED,e,t)}var Et;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(Et||(Et={}));var va;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(va||(va={}));(function(e){e.codec=()=>ba(va)})(Et||(Et={}));var Te;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Et.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=Et.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(Te||(Te={}));var _e;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Et.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=Et.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(_e||(_e={}));var Hn=class{_key;constructor(t){this._key=cn(t,on)}verify(t,r){return wu(this._key,r,t)}marshal(){return this._key}get bytes(){return Te.encode({Type:Et.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Wt(this.bytes,t.bytes)}hash(){let t=Vt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},Dr=class{_key;_publicKey;constructor(t,r){this._key=cn(t,$e),this._publicKey=cn(r,on)}sign(t){return vu(this._key,t)}get public(){return new Hn(this._publicKey)}marshal(){return this._key}get bytes(){return _e.encode({Type:Et.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Wt(this.bytes,t.bytes)}async hash(){let t=Vt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=ur.digest(this.public.bytes);return At.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Ng(e){if(e.length>$e){e=cn(e,$e+on);let n=e.subarray(0,$e),i=e.subarray($e,e.length);return new Dr(n,i)}e=cn(e,$e);let t=e.subarray(0,$e),r=e.subarray(on);return new Dr(t,r)}function Pg(e){return e=cn(e,on),new Hn(e)}async function Dg(){let{privateKey:e,publicKey:t}=mu();return new Dr(e,t)}async function ku(e){let{privateKey:t,publicKey:r}=bu(e);return new Dr(t,r)}function cn(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new et(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var Ug={"P-256":256,"P-384":384,"P-521":521},kg=Object.keys(Ug),W8=kg.join(" / ");var Ia={};Lt(Ia,{MAX_KEY_SIZE:()=>Wn,RsaPrivateKey:()=>fn,RsaPublicKey:()=>$n,fromJwk:()=>Wg,generateKeyPair:()=>Yg,unmarshalRsaPrivateKey:()=>Gg,unmarshalRsaPublicKey:()=>$g});var Gn=Yt(ht(),1);var R4=Yt(Fu(),1);function no(e){if(isNaN(e)||e<=0)throw new et("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return gr(e)}var d4=Yt(Wi(),1),Ba=Yt(ht(),1);function qu(e,t){return t.map(r=>re(e[r]))}function Hu(e){return Ba.default.pki.setRsaPrivateKey(...qu(e,["n","e","d","p","q","dp","dq","qi"]))}function zu(e){return Ba.default.pki.setRsaPublicKey(...qu(e,["n","e"]))}var kr={};Lt(kr,{jwkToPkcs1:()=>Vg,jwkToPkix:()=>qg,pkcs1ToJwk:()=>Mg,pkixToJwk:()=>Fg});var g4=Yt(Dn(),1),x4=Yt(Wi(),1);var We=Yt(ht(),1);function Mg(e){let t=We.default.asn1.fromDer(ee(e,"ascii")),r=We.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:me(r.n),e:me(r.e),d:me(r.d),p:me(r.p),q:me(r.q),dp:me(r.dP),dq:me(r.dQ),qi:me(r.qInv),alg:"RS256"}}function Vg(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=We.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return te(We.default.asn1.toDer(t).getBytes(),"ascii")}function Fg(e){let t=We.default.asn1.fromDer(ee(e,"ascii")),r=We.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:me(r.n),e:me(r.e)}}function qg(e){if(e.n==null||e.e==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=We.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return te(We.default.asn1.toDer(t).getBytes(),"ascii")}async function Gu(e){let t=await Xt.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 Yu(t);return{privateKey:r[0],publicKey:r[1]}}async function Aa(e){let r=[await Xt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Hg(e)],n=await Yu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function $u(e,t){let r=await Xt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Xt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function Wu(e,t,r){let n=await Xt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Xt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r instanceof Uint8Array?r:r.subarray())}async function Yu(e){if(e.privateKey==null||e.publicKey==null)throw new et("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Xt.get().subtle.exportKey("jwk",e.privateKey),Xt.get().subtle.exportKey("jwk",e.publicKey)])}async function Hg(e){return Xt.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 Zu(e,t,r,n){let i=t?zu(e):Hu(e),o=ee(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return te(s,"ascii")}function Xu(e,t){return Zu(e,!0,t,(r,n)=>n.encrypt(r))}function Qu(e,t){return Zu(e,!1,t,(r,n)=>n.decrypt(r))}function io(e){if(e.kty!=="RSA")throw new et("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new et("invalid key modulus","ERR_INVALID_KEY_MODULUS");return te(e.n,"base64url").length*8}var Wn=8192,$n=class{_key;constructor(t){this._key=t}verify(t,r){return Wu(this._key,r,t)}marshal(){return kr.jwkToPkix(this._key)}get bytes(){return Te.encode({Type:Et.RSA,Data:this.marshal()}).subarray()}encrypt(t){return Xu(this._key,t)}equals(t){return Wt(this.bytes,t.bytes)}hash(){let t=Vt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},fn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return no(16)}sign(t){return $u(this._key,t)}get public(){if(this._publicKey==null)throw new et("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new $n(this._publicKey)}decrypt(t){return Qu(this._key,t)}marshal(){return kr.jwkToPkcs1(this._key)}get bytes(){return _e.encode({Type:Et.RSA,Data:this.marshal()}).subarray()}equals(t){return Wt(this.bytes,t.bytes)}hash(){let t=Vt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ee(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Gn.default.util.ByteBuffer(this.marshal()),i=Gn.default.asn1.fromDer(n),o=Gn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Gn.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Gg(e){let t=kr.pkcs1ToJwk(e);if(io(t)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await Aa(t);return new fn(r.privateKey,r.publicKey)}function $g(e){let t=kr.pkixToJwk(e);if(io(t)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new $n(t)}async function Wg(e){if(io(e)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await Aa(e);return new fn(t.privateKey,t.publicKey)}async function Yg(e){if(e>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await Gu(e);return new fn(t.privateKey,t.publicKey)}var La={};Lt(La,{Secp256k1PrivateKey:()=>Zn,Secp256k1PublicKey:()=>Yn,generateKeyPair:()=>sx,unmarshalSecp256k1PrivateKey:()=>ix,unmarshalSecp256k1PublicKey:()=>ox});function Zg(e){let t=Bn(e);ne(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:Xg,hexToBytes:Qg}=Si,Kr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Kr;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:Xg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Kr,r=typeof e=="string"?Qg(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}=Kr._parseInt(r.subarray(2)),{d:s,l:a}=Kr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Ye=BigInt(0),ae=BigInt(1),O4=BigInt(2),Ju=BigInt(3),M4=BigInt(4);function Jg(e){let t=Zg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let x=p.toAffine();return Me(Uint8Array.from([4]),r.toBytes(x.x),r.toBytes(x.y))}),i=t.fromBytes||(h=>{let p=h.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),x=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:x}});function o(h){let{a:p,b:y}=t,x=r.sqr(h),v=r.mul(x,h);return r.add(r.add(v,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Ye<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:x,n:v}=t;if(p&&typeof h!="bigint"){if(h instanceof Uint8Array&&(h=ke(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let m;try{m=typeof h=="bigint"?h:Ke(gt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return x&&(m=st(m,v)),a(m),m}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,x){if(this.px=p,this.py=y,this.pz=x,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(p){let{x:y,y:x}=p||{};if(!p||!r.isValid(y)||!r.isValid(x))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let v=m=>r.eql(m,r.ZERO);return v(y)&&v(x)?l.ZERO:new l(y,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(x=>x.pz));return p.map((x,v)=>x.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(gt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let x=r.sqr(y),v=o(p);if(!r.eql(x,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:I,pz:S}=p,B=r.eql(r.mul(y,S),r.mul(m,v)),R=r.eql(r.mul(x,S),r.mul(I,v));return B&&R}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,x=r.mul(y,Ju),{px:v,py:m,pz:I}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,L=r.mul(v,v),O=r.mul(m,m),M=r.mul(I,I),k=r.mul(v,m);return k=r.add(k,k),R=r.mul(v,I),R=r.add(R,R),S=r.mul(p,R),B=r.mul(x,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(k,S),R=r.mul(x,R),M=r.mul(p,M),k=r.sub(L,M),k=r.mul(p,k),k=r.add(k,R),R=r.add(L,L),L=r.add(R,L),L=r.add(L,M),L=r.mul(L,k),B=r.add(B,L),M=r.mul(m,I),M=r.add(M,M),L=r.mul(M,k),S=r.sub(S,L),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:I,pz:S}=p,B=r.ZERO,R=r.ZERO,L=r.ZERO,O=t.a,M=r.mul(t.b,Ju),k=r.mul(y,m),H=r.mul(x,I),z=r.mul(v,S),Z=r.add(y,x),A=r.add(m,I);Z=r.mul(Z,A),A=r.add(k,H),Z=r.sub(Z,A),A=r.add(y,v);let N=r.add(m,S);return A=r.mul(A,N),N=r.add(k,z),A=r.sub(A,N),N=r.add(x,v),B=r.add(I,S),N=r.mul(N,B),B=r.add(H,z),N=r.sub(N,B),L=r.mul(O,A),B=r.mul(M,z),L=r.add(B,L),B=r.sub(H,L),L=r.add(H,L),R=r.mul(B,L),H=r.add(k,k),H=r.add(H,k),z=r.mul(O,z),A=r.mul(M,A),H=r.add(H,z),z=r.sub(k,z),z=r.mul(O,z),A=r.add(A,z),k=r.mul(H,A),R=r.add(R,k),k=r.mul(N,A),B=r.mul(Z,B),B=r.sub(B,k),k=r.mul(Z,H),L=r.mul(N,L),L=r.add(L,k),new l(B,R,L)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let x=r.invertBatch(y.map(v=>v.pz));return y.map((v,m)=>v.toAffine(x[m])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Ye)return y;if(a(p),p===ae)return this;let{endo:x}=t;if(!x)return g.unsafeLadder(this,p);let{k1neg:v,k1:m,k2neg:I,k2:S}=x.splitScalar(p),B=y,R=y,L=this;for(;m>Ye||S>Ye;)m&ae&&(B=B.add(L)),S&ae&&(R=R.add(L)),L=L.double(),m>>=ae,S>>=ae;return v&&(B=B.negate()),I&&(R=R.negate()),R=new l(r.mul(R.px,x.beta),R.py,R.pz),B.add(R)}multiply(p){a(p);let y=p,x,v,{endo:m}=t;if(m){let{k1neg:I,k1:S,k2neg:B,k2:R}=m.splitScalar(y),{p:L,f:O}=this.wNAF(S),{p:M,f:k}=this.wNAF(R);L=g.constTimeNegate(I,L),M=g.constTimeNegate(B,M),M=new l(r.mul(M.px,m.beta),M.py,M.pz),x=L.add(M),v=O.add(k)}else{let{p:I,f:S}=this.wNAF(y);x=I,v=S}return l.normalizeZ([x,v])[0]}multiplyAndAddUnsafe(p,y,x){let v=l.BASE,m=(S,B)=>B===Ye||B===ae||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),I=m(this,y).add(m(p,x));return I.is0()?void 0:I}toAffine(p){let{px:y,py:x,pz:v}=this,m=this.is0();p==null&&(p=m?r.ONE:r.inv(v));let I=r.mul(y,p),S=r.mul(x,p),B=r.mul(v,p);if(m)return{x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return{x:I,y:S}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===ae)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=t;return p===ae?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return ke(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=Ii(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function jg(e){let t=Bn(e);return ne(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function ju(e){let t=jg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return Ye<A&&A<r.ORDER}function a(A){return st(A,n)}function c(A){return Bi(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=Jg({...t,toBytes(A,N,T){let _=N.toAffine(),w=r.toBytes(_.x),U=Me;return T?U(Uint8Array.from([N.hasEvenY()?2:3]),w):U(Uint8Array.from([4]),w,r.toBytes(_.y))},fromBytes(A){let N=A.length,T=A[0],_=A.subarray(1);if(N===i&&(T===2||T===3)){let w=Ke(_);if(!s(w))throw new Error("Point is not on curve");let U=l(w),K=r.sqrt(U),F=(K&ae)===ae;return(T&1)===1!==F&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(_.subarray(0,r.BYTES)),U=r.fromBytes(_.subarray(r.BYTES,2*r.BYTES));return{x:w,y:U}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>ke(er(A,t.nByteLength));function h(A){let N=n>>ae;return A>N}function p(A){return h(A)?a(-A):A}let y=(A,N,T)=>Ke(A.slice(N,T));class x{constructor(N,T,_){this.r=N,this.s=T,this.recovery=_,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=gt("compactSignature",N,T*2),new x(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:_}=Kr.toSig(gt("DER",N));return new x(T,_)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new x(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:_,recovery:w}=this,U=R(gt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let F=w&1?"03":"02",W=f.fromHex(F+g(K)),Y=c(K),rt=a(-U*Y),X=a(_*Y),J=f.BASE.multiplyAndAddUnsafe(W,rt,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new x(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return xr(this.toDERHex())}toDERHex(){return Kr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return xr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(A){try{return u(A),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let A=os(t.n);return cc(t.randomBytes(A),t.n)},precompute(A=8,N=f.BASE){return N._setWindowSize(A),N.multiply(BigInt(3)),N}};function m(A,N=!0){return f.fromPrivateKey(A).toRawBytes(N)}function I(A){let N=A instanceof Uint8Array,T=typeof A=="string",_=(N||T)&&A.length;return N?_===i||_===o:T?_===2*i||_===2*o:A instanceof f}function S(A,N,T=!0){if(I(A))throw new Error("first arg must be private key");if(!I(N))throw new Error("second arg must be public key");return f.fromHex(N).multiply(u(A)).toRawBytes(T)}let B=t.bits2int||function(A){let N=Ke(A),T=A.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(A){return a(B(A))},L=Sn(t.nBitLength);function O(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(Ye<=A&&A<L))throw new Error(`bigint expected < 2^${t.nBitLength}`);return er(A,t.nByteLength)}function M(A,N,T=k){if(["recovered","canonical"].some(lt=>lt in T))throw new Error("sign() legacy options not supported");let{hash:_,randomBytes:w}=t,{lowS:U,prehash:K,extraEntropy:F}=T;U==null&&(U=!0),A=gt("msgHash",A),K&&(A=gt("prehashed msgHash",_(A)));let W=R(A),Y=u(N),rt=[O(Y),O(W)];if(F!=null){let lt=F===!0?w(r.BYTES):F;rt.push(gt("extraEntropy",lt))}let X=Me(...rt),J=W;function dt(lt){let Kt=B(lt);if(!d(Kt))return;let Ot=c(Kt),_t=f.BASE.multiply(Kt).toAffine(),Ft=a(_t.x);if(Ft===Ye)return;let Pe=a(Ot*a(J+Ft*Y));if(Pe===Ye)return;let hr=(_t.x===Ft?0:2)|Number(_t.y&ae),gn=Pe;return U&&h(Pe)&&(gn=p(Pe),hr^=1),new x(Ft,gn,hr)}return{seed:X,k2sig:dt}}let k={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(A,N,T=k){let{seed:_,k2sig:w}=M(A,N,T),U=t;return ts(U.hash.outputLen,U.nByteLength,U.hmac)(_,w)}f.BASE._setWindowSize(8);function Z(A,N,T,_=H){let w=A;if(N=gt("msgHash",N),T=gt("publicKey",T),"strict"in _)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:K}=_,F,W;try{if(typeof w=="string"||w instanceof Uint8Array)try{F=x.fromDER(w)}catch(_t){if(!(_t instanceof Kr.Err))throw _t;F=x.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:_t,s:Ft}=w;F=new x(_t,Ft)}else throw new Error("PARSE");W=f.fromHex(T)}catch(_t){if(_t.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&F.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:rt}=F,X=R(N),J=c(rt),dt=a(X*J),lt=a(Y*J),Kt=f.BASE.multiplyAndAddUnsafe(W,dt,lt)?.toAffine();return Kt?a(Kt.x)===Y:!1}return{CURVE:t,getPublicKey:m,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:x,utils:v}}function tx(e){return{hash:e,hmac:(t,...r)=>Yr(e,t,mi(...r)),randomBytes:gr}}function tl(e,t){let r=n=>ju({...e,...tx(n)});return Object.freeze({...r(t),create:r})}var nl=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),el=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),ex=BigInt(1),Ca=BigInt(2),rl=(e,t)=>(e+t/Ca)/t;function rx(e){let t=nl,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=xt(u,r,t)*u%t,d=xt(l,r,t)*u%t,g=xt(d,Ca,t)*f%t,h=xt(g,i,t)*g%t,p=xt(h,o,t)*h%t,y=xt(p,a,t)*p%t,x=xt(y,c,t)*y%t,v=xt(x,a,t)*p%t,m=xt(v,r,t)*u%t,I=xt(m,s,t)*h%t,S=xt(I,n,t)*f%t,B=xt(S,Ca,t);if(!Ta.eql(Ta.sqr(B),e))throw new Error("Cannot find square root");return B}var Ta=Ai(nl,void 0,void 0,{sqrt:rx}),ve=tl({a:BigInt(0),b:BigInt(7),Fp:Ta,n:el,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=el,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-ex*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=rl(o*e,t),c=rl(-n*e,t),f=st(e-a*r-c*i,t),u=st(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Zr),Y4=BigInt(0);var Z4=ve.ProjectivePoint;function il(){return ve.utils.randomPrivateKey()}function ol(e,t){let r=Vt.digest(t instanceof Uint8Array?t:t.subarray());if(se(r))return r.then(({digest:n})=>ve.sign(n,e).toDERRawBytes()).catch(n=>{throw new et(String(n),"ERR_INVALID_INPUT")});try{return ve.sign(r.digest,e).toDERRawBytes()}catch(n){throw new et(String(n),"ERR_INVALID_INPUT")}}function sl(e,t,r){let n=Vt.digest(r instanceof Uint8Array?r:r.subarray());if(se(n))return n.then(({digest:i})=>ve.verify(t,i,e)).catch(i=>{throw new et(String(i),"ERR_INVALID_INPUT")});try{return ve.verify(t,n.digest,e)}catch(i){throw new et(String(i),"ERR_INVALID_INPUT")}}function al(e){return ve.ProjectivePoint.fromHex(e).toRawBytes(!0)}function cl(e){try{ve.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}function _a(e){try{ve.ProjectivePoint.fromHex(e)}catch(t){throw new et(String(t),"ERR_INVALID_PUBLIC_KEY")}}function fl(e){try{return ve.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Yn=class{_key;constructor(t){_a(t),this._key=t}verify(t,r){return sl(this._key,r,t)}marshal(){return al(this._key)}get bytes(){return Te.encode({Type:Et.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Wt(this.bytes,t.bytes)}async hash(){let t=Vt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}},Zn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??fl(t),cl(this._key),_a(this._publicKey)}sign(t){return ol(this._key,t)}get public(){return new Yn(this._publicKey)}marshal(){return this._key}get bytes(){return _e.encode({Type:Et.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Wt(this.bytes,t.bytes)}hash(){let t=Vt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ee(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function ix(e){return new Zn(e)}function ox(e){return new Yn(e)}async function sx(){let e=il();return new Zn(e)}var Or={rsa:Ia,ed25519:wa,secp256k1:La};function ul(e){let t=Object.keys(Or).join(" / ");return new et(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function ll(e){let t=Te.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Et.RSA:return Or.rsa.unmarshalRsaPublicKey(r);case Et.Ed25519:return Or.ed25519.unmarshalEd25519PublicKey(r);case Et.Secp256k1:return Or.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw ul(t.Type??"unknown")}}async function hl(e){let t=_e.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Et.RSA:return Or.rsa.unmarshalRsaPrivateKey(r);case Et.Ed25519:return Or.ed25519.unmarshalEd25519PrivateKey(r);case Et.Secp256k1:return Or.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw ul(t.Type??"RSA")}}var cx=Symbol.for("nodejs.util.inspect.custom"),dl=Object.values(Nt).map(e=>e.decoder).reduce((e,t)=>e.or(t),Nt.identity.decoder),pl=114,Ra=36,Na=37,Xn=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()})`}[Wf]=!0;toString(){return this.string==null&&(this.string=At.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return xe.createV1(pl,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Wt(this.multihash.bytes,t);if(typeof t=="string")return Pa(t).equals(this);if(t?.multihash?.bytes!=null)return Wt(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[cx](){return`PeerId(${this.toString()})`}},un=class extends Xn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},ln=class extends Xn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},hn=class extends Xn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function Pa(e,t){if(t=t??dl,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=fr(At.decode(`z${e}`));return e.startsWith("12D")?new ln({multihash:r}):e.startsWith("16U")?new hn({multihash:r}):new un({multihash:r})}return fx(dl.decode(e))}function fx(e){try{let t=fr(e);if(t.code===ur.code){if(t.digest.length===Ra)return new ln({multihash:t});if(t.digest.length===Na)return new hn({multihash:t})}if(t.code===Vt.code)return new un({multihash:t})}catch{return ux(xe.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function ux(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==pl)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Vt.code)return new un({multihash:e.multihash});if(t.code===ur.code){if(t.digest.length===Ra)return new ln({multihash:e.multihash});if(t.digest.length===Na)return new hn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Da(e,t){return e.length===Ra?new ln({multihash:ge(ur.code,e),privateKey:t}):e.length===Na?new hn({multihash:ge(ur.code,e),privateKey:t}):new un({multihash:await Vt.digest(e),publicKey:e,privateKey:t})}function Ua(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=pr(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Qe(r)}function gl(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var yl=gl("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ka=gl("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=pr(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),lx={utf8:yl,"utf-8":yl,hex:Nt.base16,latin1:ka,ascii:ka,binary:ka,...Nt},oo=lx;function Qn(e,t="utf8"){let r=oo[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 so;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((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=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(so||(so={}));var Jn;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.identityKey!=null&&r.identityKey.byteLength>0&&(n.uint32(10),n.bytes(r.identityKey)),r.identitySig!=null&&r.identitySig.byteLength>0&&(n.uint32(18),n.bytes(r.identitySig)),r.extensions!=null&&(n.uint32(34),so.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:ct(0),identitySig:ct(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=so.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(Jn||(Jn={}));async function xl(e,t,r){let n=await dx(e,ml(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return hx(e.publicKey,n,r)}function hx(e,t,r){return Jn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function dx(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await hl(e.privateKey)).sign(t)}async function Ka(e){return Da(e.identityKey)}function Oa(e){return Jn.decode(e)}function ml(e){let t=Qn("noise-libp2p-static-key:");return e instanceof Uint8Array?Ua([t,e],t.length+e.length):(e.prepend(t),e)}async function Ma(e,t,r){let n=await Da(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=ml(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 ll(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function jn(e){return!(!(e instanceof Uint8Array)&&!Mr(e)||e.byteLength!==32)}function Va(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}function Le(e,t="utf8"){let r=oo[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 px=0,yx=4294967295,gx="Cipherstate has reached maximum n, a new handshake must be performed",ao=class{n;bytes;view;constructor(t=px){this.n=t,this.bytes=ct(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>yx)throw new Error(gx)}};var co=class{crypto;log;constructor(t,r){this.log=t.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return ct(32)}isEmptyKey(t){let r=this.createEmptyKey();return Va(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:ct(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),ct(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new St(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new ao}}initializeSymmetric(t){let r=Qn(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=ct(32);return r.set(t),r}else return this.getHash(t,ct(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,ct(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,ct(0),r),i=this.createEmptyKey(),o=ct(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,ct(0),r.ciphertext)}};var fo=class extends co{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=ct(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=ct(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=ct(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 jn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(jn(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&&jn(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&&jn(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=ct(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=ct(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};function bl(e,t){!t.enabled||!qr||(t(`LOCAL_STATIC_PUBLIC_KEY ${Le(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${Le(e.privateKey,"hex")}`))}function Fa(e,t){!t.enabled||!qr||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${Le(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${Le(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function vl(e,t){!t.enabled||!qr||t(`REMOTE_STATIC_PUBLIC_KEY ${Le(e.subarray(),"hex")}`)}function qa(e,t){!t.enabled||!qr||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${Le(e.subarray(),"hex")}`)}function wl(e,t){!t.enabled||!qr||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${Le(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${Le(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var uo=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;log;constructor(t,r,n,i,o,s,a,c,f){this.log=t.logger.forComponent("libp2p:noise:xxhandshake"),this.isInitiator=r,this.payload=n,this.prologue=i,this.staticKeypair=s,this.connection=a,c&&(this.remotePeer=c),this.xx=f??new fo(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(bl(this.session.hs.s,this.log),this.isInitiator){this.log.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,ct(0));await this.connection.write(vc(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),Fa(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=Sc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new br("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),qa(this.session.hs.re,this.log)}}async exchange(){if(this.isInitiator){this.log.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=Bc((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");this.log.trace("Stage 1 - Initiator received the message."),qa(this.session.hs.re,this.log),vl(this.session.hs.rs,this.log),this.log.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 Ln(`Error occurred while verifying signed payload: ${o.message}`)}this.log.trace("All good with the signature!")}else{this.log.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(wc(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Fa(this.session.hs.e,this.log)}}async finish(){if(this.isInitiator){this.log.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Ec(t)),this.log.trace("Stage 2 - Initiator sent message with signed payload.")}else{this.log.trace("Stage 2 - Responder waiting for third handshake message...");let t=Ac((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");this.log.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 Ln(`Error occurred while verifying signed payload: ${o.message}`)}}wl(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,ct(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,ct(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 El(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var lo=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(t,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=t;this.components=t,this.crypto=o??bc,this.extensions=i,this.metrics=a?El(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??ct(0)}async secureOutbound(t,r,n){let i=Uo(r,{lengthEncoder:Xr,lengthDecoder:Tn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=Uo(r,{lengthEncoder:Xr,lengthDecoder:Tn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await xl(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new uo(this.components,n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=U0(),o=t.unwrap();return await K0(n,Tc(r,this.metrics),o,s=>wn(s,{lengthDecoder:Tn}),_c(r,this.metrics),n),i}};function Sl(e={}){return t=>new lo(t,e)}function Bl(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}function dn(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function ho(e=0){return globalThis.Buffer?.allocUnsafe!=null?dn(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Il(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Al=Il("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Ha=Il("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=ho(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),xx={utf8:Al,"utf-8":Al,hex:Nt.base16,latin1:Ha,ascii:Ha,binary:Ha,...Nt},po=xx;function Jt(e,t="utf8"){let r=po[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function Ze(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=ho(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return dn(r)}var yo=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(o*=t,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=t(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Cl=45,mx=15,pn=new yo;function za(e){if(!(e.length>mx))return pn.new(e).parseWith(()=>pn.readIPv4Addr())}function Ga(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Cl))return pn.new(e).parseWith(()=>pn.readIPv6Addr())}function go(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Cl))return pn.new(e).parseWith(()=>pn.readIPAddr())}var p3=parseInt("0xFFFF",16),y3=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function $a(e,t="utf8"){let r=po[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?dn(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function xo(e){return!!za(e)}function mo(e){return!!Ga(e)}function bo(e){return!!go(e)}var Ll=xo,Sx=mo,Wa=function(e){let t=0;if(e=e.toString().trim(),Ll(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Sx(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Ll(r[n]),s;o&&(s=Wa(r[n]),r[n]=Jt(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,Jt(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")},Rl=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var yn={},Ya={},Ax=[[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"]];Ax.forEach(e=>{let t=Ix(...e);Ya[t.code]=t,yn[t.name]=t});function Ix(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function ut(e){if(typeof e=="number"){if(Ya[e]!=null)return Ya[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(yn[e]!=null)return yn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var eB=ut("ip4"),rB=ut("ip6"),nB=ut("ipcidr");function Xa(e,t){switch(ut(e).code){case 4:case 41:return Tx(t);case 42:return Dl(t);case 6:case 273:case 33:case 132:return kl(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Dl(t);case 421:return Nx(t);case 444:return Ul(t);case 445:return Ul(t);case 466:return Rx(t);default:return Jt(t,"base16")}}function Qa(e,t){switch(ut(e).code){case 4:return Nl(t);case 41:return Nl(t);case 42:return Pl(t);case 6:case 273:case 33:case 132:return Ja(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Pl(t);case 421:return _x(t);case 444:return Px(t);case 445:return Dx(t);case 466:return Lx(t);default:return $a(t,"base16")}}var Za=Object.values(Nt).map(e=>e.decoder),Cx=function(){let e=Za[0].or(Za[1]);return Za.slice(2).forEach(t=>e=e.or(t)),e}();function Nl(e){if(!bo(e))throw new Error("invalid ip address");return Wa(e)}function Tx(e){let t=Rl(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!bo(t))throw new Error("invalid ip address");return t}function Ja(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function kl(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function Pl(e){let t=$a(e),r=Uint8Array.from(Xe(t.length));return Ze([r,t],r.length+t.length)}function Dl(e){let t=fe(e);if(e=e.slice(Ht(t)),e.length!==t)throw new Error("inconsistent lengths");return Jt(e)}function _x(e){let t;e[0]==="Q"||e[0]==="1"?t=fr(At.decode(`z${e}`)).bytes:t=xe.parse(e).multihash.bytes;let r=Uint8Array.from(Xe(t.length));return Ze([r,t],r.length+t.length)}function Lx(e){let t=Cx.decode(e),r=Uint8Array.from(Xe(t.length));return Ze([r,t],r.length+t.length)}function Rx(e){let t=fe(e),r=e.slice(Ht(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+Jt(r,"base64url")}function Nx(e){let t=fe(e),r=e.slice(Ht(t));if(r.length!==t)throw new Error("inconsistent lengths");return Jt(r,"base58btc")}function Px(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=Ge.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ja(n);return Ze([r,i],r.length+i.length)}function Dx(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=Ge.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ja(n);return Ze([r,i],r.length+i.length)}function Ul(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=Jt(t,"base32"),i=kl(r);return`${n}:${i}`}function Kl(e){e=ja(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ut(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Ml("invalid address: "+e);if(a.path===!0){n=ja(i.slice(o).join("/")),t.push([a.code,Qa(a.code,n)]),r.push([a.code,n]);break}let c=Qa(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Xa(a.code,c)])}return{string:Ol(r),bytes:e0(t),tuples:t,stringTuples:r,path:n}}function t0(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=fe(e,i),s=Ht(o),a=ut(o),c=Ux(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 Ml("Invalid address Uint8Array: "+Jt(e,"base16"));t.push([o,f]);let u=Xa(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:Ol(r),tuples:t,stringTuples:r,path:n}}function Ol(e){let t=[];return e.map(r=>{let n=ut(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),ja(t.join("/"))}function e0(e){return Ze(e.map(t=>{let r=ut(t[0]),n=Uint8Array.from(Xe(r.code));return t.length>1&&t[1]!=null&&(n=Ze([n,t[1]])),n}))}function Ux(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=fe(t instanceof Uint8Array?t:Uint8Array.from(t));return r+Ht(r)}}function ja(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function Ml(e){return new Error("Error parsing address: "+e)}var kx=Symbol.for("nodejs.util.inspect.custom"),n0=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Kx=[ut("dns").code,ut("dns4").code,ut("dns6").code,ut("dnsaddr").code],r0=class e{bytes;#e;#t;#r;#n;[n0]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=t0(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=Kl(t)}else if(Fl(t))r=t0(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,r,n,i,o="",s=ut("tcp"),a=ut("udp"),c=ut("ip4"),f=ut("ip6"),u=ut("dns6"),l=ut("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),Kx.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=ut(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=ut(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},ut(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>ut(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(e0(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===yn.p2p.code&&t.push([n,i]),n===yn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?Jt(At.decode(`z${n}`),"base58btc"):Jt(xe.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Bl(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=Vl.get(r.name);if(n==null)throw new et(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[kx](){return`Multiaddr(${this.#e})`}};var Vl=new Map;function Fl(e){return!!e?.[n0]}var Ox=e=>e.toString().split("/").slice(1),ti=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),It=e=>({match:t=>ti(r=>r===e).match(t),pattern:e}),Eo=()=>({match:e=>ti(t=>typeof t=="string").match(e),pattern:"{string}"}),ql=()=>({match:e=>ti(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ce=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{At.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),vo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Ws.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Re=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),Ne=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),Ct=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Pt(...e){function t(i){let o=Ox(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 o0=Ct(It("dns4"),Eo()),s0=Ct(It("dns6"),Eo()),a0=Ct(It("dnsaddr"),Eo()),Hl=Ct(It("dns"),Eo()),PB=Pt(o0),DB=Pt(s0),UB=Pt(a0),kB=Pt(Ne(Hl,a0,o0,s0)),zl=Ct(It("ip4"),ti(xo)),Gl=Ct(It("ip6"),ti(mo)),$l=Ne(zl,Gl),ei=Ne($l,Hl,o0,s0,a0),KB=Pt(ei),OB=Pt(zl),MB=Pt(Gl),VB=Pt($l),So=Ct(ei,It("tcp"),ql()),ri=Ct(ei,It("udp"),ql()),Mx=Ne(So,ri),FB=Pt(So),qB=Pt(ri),c0=Ct(ri,It("quic")),Bo=Ct(ri,It("quic-v1")),Vx=Ne(c0,Bo),HB=Pt(c0),zB=Pt(Bo),i0=Ne(ei,So,ri,c0,Bo),Wl=Ne(Ct(i0,It("ws"),Re(ce()))),GB=Pt(Wl),Yl=Ne(Ct(i0,It("wss"),Re(ce())),Ct(i0,It("tls"),It("ws"),Re(ce()))),$B=Pt(Yl),Zl=Ct(Mx,It("webrtc-direct"),vo(),Re(vo()),Re(ce())),WB=Pt(Zl),Xl=Ct(Bo,It("webtransport"),vo(),vo(),Re(ce())),Ao=Pt(Xl),wo=Ne(Wl,Yl,Ct(So,Re(ce())),Ct(Vx,Re(ce())),Ct(ei,Re(ce())),Zl,Xl,ce()),YB=Pt(wo),Fx=Ct(wo,It("p2p-circuit"),ce()),ZB=Pt(Fx),qx=Ne(Ct(wo,It("p2p-circuit"),It("webrtc"),ce()),Ct(wo,It("webrtc"),Re(ce())),It("webrtc")),XB=Pt(qx);async function f0(e,t,r,n,i,o){let s=o.forComponent(`libp2p:webtransport:stream:${r}:${t}`),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new St(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}},log:s};return g}function u0(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function Ql(e,t){return t.filter(n=>!!e.find(i=>Wt(n,i))).length===t.length}var Hx=Object.values(Nt).map(e=>e.decoder).reduce((e,t)=>e.or(t));function zx(e){return Ce.decode(Hx.decode(e))}function Jl(e){if(!Ao.matches(e))throw new et("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===ut("certhash").code).map(([s,a])=>zx(a??"")),n=t.filter(([s,a])=>s===ut("p2p").code).map(([s,a])=>Pa(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 l0=class{log;components;config;metrics;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webtransport"),this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[Xf]=!0;async dial(t,r){r?.signal?.throwIfAborted(),this.log("dialing %s",t);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=Jl(t);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},log:this.components.logger.forComponent("libp2p:webtransport:maconn"),...u0()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let d of l)d instanceof Uint8Array?await s.write(d):await s.write(d.subarray())}},f=Sl()(this.components),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{this.log.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{this.log.error(`Failed to close authentication stream reader: ${l.message}`)}),!Ql(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await f0(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await f0(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...u0()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(Ao.exactMatch)}};function Gx(e={}){return t=>new l0(t,e)}return hh($x);})();
|
|
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 ap(e){return e.replace(/^\s+/,"")}});var of=pt((Pb,nf)=>{var Se=ht();Sr();_t();var tf=nf.exports=Se.sha256=Se.sha256||{};Se.md.sha256=Se.md.algorithms.sha256=tf;tf.create=function(){ef||cp();var e=null,t=Se.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=Se.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=Se.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),jc(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Se.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Es.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};jc(l,r,i);var d=Se.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var Es=null,ef=!1,rf=null;function cp(){Es="\x80",Es+=Se.util.fillString("\0",64),rf=[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],ef=!0}function jc(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v=r.length();v>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)n=t[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[f]=n+t[f-7]+i+t[f-16]|0;for(u=e.h0,l=e.h1,d=e.h2,g=e.h3,h=e.h4,p=e.h5,y=e.h6,x=e.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=x+s+a+rf[f]+t[f],i=o+c,x=y,y=p,p=h,h=g+n>>>0,g=d,d=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+g|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+x|0,v-=64}}});var af=pt((Db,sf)=>{var Be=ht();_t();var Mi=null;Be.util.isNodejs&&!Be.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Mi=ki());var fp=sf.exports=Be.prng=Be.prng||{};fp.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(f,u){if(!u)return t.generateSync(f);var l=t.plugin.cipher,d=t.plugin.increment,g=t.plugin.formatKey,h=t.plugin.formatSeed,p=Be.util.createBuffer();t.key=null,y();function y(x){if(x)return u(x);if(p.length()>=f)return u(null,p.getBytes(f));if(t.generated>1048575&&(t.key=null),t.key===null)return Be.util.nextTick(function(){o(y)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=g(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Be.util.setImmediate(y)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,g=t.plugin.formatSeed;t.key=null;for(var h=Be.util.createBuffer();h.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(u(t.key,l(t.seed))),t.seed=g(u(t.key,t.seed))}return h.getBytes(f)};function o(f){if(t.pools[0].messageLength>=32)return a(),f();var u=32-t.pools[0].messageLength<<5;t.seedFile(u,function(l,d){if(l)return f(l);t.collect(d),a(),f()})}function s(){if(t.pools[0].messageLength>=32)return a();var f=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(f)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var f=t.plugin.md.create();f.update(t.keyBytes);for(var u=1,l=0;l<32;++l)t.reseeds%u===0&&(f.update(t.pools[l].digest().getBytes()),t.pools[l].start()),u=u<<1;t.keyBytes=f.digest().getBytes(),f.start(),f.update(t.keyBytes);var d=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(f){var u=null,l=Be.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(S){return d.getRandomValues(S)});var g=Be.util.createBuffer();if(u)for(;g.length()<f;){var h=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(g.length()<f)for(var x,v,m,C=Math.floor(Math.random()*65536);g.length()<f;){v=16807*(C&65535),x=16807*(C>>16),v+=(x&32767)<<16,v+=x>>15,v=(v&2147483647)+(v>>31),C=v&4294967295;for(var y=0;y<3;++y)m=C>>>(y<<3),m^=Math.floor(Math.random()*256),g.putByte(m&255)}return g.getBytes(f)}return Mi?(t.seedFile=function(f,u){Mi.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Mi.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,d){function g(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(g,h){f.postMessage({forge:{prng:{err:g,bytes:h}}})})};f.addEventListener("message",u)}},t}});var Un=pt((Ub,Ss)=>{var kt=ht();ws();of();af();_t();(function(){if(kt.random&&kt.random.getBytes){Ss.exports=kt.random;return}(function(e){var t={},r=new Array(4),n=kt.util.createBuffer();t.formatKey=function(l){var d=kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),kt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return kt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=kt.md.sha256;function i(){var l=kt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),kt.options.usePureJavaScript||!kt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!kt.random)kt.random=o;else for(var u in o)kt.random[u]=o[u];kt.random.createInstance=i,Ss.exports=kt.random})(typeof jQuery<"u"?jQuery:null)})()});var lf=pt((kb,uf)=>{var Qt=ht();_t();var Bs=[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],cf=[1,2,3,5],up=function(e,t){return e<<t&65535|(e&65535)>>16-t},lp=function(e,t){return(e&65535)>>t|e<<16-t&65535};uf.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(Bs[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Bs[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Bs[r.at(a+1)^r.at(a+o)]);return r};var ff=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(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=up(h[f],cf[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=lp(h[f],cf[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var x=0;x<h.length;x++)for(var v=0;v<h[x][0];v++)h[x][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(h,p){h&&typeof h=="string"&&(h=Qt.util.createBuffer(h)),n=!1,i=Qt.util.createBuffer(),o=p||new Qt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var x=o.length(),v=o.at(x-1);v>x?p=!1:o.truncate(v)}return p}},g};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 ff(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 ff(e,t,!1)}});var qi=pt((Kb,bf)=>{var As=ht();bf.exports=As.jsbn=As.jsbn||{};var $e,hp=0xdeadbeefcafe,hf=(hp&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))}As.jsbn.BigInteger=P;function ot(){return new P(null)}function dp(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 pp(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 df(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=df,$e=28):hf&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=pp,$e=30):hf&&navigator.appName!="Netscape"?(P.prototype.am=dp,$e=26):(P.prototype.am=df,$e=28);P.prototype.DB=$e;P.prototype.DM=(1<<$e)-1;P.prototype.DV=1<<$e;var Is=52;P.prototype.FV=Math.pow(2,Is);P.prototype.F1=Is-$e;P.prototype.F2=2*$e-Is;var yp="0123456789abcdefghijklmnopqrstuvwxyz",Vi=new Array,jr,ie;jr=48;for(ie=0;ie<=9;++ie)Vi[jr++]=ie;jr=97;for(ie=10;ie<36;++ie)Vi[jr++]=ie;jr=65;for(ie=10;ie<36;++ie)Vi[jr++]=ie;function pf(e){return yp.charAt(e)}function yf(e,t){var r=Vi[e.charCodeAt(t)];return r??-1}function gp(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 xp(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 cr(e){var t=ot();return t.fromInt(e),t}function mp(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:yf(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 bp(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function vp(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=pf(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+=pf(n));return i?o:"0"}function wp(){var e=ot();return P.ZERO.subTo(this,e),e}function Ep(){return this.s<0?this.negate():this}function Sp(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 Fi(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 Bp(){return this.t<=0?0:this.DB*(this.t-1)+Fi(this.data[this.t-1]^this.s&this.DM)}function Ap(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 Ip(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function Cp(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function Tp(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 _p(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function Lp(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&P.ZERO.subTo(t,t)}function Rp(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 Np(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=ot());var o=ot(),s=this.s,a=e.s,c=this.DB-Fi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,x=t??ot();for(o.dlShiftTo(y,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),P.ONE.dlShiftTo(f,x),x.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,x),r.subTo(x,r);r.data[p]<--v;)r.subTo(x,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&P.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function Pp(e){var t=ot();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(P.ZERO)>0&&e.subTo(t,t),t}function Br(e){this.m=e}function Dp(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function Up(e){return e}function kp(e){e.divRemTo(this.m,null,e)}function Kp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function Op(e,t){e.squareTo(t),this.reduce(t)}Br.prototype.convert=Dp;Br.prototype.revert=Up;Br.prototype.reduce=kp;Br.prototype.mulTo=Kp;Br.prototype.sqrTo=Op;function Mp(){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 Ar(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 Vp(e){var t=ot();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 Fp(e){var t=ot();return e.copyTo(t),this.reduce(t),t}function qp(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 Hp(e,t){e.squareTo(t),this.reduce(t)}function zp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Ar.prototype.convert=Vp;Ar.prototype.revert=Fp;Ar.prototype.reduce=qp;Ar.prototype.mulTo=zp;Ar.prototype.sqrTo=Hp;function Gp(){return(this.t>0?this.data[0]&1:this.s)==0}function $p(e,t){if(e>4294967295||e<1)return P.ONE;var r=ot(),n=ot(),i=t.convert(this),o=Fi(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 Wp(e,t){var r;return e<256||t.isEven()?r=new Br(t):r=new Ar(t),this.exp(e,r)}P.prototype.copyTo=gp;P.prototype.fromInt=xp;P.prototype.fromString=mp;P.prototype.clamp=bp;P.prototype.dlShiftTo=Ap;P.prototype.drShiftTo=Ip;P.prototype.lShiftTo=Cp;P.prototype.rShiftTo=Tp;P.prototype.subTo=_p;P.prototype.multiplyTo=Lp;P.prototype.squareTo=Rp;P.prototype.divRemTo=Np;P.prototype.invDigit=Mp;P.prototype.isEven=Gp;P.prototype.exp=$p;P.prototype.toString=vp;P.prototype.negate=wp;P.prototype.abs=Ep;P.prototype.compareTo=Sp;P.prototype.bitLength=Bp;P.prototype.mod=Pp;P.prototype.modPowInt=Wp;P.ZERO=cr(0);P.ONE=cr(1);function Yp(){var e=ot();return this.copyTo(e),e}function Zp(){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 Xp(){return this.t==0?this.s:this.data[0]<<24>>24}function Qp(){return this.t==0?this.s:this.data[0]<<16>>16}function Jp(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function jp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function ty(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=cr(r),i=ot(),o=ot(),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 ey(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=yf(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 ry(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),Cs,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 ny(){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 iy(e){return this.compareTo(e)==0}function oy(e){return this.compareTo(e)<0?this:e}function sy(e){return this.compareTo(e)>0?this:e}function ay(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 cy(e,t){return e&t}function fy(e){var t=ot();return this.bitwiseTo(e,cy,t),t}function Cs(e,t){return e|t}function uy(e){var t=ot();return this.bitwiseTo(e,Cs,t),t}function gf(e,t){return e^t}function ly(e){var t=ot();return this.bitwiseTo(e,gf,t),t}function xf(e,t){return e&~t}function hy(e){var t=ot();return this.bitwiseTo(e,xf,t),t}function dy(){for(var e=ot(),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 py(e){var t=ot();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function yy(e){var t=ot();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function gy(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 xy(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+gy(this.data[e]);return this.s<0?this.t*this.DB:-1}function my(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function by(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=my(this.data[r]^t);return e}function vy(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function wy(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function Ey(e){return this.changeBit(e,Cs)}function Sy(e){return this.changeBit(e,xf)}function By(e){return this.changeBit(e,gf)}function Ay(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 Iy(e){var t=ot();return this.addTo(e,t),t}function Cy(e){var t=ot();return this.subTo(e,t),t}function Ty(e){var t=ot();return this.multiplyTo(e,t),t}function _y(e){var t=ot();return this.divRemTo(e,t,null),t}function Ly(e){var t=ot();return this.divRemTo(e,null,t),t}function Ry(e){var t=ot(),r=ot();return this.divRemTo(e,t,r),new Array(t,r)}function Ny(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function Py(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function kn(){}function mf(e){return e}function Dy(e,t,r){e.multiplyTo(t,r)}function Uy(e,t){e.squareTo(t)}kn.prototype.convert=mf;kn.prototype.revert=mf;kn.prototype.mulTo=Dy;kn.prototype.sqrTo=Uy;function ky(e){return this.exp(e,new kn)}function Ky(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 Oy(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function tn(e){this.r2=ot(),this.q3=ot(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function My(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=ot();return e.copyTo(t),this.reduce(t),t}function Vy(e){return e}function Fy(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 qy(e,t){e.squareTo(t),this.reduce(t)}function Hy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}tn.prototype.convert=My;tn.prototype.revert=Vy;tn.prototype.reduce=Fy;tn.prototype.mulTo=Hy;tn.prototype.sqrTo=qy;function zy(e,t){var r=e.bitLength(),n,i=cr(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new Br(t):t.isEven()?o=new tn(t):o=new Ar(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=ot();for(o.sqrTo(s[1],u);a<=f;)s[a]=ot(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=ot(),p;for(r=Fi(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&f:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[d].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function Gy(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 $y(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 Wy(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return P.ZERO;for(var r=e.clone(),n=this.clone(),i=cr(1),o=cr(0),s=cr(0),a=cr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),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 ge=[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],Yy=(1<<26)/ge[ge.length-1];function Zy(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=ge[ge.length-1]){for(t=0;t<ge.length;++t)if(r.data[0]==ge[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<ge.length;){for(var n=ge[t],i=t+1;i<ge.length&&n<Yy;)n*=ge[i++];for(n=r.modInt(n);t<i;)if(n%ge[t++]==0)return!1}return r.millerRabin(e)}function Xy(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=Qy(),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 Qy(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Jp;P.prototype.toRadix=ty;P.prototype.fromRadix=ey;P.prototype.fromNumber=ry;P.prototype.bitwiseTo=ay;P.prototype.changeBit=wy;P.prototype.addTo=Ay;P.prototype.dMultiply=Ny;P.prototype.dAddOffset=Py;P.prototype.multiplyLowerTo=Ky;P.prototype.multiplyUpperTo=Oy;P.prototype.modInt=$y;P.prototype.millerRabin=Xy;P.prototype.clone=Yp;P.prototype.intValue=Zp;P.prototype.byteValue=Xp;P.prototype.shortValue=Qp;P.prototype.signum=jp;P.prototype.toByteArray=ny;P.prototype.equals=iy;P.prototype.min=oy;P.prototype.max=sy;P.prototype.and=fy;P.prototype.or=uy;P.prototype.xor=ly;P.prototype.andNot=hy;P.prototype.not=dy;P.prototype.shiftLeft=py;P.prototype.shiftRight=yy;P.prototype.getLowestSetBit=xy;P.prototype.bitCount=by;P.prototype.testBit=vy;P.prototype.setBit=Ey;P.prototype.clearBit=Sy;P.prototype.flipBit=By;P.prototype.add=Iy;P.prototype.subtract=Cy;P.prototype.multiply=Ty;P.prototype.divide=_y;P.prototype.remainder=Ly;P.prototype.divideAndRemainder=Ry;P.prototype.modPow=zy;P.prototype.modInverse=Wy;P.prototype.pow=ky;P.prototype.gcd=Gy;P.prototype.isProbablePrime=Zy});var Bf=pt((Ob,Sf)=>{var Ae=ht();Sr();_t();var wf=Sf.exports=Ae.sha1=Ae.sha1||{};Ae.md.sha1=Ae.md.algorithms.sha1=wf;wf.create=function(){Ef||Jy();var e=null,t=Ae.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=Ae.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ae.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),vf(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ae.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Ts.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};vf(l,r,i);var d=Ae.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var Ts=null,Ef=!1;function Jy(){Ts="\x80",Ts+=Ae.util.fillString("\0",64),Ef=!0}function vf(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 Cf=pt((Mb,If)=>{var Ie=ht();_t();Un();Bf();var Af=If.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="",d=c-t.length,g=0;g<d;g++)l+="\0";var h=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),y=Ie.util.xorBytes(h,p,h.length),x=Hi(y,o.digestLength,s),v=Ie.util.xorBytes(i,x,i.length);return"\0"+v+y};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 y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}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),d=Ie.util.xorBytes(f,l,f.length),g=Hi(d,s-i.digestLength-1,o),h=Ie.util.xorBytes(u,g,u.length),p=h.substring(0,i.digestLength),y=c!=="\0",x=0;x<i.digestLength;++x)y|=a.charAt(x)!==p.charAt(x);for(var v=1,m=i.digestLength,C=i.digestLength;C<h.length;C++){var S=h.charCodeAt(C),B=S&1^1,R=v?65534:0;y|=S&R,v=v&B,m+=v}if(y||h.charCodeAt(m)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(m+1)};function 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 Tf=pt((Vb,_s)=>{var fr=ht();_t();qi();Un();(function(){if(fr.prime){_s.exports=fr.prime;return}var e=_s.exports=fr.prime=fr.prime||{},t=fr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,g){typeof d=="function"&&(g=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||fr.random,y={nextBytes:function(x){for(var v=p.getBytesSync(x.length),m=0;m<x.length;++m)x[m]=v.charCodeAt(m)}};if(h.name==="PRIMEINC")return o(l,y,h.options,g);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,g,h){return"workers"in g?c(l,d,g,h):s(l,d,g,h)}function s(l,d,g,h){var p=f(l,d),y=0,x=u(p.bitLength());"millerRabinTests"in g&&(x=g.millerRabinTests);var v=10;"maxBlockTime"in g&&(v=g.maxBlockTime),a(p,l,d,y,x,v,h)}function a(l,d,g,h,p,y,x){var v=+new Date;do{if(l.bitLength()>d&&(l=f(d,g)),l.isProbablePrime(p))return x(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-v<y);fr.util.setImmediate(function(){a(l,d,g,h,p,y,x)})}function c(l,d,g,h){if(typeof Worker>"u")return s(l,d,g,h);var p=f(l,d),y=g.workers,x=g.workLoad||100,v=x*30/8,m=g.workerScript||"forge/prime.worker.js";if(y===-1)return fr.util.estimateCores(function(S,B){S&&(B=2),y=B-1,C()});C();function C(){y=Math.max(1,y);for(var S=[],B=0;B<y;++B)S[B]=new Worker(m);for(var R=y,B=0;B<y;++B)S[B].addEventListener("message",O);var L=!1;function O(M){if(!L){--R;var k=M.data;if(k.found){for(var H=0;H<S.length;++H)S[H].terminate();return L=!0,h(null,new t(k.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:x}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var Gi=pt((Fb,Uf)=>{var $=ht();Dn();qi();_i();Cf();Tf();Un();_t();typeof it>"u"&&(it=$.jsbn.BigInteger);var it,Ls=$.util.isNodejs?ki():null,E=$.asn1,oe=$.util;$.pki=$.pki||{};Uf.exports=$.pki.rsa=$.rsa=$.rsa||{};var Q=$.pki,jy=[6,4,2,4,2,4,6,2],t1={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"}]},e1={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"}]},r1={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"}]},n1=$.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"}]}]},i1={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"}]},o1=function(e){var t;if(e.algorithm in Q.oids)t=Q.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=E.oidToDer(t).getBytes(),i=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]),o=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]);o.value.push(E.create(E.Class.UNIVERSAL,E.Type.OID,!1,n)),o.value.push(E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,""));var s=E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),E.toDer(i).getBytes()},Pf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(it.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(it.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new it($.util.bytesToHex($.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(it.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=Df(e,t,r)):(i=$.util.createBuffer(),i.putBytes(e));for(var s=new it(i.toHex(),16),a=Pf(s,t,n),c=a.toString(16),f=$.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new it($.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Pf(s,t,r),c=a.toString(16),f=$.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),n!==!1?zi(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||$.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new it(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 it(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new it(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(it.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(a1(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(jy[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(it.ONE).gcd(e.e).compareTo(it.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(it.ONE),e.q1=e.q.subtract(it.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(it.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(_f("generateKeyPair"))return Ls.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(Lf("generateKey")&&Lf("exportKey"))return oe.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Nf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return oe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(Rf("generateKey")&&Rf("exportKey")){var i=oe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Nf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=oe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(_f("generateKeyPairSync")){var o=Ls.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;s1(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 Df(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return $.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=zi(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,i1,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===$.oids.md2||h===$.oids.md5||h===$.oids.sha1||h===$.oids.sha224||h===$.oids.sha256||h===$.oids.sha384||h===$.oids.sha512||h===$.oids["sha512-224"]||h===$.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===$.oids.md2||h===$.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=zi(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var d=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:zi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return $.pkcs1.decode_rsa_oaep(h,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:o1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(d,c,l)},c};Q.wrapRsaPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,E.toDer(e).getBytes())])};Q.privateKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,t1,t,r)&&(e=E.fromDer($.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,e1,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 it(i,16),new it(o,16),new it(s,16),new it(a,16),new it(c,16),new it(f,16),new it(u,16),new it(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,Ce(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,n1,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,r1,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 it(o,16),new it(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,Ce(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.e))])};function Df(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 s1(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(it.ONE).gcd(e.e).compareTo(it.ONE)!==0){e.p=null,i();return}if(e.q.subtract(it.ONE).gcd(e.e).compareTo(it.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(it.ONE),e.q1=e.q.subtract(it.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(it.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 Ce(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 a1(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 _f(e){return $.util.isNodejs&&typeof Ls[e]=="function"}function Lf(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.crypto=="object"&&typeof oe.globalScope.crypto.subtle=="object"&&typeof oe.globalScope.crypto.subtle[e]=="function"}function Rf(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.msCrypto=="object"&&typeof oe.globalScope.msCrypto.subtle=="object"&&typeof oe.globalScope.msCrypto.subtle[e]=="function"}function Nf(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 Ff=pt((qb,Vf)=>{var q=ht();ws();Dn();zc();Sr();_i();Zc();Jc();Un();lf();Gi();_t();typeof kf>"u"&&(kf=q.jsbn.BigInteger);var kf,I=q.asn1,tt=q.pki=q.pki||{};Vf.exports=tt.pbe=q.pbe=q.pbe||{};var Ir=tt.oids,c1={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"}]},f1={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"}]}]},u1={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=Ir["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Ir["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Ir["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Ir.desCBC,l=q.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),h=Mf(g),p=q.pkcs5.pbkdf2(t,n,i,s,h),y=q.random.getBytesSync(f),x=l(p);x.start(y),x.update(I.toDer(e)),x.finish(),c=x.output.getBytes();var v=l1(n,o,s,g);a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Ir.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(Ir.pkcs5PBKDF2).getBytes()),v]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(u).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var m=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,m,1,i,s),y=tt.pbe.generatePkcs12Key(t,m,2,i,s),x=q.des.createEncryptionCipher(p);x.start(y),x.update(I.toDer(e)),x.finish(),c=x.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Ir["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,n),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var C=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return C};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!I.validate(e,c1,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=I.derToOid(n.encryptionOid),a=tt.pbe.getCipher(s,n.encryptionParams,t),c=q.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};tt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(e).getBytes()};return q.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=q.pem.decode(e)[0];if(t.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return I.fromDer(t.body)};tt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=tt.wrapRsaPrivateKey(tt.privateKeyToAsn1(e));return n=tt.encryptPrivateKeyInfo(n,t,r),tt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=q.pbe.opensslDeriveBytes(t,o.substr(0,8),s),u=a(f);u.start(o),u.update(I.toDer(tt.privateKeyToAsn1(e))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:q.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return q.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=q.pem.decode(e)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=q.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=q.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=q.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=q.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=q.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return q.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return q.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return q.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=q.util.hexToBytes(n.dekInfo.parameters),c=q.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(q.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=tt.decryptPrivateKeyInfo(I.fromDer(r),t):r=I.fromDer(r),r!==null&&(r=tt.privateKeyFromAsn1(r)),r};tt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in q.md))throw new Error('"sha1" hash algorithm unavailable.');o=q.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new q.util.ByteBuffer,l=new q.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),g=t.length(),h=new q.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new q.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var x=f*Math.ceil(d/f),v=new q.util.ByteBuffer;for(a=0;a<x;a++)v.putByte(l.at(a%d));var m=y;m.putBuffer(v);for(var C=Math.ceil(i/c),S=1;S<=C;S++){var B=new q.util.ByteBuffer;B.putBytes(h.bytes()),B.putBytes(m.bytes());for(var R=0;R<n;R++)o.start(),o.update(B.getBytes()),B=o.digest();var L=new q.util.ByteBuffer;for(a=0;a<f;a++)L.putByte(B.at(a%c));var O=Math.ceil(g/f)+Math.ceil(d/f),M=new q.util.ByteBuffer;for(s=0;s<O;s++){var k=new q.util.ByteBuffer(m.getBytes(f)),H=511;for(a=L.length()-1;a>=0;a--)H=H>>8,H+=L.at(a)+k.at(a),k.setAt(a,H&255);M.putBuffer(k)}m=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!I.validate(t,f1,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=Of(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,g=f(l);return g.start(d),g};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!I.validate(t,u1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=q.util.createBuffer(n.salt),a=q.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(e){case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=q.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var x=q.rc2.createDecryptionCipher(p,40);return x.start(y,null),x};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=Of(n.prfOid),d=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,g)};tt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in q.md))throw new Error('"md5" hash algorithm unavailable.');n=q.md.md5.create()}t===null&&(t="");for(var i=[Kf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(Kf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function Kf(e,t){return e.start().update(t).digest().getBytes()}function Of(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 Mf(t)}function Mf(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 l1(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 ku=pt((j8,Uu)=>{var bt=ht();Sr();_t();var zn=Uu.exports=bt.sha512=bt.sha512||{};bt.md.sha512=bt.md.algorithms.sha512=zn;var Pu=bt.sha384=bt.sha512.sha384=bt.sha512.sha384||{};Pu.create=function(){return zn.create("SHA-384")};bt.md.sha384=bt.md.algorithms.sha384=Pu;bt.sha512.sha256=bt.sha512.sha256||{create:function(){return zn.create("SHA-512/256")}};bt.md["sha512/256"]=bt.md.algorithms["sha512/256"]=bt.sha512.sha256;bt.sha512.sha224=bt.sha512.sha224||{create:function(){return zn.create("SHA-512/224")}};bt.md["sha512/224"]=bt.md.algorithms["sha512/224"]=bt.sha512.sha224;zn.create=function(e){if(Du||Ng(),typeof e>"u"&&(e="SHA-512"),!(e in Ur))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=Ur[e],r=null,n=bt.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=bt.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=bt.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),Nu(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=bt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(ma.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);Nu(p,i,c);var y=bt.util.createBuffer(),x;e==="SHA-512"?x=p.length:e==="SHA-384"?x=p.length-2:x=p.length-4;for(var h=0;h<x;++h)y.putInt32(p[h][0]),(h!==x-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var ma=null,Du=!1,ba=null,Ur=null;function Ng(){ma="\x80",ma+=bt.util.fillString("\0",128),ba=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],Ur={},Ur["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Ur["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Ur["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Ur["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Du=!0}function Nu(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v,m,C,S,B,R,L,O,M,k,H,z,Z,A,N,T,_,w,U,K,F=r.length();F>=128;){for(A=0;A<16;++A)t[A][0]=r.getInt32()>>>0,t[A][1]=r.getInt32()>>>0;for(;A<80;++A)_=t[A-2],N=_[0],T=_[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,U=t[A-15],N=U[0],T=U[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[A-7],K=t[A-16],T=i+w[1]+s+K[1],t[A][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[A][1]=T>>>0;for(p=e[0][0],y=e[0][1],x=e[1][0],v=e[1][1],m=e[2][0],C=e[2][1],S=e[3][0],B=e[3][1],R=e[4][0],L=e[4][1],O=e[5][0],M=e[5][1],k=e[6][0],H=e[6][1],z=e[7][0],Z=e[7][1],A=0;A<80;++A)f=((R>>>14|L<<18)^(R>>>18|L<<14)^(L>>>9|R<<23))>>>0,u=((R<<18|L>>>14)^(R<<14|L>>>18)^(L<<23|R>>>9))>>>0,l=(k^R&(O^k))>>>0,d=(H^L&(M^H))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&x|m&(p^x))>>>0,h=(y&v|C&(y^v))>>>0,T=Z+u+d+ba[A][1]+t[A][1],n=z+f+l+ba[A][0]+t[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=k,Z=H,k=O,H=M,O=R,M=L,T=B+i,R=S+n+(T/4294967296>>>0)>>>0,L=T>>>0,S=m,B=C,m=x,C=v,x=p,v=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=e[0][1]+y,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+x+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+C,e[2][0]=e[2][0]+m+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+L,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+k+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,F-=128}}});var Mx={};Rt(Mx,{webTransport:()=>Ox});function p0(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function y0(e=0){return globalThis.Buffer?.allocUnsafe!=null?p0(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var sh=Math.pow(2,7),ah=Math.pow(2,14),ch=Math.pow(2,21),So=Math.pow(2,28),Bo=Math.pow(2,35),Ao=Math.pow(2,42),Io=Math.pow(2,49),at=128,zt=127;function Gt(e){if(e<sh)return 1;if(e<ah)return 2;if(e<ch)return 3;if(e<So)return 4;if(e<Bo)return 5;if(e<Ao)return 6;if(e<Io)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function fh(e,t,r=0){switch(Gt(e)){case 8:t[r++]=e&255|at,e/=128;case 7:t[r++]=e&255|at,e/=128;case 6:t[r++]=e&255|at,e/=128;case 5:t[r++]=e&255|at,e/=128;case 4:t[r++]=e&255|at,e>>>=7;case 3:t[r++]=e&255|at,e>>>=7;case 2:t[r++]=e&255|at,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function uh(e,t,r=0){switch(Gt(e)){case 8:t.set(r++,e&255|at),e/=128;case 7:t.set(r++,e&255|at),e/=128;case 6:t.set(r++,e&255|at),e/=128;case 5:t.set(r++,e&255|at),e/=128;case 4:t.set(r++,e&255|at),e>>>=7;case 3:t.set(r++,e&255|at),e>>>=7;case 2:t.set(r++,e&255|at),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function lh(e,t){let r=e[t],n=0;if(n+=r&zt,r<at||(r=e[t+1],n+=(r&zt)<<7,r<at)||(r=e[t+2],n+=(r&zt)<<14,r<at)||(r=e[t+3],n+=(r&zt)<<21,r<at)||(r=e[t+4],n+=(r&zt)*So,r<at)||(r=e[t+5],n+=(r&zt)*Bo,r<at)||(r=e[t+6],n+=(r&zt)*Ao,r<at)||(r=e[t+7],n+=(r&zt)*Io,r<at))return n;throw new RangeError("Could not decode varint")}function hh(e,t){let r=e.get(t),n=0;if(n+=r&zt,r<at||(r=e.get(t+1),n+=(r&zt)<<7,r<at)||(r=e.get(t+2),n+=(r&zt)<<14,r<at)||(r=e.get(t+3),n+=(r&zt)<<21,r<at)||(r=e.get(t+4),n+=(r&zt)*So,r<at)||(r=e.get(t+5),n+=(r&zt)*Bo,r<at)||(r=e.get(t+6),n+=(r&zt)*Ao,r<at)||(r=e.get(t+7),n+=(r&zt)*Io,r<at))return n;throw new RangeError("Could not decode varint")}function je(e,t,r=0){return t==null&&(t=y0(Gt(e))),t instanceof Uint8Array?fh(e,t,r):uh(e,t,r)}function fe(e,t=0){return e instanceof Uint8Array?lh(e,t):hh(e,t)}function mn(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Ue(e=0){return globalThis.Buffer?.alloc!=null?mn(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function bn(e=0){return globalThis.Buffer?.allocUnsafe!=null?mn(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Co(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=bn(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return mn(r)}function g0(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 m0=Symbol.for("@achingbrain/uint8arraylist");function x0(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 Mr(e){return!!e?.[m0]}var Bt=class e{bufs;length;[m0]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Mr(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(Mr(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=x0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=x0(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(Mr(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 Co(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:Co(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(!Mr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=bn(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=bn(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(!g0(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 b0(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function v0(e=0){return globalThis.Buffer?.allocUnsafe!=null?b0(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function ni(e){return e[Symbol.asyncIterator]!=null}var ii=e=>{let t=Gt(e),r=v0(t);return je(e,r),ii.bytes=t,r};ii.bytes=0;function vn(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)}()}vn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??ii;return new Bt(r(e.byteLength),e)};var Vr=Xt(S0(),1);var ph=8,yh=1024*1024*4,yr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(yr||(yr={}));var To=e=>{let t=fe(e);return To.bytes=Gt(t),t};To.bytes=0;function wn(e,t){let r=new Bt,n=yr.LENGTH,i=-1,o=t?.lengthDecoder??To,s=t?.maxLengthLength??ph,a=t?.maxDataLength??yh;function*c(){for(;r.byteLength>0;){if(n===yr.LENGTH)try{if(i=o(r),i<0)throw(0,Vr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Vr.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=yr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Vr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===yr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(f),yield f,n=yr.LENGTH}}}return ni(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Vr.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,Vr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}wn.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 wn(n,{...t??{},onLength:o=>{r=o}})};function ue(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var oi=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function B0(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new oi(r?.errorMessage,r?.errorCode));let n,i=new oi(r?.errorMessage,r?.errorCode);try{return await Promise.race([e,new Promise((o,s)=>{n=()=>{s(i)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var _o=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=ue(),this.haveNext=ue()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let t=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=ue(),t}async throw(t){return this.ended=!0,t!=null&&this.haveNext.reject(t),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,r){await this._push(t,r)}async end(t,r){t!=null?await this.throw(t):await this._push(void 0,r)}async _push(t,r){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=ue(),await B0(this.needNext.promise,r?.signal,r)}};function A0(){return new _o}var si=class extends Error{code;constructor(t,r){super(t),this.code=r}},Lo=class extends si{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function I0(e,t){let r=A0();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new Bt;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new Lo("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new Bt:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new si("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let u=i.sublist(0,s);return i.consume(s),u}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=e.source;e.source=async function*(){t?.yieldBytes===!1?yield i:yield*i,yield*s}()}return e}}}var ai=class extends Error{code;constructor(t,r){super(t),this.code=r}},C0=e=>fe(e);C0.bytes=0;function Ro(e,t={}){let r=I0(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=Gt(t.maxDataLength)),{read:async i=>{let o=-1,s=new Bt,a=t?.lengthDecoder??C0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new ai("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new ai("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(vn.single(i,t),o)},writeV:async(i,o)=>{let s=new Bt(...i.map(a=>vn.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function No(){let e=ue(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function T0(){let e=No(),t=No();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}var ci=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}},Fr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new ci(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 ci(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 Po=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function fi(e={}){return xh(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 xh(e,t){t=t??{};let r=t.onEnd,n=new Fr,i,o,s,a=ue(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,x)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(m){x(m)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ue()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Fr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Fr,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let x=y?.signal;if(x?.throwIfAborted(),n.isEmpty())return;let v,m;x!=null&&(v=new Promise((C,S)=>{m=()=>{S(new Po)},x.addEventListener("abort",m)}));try{await Promise.race([a.promise,v])}finally{m!=null&&x!=null&&x?.removeEventListener("abort",m)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:y=>p.onEmpty(y)},i}function mh(e){return e[Symbol.asyncIterator]!=null}function bh(...e){let t=[];for(let r of e)mh(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=fi({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 _0=bh;function L0(e,...t){if(e==null)throw new Error("Empty pipeline");if(Do(e)){let n=e;e=()=>n.source}else if(N0(e)||R0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Do(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++)Do(r[n])&&(r[n]=wh(r[n]));return vh(...r)}var vh=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},R0=e=>e?.[Symbol.asyncIterator]!=null,N0=e=>e?.[Symbol.iterator]!=null,Do=e=>e==null?!1:e.sink!=null&&e.source!=null,wh=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=fi({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(R0(o))i=async function*(){yield*o,n.end()};else if(N0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return _0(n,i())}return e.source};function ke(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function ct(e=0){return globalThis.Buffer?.alloc!=null?ke(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function gr(e=0){return globalThis.Buffer?.allocUnsafe!=null?ke(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var qr=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Ke=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));function P0(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var D0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Eh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Eh)throw new Error("Non little-endian hardware is not supported");function ui(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function li(e){if(typeof e=="string")e=ui(e);else if(P0(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var Sh=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function U0(e,t){if(t!==void 0&&(typeof t!="object"||!Sh(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function xr(e,t){if(!P0(e))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function k0(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n<e.length;n++)r|=e[n]^t[n];return r===0}var Uo=(e,t)=>(Object.assign(t,e),t);function ko(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}function hi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`wrong positive integer: ${e}`)}function Ko(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function Bh(e){return e!=null&&typeof e=="object"&&(e instanceof Uint8Array||e.constructor.name==="Uint8Array")}function Hr(e,...t){if(!Bh(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function Oo(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 K0(e,t){Hr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Ft=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Mo=class{constructor(t){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,t=li(t),xr(t,32);let r=Ft(t,0),n=Ft(t,2),i=Ft(t,4),o=Ft(t,6),s=Ft(t,8),a=Ft(t,10),c=Ft(t,12),f=Ft(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]=Ft(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],x=Ft(t,r+0),v=Ft(t,r+2),m=Ft(t,r+4),C=Ft(t,r+6),S=Ft(t,r+8),B=Ft(t,r+10),R=Ft(t,r+12),L=Ft(t,r+14),O=o[0]+(x&8191),M=o[1]+((x>>>13|v<<3)&8191),k=o[2]+((v>>>10|m<<6)&8191),H=o[3]+((m>>>7|C<<9)&8191),z=o[4]+((C>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),A=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|L<<8)&8191),_=o[9]+(L>>>5|i),w=0,U=w+O*a+M*(5*y)+k*(5*p)+H*(5*h)+z*(5*g);w=U>>>13,U&=8191,U+=Z*(5*d)+A*(5*l)+N*(5*u)+T*(5*f)+_*(5*c),w+=U>>>13,U&=8191;let K=w+O*c+M*a+k*(5*y)+H*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+A*(5*d)+N*(5*l)+T*(5*u)+_*(5*f),w+=K>>>13,K&=8191;let F=w+O*f+M*c+k*a+H*(5*y)+z*(5*p);w=F>>>13,F&=8191,F+=Z*(5*h)+A*(5*g)+N*(5*d)+T*(5*l)+_*(5*u),w+=F>>>13,F&=8191;let W=w+O*u+M*f+k*c+H*a+z*(5*y);w=W>>>13,W&=8191,W+=Z*(5*p)+A*(5*h)+N*(5*g)+T*(5*d)+_*(5*l),w+=W>>>13,W&=8191;let Y=w+O*l+M*u+k*f+H*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+A*(5*p)+N*(5*h)+T*(5*g)+_*(5*d),w+=Y>>>13,Y&=8191;let rt=w+O*d+M*l+k*u+H*f+z*c;w=rt>>>13,rt&=8191,rt+=Z*a+A*(5*y)+N*(5*p)+T*(5*h)+_*(5*g),w+=rt>>>13,rt&=8191;let X=w+O*g+M*d+k*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+A*a+N*(5*y)+T*(5*p)+_*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+k*d+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+A*c+N*a+T*(5*y)+_*(5*p),w+=J>>>13,J&=8191;let dt=w+O*p+M*h+k*g+H*d+z*l;w=dt>>>13,dt&=8191,dt+=Z*u+A*f+N*c+T*a+_*(5*y),w+=dt>>>13,dt&=8191;let lt=w+O*y+M*p+k*h+H*g+z*d;w=lt>>>13,lt&=8191,lt+=Z*l+A*u+N*f+T*c+_*a,w+=lt>>>13,lt&=8191,w=(w<<2)+w|0,w=w+U|0,U=w&8191,w=w>>>13,K+=w,o[0]=U,o[1]=K,o[2]=F,o[3]=W,o[4]=Y,o[5]=rt,o[6]=X,o[7]=J,o[8]=dt,o[9]=lt}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){Oo(this);let{buffer:r,blockLen:n}=this;t=li(t);let i=t.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(t,o);continue}r.set(t.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(t){Oo(this),K0(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 Ah(e){let t=(n,i)=>e(i).update(li(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var O0=Ah(e=>new Mo(e));var Ih=ui("expand 16-byte k"),Ch=ui("expand 32-byte k"),Th=Ke(Ih),_h=Ke(Ch);function G(e,t){return e<<t|e>>>32-t}function Vo(e){return e.byteOffset%4===0}var di=64,Lh=16,V0=2**32-1,M0=new Uint32Array;function Rh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(di),u=Ke(f),l=Vo(i)&&Vo(o),d=l?Ke(i):M0,g=l?Ke(o):M0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=V0)throw new Error("arx: counter overflow");let p=Math.min(di,c-h);if(l&&p===di){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let x=0,v;x<Lh;x++)v=y+x,g[v]=d[v]^u[x];h+=di;continue}for(let y=0,x;y<p;y++)x=h+y,o[x]=i[x]^f[y];h+=p}}function Fo(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=U0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return hi(i),hi(s),Ko(o),Ko(r),(a,c,f,u,l=0)=>{Hr(a),Hr(c),Hr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Hr(u),hi(l),l<0||l>=V0)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let g=[],h=a.length,p,y;if(h===32)p=a.slice(),g.push(p),y=_h;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=Th,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);Vo(c)||(c=c.slice(),g.push(c));let x=Ke(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,x,Ke(c.subarray(0,16)),x),c=c.subarray(16)}let v=16-i;if(v!==c.length)throw new Error(`arx: nonce must be ${v} or 16 bytes`);if(v!==12){let C=new Uint8Array(12);C.set(c,o?0:12-c.length),c=C,g.push(c)}let m=Ke(c);for(Rh(e,y,x,m,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function H0(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],f=e[3],u=t[0],l=t[1],d=t[2],g=t[3],h=t[4],p=t[5],y=t[6],x=t[7],v=i,m=r[0],C=r[1],S=r[2],B=s,R=a,L=c,O=f,M=u,k=l,H=d,z=g,Z=h,A=p,N=y,T=x,_=v,w=m,U=C,K=S;for(let W=0;W<o;W+=2)B=B+M|0,_=G(_^B,16),Z=Z+_|0,M=G(M^Z,12),B=B+M|0,_=G(_^B,8),Z=Z+_|0,M=G(M^Z,7),R=R+k|0,w=G(w^R,16),A=A+w|0,k=G(k^A,12),R=R+k|0,w=G(w^R,8),A=A+w|0,k=G(k^A,7),L=L+H|0,U=G(U^L,16),N=N+U|0,H=G(H^N,12),L=L+H|0,U=G(U^L,8),N=N+U|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+k|0,K=G(K^B,16),N=N+K|0,k=G(k^N,12),B=B+k|0,K=G(K^B,8),N=N+K|0,k=G(k^N,7),R=R+H|0,_=G(_^R,16),T=T+_|0,H=G(H^T,12),R=R+H|0,_=G(_^R,8),T=T+_|0,H=G(H^T,7),L=L+z|0,w=G(w^L,16),Z=Z+w|0,z=G(z^Z,12),L=L+z|0,w=G(w^L,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,U=G(U^O,16),A=A+U|0,M=G(M^A,12),O=O+M|0,U=G(U^O,8),A=A+U|0,M=G(M^A,7);let F=0;n[F++]=s+B|0,n[F++]=a+R|0,n[F++]=c+L|0,n[F++]=f+O|0,n[F++]=u+M|0,n[F++]=l+k|0,n[F++]=d+H|0,n[F++]=g+z|0,n[F++]=h+Z|0,n[F++]=p+A|0,n[F++]=y+N|0,n[F++]=x+T|0,n[F++]=v+_|0,n[F++]=m+w|0,n[F++]=C+U|0,n[F++]=S+K|0}function Nh(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],f=t[1],u=t[2],l=t[3],d=t[4],g=t[5],h=t[6],p=t[7],y=r[0],x=r[1],v=r[2],m=r[3];for(let S=0;S<20;S+=2)i=i+c|0,y=G(y^i,16),d=d+y|0,c=G(c^d,12),i=i+c|0,y=G(y^i,8),d=d+y|0,c=G(c^d,7),o=o+f|0,x=G(x^o,16),g=g+x|0,f=G(f^g,12),o=o+f|0,x=G(x^o,8),g=g+x|0,f=G(f^g,7),s=s+u|0,v=G(v^s,16),h=h+v|0,u=G(u^h,12),s=s+u|0,v=G(v^s,8),h=h+v|0,u=G(u^h,7),a=a+l|0,m=G(m^a,16),p=p+m|0,l=G(l^p,12),a=a+l|0,m=G(m^a,8),p=p+m|0,l=G(l^p,7),i=i+f|0,m=G(m^i,16),h=h+m|0,f=G(f^h,12),i=i+f|0,m=G(m^i,8),h=h+m|0,f=G(f^h,7),o=o+u|0,y=G(y^o,16),p=p+y|0,u=G(u^p,12),o=o+u|0,y=G(y^o,8),p=p+y|0,u=G(u^p,7),s=s+l|0,x=G(x^s,16),d=d+x|0,l=G(l^d,12),s=s+l|0,x=G(x^s,8),d=d+x|0,l=G(l^d,7),a=a+c|0,v=G(v^a,16),g=g+v|0,c=G(c^g,12),a=a+c|0,v=G(v^a,8),g=g+v|0,c=G(c^g,7);let C=0;n[C++]=i,n[C++]=o,n[C++]=s,n[C++]=a,n[C++]=y,n[C++]=x,n[C++]=v,n[C++]=m}var Ph=Fo(H0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),Dh=Fo(H0,{counterRight:!1,counterLength:8,extendNonceFn:Nh,allowShortKeys:!1});var Uh=new Uint8Array(16),F0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(Uh.subarray(r))},kh=new Uint8Array(32);function q0(e,t,r,n,i){let o=e(t,r,kh),s=O0.create(o);i&&F0(s,i),F0(s,n);let a=new Uint8Array(16),c=D0(a);ko(c,0,BigInt(i?i.length:0),!0),ko(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var z0=e=>(t,r,n)=>(xr(t,32),xr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?xr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=q0(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?xr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=q0(e,t,r,f,n);if(!k0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),qo=Uo({blockSize:64,nonceLength:12,tagLength:16},z0(Ph)),r2=Uo({blockSize:64,nonceLength:24,tagLength:16},z0(Dh));function pi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Kh(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Ho(e,...t){if(!Kh(e))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 En(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");pi(e.outputLen),pi(e.blockLen)}function zr(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function G0(e,t){Ho(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var yi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function $0(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var gi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),le=(e,t)=>e<<32-t|e>>>t,Oh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Oh)throw new Error("Non little-endian hardware is not supported");function zo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function tr(e){if(typeof e=="string"&&(e=zo(e)),!$0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function xi(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];if(!$0(i))throw new Error("Uint8Array expected");t+=i.length}let r=new Uint8Array(t);for(let n=0,i=0;n<e.length;n++){let o=e[n];r.set(o,i),i+=o.length}return r}var Gr=class{clone(){return this._cloneInto()}},a2={}.toString;function mi(e){let t=n=>e().update(tr(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function mr(e=32){if(yi&&typeof yi.getRandomValues=="function")return yi.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function Mh(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}var $r=class extends Gr{constructor(t,r,n,i){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=gi(this.buffer)}update(t){zr(this);let{view:r,buffer:n,blockLen:i}=this;t=tr(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=gi(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){zr(this),G0(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;Mh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=gi(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var bi=BigInt(4294967295),Go=BigInt(32);function W0(e,t=!1){return t?{h:Number(e&bi),l:Number(e>>Go&bi)}:{h:Number(e>>Go&bi)|0,l:Number(e&bi)|0}}function Vh(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=W0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var Fh=(e,t)=>BigInt(e>>>0)<<Go|BigInt(t>>>0),qh=(e,t,r)=>e>>>r,Hh=(e,t,r)=>e<<32-r|t>>>r,zh=(e,t,r)=>e>>>r|t<<32-r,Gh=(e,t,r)=>e<<32-r|t>>>r,$h=(e,t,r)=>e<<64-r|t>>>r-32,Wh=(e,t,r)=>e>>>r-32|t<<64-r,Yh=(e,t)=>t,Zh=(e,t)=>e,Xh=(e,t,r)=>e<<r|t>>>32-r,Qh=(e,t,r)=>t<<r|e>>>32-r,Jh=(e,t,r)=>t<<r-32|e>>>64-r,jh=(e,t,r)=>e<<r-32|t>>>64-r;function td(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var ed=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),rd=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,nd=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),id=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,od=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),sd=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var ad={fromBig:W0,split:Vh,toBig:Fh,shrSH:qh,shrSL:Hh,rotrSH:zh,rotrSL:Gh,rotrBH:$h,rotrBL:Wh,rotr32H:Yh,rotr32L:Zh,rotlSH:Xh,rotlSL:Qh,rotlBH:Jh,rotlBL:jh,add:td,add3L:ed,add3H:rd,add4L:nd,add4H:id,add5H:sd,add5L:od},j=ad;var[cd,fd]=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))),er=new Uint32Array(80),rr=new Uint32Array(80),$o=class extends $r{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:g,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y]}set(t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y){this.Ah=t|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=d|0,this.Gh=g|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let m=0;m<16;m++,r+=4)er[m]=t.getUint32(r),rr[m]=t.getUint32(r+=4);for(let m=16;m<80;m++){let C=er[m-15]|0,S=rr[m-15]|0,B=j.rotrSH(C,S,1)^j.rotrSH(C,S,8)^j.shrSH(C,S,7),R=j.rotrSL(C,S,1)^j.rotrSL(C,S,8)^j.shrSL(C,S,7),L=er[m-2]|0,O=rr[m-2]|0,M=j.rotrSH(L,O,19)^j.rotrBH(L,O,61)^j.shrSH(L,O,6),k=j.rotrSL(L,O,19)^j.rotrBL(L,O,61)^j.shrSL(L,O,6),H=j.add4L(R,k,rr[m-7],rr[m-16]),z=j.add4H(H,B,M,er[m-7],er[m-16]);er[m]=z|0,rr[m]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:g,Fl:h,Gh:p,Gl:y,Hh:x,Hl:v}=this;for(let m=0;m<80;m++){let C=j.rotrSH(l,d,14)^j.rotrSH(l,d,18)^j.rotrBH(l,d,41),S=j.rotrSL(l,d,14)^j.rotrSL(l,d,18)^j.rotrBL(l,d,41),B=l&g^~l&p,R=d&h^~d&y,L=j.add5L(v,S,R,fd[m],rr[m]),O=j.add5H(L,x,C,B,cd[m],er[m]),M=L|0,k=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),H=j.rotrSL(n,i,28)^j.rotrBL(n,i,34)^j.rotrBL(n,i,39),z=n&o^n&a^o&a,Z=i&s^i&c^s&c;x=p|0,v=y|0,p=g|0,y=h|0,g=l|0,h=d|0,{h:l,l:d}=j.add(f|0,u|0,O|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let A=j.add3L(M,H,Z);n=j.add3H(A,O,k,z),i=A|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:x,l:v}=j.add(this.Hh|0,this.Hl|0,x|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v)}roundClean(){er.fill(0),rr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Wo=mi(()=>new $o);var wi={};Rt(wi,{bitGet:()=>gd,bitLen:()=>yd,bitMask:()=>Sn,bitSet:()=>xd,bytesToHex:()=>Me,bytesToNumberBE:()=>Ve,bytesToNumberLE:()=>de,concatBytes:()=>qe,createHmacDrbg:()=>Xo,ensureBytes:()=>gt,equalBytes:()=>dd,hexToBytes:()=>br,hexToNumber:()=>Zo,isBytes:()=>he,numberToBytesBE:()=>nr,numberToBytesLE:()=>Fe,numberToHexUnpadded:()=>Q0,numberToVarBytesBE:()=>hd,utf8ToBytes:()=>pd,validateObject:()=>ne});var X0=BigInt(0),vi=BigInt(1),ud=BigInt(2);function he(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var ld=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Me(e){if(!he(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=ld[e[r]];return t}function Q0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Zo(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}var Oe={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function Y0(e){if(e>=Oe._0&&e<=Oe._9)return e-Oe._0;if(e>=Oe._A&&e<=Oe._F)return e-(Oe._A-10);if(e>=Oe._a&&e<=Oe._f)return e-(Oe._a-10)}function br(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length,r=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=Y0(e.charCodeAt(o)),a=Y0(e.charCodeAt(o+1));if(s===void 0||a===void 0){let c=e[o]+e[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}n[i]=s*16+a}return n}function Ve(e){return Zo(Me(e))}function de(e){if(!he(e))throw new Error("Uint8Array expected");return Zo(Me(Uint8Array.from(e).reverse()))}function nr(e,t){return br(e.toString(16).padStart(t*2,"0"))}function Fe(e,t){return nr(e,t).reverse()}function hd(e){return br(Q0(e))}function gt(e,t,r){let n;if(typeof t=="string")try{n=br(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(he(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 qe(...e){let t=0;for(let i=0;i<e.length;i++){let o=e[i];if(!he(o))throw new Error("Uint8Array expected");t+=o.length}let r=new Uint8Array(t),n=0;for(let i=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function dd(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n<e.length;n++)r|=e[n]^t[n];return r===0}function pd(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function yd(e){let t;for(t=0;e>X0;e>>=vi,t+=1);return t}function gd(e,t){return e>>BigInt(t)&vi}var xd=(e,t,r)=>e|(r?vi:X0)<<BigInt(t),Sn=e=>(ud<<BigInt(e-1))-vi,Yo=e=>new Uint8Array(e),Z0=e=>Uint8Array.from(e);function Xo(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=Yo(e),i=Yo(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Yo())=>{i=a(Z0([0]),l),n=a(),l.length!==0&&(i=a(Z0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let g=n.slice();d.push(g),l+=n.length}return qe(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var md={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"||he(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function ne(e,t,r={}){let n=(i,o,s)=>{let a=md[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 Nt=BigInt(0),vt=BigInt(1),vr=BigInt(2),bd=BigInt(3),Qo=BigInt(4),J0=BigInt(5),j0=BigInt(8),vd=BigInt(9),wd=BigInt(16);function st(e,t){let r=e%t;return r>=Nt?r:t+r}function Jo(e,t,r){if(r<=Nt||t<Nt)throw new Error("Expected power/modulo > 0");if(r===vt)return Nt;let n=vt;for(;t>Nt;)t&vt&&(n=n*e%r),e=e*e%r,t>>=vt;return n}function xt(e,t,r){let n=e;for(;t-- >Nt;)n*=n,n%=r;return n}function Ei(e,t){if(e===Nt||t<=Nt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=st(e,t),n=t,i=Nt,o=vt,s=vt,a=Nt;for(;r!==Nt;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==vt)throw new Error("invert: does not exist");return st(i,t)}function Ed(e){let t=(e-vt)/vr,r,n,i;for(r=e-vt,n=0;r%vr===Nt;r/=vr,n++);for(i=vr;i<e&&Jo(i,t,e)!==e-vt;i++);if(n===1){let s=(e+vt)/Qo;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+vt)/vr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,vt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function Sd(e){if(e%Qo===bd){let t=(e+vt)/Qo;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%j0===J0){let t=(e-J0)/j0;return function(n,i){let o=n.mul(i,vr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,vr),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%wd,Ed(e)}var tc=(e,t)=>(st(e,t)&vt)===vt,Bd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function jo(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Bd.reduce((n,i)=>(n[i]="function",n),t);return ne(e,r)}function Ad(e,t,r){if(r<Nt)throw new Error("Expected power > 0");if(r===Nt)return e.ONE;if(r===vt)return t;let n=e.ONE,i=t;for(;r>Nt;)r&vt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=vt;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 ts(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<=Nt)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=ts(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Sd(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:Sn(i),ZERO:Nt,ONE:vt,create:c=>st(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Nt<=c&&c<e},is0:c=>c===Nt,isOdd:c=>(c&vt)===vt,neg:c=>st(-c,e),eql:(c,f)=>c===f,sqr:c=>st(c*c,e),add:(c,f)=>st(c+f,e),sub:(c,f)=>st(c-f,e),mul:(c,f)=>st(c*f,e),pow:(c,f)=>Ad(a,c,f),div:(c,f)=>st(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):nr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?de(c):Ve(c)}});return Object.freeze(a)}function ec(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 rc(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 es(e){let t=rc(e);return t+Math.ceil(t/2)}function nc(e,t,r=!1){let n=e.length,i=rc(t),o=es(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Ve(e):de(e),a=st(s,t-vt)+vt;return r?Fe(a,i):nr(a,i)}var Td=BigInt(0),rs=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>Td;)o&rs&&(s=s.add(a)),a=a.double(),o>>=rs;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),d=2**i,g=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=g,y>c&&(y-=d,s+=rs);let x=p,v=p+Math.abs(y)-1,m=h%2!==0,C=y<0;y===0?u=u.add(r(m,o[x])):f=f.add(r(C,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 Bn(e){return jo(e.Fp),ne(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...ts(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var pe=BigInt(0),ee=BigInt(1),Ai=BigInt(2),_d=BigInt(8),Ld={zip215:!0};function Rd(e){let t=Bn(e);return ne(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function Ii(e){let t=Rd(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||((_,w)=>{try{return{isValid:!0,value:r.sqrt(_*r.inv(w))}}catch{return{isValid:!1,value:pe}}}),d=t.adjustScalarBytes||(_=>_),g=t.domain||((_,w,U)=>{if(w.length||U)throw new Error("Contexts/pre-hash are not supported");return _}),h=_=>typeof _=="bigint"&&pe<_,p=(_,w)=>h(_)&&h(w)&&_<w,y=_=>_===pe||p(_,f);function x(_,w){if(p(_,w))return _;throw new Error(`Expected valid scalar < ${w}, got ${typeof _} ${_}`)}function v(_){return _===pe?_:x(_,n)}let m=new Map;function C(_){if(!(_ instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,U,K,F){if(this.ex=w,this.ey=U,this.ez=K,this.et=F,!y(w))throw new Error("x required");if(!y(U))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(F))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:U,y:K}=w||{};if(!y(U)||!y(K))throw new Error("invalid affine point");return new S(U,K,ee,u(U*K))}static normalizeZ(w){let U=r.invertBatch(w.map(K=>K.ez));return w.map((K,F)=>K.toAffine(U[F])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,m.delete(this)}assertValidity(){let{a:w,d:U}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:F,ez:W,et:Y}=this,rt=u(K*K),X=u(F*F),J=u(W*W),dt=u(J*J),lt=u(rt*w),Mt=u(J*u(lt+X)),Vt=u(dt+u(U*u(rt*X)));if(Mt!==Vt)throw new Error("bad point: equation left != right (1)");let Lt=u(K*F),Ht=u(W*Y);if(Lt!==Ht)throw new Error("bad point: equation left != right (2)")}equals(w){C(w);let{ex:U,ey:K,ez:F}=this,{ex:W,ey:Y,ez:rt}=w,X=u(U*rt),J=u(W*F),dt=u(K*rt),lt=u(Y*F);return X===J&&dt===lt}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:U,ey:K,ez:F}=this,W=u(U*U),Y=u(K*K),rt=u(Ai*u(F*F)),X=u(w*W),J=U+K,dt=u(u(J*J)-W-Y),lt=X+Y,Mt=lt-rt,Vt=X-Y,Lt=u(dt*Mt),Ht=u(lt*Vt),De=u(dt*Vt),pr=u(Mt*lt);return new S(Lt,Ht,pr,De)}add(w){C(w);let{a:U,d:K}=t,{ex:F,ey:W,ez:Y,et:rt}=this,{ex:X,ey:J,ez:dt,et:lt}=w;if(U===BigInt(-1)){let s0=u((W-F)*(J+X)),a0=u((W+F)*(J-X)),Eo=u(a0-s0);if(Eo===pe)return this.double();let c0=u(Y*Ai*lt),f0=u(rt*Ai*dt),u0=f0+c0,l0=a0+s0,h0=f0-c0,Xl=u(u0*Eo),Ql=u(l0*h0),Jl=u(u0*h0),jl=u(Eo*l0);return new S(Xl,Ql,jl,Jl)}let Mt=u(F*X),Vt=u(W*J),Lt=u(rt*K*lt),Ht=u(Y*dt),De=u((F+W)*(X+J)-Mt-Vt),pr=Ht-Lt,gn=Ht+Lt,o0=u(Vt-U*Mt),$l=u(De*pr),Wl=u(gn*o0),Yl=u(De*o0),Zl=u(pr*gn);return new S($l,Wl,Zl,Yl)}subtract(w){return this.add(w.negate())}wNAF(w){return L.wNAFCached(this,m,w,S.normalizeZ)}multiply(w){let{p:U,f:K}=this.wNAF(x(w,n));return S.normalizeZ([U,K])[0]}multiplyUnsafe(w){let U=v(w);return U===pe?R:this.equals(R)||U===ee?this:this.equals(B)?this.wNAF(U).p:L.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return L.unsafeLadder(this,n).is0()}toAffine(w){let{ex:U,ey:K,ez:F}=this,W=this.is0();w==null&&(w=W?_d:r.inv(F));let Y=u(U*w),rt=u(K*w),X=u(F*w);if(W)return{x:pe,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:rt}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,U=!1){let{d:K,a:F}=t,W=r.BYTES;w=gt("pointHex",w,W);let Y=w.slice(),rt=w[W-1];Y[W-1]=rt&-129;let X=de(Y);X===pe||(U?x(X,f):x(X,r.ORDER));let J=u(X*X),dt=u(J-ee),lt=u(K*J-F),{isValid:Mt,value:Vt}=l(dt,lt);if(!Mt)throw new Error("Point.fromHex: invalid y coordinate");let Lt=(Vt&ee)===ee,Ht=(rt&128)!==0;if(!U&&Vt===pe&&Ht)throw new Error("Point.fromHex: x=0 and x_0=1");return Ht!==Lt&&(Vt=u(-Vt)),S.fromAffine({x:Vt,y:X})}static fromPrivateKey(w){return k(w).point}toRawBytes(){let{x:w,y:U}=this.toAffine(),K=Fe(U,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Me(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(pe,ee,ee,pe);let{BASE:B,ZERO:R}=S,L=Bi(S,a*8);function O(_){return st(_,n)}function M(_){return O(de(_))}function k(_){let w=a;_=gt("private key",_,w);let U=gt("hashed private key",o(_),2*w),K=d(U.slice(0,w)),F=U.slice(w,2*w),W=M(K),Y=B.multiply(W),rt=Y.toRawBytes();return{head:K,prefix:F,scalar:W,point:Y,pointBytes:rt}}function H(_){return k(_).pointBytes}function z(_=new Uint8Array,...w){let U=qe(...w);return M(o(g(U,gt("context",_),!!i)))}function Z(_,w,U={}){_=gt("message",_),i&&(_=i(_));let{prefix:K,scalar:F,pointBytes:W}=k(w),Y=z(U.context,K,_),rt=B.multiply(Y).toRawBytes(),X=z(U.context,rt,W,_),J=O(Y+X*F);v(J);let dt=qe(rt,Fe(J,r.BYTES));return gt("result",dt,a*2)}let A=Ld;function N(_,w,U,K=A){let{context:F,zip215:W}=K,Y=r.BYTES;_=gt("signature",_,2*Y),w=gt("message",w),i&&(w=i(w));let rt=de(_.slice(Y,2*Y)),X,J,dt;try{X=S.fromHex(U,W),J=S.fromHex(_.slice(0,Y),W),dt=B.multiplyUnsafe(rt)}catch{return!1}if(!W&&X.isSmallOrder())return!1;let lt=z(F,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(lt)).subtract(dt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:k,randomPrivateKey:()=>s(r.BYTES),precompute(_=8,w=S.BASE){return w._setWindowSize(_),w.multiply(BigInt(3)),w}}}}var An=BigInt(0),ns=BigInt(1);function Nd(e){return ne(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function ic(e){let t=Nd(e),{P:r}=t,n=m=>st(m,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(m=>m),c=t.powPminus2||(m=>Jo(m,r-BigInt(2),r));function f(m,C,S){let B=n(m*(C-S));return C=n(C-B),S=n(S+B),[C,S]}function u(m){if(typeof m=="bigint"&&An<=m&&m<r)return m;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(m,C){let S=u(m),B=u(C),R=S,L=ns,O=An,M=S,k=ns,H=An,z;for(let A=BigInt(i-1);A>=An;A--){let N=B>>A&ns;H^=N,z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,k),O=z[0],k=z[1],H=N;let T=L+O,_=n(T*T),w=L-O,U=n(w*w),K=_-U,F=M+k,W=M-k,Y=n(W*T),rt=n(F*w),X=Y+rt,J=Y-rt;M=n(X*X),k=n(R*n(J*J)),L=n(_*U),O=n(K*(_+n(l*K)))}z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,k),O=z[0],k=z[1];let Z=c(O);return n(L*Z)}function g(m){return Fe(n(m),o)}function h(m){let C=gt("u coordinate",m,o);return s===32&&(C[31]&=127),de(C)}function p(m){let C=gt("scalar",m),S=C.length;if(S!==o&&S!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${S}`);return de(a(C))}function y(m,C){let S=h(C),B=p(m),R=d(S,B);if(R===An)throw new Error("Invalid private or public key received");return g(R)}let x=g(t.Gu);function v(m){return y(m,x)}return{scalarMult:y,scalarMultBase:v,getSharedSecret:(m,C)=>y(m,C),getPublicKey:m=>v(m),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:x}}var In=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),oc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),P2=BigInt(0),Pd=BigInt(1),is=BigInt(2),Dd=BigInt(5),sc=BigInt(10),Ud=BigInt(20),kd=BigInt(40),ac=BigInt(80);function cc(e){let t=In,n=e*e%t*e%t,i=xt(n,is,t)*n%t,o=xt(i,Pd,t)*e%t,s=xt(o,Dd,t)*o%t,a=xt(s,sc,t)*s%t,c=xt(a,Ud,t)*a%t,f=xt(c,kd,t)*c%t,u=xt(f,ac,t)*f%t,l=xt(u,ac,t)*f%t,d=xt(l,sc,t)*s%t;return{pow_p_5_8:xt(d,is,t)*e%t,b2:n}}function fc(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function Kd(e,t){let r=In,n=st(t*t*t,r),i=st(n*n*t,r),o=cc(e*i).pow_p_5_8,s=st(e*n*o,r),a=st(t*s*s,r),c=s,f=st(s*oc,r),u=a===e,l=a===st(-e,r),d=a===st(-e*oc,r);return u&&(s=c),(l||d)&&(s=f),tc(s,r)&&(s=st(-s,r)),{isValid:u||l,value:s}}var He=Si(In,void 0,!0),os={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:He,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Wo,randomBytes:mr,adjustScalarBytes:fc,uvRatio:Kd},Wr=Ii(os);function uc(e,t,r){if(t.length>255)throw new Error("Context is too big");return xi(zo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var D2=Ii({...os,domain:uc}),U2=Ii({...os,domain:uc,prehash:Wo}),Cn=ic({P:In,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=In,{pow_p_5_8:r,b2:n}=cc(e);return st(xt(r,BigInt(3),t)*n,t)},adjustScalarBytes:fc,randomBytes:mr});var Od=(He.ORDER+BigInt(3))/BigInt(8),k2=He.pow(is,Od),K2=He.sqrt(He.neg(He.ONE)),O2=(He.ORDER-BigInt(5))/BigInt(8),M2=BigInt(486662);var V2=ec(He,He.neg(BigInt(486664)));var F2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),q2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),H2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),z2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var G2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ci=class extends Gr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,En(t);let n=tr(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 zr(this),this.iHash.update(t),this}digestInto(t){zr(this),Ho(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()}},Yr=(e,t,r)=>new Ci(e,t).update(r).digest();Yr.create=(e,t)=>new Ci(e,t);function hc(e,t,r){return En(e),r===void 0&&(r=new Uint8Array(e.outputLen)),Yr(e,tr(r),tr(t))}var ss=new Uint8Array([0]),lc=new Uint8Array;function dc(e,t,r,n=32){if(En(e),pi(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=lc);let o=new Uint8Array(i*e.outputLen),s=Yr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)ss[0]=f+1,a.update(f===0?lc:c).update(r).update(ss).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),ss.fill(0),o.slice(0,n)}var Md=(e,t,r)=>e&t^~e&r,Vd=(e,t,r)=>e&t^e&r^t&r,Fd=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ir=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),or=new Uint32Array(64),as=class extends $r{constructor(){super(64,32,8,!1),this.A=ir[0]|0,this.B=ir[1]|0,this.C=ir[2]|0,this.D=ir[3]|0,this.E=ir[4]|0,this.F=ir[5]|0,this.G=ir[6]|0,this.H=ir[7]|0}get(){let{A: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)or[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=or[l-15],g=or[l-2],h=le(d,7)^le(d,18)^d>>>3,p=le(g,17)^le(g,19)^g>>>10;or[l]=p+or[l-7]+h+or[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let d=le(a,6)^le(a,11)^le(a,25),g=u+d+Md(a,c,f)+Fd[l]+or[l]|0,p=(le(n,2)^le(n,13)^le(n,22))+Vd(n,i,o)|0;u=f,f=c,c=a,a=s+g|0,s=o,o=i,i=n,n=g+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,i,o,s,a,c,f,u)}roundClean(){or.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Zr=mi(()=>new as);var cs={hashSHA256(e){return Zr(e.subarray())},getHKDF(e,t){let r=hc(Zr,t,e),i=dc(Zr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let 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.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return qo(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return qo(n,t,r).decrypt(e.subarray(),i)}};var pc=cs;var Xr=e=>{let t=gr(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Xr.bytes=2;var Tn=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};Tn.bytes=2;function yc(e){return new Bt(e.ne,e.ciphertext)}function gc(e){return new Bt(e.ne,e.ns,e.ciphertext)}function xc(e){return new Bt(e.ns,e.ciphertext)}function mc(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:ct(0)}}function bc(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 vc(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:ct(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var Ec=16;function Sc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new Bt(Xr(s.byteLength),s)}}}function Bc(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-Ec<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-Ec),{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 Ln=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},wr=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var tE=Xt(Dn(),1),eE=Xt(Ff(),1);var Hb=Symbol.for("@libp2p/connection");var Gb=Symbol.for("@libp2p/content-routing");var Yb=Symbol.for("@libp2p/peer-discovery");var qf=Symbol.for("@libp2p/peer-id");var Qb=Symbol.for("@libp2p/peer-routing");var Hf;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(Hf||(Hf={}));var Gf=Symbol.for("@libp2p/transport");var zf;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(zf||(zf={}));var et=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var Rs=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},nv=globalThis.CustomEvent??Rs;var ex=Xt(ht(),1);var ks={};Rt(ks,{base10:()=>x1});function h1(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,x=0,v=h.length;x!==v&&h[x]===0;)x++,p++;for(var m=(v-x)*u+1>>>0,C=new Uint8Array(m);x!==v;){for(var S=h[x],B=0,R=m-1;(S!==0||B<y)&&R!==-1;R--,B++)S+=256*C[R]>>>0,C[R]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");y=B,x++}for(var L=m-y;L!==m&&C[L]===0;)L++;for(var O=c.repeat(p);L<m;++L)O+=e.charAt(C[L]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,x=0;h[p]===c;)y++,p++;for(var v=(h.length-p)*f+1>>>0,m=new Uint8Array(v);h[p];){var C=r[h.charCodeAt(p)];if(C===255)return;for(var S=0,B=v-1;(C!==0||S<x)&&B!==-1;B--,S++)C+=a*m[B]>>>0,m[B]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");x=S,p++}if(h[p]!==" "){for(var R=v-x;R!==v&&m[R]===0;)R++;for(var L=new Uint8Array(y+(v-R)),O=y;R!==v;)L[O++]=m[R++];return L}}}function g(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:g}}var d1=h1,p1=d1,$f=p1;var Dv=new Uint8Array(0);var Wf=(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},We=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 Yf=e=>new TextEncoder().encode(e),Zf=e=>new TextDecoder().decode(e);var Ns=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Ps=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 Qf(this,t)}},Ds=class{constructor(t){this.decoders=t}or(t){return Qf(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`)}},Qf=(e,t)=>new Ds({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),Us=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Ns(t,r,n),this.decoder=new Ps(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},en=({name:e,prefix:t,encode:r,decode:n})=>new Us(e,t,r,n),ur=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=$f(r,t);return en({prefix:e,name:t,encode:n,decode:o=>We(i(o))})},y1=(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},g1=(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},At=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>en({prefix:t,name:e,encode(i){return g1(i,n,r)},decode(i){return y1(i,n,r,e)}});var x1=ur({prefix:"9",name:"base10",alphabet:"0123456789"});var Ks={};Rt(Ks,{base16:()=>m1,base16upper:()=>b1});var m1=At({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),b1=At({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Os={};Rt(Os,{base2:()=>v1});var v1=At({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ms={};Rt(Ms,{base256emoji:()=>A1});var Jf=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=Jf.reduce((e,t,r)=>(e[r]=t,e),[]),E1=Jf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function S1(e){return e.reduce((t,r)=>(t+=w1[r],t),"")}function B1(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 A1=en({prefix:"\u{1F680}",name:"base256emoji",encode:S1,decode:B1});var Vs={};Rt(Vs,{base32:()=>Ye,base32hex:()=>_1,base32hexpad:()=>R1,base32hexpadupper:()=>N1,base32hexupper:()=>L1,base32pad:()=>C1,base32padupper:()=>T1,base32upper:()=>I1,base32z:()=>P1});var Ye=At({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),I1=At({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),C1=At({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),T1=At({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),_1=At({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),L1=At({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),R1=At({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),N1=At({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),P1=At({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Fs={};Rt(Fs,{base36:()=>D1,base36upper:()=>U1});var D1=ur({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),U1=ur({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var qs={};Rt(qs,{base58btc:()=>It,base58flickr:()=>k1});var It=ur({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),k1=ur({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var zs={};Rt(zs,{base64:()=>$i,base64pad:()=>K1,base64url:()=>Hs,base64urlpad:()=>O1});var $i=At({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),K1=At({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Hs=At({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),O1=At({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Gs={};Rt(Gs,{base8:()=>M1});var M1=At({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var $s={};Rt($s,{identity:()=>V1});var V1=en({prefix:"\0",name:"identity",encode:e=>Zf(e),decode:e=>Yf(e)});var Zv=new TextEncoder,Xv=new TextDecoder;var Zs={};Rt(Zs,{identity:()=>hr});var Te={};Rt(Te,{Digest:()=>Cr,create:()=>xe,decode:()=>lr,equals:()=>Ys});var H1=eu,jf=128,z1=127,G1=~z1,$1=Math.pow(2,31);function eu(e,t,r){t=t||[],r=r||0;for(var n=r;e>=$1;)t[r++]=e&255|jf,e/=128;for(;e&G1;)t[r++]=e&255|jf,e>>>=7;return t[r]=e|0,eu.bytes=r-n+1,t}var W1=Ws,Y1=128,tu=127;function Ws(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Ws.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&tu)<<i:(s&tu)*Math.pow(2,i),i+=7}while(s>=Y1);return Ws.bytes=o-n,r}var Z1=Math.pow(2,7),X1=Math.pow(2,14),Q1=Math.pow(2,21),J1=Math.pow(2,28),j1=Math.pow(2,35),tg=Math.pow(2,42),eg=Math.pow(2,49),rg=Math.pow(2,56),ng=Math.pow(2,63),ig=function(e){return e<Z1?1:e<X1?2:e<Q1?3:e<J1?4:e<j1?5:e<tg?6:e<eg?7:e<rg?8:e<ng?9:10},og={encode:H1,decode:W1,encodingLength:ig},sg=og,Kn=sg;var On=(e,t=0)=>[Kn.decode(e,t),Kn.decode.bytes],rn=(e,t,r=0)=>(Kn.encode(e,t,r),t),nn=e=>Kn.encodingLength(e);var xe=(e,t)=>{let r=t.byteLength,n=nn(e),i=n+nn(r),o=new Uint8Array(i+r);return rn(e,o,0),rn(r,o,n),o.set(t,i),new Cr(e,r,t,o)},lr=e=>{let t=We(e),[r,n]=On(t),[i,o]=On(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Cr(r,i,s,t)},Ys=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Wf(e.bytes,r.bytes)}},Cr=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var ru=0,ag="identity",nu=We,cg=e=>xe(ru,nu(e)),hr={code:ru,name:ag,encode:nu,digest:cg};var Js={};Rt(Js,{sha256:()=>qt,sha512:()=>fg});var Qs=({name:e,code:t,encode:r})=>new Xs(e,t,r),Xs=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?xe(this.code,r):r.then(n=>xe(this.code,n))}else throw Error("Unknown type, must be binary type")}};var ou=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),qt=Qs({name:"sha2-256",code:18,encode:ou("SHA-256")}),fg=Qs({name:"sha2-512",code:19,encode:ou("SHA-512")});var su=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return lg(r,js(e),t||It.encoder);default:return hg(r,js(e),t||Ye.encoder)}};var au=new WeakMap,js=e=>{let t=au.get(e);if(t==null){let r=new Map;return au.set(e,r),r}return t},me=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==Mn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==dg)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=xe(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&&Ys(t.multihash,n.multihash)}toString(t){return su(this,t)}toJSON(){return{"/":su(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||cu(n,i,o.bytes))}else if(r[pg]===!0){let{version:n,multihash:i,code:o}=r,s=lr(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!==Mn)throw new Error(`Version 0 CID must use dag-pb (code: ${Mn}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=cu(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Mn,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=We(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 Cr(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=On(t.subarray(r));return r+=d,l},i=n(),o=Mn;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]=ug(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 js(o).set(n,t),o}},ug=(e,t)=>{switch(e[0]){case"Q":{let r=t||It;return[It.prefix,r.decode(`${It.prefix}${e}`)]}case It.prefix:{let r=t||It;return[It.prefix,r.decode(e)]}case Ye.prefix:{let r=t||Ye;return[Ye.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},lg=(e,t,r)=>{let{prefix:n}=r;if(n!==It.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},hg=(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},Mn=112,dg=18,cu=(e,t,r)=>{let n=nn(e),i=n+nn(t),o=new Uint8Array(i+r.byteLength);return rn(e,o,0),rn(t,o,n),o.set(r,i),o},pg=Symbol.for("@ipld/js-cid/CID");var $t={...$s,...Os,...Gs,...ks,...Ks,...Vs,...Fs,...qs,...zs,...Ms},hw={...Js,...Zs};function uu(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var fu=uu("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ta=uu("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=gr(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),yg={utf8:fu,"utf-8":fu,hex:$t.base16,latin1:ta,ascii:ta,binary:ta,...$t},Yi=yg;function Kt(e,t="utf8"){let r=Yi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ke(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var xa={};Rt(xa,{Ed25519PrivateKey:()=>Dr,Ed25519PublicKey:()=>Hn,generateKeyPair:()=>Tg,generateKeyPairFromSeed:()=>Ru,unmarshalEd25519PrivateKey:()=>Ig,unmarshalEd25519PublicKey:()=>Cg});function Ot(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 Iw=Xt(_t(),1),Cw=Xt(qi(),1),lu=Xt(ht(),1);function _e(e,t){if(globalThis.Buffer!=null)return ke(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=gr(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return ke(r)}function St(e,t="utf8"){let r=Yi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function be(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=_e([new Uint8Array(t-r.length),r])}return St(r,"base64url")}function re(e){let t=hu(e);return new lu.default.jsbn.BigInteger(St(t,"base16"),16)}function hu(e,t){let r=Kt(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=_e([new Uint8Array(t-r.length),r])}return r}function se(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var on=32,Ze=64,Zi=32;function du(){let e=Wr.utils.randomPrivateKey(),t=Wr.getPublicKey(e);return{privateKey:xu(e,t),publicKey:t}}function pu(e){if(e.length!==Zi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=Wr.getPublicKey(t);return{privateKey:xu(t,r),publicKey:r}}function yu(e,t){let r=e.subarray(0,Zi);return Wr.sign(t instanceof Uint8Array?t:t.subarray(),r)}function gu(e,t,r){return Wr.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function xu(e,t){let r=new Uint8Array(Ze);for(let n=0;n<Zi;n++)r[n]=e[n],r[Zi+n]=t[n];return r}var Jt={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var ea={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function ra(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=Jt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=Kt(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(p,y,l);return _e([g,p.iv,new Uint8Array(x)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=Kt(d));let x;if(d.length===0)try{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},C=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,C,{name:t,length:r},!0,["decrypt"])}catch{x=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["decrypt"])}else{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},C=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,C,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(y,x,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function sn(e,t){let n=await ra().encrypt(e,t);return $i.encode(n)}var na=new Float32Array([-0]),dr=new Uint8Array(na.buffer);function bu(e,t,r){na[0]=e,t[r]=dr[0],t[r+1]=dr[1],t[r+2]=dr[2],t[r+3]=dr[3]}function vu(e,t){return dr[0]=e[t],dr[1]=e[t+1],dr[2]=e[t+2],dr[3]=e[t+3],na[0]}var ia=new Float64Array([-0]),Wt=new Uint8Array(ia.buffer);function wu(e,t,r){ia[0]=e,t[r]=Wt[0],t[r+1]=Wt[1],t[r+2]=Wt[2],t[r+3]=Wt[3],t[r+4]=Wt[4],t[r+5]=Wt[5],t[r+6]=Wt[6],t[r+7]=Wt[7]}function Eu(e,t){return Wt[0]=e[t],Wt[1]=e[t+1],Wt[2]=e[t+2],Wt[3]=e[t+3],Wt[4]=e[t+4],Wt[5]=e[t+5],Wt[6]=e[t+6],Wt[7]=e[t+7],ia[0]}var xg=BigInt(Number.MAX_SAFE_INTEGER),mg=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 Tr;if(t<xg&&t>mg)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>Su&&(i=0n,++n>Su&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Tr;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):Tr}},Tr=new jt(0,0);Tr.toBigInt=function(){return 0n};Tr.zzEncode=Tr.zzDecode=function(){return this};Tr.length=function(){return 1};var Su=4294967296n;function Bu(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 Au(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 oa(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function ve(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Xi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var sa=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,ve(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ve(this,4);return Xi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ve(this,4);return Xi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ve(this,4);let t=vu(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw ve(this,4);let t=Eu(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw ve(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return Au(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw ve(this,t);this.pos+=t}else do if(this.pos>=this.len)throw ve(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new 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 ve(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw ve(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ve(this,8);let t=Xi(this.buf,this.pos+=4),r=Xi(this.buf,this.pos+=4);return new jt(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function aa(e){return new sa(e instanceof Uint8Array?e:e.subarray())}function _r(e,t){let r=aa(e);return t.decode(r)}function Qi(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Lr(e=0){return globalThis.Buffer?.allocUnsafe!=null?Qi(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Tu(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Cu=Tu("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ca=Tu("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=Lr(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),bg={utf8:Cu,"utf-8":Cu,hex:$t.base16,latin1:ca,ascii:ca,binary:ca,...$t},_u=bg;function Lu(e,t="utf8"){let r=_u[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Qi(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function fa(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Lr(s);i+s>t&&(n=Lr(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Rr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function ua(){}var ha=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},vg=fa();function wg(e){return globalThis.Buffer!=null?Lr(e):vg(e)}var qn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Rr(ua,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Rr(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new da((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Vn,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(Vn,r.length(),r)}uint64Number(t){let r=jt.fromNumber(t);return this._push(Vn,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(Vn,r.length(),r)}sint64Number(t){let r=jt.fromNumber(t).zzEncode();return this._push(Vn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(la,1,t?1:0)}fixed32(t){return this._push(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(bu,4,t)}double(t){return this._push(wu,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(la,1,0):this.uint32(r)._push(Sg,r,t)}string(t){let r=Bu(t);return r!==0?this.uint32(r)._push(oa,r,t):this._push(la,1,0)}fork(){return this.states=new ha(this),this.head=this.tail=new Rr(ua,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Rr(ua,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=wg(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function la(e,t,r){t[r]=e&255}function Eg(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var da=class extends Rr{next;constructor(t,r){super(Eg,t,r),this.next=void 0}};function Vn(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 Sg(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(qn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(Bg,t,e),this},qn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(Ag,t,e),this});function Bg(e,t,r){t.set(e,r)}function Ag(e,t,r){e.length<40?oa(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(Lu(e),r)}function pa(){return new qn}function Nr(e,t){let r=pa();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var an;(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"})(an||(an={}));function Ji(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ya(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Ji("enum",an.VARINT,r,n)}function Pr(e,t){return Ji("message",an.LENGTH_DELIMITED,e,t)}var Et;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(Et||(Et={}));var ga;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(ga||(ga={}));(function(e){e.codec=()=>ya(ga)})(Et||(Et={}));var Le;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Et.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=Et.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(Le||(Le={}));var Re;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Et.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=Et.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(Re||(Re={}));var Hn=class{_key;constructor(t){this._key=cn(t,on)}verify(t,r){return gu(this._key,r,t)}marshal(){return this._key}get bytes(){return Le.encode({Type:Et.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}hash(){let t=qt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},Dr=class{_key;_publicKey;constructor(t,r){this._key=cn(t,Ze),this._publicKey=cn(r,on)}sign(t){return yu(this._key,t)}get public(){return new Hn(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:Et.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}async hash(){let t=qt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=hr.digest(this.public.bytes);return It.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Ig(e){if(e.length>Ze){e=cn(e,Ze+on);let n=e.subarray(0,Ze),i=e.subarray(Ze,e.length);return new Dr(n,i)}e=cn(e,Ze);let t=e.subarray(0,Ze),r=e.subarray(on);return new Dr(t,r)}function Cg(e){return e=cn(e,on),new Hn(e)}async function Tg(){let{privateKey:e,publicKey:t}=du();return new Dr(e,t)}async function Ru(e){let{privateKey:t,publicKey:r}=pu(e);return new Dr(t,r)}function cn(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new et(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var _g={"P-256":256,"P-384":384,"P-521":521},Lg=Object.keys(_g),K8=Lg.join(" / ");var Ea={};Rt(Ea,{MAX_KEY_SIZE:()=>Wn,RsaPrivateKey:()=>fn,RsaPublicKey:()=>$n,fromJwk:()=>Fg,generateKeyPair:()=>qg,unmarshalRsaPrivateKey:()=>Mg,unmarshalRsaPublicKey:()=>Vg});var Gn=Xt(ht(),1);var w4=Xt(ku(),1);function to(e){if(isNaN(e)||e<=0)throw new et("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return mr(e)}var n4=Xt(Gi(),1),va=Xt(ht(),1);function Ku(e,t){return t.map(r=>re(e[r]))}function Ou(e){return va.default.pki.setRsaPrivateKey(...Ku(e,["n","e","d","p","q","dp","dq","qi"]))}function Mu(e){return va.default.pki.setRsaPublicKey(...Ku(e,["n","e"]))}var kr={};Rt(kr,{jwkToPkcs1:()=>Dg,jwkToPkix:()=>kg,pkcs1ToJwk:()=>Pg,pkixToJwk:()=>Ug});var s4=Xt(Dn(),1),a4=Xt(Gi(),1);var Xe=Xt(ht(),1);function Pg(e){let t=Xe.default.asn1.fromDer(St(e,"ascii")),r=Xe.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:be(r.n),e:be(r.e),d:be(r.d),p:be(r.p),q:be(r.q),dp:be(r.dP),dq:be(r.dQ),qi:be(r.qInv),alg:"RS256"}}function Dg(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Xe.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 Kt(Xe.default.asn1.toDer(t).getBytes(),"ascii")}function Ug(e){let t=Xe.default.asn1.fromDer(St(e,"ascii")),r=Xe.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:be(r.n),e:be(r.e)}}function kg(e){if(e.n==null||e.e==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Xe.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return Kt(Xe.default.asn1.toDer(t).getBytes(),"ascii")}async function Vu(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 Hu(t);return{privateKey:r[0],publicKey:r[1]}}async function wa(e){let r=[await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Kg(e)],n=await Hu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Fu(e,t){let r=await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function qu(e,t,r){let n=await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r instanceof Uint8Array?r:r.subarray())}async function Hu(e){if(e.privateKey==null||e.publicKey==null)throw new et("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Jt.get().subtle.exportKey("jwk",e.privateKey),Jt.get().subtle.exportKey("jwk",e.publicKey)])}async function Kg(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 zu(e,t,r,n){let i=t?Mu(e):Ou(e),o=St(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return Kt(s,"ascii")}function Gu(e,t){return zu(e,!0,t,(r,n)=>n.encrypt(r))}function $u(e,t){return zu(e,!1,t,(r,n)=>n.decrypt(r))}function eo(e){if(e.kty!=="RSA")throw new et("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new et("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Kt(e.n,"base64url").length*8}var Wn=8192,$n=class{_key;constructor(t){this._key=t}verify(t,r){return qu(this._key,r,t)}marshal(){return kr.jwkToPkix(this._key)}get bytes(){return Le.encode({Type:Et.RSA,Data:this.marshal()}).subarray()}encrypt(t){return Gu(this._key,t)}equals(t){return Ot(this.bytes,t.bytes)}hash(){let t=qt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},fn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return to(16)}sign(t){return Fu(this._key,t)}get public(){if(this._publicKey==null)throw new et("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new $n(this._publicKey)}decrypt(t){return $u(this._key,t)}marshal(){return kr.jwkToPkcs1(this._key)}get bytes(){return Re.encode({Type:Et.RSA,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}hash(){let t=qt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return St(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Gn.default.util.ByteBuffer(this.marshal()),i=Gn.default.asn1.fromDer(n),o=Gn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Gn.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Mg(e){let t=kr.pkcs1ToJwk(e);if(eo(t)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await wa(t);return new fn(r.privateKey,r.publicKey)}function Vg(e){let t=kr.pkixToJwk(e);if(eo(t)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new $n(t)}async function Fg(e){if(eo(e)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await wa(e);return new fn(t.privateKey,t.publicKey)}async function qg(e){if(e>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await Vu(e);return new fn(t.privateKey,t.publicKey)}var Ia={};Rt(Ia,{Secp256k1PrivateKey:()=>Zn,Secp256k1PublicKey:()=>Yn,generateKeyPair:()=>tx,unmarshalSecp256k1PrivateKey:()=>Jg,unmarshalSecp256k1PublicKey:()=>jg});function Hg(e){let t=Bn(e);ne(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:zg,hexToBytes:Gg}=wi,Kr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Kr;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:zg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Kr,r=typeof e=="string"?Gg(e):e;if(!he(r))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}=Kr._parseInt(r.subarray(2)),{d:s,l:a}=Kr._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}`}},Qe=BigInt(0),ae=BigInt(1),T4=BigInt(2),Wu=BigInt(3),_4=BigInt(4);function $g(e){let t=Hg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let x=p.toAffine();return qe(Uint8Array.from([4]),r.toBytes(x.x),r.toBytes(x.y))}),i=t.fromBytes||(h=>{let p=h.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),x=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:x}});function o(h){let{a:p,b:y}=t,x=r.sqr(h),v=r.mul(x,h);return r.add(r.add(v,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Qe<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:x,n:v}=t;if(p&&typeof h!="bigint"){if(he(h)&&(h=Me(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let m;try{m=typeof h=="bigint"?h:Ve(gt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return x&&(m=st(m,v)),a(m),m}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,x){if(this.px=p,this.py=y,this.pz=x,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(p){let{x:y,y:x}=p||{};if(!p||!r.isValid(y)||!r.isValid(x))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let v=m=>r.eql(m,r.ZERO);return v(y)&&v(x)?l.ZERO:new l(y,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(x=>x.pz));return p.map((x,v)=>x.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(gt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let x=r.sqr(y),v=o(p);if(!r.eql(x,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:C,pz:S}=p,B=r.eql(r.mul(y,S),r.mul(m,v)),R=r.eql(r.mul(x,S),r.mul(C,v));return B&&R}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,x=r.mul(y,Wu),{px:v,py:m,pz:C}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,L=r.mul(v,v),O=r.mul(m,m),M=r.mul(C,C),k=r.mul(v,m);return k=r.add(k,k),R=r.mul(v,C),R=r.add(R,R),S=r.mul(p,R),B=r.mul(x,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(k,S),R=r.mul(x,R),M=r.mul(p,M),k=r.sub(L,M),k=r.mul(p,k),k=r.add(k,R),R=r.add(L,L),L=r.add(R,L),L=r.add(L,M),L=r.mul(L,k),B=r.add(B,L),M=r.mul(m,C),M=r.add(M,M),L=r.mul(M,k),S=r.sub(S,L),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:C,pz:S}=p,B=r.ZERO,R=r.ZERO,L=r.ZERO,O=t.a,M=r.mul(t.b,Wu),k=r.mul(y,m),H=r.mul(x,C),z=r.mul(v,S),Z=r.add(y,x),A=r.add(m,C);Z=r.mul(Z,A),A=r.add(k,H),Z=r.sub(Z,A),A=r.add(y,v);let N=r.add(m,S);return A=r.mul(A,N),N=r.add(k,z),A=r.sub(A,N),N=r.add(x,v),B=r.add(C,S),N=r.mul(N,B),B=r.add(H,z),N=r.sub(N,B),L=r.mul(O,A),B=r.mul(M,z),L=r.add(B,L),B=r.sub(H,L),L=r.add(H,L),R=r.mul(B,L),H=r.add(k,k),H=r.add(H,k),z=r.mul(O,z),A=r.mul(M,A),H=r.add(H,z),z=r.sub(k,z),z=r.mul(O,z),A=r.add(A,z),k=r.mul(H,A),R=r.add(R,k),k=r.mul(N,A),B=r.mul(Z,B),B=r.sub(B,k),k=r.mul(Z,H),L=r.mul(N,L),L=r.add(L,k),new l(B,R,L)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let x=r.invertBatch(y.map(v=>v.pz));return y.map((v,m)=>v.toAffine(x[m])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Qe)return y;if(a(p),p===ae)return this;let{endo:x}=t;if(!x)return g.unsafeLadder(this,p);let{k1neg:v,k1:m,k2neg:C,k2:S}=x.splitScalar(p),B=y,R=y,L=this;for(;m>Qe||S>Qe;)m&ae&&(B=B.add(L)),S&ae&&(R=R.add(L)),L=L.double(),m>>=ae,S>>=ae;return v&&(B=B.negate()),C&&(R=R.negate()),R=new l(r.mul(R.px,x.beta),R.py,R.pz),B.add(R)}multiply(p){a(p);let y=p,x,v,{endo:m}=t;if(m){let{k1neg:C,k1:S,k2neg:B,k2:R}=m.splitScalar(y),{p:L,f:O}=this.wNAF(S),{p:M,f:k}=this.wNAF(R);L=g.constTimeNegate(C,L),M=g.constTimeNegate(B,M),M=new l(r.mul(M.px,m.beta),M.py,M.pz),x=L.add(M),v=O.add(k)}else{let{p:C,f:S}=this.wNAF(y);x=C,v=S}return l.normalizeZ([x,v])[0]}multiplyAndAddUnsafe(p,y,x){let v=l.BASE,m=(S,B)=>B===Qe||B===ae||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),C=m(this,y).add(m(p,x));return C.is0()?void 0:C}toAffine(p){let{px:y,py:x,pz:v}=this,m=this.is0();p==null&&(p=m?r.ONE:r.inv(v));let C=r.mul(y,p),S=r.mul(x,p),B=r.mul(v,p);if(m)return{x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return{x:C,y:S}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===ae)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=t;return p===ae?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Me(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=Bi(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Wg(e){let t=Bn(e);return ne(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Yu(e){let t=Wg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return Qe<A&&A<r.ORDER}function a(A){return st(A,n)}function c(A){return Ei(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=$g({...t,toBytes(A,N,T){let _=N.toAffine(),w=r.toBytes(_.x),U=qe;return T?U(Uint8Array.from([N.hasEvenY()?2:3]),w):U(Uint8Array.from([4]),w,r.toBytes(_.y))},fromBytes(A){let N=A.length,T=A[0],_=A.subarray(1);if(N===i&&(T===2||T===3)){let w=Ve(_);if(!s(w))throw new Error("Point is not on curve");let U=l(w),K=r.sqrt(U),F=(K&ae)===ae;return(T&1)===1!==F&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(_.subarray(0,r.BYTES)),U=r.fromBytes(_.subarray(r.BYTES,2*r.BYTES));return{x:w,y:U}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>Me(nr(A,t.nByteLength));function h(A){let N=n>>ae;return A>N}function p(A){return h(A)?a(-A):A}let y=(A,N,T)=>Ve(A.slice(N,T));class x{constructor(N,T,_){this.r=N,this.s=T,this.recovery=_,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=gt("compactSignature",N,T*2),new x(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:_}=Kr.toSig(gt("DER",N));return new x(T,_)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new x(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:_,recovery:w}=this,U=R(gt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let F=w&1?"03":"02",W=f.fromHex(F+g(K)),Y=c(K),rt=a(-U*Y),X=a(_*Y),J=f.BASE.multiplyAndAddUnsafe(W,rt,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new x(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return br(this.toDERHex())}toDERHex(){return Kr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return br(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(A){try{return u(A),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let A=es(t.n);return nc(t.randomBytes(A),t.n)},precompute(A=8,N=f.BASE){return N._setWindowSize(A),N.multiply(BigInt(3)),N}};function m(A,N=!0){return f.fromPrivateKey(A).toRawBytes(N)}function C(A){let N=he(A),T=typeof A=="string",_=(N||T)&&A.length;return N?_===i||_===o:T?_===2*i||_===2*o:A instanceof f}function S(A,N,T=!0){if(C(A))throw new Error("first arg must be private key");if(!C(N))throw new Error("second arg must be public key");return f.fromHex(N).multiply(u(A)).toRawBytes(T)}let B=t.bits2int||function(A){let N=Ve(A),T=A.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(A){return a(B(A))},L=Sn(t.nBitLength);function O(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(Qe<=A&&A<L))throw new Error(`bigint expected < 2^${t.nBitLength}`);return nr(A,t.nByteLength)}function M(A,N,T=k){if(["recovered","canonical"].some(lt=>lt in T))throw new Error("sign() legacy options not supported");let{hash:_,randomBytes:w}=t,{lowS:U,prehash:K,extraEntropy:F}=T;U==null&&(U=!0),A=gt("msgHash",A),K&&(A=gt("prehashed msgHash",_(A)));let W=R(A),Y=u(N),rt=[O(Y),O(W)];if(F!=null){let lt=F===!0?w(r.BYTES):F;rt.push(gt("extraEntropy",lt))}let X=qe(...rt),J=W;function dt(lt){let Mt=B(lt);if(!d(Mt))return;let Vt=c(Mt),Lt=f.BASE.multiply(Mt).toAffine(),Ht=a(Lt.x);if(Ht===Qe)return;let De=a(Vt*a(J+Ht*Y));if(De===Qe)return;let pr=(Lt.x===Ht?0:2)|Number(Lt.y&ae),gn=De;return U&&h(De)&&(gn=p(De),pr^=1),new x(Ht,gn,pr)}return{seed:X,k2sig:dt}}let k={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(A,N,T=k){let{seed:_,k2sig:w}=M(A,N,T),U=t;return Xo(U.hash.outputLen,U.nByteLength,U.hmac)(_,w)}f.BASE._setWindowSize(8);function Z(A,N,T,_=H){let w=A;if(N=gt("msgHash",N),T=gt("publicKey",T),"strict"in _)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:K}=_,F,W;try{if(typeof w=="string"||he(w))try{F=x.fromDER(w)}catch(Lt){if(!(Lt instanceof Kr.Err))throw Lt;F=x.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Lt,s:Ht}=w;F=new x(Lt,Ht)}else throw new Error("PARSE");W=f.fromHex(T)}catch(Lt){if(Lt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&F.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:rt}=F,X=R(N),J=c(rt),dt=a(X*J),lt=a(Y*J),Mt=f.BASE.multiplyAndAddUnsafe(W,dt,lt)?.toAffine();return Mt?a(Mt.x)===Y:!1}return{CURVE:t,getPublicKey:m,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:x,utils:v}}function Yg(e){return{hash:e,hmac:(t,...r)=>Yr(e,t,xi(...r)),randomBytes:mr}}function Zu(e,t){let r=n=>Yu({...e,...Yg(n)});return Object.freeze({...r(t),create:r})}var Ju=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Xu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Zg=BigInt(1),Sa=BigInt(2),Qu=(e,t)=>(e+t/Sa)/t;function Xg(e){let t=Ju,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=xt(u,r,t)*u%t,d=xt(l,r,t)*u%t,g=xt(d,Sa,t)*f%t,h=xt(g,i,t)*g%t,p=xt(h,o,t)*h%t,y=xt(p,a,t)*p%t,x=xt(y,c,t)*y%t,v=xt(x,a,t)*p%t,m=xt(v,r,t)*u%t,C=xt(m,s,t)*h%t,S=xt(C,n,t)*f%t,B=xt(S,Sa,t);if(!Ba.eql(Ba.sqr(B),e))throw new Error("Cannot find square root");return B}var Ba=Si(Ju,void 0,void 0,{sqrt:Xg}),we=Zu({a:BigInt(0),b:BigInt(7),Fp:Ba,n:Xu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Xu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Zg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Qu(o*e,t),c=Qu(-n*e,t),f=st(e-a*r-c*i,t),u=st(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Zr),O4=BigInt(0);var M4=we.ProjectivePoint;function ju(){return we.utils.randomPrivateKey()}function tl(e,t){let r=qt.digest(t instanceof Uint8Array?t:t.subarray());if(se(r))return r.then(({digest:n})=>we.sign(n,e).toDERRawBytes()).catch(n=>{throw new et(String(n),"ERR_INVALID_INPUT")});try{return we.sign(r.digest,e).toDERRawBytes()}catch(n){throw new et(String(n),"ERR_INVALID_INPUT")}}function el(e,t,r){let n=qt.digest(r instanceof Uint8Array?r:r.subarray());if(se(n))return n.then(({digest:i})=>we.verify(t,i,e)).catch(i=>{throw new et(String(i),"ERR_INVALID_INPUT")});try{return we.verify(t,n.digest,e)}catch(i){throw new et(String(i),"ERR_INVALID_INPUT")}}function rl(e){return we.ProjectivePoint.fromHex(e).toRawBytes(!0)}function nl(e){try{we.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}function Aa(e){try{we.ProjectivePoint.fromHex(e)}catch(t){throw new et(String(t),"ERR_INVALID_PUBLIC_KEY")}}function il(e){try{return we.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Yn=class{_key;constructor(t){Aa(t),this._key=t}verify(t,r){return el(this._key,r,t)}marshal(){return rl(this._key)}get bytes(){return Le.encode({Type:Et.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}async hash(){let t=qt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}},Zn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??il(t),nl(this._key),Aa(this._publicKey)}sign(t){return tl(this._key,t)}get public(){return new Yn(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:Et.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}hash(){let t=qt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return St(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Jg(e){return new Zn(e)}function jg(e){return new Yn(e)}async function tx(){let e=ju();return new Zn(e)}var Or={rsa:Ea,ed25519:xa,secp256k1:Ia};function ol(e){let t=Object.keys(Or).join(" / ");return new et(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function sl(e){let t=Le.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Et.RSA:return Or.rsa.unmarshalRsaPublicKey(r);case Et.Ed25519:return Or.ed25519.unmarshalEd25519PublicKey(r);case Et.Secp256k1:return Or.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw ol(t.Type??"unknown")}}async function al(e){let t=Re.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Et.RSA:return Or.rsa.unmarshalRsaPrivateKey(r);case Et.Ed25519:return Or.ed25519.unmarshalEd25519PrivateKey(r);case Et.Secp256k1:return Or.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw ol(t.Type??"RSA")}}var rx=Symbol.for("nodejs.util.inspect.custom"),cl=Object.values($t).map(e=>e.decoder).reduce((e,t)=>e.or(t),$t.identity.decoder),fl=114,Ca=36,Ta=37,Xn=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()})`}[qf]=!0;toString(){return this.string==null&&(this.string=It.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return me.createV1(fl,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Ot(this.multihash.bytes,t);if(typeof t=="string")return _a(t).equals(this);if(t?.multihash?.bytes!=null)return Ot(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[rx](){return`PeerId(${this.toString()})`}},un=class extends Xn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},ln=class extends Xn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},hn=class extends Xn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function _a(e,t){if(t=t??cl,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=lr(It.decode(`z${e}`));return e.startsWith("12D")?new ln({multihash:r}):e.startsWith("16U")?new hn({multihash:r}):new un({multihash:r})}return nx(cl.decode(e))}function nx(e){try{let t=lr(e);if(t.code===hr.code){if(t.digest.length===Ca)return new ln({multihash:t});if(t.digest.length===Ta)return new hn({multihash:t})}if(t.code===qt.code)return new un({multihash:t})}catch{return ix(me.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function ix(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==fl)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===qt.code)return new un({multihash:e.multihash});if(t.code===hr.code){if(t.digest.length===Ca)return new ln({multihash:e.multihash});if(t.digest.length===Ta)return new hn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function La(e,t){return e.length===Ca?new ln({multihash:xe(hr.code,e),privateKey:t}):e.length===Ta?new hn({multihash:xe(hr.code,e),privateKey:t}):new un({multihash:await qt.digest(e),publicKey:e,privateKey:t})}var ro;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((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=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(ro||(ro={}));var Qn;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.identityKey!=null&&r.identityKey.byteLength>0&&(n.uint32(10),n.bytes(r.identityKey)),r.identitySig!=null&&r.identitySig.byteLength>0&&(n.uint32(18),n.bytes(r.identitySig)),r.extensions!=null&&(n.uint32(34),ro.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:ct(0),identitySig:ct(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.identityKey=r.bytes();break}case 2:{i.identitySig=r.bytes();break}case 4:{i.extensions=ro.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(Qn||(Qn={}));async function ul(e,t,r){let n=await sx(e,ll(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return ox(e.publicKey,n,r)}function ox(e,t,r){return Qn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function sx(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await al(e.privateKey)).sign(t)}async function Ra(e){return La(e.identityKey)}function Na(e){return Qn.decode(e)}function ll(e){let t=Kt("noise-libp2p-static-key:");return e instanceof Uint8Array?_e([t,e],t.length+e.length):(e.prepend(t),e)}async function Pa(e,t,r){let n=await La(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=ll(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 sl(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Jn(e){return!(!(e instanceof Uint8Array)&&!Mr(e)||e.byteLength!==32)}var ax=0,cx=4294967295,fx="Cipherstate has reached maximum n, a new handshake must be performed",no=class{n;bytes;view;constructor(t=ax){this.n=t,this.bytes=ct(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>cx)throw new Error(fx)}};var io=class{crypto;log;constructor(t,r){this.log=t.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return ct(32)}isEmptyKey(t){let r=this.createEmptyKey();return Ot(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:ct(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),ct(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new Bt(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new no}}initializeSymmetric(t){let r=Kt(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=ct(32);return r.set(t),r}else return this.getHash(t,ct(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,ct(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,ct(0),r),i=this.createEmptyKey(),o=ct(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,ct(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=ct(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=ct(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=ct(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 Jn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Jn(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&&Jn(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&&Jn(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=ct(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=ct(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};function hl(e,t){!t.enabled||!qr||(t(`LOCAL_STATIC_PUBLIC_KEY ${St(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${St(e.privateKey,"hex")}`))}function Da(e,t){!t.enabled||!qr||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${St(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${St(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function dl(e,t){!t.enabled||!qr||t(`REMOTE_STATIC_PUBLIC_KEY ${St(e.subarray(),"hex")}`)}function Ua(e,t){!t.enabled||!qr||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${St(e.subarray(),"hex")}`)}function pl(e,t){!t.enabled||!qr||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${St(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${St(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var so=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;log;constructor(t,r,n,i,o,s,a,c,f){this.log=t.logger.forComponent("libp2p:noise:xxhandshake"),this.isInitiator=r,this.payload=n,this.prologue=i,this.staticKeypair=s,this.connection=a,c&&(this.remotePeer=c),this.xx=f??new oo(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(hl(this.session.hs.s,this.log),this.isInitiator){this.log.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,ct(0));await this.connection.write(yc(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),Da(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=mc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new wr("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),Ua(this.session.hs.re,this.log)}}async exchange(){if(this.isInitiator){this.log.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=bc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new wr("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),Ua(this.session.hs.re,this.log),dl(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=Na(r);this.remotePeer=this.remotePeer||await Ra(i),await Pa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ln(`Error occurred while verifying signed payload: ${o.message}`)}this.log.trace("All good with the signature!")}else{this.log.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(gc(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Da(this.session.hs.e,this.log)}}async finish(){if(this.isInitiator){this.log.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(xc(t)),this.log.trace("Stage 2 - Initiator sent message with signed payload.")}else{this.log.trace("Stage 2 - Responder waiting for third handshake message...");let t=vc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new wr("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Na(r);this.remotePeer=this.remotePeer||await Ra(i),await Pa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ln(`Error occurred while verifying signed payload: ${o.message}`)}}pl(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,ct(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,ct(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new wr("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 yl(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;components;constructor(t,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=t;this.components=t,this.crypto=o??pc,this.extensions=i,this.metrics=a?yl(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??ct(0)}async secureOutbound(t,r,n){let i=Ro(r,{lengthEncoder:Xr,lengthDecoder:Tn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=Ro(r,{lengthEncoder:Xr,lengthDecoder:Tn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await ul(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(this.components,n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=T0(),o=t.unwrap();return await L0(n,Sc(r,this.metrics),o,s=>wn(s,{lengthDecoder:Tn}),Bc(r,this.metrics),n),i}};function gl(e={}){return t=>new ao(t,e)}function xl(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}function dn(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function co(e=0){return globalThis.Buffer?.allocUnsafe!=null?dn(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function bl(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var ml=bl("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ka=bl("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=co(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),ux={utf8:ml,"utf-8":ml,hex:$t.base16,latin1:ka,ascii:ka,binary:ka,...$t},fo=ux;function te(e,t="utf8"){let r=fo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function Je(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=co(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return dn(r)}var uo=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(o*=t,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=t(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var vl=45,lx=15,pn=new uo;function Ka(e){if(!(e.length>lx))return pn.new(e).parseWith(()=>pn.readIPv4Addr())}function Oa(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>vl))return pn.new(e).parseWith(()=>pn.readIPv6Addr())}function lo(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>vl))return pn.new(e).parseWith(()=>pn.readIPAddr())}var $S=parseInt("0xFFFF",16),WS=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Ma(e,t="utf8"){let r=fo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?dn(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function ho(e){return!!Ka(e)}function po(e){return!!Oa(e)}function yo(e){return!!lo(e)}var Sl=ho,gx=po,Va=function(e){let t=0;if(e=e.toString().trim(),Sl(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(gx(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Sl(r[n]),s;o&&(s=Va(r[n]),r[n]=te(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,te(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")},Bl=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var yn={},Fa={},mx=[[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"]];mx.forEach(e=>{let t=bx(...e);Fa[t.code]=t,yn[t.name]=t});function bx(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function ut(e){if(typeof e=="number"){if(Fa[e]!=null)return Fa[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(yn[e]!=null)return yn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var P3=ut("ip4"),D3=ut("ip6"),U3=ut("ipcidr");function Ha(e,t){switch(ut(e).code){case 4:case 41:return wx(t);case 42:return Cl(t);case 6:case 273:case 33:case 132:return _l(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Cl(t);case 421:return Ax(t);case 444:return Tl(t);case 445:return Tl(t);case 466:return Bx(t);default:return te(t,"base16")}}function za(e,t){switch(ut(e).code){case 4:return Al(t);case 41:return Al(t);case 42:return Il(t);case 6:case 273:case 33:case 132:return Ga(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Il(t);case 421:return Ex(t);case 444:return Ix(t);case 445:return Cx(t);case 466:return Sx(t);default:return Ma(t,"base16")}}var qa=Object.values($t).map(e=>e.decoder),vx=function(){let e=qa[0].or(qa[1]);return qa.slice(2).forEach(t=>e=e.or(t)),e}();function Al(e){if(!yo(e))throw new Error("invalid ip address");return Va(e)}function wx(e){let t=Bl(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!yo(t))throw new Error("invalid ip address");return t}function Ga(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function _l(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function Il(e){let t=Ma(e),r=Uint8Array.from(je(t.length));return Je([r,t],r.length+t.length)}function Cl(e){let t=fe(e);if(e=e.slice(Gt(t)),e.length!==t)throw new Error("inconsistent lengths");return te(e)}function Ex(e){let t;e[0]==="Q"||e[0]==="1"?t=lr(It.decode(`z${e}`)).bytes:t=me.parse(e).multihash.bytes;let r=Uint8Array.from(je(t.length));return Je([r,t],r.length+t.length)}function Sx(e){let t=vx.decode(e),r=Uint8Array.from(je(t.length));return Je([r,t],r.length+t.length)}function Bx(e){let t=fe(e),r=e.slice(Gt(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+te(r,"base64url")}function Ax(e){let t=fe(e),r=e.slice(Gt(t));if(r.length!==t)throw new Error("inconsistent lengths");return te(r,"base58btc")}function Ix(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=Ye.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ga(n);return Je([r,i],r.length+i.length)}function Cx(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=Ye.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ga(n);return Je([r,i],r.length+i.length)}function Tl(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=te(t,"base32"),i=_l(r);return`${n}:${i}`}function Ll(e){e=$a(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ut(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Nl("invalid address: "+e);if(a.path===!0){n=$a(i.slice(o).join("/")),t.push([a.code,za(a.code,n)]),r.push([a.code,n]);break}let c=za(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ha(a.code,c)])}return{string:Rl(r),bytes:Ya(t),tuples:t,stringTuples:r,path:n}}function Wa(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=fe(e,i),s=Gt(o),a=ut(o),c=Tx(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let f=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw Nl("Invalid address Uint8Array: "+te(e,"base16"));t.push([o,f]);let u=Ha(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:Rl(r),tuples:t,stringTuples:r,path:n}}function Rl(e){let t=[];return e.map(r=>{let n=ut(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),$a(t.join("/"))}function Ya(e){return Je(e.map(t=>{let r=ut(t[0]),n=Uint8Array.from(je(r.code));return t.length>1&&t[1]!=null&&(n=Je([n,t[1]])),n}))}function Tx(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=fe(t instanceof Uint8Array?t:Uint8Array.from(t));return r+Gt(r)}}function $a(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function Nl(e){return new Error("Error parsing address: "+e)}var _x=Symbol.for("nodejs.util.inspect.custom"),Xa=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Lx=[ut("dns").code,ut("dns4").code,ut("dns6").code,ut("dnsaddr").code],Za=class e{bytes;#e;#t;#r;#n;[Xa]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Wa(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=Ll(t)}else if(Dl(t))r=Wa(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,r,n,i,o="",s=ut("tcp"),a=ut("udp"),c=ut("ip4"),f=ut("ip6"),u=ut("dns6"),l=ut("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),Lx.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=ut(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=ut(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},ut(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>ut(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Ya(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===yn.p2p.code&&t.push([n,i]),n===yn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?te(It.decode(`z${n}`),"base58btc"):te(me.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return xl(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=Pl.get(r.name);if(n==null)throw new et(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[_x](){return`Multiaddr(${this.#e})`}};var Pl=new Map;function Dl(e){return!!e?.[Xa]}var Rx=e=>e.toString().split("/").slice(1),jn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Ct=e=>({match:t=>jn(r=>r===e).match(t),pattern:e}),mo=()=>({match:e=>jn(t=>typeof t=="string").match(e),pattern:"{string}"}),Ul=()=>({match:e=>jn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ce=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{It.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),go=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Hs.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Ne=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),Pe=(...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(", ")})`}),Tt=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Pt(...e){function t(i){let o=Rx(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 Ja=Tt(Ct("dns4"),mo()),ja=Tt(Ct("dns6"),mo()),t0=Tt(Ct("dnsaddr"),mo()),kl=Tt(Ct("dns"),mo()),lB=Pt(Ja),hB=Pt(ja),dB=Pt(t0),pB=Pt(Pe(kl,t0,Ja,ja)),Kl=Tt(Ct("ip4"),jn(ho)),Ol=Tt(Ct("ip6"),jn(po)),Ml=Pe(Kl,Ol),ti=Pe(Ml,kl,Ja,ja,t0),yB=Pt(ti),gB=Pt(Kl),xB=Pt(Ol),mB=Pt(Ml),bo=Tt(ti,Ct("tcp"),Ul()),ei=Tt(ti,Ct("udp"),Ul()),Nx=Pe(bo,ei),bB=Pt(bo),vB=Pt(ei),e0=Tt(ei,Ct("quic")),vo=Tt(ei,Ct("quic-v1")),Px=Pe(e0,vo),wB=Pt(e0),EB=Pt(vo),Qa=Pe(ti,bo,ei,e0,vo),Vl=Pe(Tt(Qa,Ct("ws"),Ne(ce()))),SB=Pt(Vl),Fl=Pe(Tt(Qa,Ct("wss"),Ne(ce())),Tt(Qa,Ct("tls"),Ct("ws"),Ne(ce()))),BB=Pt(Fl),ql=Tt(Nx,Ct("webrtc-direct"),go(),Ne(go()),Ne(ce())),AB=Pt(ql),Hl=Tt(vo,Ct("webtransport"),go(),go(),Ne(ce())),wo=Pt(Hl),xo=Pe(Vl,Fl,Tt(bo,Ne(ce())),Tt(Px,Ne(ce())),Tt(ti,Ne(ce())),ql,Hl,ce()),IB=Pt(xo),Dx=Tt(xo,Ct("p2p-circuit"),ce()),CB=Pt(Dx),Ux=Pe(Tt(xo,Ct("p2p-circuit"),Ct("webrtc"),ce()),Tt(xo,Ct("webrtc"),Ne(ce())),Ct("webrtc")),TB=Pt(Ux);async function r0(e,t,r,n,i,o){let s=o.forComponent(`libp2p:webtransport:stream:${r}:${t}`),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Bt(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}},log:s};return g}function n0(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function zl(e,t){return t.filter(n=>!!e.find(i=>Ot(n,i))).length===t.length}var kx=Object.values($t).map(e=>e.decoder).reduce((e,t)=>e.or(t));function Kx(e){return Te.decode(kx.decode(e))}function Gl(e){if(!wo.matches(e))throw new et("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===ut("certhash").code).map(([s,a])=>Kx(a??"")),n=t.filter(([s,a])=>s===ut("p2p").code).map(([s,a])=>_a(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 i0=class{log;components;config;metrics;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webtransport"),this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[Gf]=!0;async dial(t,r){r?.signal?.throwIfAborted(),this.log("dialing %s",t);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=Gl(t);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},log:this.components.logger.forComponent("libp2p:webtransport:maconn"),...n0()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let d of l)d instanceof Uint8Array?await s.write(d):await s.write(d.subarray())}},f=gl()(this.components),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{this.log.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{this.log.error(`Failed to close authentication stream reader: ${l.message}`)}),!zl(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await r0(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await r0(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...n0()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(wo.exactMatch)}};function Ox(e={}){return t=>new i0(t,e)}return oh(Mx);})();
|
|
16
16
|
//! TODO unclear how to add backpressure here?
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|