@libp2p/webtransport 4.0.15-8bbd43628 → 4.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.min.js CHANGED
@@ -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 Tl=Object.create;var Zn=Object.defineProperty;var _l=Object.getOwnPropertyDescriptor;var Ll=Object.getOwnPropertyNames;var Rl=Object.getPrototypeOf,Nl=Object.prototype.hasOwnProperty;var yt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Dt=(e,t)=>{for(var r in t)Zn(e,r,{get:t[r],enumerable:!0})},ja=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Ll(t))!Nl.call(e,i)&&i!==r&&Zn(e,i,{get:()=>t[i],enumerable:!(n=_l(t,i))||n.enumerable});return e};var Qt=(e,t,r)=>(r=e!=null?Tl(Rl(e)):{},ja(t||!e||!e.__esModule?Zn(r,"default",{value:e,enumerable:!0}):r,e)),Pl=e=>ja(Zn({},"__esModule",{value:!0}),e);var i0=yt((Lx,n0)=>{"use strict";function r0(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function Fl(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 r0(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),r0(new i,r)}}n0.exports=Fl});var dt=yt((k2,sc)=>{sc.exports={options:{usePureJavaScript:!1}}});var fc=yt((U2,cc)=>{var Jo={};cc.exports=Jo;var ac={};Jo.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=gd(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};Jo.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=ac[t];if(!r){r=ac[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 gd(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r<e.length();++r){for(var s=0,a=e.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;e.at(r)===0&&r<e.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=t[o[r]];return c}});var Nt=yt((K2,dc)=>{var uc=dt(),lc=fc(),b=dc.exports=uc.util=uc.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 Bn(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=jo;function jo(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(b.isArrayBuffer(e)||b.isArrayBufferView(e))if(typeof Buffer<"u"&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch{for(var r=0;r<t.length;++r)this.putByte(t[r])}}else(e instanceof jo||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=jo;var xd=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>xd&&(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){Bn(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){Bn(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 md(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=md;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){Bn(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 Bn(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){Bn(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],hc="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";b.encode64=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.length;)i=e.charCodeAt(a++),o=e.charCodeAt(a++),s=e.charCodeAt(a++),r+=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=or[e.charCodeAt(s++)-43],n=or[e.charCodeAt(s++)-43],i=or[e.charCodeAt(s++)-43],o=or[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+=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
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,hc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,hc,t)};b.text={utf8:{},utf16:{}};b.text.utf8.encode=function(e,t,r){e=b.encodeUtf8(e);var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.text.utf8.decode=function(e){return b.decodeUtf8(String.fromCharCode.apply(null,e))};b.text.utf16.encode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<e.length;++a)i[s++]=e.charCodeAt(a),o+=2;return t?o-r:n};b.text.utf16.decode=function(e){return String.fromCharCode.apply(null,new Uint16Array(e.buffer))};b.deflate=function(e,t,r){if(t=b.decode64(e.deflate(b.encode64(t)).rval),r){var n=2,i=t.charCodeAt(1);i&32&&(n=6),t=t.substring(n,t.length-4)}return t};b.inflate=function(e,t,r){var n=e.inflate(b.encode64(t)).rval;return n===null?null:b.decode64(n)};var ts=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}},es=function(e,t){if(!e)throw new Error("WebStorage not available.");var r=e.getItem(t);if(e.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(b.decode64(r))),r},bd=function(e,t,r,n){var i=es(e,t);i===null&&(i={}),i[r]=n,ts(e,t,i)},vd=function(e,t,r){var n=es(e,t);return n!==null&&(n=r in n?n[r]:null),n},wd=function(e,t,r){var n=es(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),ts(e,t,n)}},Ed=function(e,t){ts(e,t,null)},wi=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){wi(bd,arguments,i)};b.getItem=function(e,t,r,n){return wi(vd,arguments,n)};b.removeItem=function(e,t,r,n){wi(wd,arguments,n)};b.clearItems=function(e,t,r){wi(Ed,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 Ei=yt((O2,pc)=>{var An=dt();An.pki=An.pki||{};var rs=pc.exports=An.pki.oids=An.oids=An.oids||{};function D(e,t){rs[e]=t,rs[t]=e}function ut(e,t){rs[e]=t}D("1.2.840.113549.1.1.1","rsaEncryption");D("1.2.840.113549.1.1.4","md5WithRSAEncryption");D("1.2.840.113549.1.1.5","sha1WithRSAEncryption");D("1.2.840.113549.1.1.7","RSAES-OAEP");D("1.2.840.113549.1.1.8","mgf1");D("1.2.840.113549.1.1.9","pSpecified");D("1.2.840.113549.1.1.10","RSASSA-PSS");D("1.2.840.113549.1.1.11","sha256WithRSAEncryption");D("1.2.840.113549.1.1.12","sha384WithRSAEncryption");D("1.2.840.113549.1.1.13","sha512WithRSAEncryption");D("1.3.101.112","EdDSA25519");D("1.2.840.10040.4.3","dsa-with-sha1");D("1.3.14.3.2.7","desCBC");D("1.3.14.3.2.26","sha1");D("1.3.14.3.2.29","sha1WithRSASignature");D("2.16.840.1.101.3.4.2.1","sha256");D("2.16.840.1.101.3.4.2.2","sha384");D("2.16.840.1.101.3.4.2.3","sha512");D("2.16.840.1.101.3.4.2.4","sha224");D("2.16.840.1.101.3.4.2.5","sha512-224");D("2.16.840.1.101.3.4.2.6","sha512-256");D("1.2.840.113549.2.2","md2");D("1.2.840.113549.2.5","md5");D("1.2.840.113549.1.7.1","data");D("1.2.840.113549.1.7.2","signedData");D("1.2.840.113549.1.7.3","envelopedData");D("1.2.840.113549.1.7.4","signedAndEnvelopedData");D("1.2.840.113549.1.7.5","digestedData");D("1.2.840.113549.1.7.6","encryptedData");D("1.2.840.113549.1.9.1","emailAddress");D("1.2.840.113549.1.9.2","unstructuredName");D("1.2.840.113549.1.9.3","contentType");D("1.2.840.113549.1.9.4","messageDigest");D("1.2.840.113549.1.9.5","signingTime");D("1.2.840.113549.1.9.6","counterSignature");D("1.2.840.113549.1.9.7","challengePassword");D("1.2.840.113549.1.9.8","unstructuredAddress");D("1.2.840.113549.1.9.14","extensionRequest");D("1.2.840.113549.1.9.20","friendlyName");D("1.2.840.113549.1.9.21","localKeyId");D("1.2.840.113549.1.9.22.1","x509Certificate");D("1.2.840.113549.1.12.10.1.1","keyBag");D("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");D("1.2.840.113549.1.12.10.1.3","certBag");D("1.2.840.113549.1.12.10.1.4","crlBag");D("1.2.840.113549.1.12.10.1.5","secretBag");D("1.2.840.113549.1.12.10.1.6","safeContentsBag");D("1.2.840.113549.1.5.13","pkcs5PBES2");D("1.2.840.113549.1.5.12","pkcs5PBKDF2");D("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");D("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");D("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");D("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");D("1.2.840.113549.2.7","hmacWithSHA1");D("1.2.840.113549.2.8","hmacWithSHA224");D("1.2.840.113549.2.9","hmacWithSHA256");D("1.2.840.113549.2.10","hmacWithSHA384");D("1.2.840.113549.2.11","hmacWithSHA512");D("1.2.840.113549.3.7","des-EDE3-CBC");D("2.16.840.1.101.3.4.1.2","aes128-CBC");D("2.16.840.1.101.3.4.1.22","aes192-CBC");D("2.16.840.1.101.3.4.1.42","aes256-CBC");D("2.5.4.3","commonName");D("2.5.4.4","surname");D("2.5.4.5","serialNumber");D("2.5.4.6","countryName");D("2.5.4.7","localityName");D("2.5.4.8","stateOrProvinceName");D("2.5.4.9","streetAddress");D("2.5.4.10","organizationName");D("2.5.4.11","organizationalUnitName");D("2.5.4.12","title");D("2.5.4.13","description");D("2.5.4.15","businessCategory");D("2.5.4.17","postalCode");D("2.5.4.42","givenName");D("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");D("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");D("2.16.840.1.113730.1.1","nsCertType");D("2.16.840.1.113730.1.13","nsComment");ut("2.5.29.1","authorityKeyIdentifier");ut("2.5.29.2","keyAttributes");ut("2.5.29.3","certificatePolicies");ut("2.5.29.4","keyUsageRestriction");ut("2.5.29.5","policyMapping");ut("2.5.29.6","subtreesConstraint");ut("2.5.29.7","subjectAltName");ut("2.5.29.8","issuerAltName");ut("2.5.29.9","subjectDirectoryAttributes");ut("2.5.29.10","basicConstraints");ut("2.5.29.11","nameConstraints");ut("2.5.29.12","policyConstraints");ut("2.5.29.13","basicConstraints");D("2.5.29.14","subjectKeyIdentifier");D("2.5.29.15","keyUsage");ut("2.5.29.16","privateKeyUsagePeriod");D("2.5.29.17","subjectAltName");D("2.5.29.18","issuerAltName");D("2.5.29.19","basicConstraints");ut("2.5.29.20","cRLNumber");ut("2.5.29.21","cRLReason");ut("2.5.29.22","expirationDate");ut("2.5.29.23","instructionCode");ut("2.5.29.24","invalidityDate");ut("2.5.29.25","cRLDistributionPoints");ut("2.5.29.26","issuingDistributionPoint");ut("2.5.29.27","deltaCRLIndicator");ut("2.5.29.28","issuingDistributionPoint");ut("2.5.29.29","certificateIssuer");ut("2.5.29.30","nameConstraints");D("2.5.29.31","cRLDistributionPoints");D("2.5.29.32","certificatePolicies");ut("2.5.29.33","policyMappings");ut("2.5.29.34","policyConstraints");D("2.5.29.35","authorityKeyIdentifier");ut("2.5.29.36","policyConstraints");D("2.5.29.37","extKeyUsage");ut("2.5.29.46","freshestCRL");ut("2.5.29.54","inhibitAnyPolicy");D("1.3.6.1.4.1.11129.2.4.2","timestampList");D("1.3.6.1.5.5.7.1.1","authorityInfoAccess");D("1.3.6.1.5.5.7.3.1","serverAuth");D("1.3.6.1.5.5.7.3.2","clientAuth");D("1.3.6.1.5.5.7.3.3","codeSigning");D("1.3.6.1.5.5.7.3.4","emailProtection");D("1.3.6.1.5.5.7.3.8","timeStamping")});var Cn=yt((M2,gc)=>{var bt=dt();Nt();Ei();var V=gc.exports=bt.asn1=bt.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(e,t,r,n,i){if(bt.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:e,type:t,constructed:r,composed:r||bt.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(e,t){var r;if(bt.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(bt.util.isArray(e)){if(!bt.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function In(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 Sd=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;In(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=bt.util.createBuffer(e));var r=e.length(),n=Si(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 Si(e,t,r,n){var i;In(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Sd(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(In(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),u.push(Si(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Si(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&&(In(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},x=Si(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)In(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=bt.util.createBuffer(),r=e.tagClass|e.type,n=bt.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=bt.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=bt.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),f+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),f&&(c=e.charAt(f),c==="+"||c==="-")){var u=parseInt(e.substr(f+1,2),10),l=parseInt(e.substr(f+4,2),10),d=u*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,f=0,u=!1;e.charAt(e.length-1)==="Z"&&(u=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var g=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);f=g*60+h,f*=6e4,d==="+"&&(f*=-1),u=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),u?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+f)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=bt.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=bt.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&bt.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var yc=/[^\\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 Il=Object.create;var Zn=Object.defineProperty;var Cl=Object.getOwnPropertyDescriptor;var Tl=Object.getOwnPropertyNames;var _l=Object.getPrototypeOf,Ll=Object.prototype.hasOwnProperty;var yt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Dt=(e,t)=>{for(var r in t)Zn(e,r,{get:t[r],enumerable:!0})},Ja=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Tl(t))!Ll.call(e,i)&&i!==r&&Zn(e,i,{get:()=>t[i],enumerable:!(n=Cl(t,i))||n.enumerable});return e};var Qt=(e,t,r)=>(r=e!=null?Il(_l(e)):{},Ja(t||!e||!e.__esModule?Zn(r,"default",{value:e,enumerable:!0}):r,e)),Rl=e=>Ja(Zn({},"__esModule",{value:!0}),e);var n0=yt((Tx,r0)=>{"use strict";function e0(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function Ml(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=""),t&&(r.code=t);try{return e0(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),e0(new i,r)}}r0.exports=Ml});var dt=yt((P2,oc)=>{oc.exports={options:{usePureJavaScript:!1}}});var cc=yt((D2,ac)=>{var Jo={};ac.exports=Jo;var sc={};Jo.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=pd(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};Jo.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=sc[t];if(!r){r=sc[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 pd(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r<e.length();++r){for(var s=0,a=e.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;e.at(r)===0&&r<e.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=t[o[r]];return c}});var Nt=yt((k2,hc)=>{var fc=dt(),uc=cc(),b=hc.exports=fc.util=fc.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 Bn(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=jo;function jo(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(b.isArrayBuffer(e)||b.isArrayBufferView(e))if(typeof Buffer<"u"&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch{for(var r=0;r<t.length;++r)this.putByte(t[r])}}else(e instanceof jo||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=jo;var yd=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>yd&&(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){Bn(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){Bn(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 gd(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=gd;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){Bn(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 Bn(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){Bn(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],lc="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=or[e.charCodeAt(s++)-43],n=or[e.charCodeAt(s++)-43],i=or[e.charCodeAt(s++)-43],o=or[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:uc.encode,decode:uc.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+=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
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,lc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,lc,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 ts=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}},es=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},xd=function(e,t,r,n){var i=es(e,t);i===null&&(i={}),i[r]=n,ts(e,t,i)},md=function(e,t,r){var n=es(e,t);return n!==null&&(n=r in n?n[r]:null),n},bd=function(e,t,r){var n=es(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),ts(e,t,n)}},vd=function(e,t){ts(e,t,null)},wi=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){wi(xd,arguments,i)};b.getItem=function(e,t,r,n){return wi(md,arguments,n)};b.removeItem=function(e,t,r,n){wi(bd,arguments,n)};b.clearItems=function(e,t,r){wi(vd,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 Ei=yt((U2,dc)=>{var An=dt();An.pki=An.pki||{};var rs=dc.exports=An.pki.oids=An.oids=An.oids||{};function D(e,t){rs[e]=t,rs[t]=e}function ut(e,t){rs[e]=t}D("1.2.840.113549.1.1.1","rsaEncryption");D("1.2.840.113549.1.1.4","md5WithRSAEncryption");D("1.2.840.113549.1.1.5","sha1WithRSAEncryption");D("1.2.840.113549.1.1.7","RSAES-OAEP");D("1.2.840.113549.1.1.8","mgf1");D("1.2.840.113549.1.1.9","pSpecified");D("1.2.840.113549.1.1.10","RSASSA-PSS");D("1.2.840.113549.1.1.11","sha256WithRSAEncryption");D("1.2.840.113549.1.1.12","sha384WithRSAEncryption");D("1.2.840.113549.1.1.13","sha512WithRSAEncryption");D("1.3.101.112","EdDSA25519");D("1.2.840.10040.4.3","dsa-with-sha1");D("1.3.14.3.2.7","desCBC");D("1.3.14.3.2.26","sha1");D("1.3.14.3.2.29","sha1WithRSASignature");D("2.16.840.1.101.3.4.2.1","sha256");D("2.16.840.1.101.3.4.2.2","sha384");D("2.16.840.1.101.3.4.2.3","sha512");D("2.16.840.1.101.3.4.2.4","sha224");D("2.16.840.1.101.3.4.2.5","sha512-224");D("2.16.840.1.101.3.4.2.6","sha512-256");D("1.2.840.113549.2.2","md2");D("1.2.840.113549.2.5","md5");D("1.2.840.113549.1.7.1","data");D("1.2.840.113549.1.7.2","signedData");D("1.2.840.113549.1.7.3","envelopedData");D("1.2.840.113549.1.7.4","signedAndEnvelopedData");D("1.2.840.113549.1.7.5","digestedData");D("1.2.840.113549.1.7.6","encryptedData");D("1.2.840.113549.1.9.1","emailAddress");D("1.2.840.113549.1.9.2","unstructuredName");D("1.2.840.113549.1.9.3","contentType");D("1.2.840.113549.1.9.4","messageDigest");D("1.2.840.113549.1.9.5","signingTime");D("1.2.840.113549.1.9.6","counterSignature");D("1.2.840.113549.1.9.7","challengePassword");D("1.2.840.113549.1.9.8","unstructuredAddress");D("1.2.840.113549.1.9.14","extensionRequest");D("1.2.840.113549.1.9.20","friendlyName");D("1.2.840.113549.1.9.21","localKeyId");D("1.2.840.113549.1.9.22.1","x509Certificate");D("1.2.840.113549.1.12.10.1.1","keyBag");D("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");D("1.2.840.113549.1.12.10.1.3","certBag");D("1.2.840.113549.1.12.10.1.4","crlBag");D("1.2.840.113549.1.12.10.1.5","secretBag");D("1.2.840.113549.1.12.10.1.6","safeContentsBag");D("1.2.840.113549.1.5.13","pkcs5PBES2");D("1.2.840.113549.1.5.12","pkcs5PBKDF2");D("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");D("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");D("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");D("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");D("1.2.840.113549.2.7","hmacWithSHA1");D("1.2.840.113549.2.8","hmacWithSHA224");D("1.2.840.113549.2.9","hmacWithSHA256");D("1.2.840.113549.2.10","hmacWithSHA384");D("1.2.840.113549.2.11","hmacWithSHA512");D("1.2.840.113549.3.7","des-EDE3-CBC");D("2.16.840.1.101.3.4.1.2","aes128-CBC");D("2.16.840.1.101.3.4.1.22","aes192-CBC");D("2.16.840.1.101.3.4.1.42","aes256-CBC");D("2.5.4.3","commonName");D("2.5.4.4","surname");D("2.5.4.5","serialNumber");D("2.5.4.6","countryName");D("2.5.4.7","localityName");D("2.5.4.8","stateOrProvinceName");D("2.5.4.9","streetAddress");D("2.5.4.10","organizationName");D("2.5.4.11","organizationalUnitName");D("2.5.4.12","title");D("2.5.4.13","description");D("2.5.4.15","businessCategory");D("2.5.4.17","postalCode");D("2.5.4.42","givenName");D("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");D("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");D("2.16.840.1.113730.1.1","nsCertType");D("2.16.840.1.113730.1.13","nsComment");ut("2.5.29.1","authorityKeyIdentifier");ut("2.5.29.2","keyAttributes");ut("2.5.29.3","certificatePolicies");ut("2.5.29.4","keyUsageRestriction");ut("2.5.29.5","policyMapping");ut("2.5.29.6","subtreesConstraint");ut("2.5.29.7","subjectAltName");ut("2.5.29.8","issuerAltName");ut("2.5.29.9","subjectDirectoryAttributes");ut("2.5.29.10","basicConstraints");ut("2.5.29.11","nameConstraints");ut("2.5.29.12","policyConstraints");ut("2.5.29.13","basicConstraints");D("2.5.29.14","subjectKeyIdentifier");D("2.5.29.15","keyUsage");ut("2.5.29.16","privateKeyUsagePeriod");D("2.5.29.17","subjectAltName");D("2.5.29.18","issuerAltName");D("2.5.29.19","basicConstraints");ut("2.5.29.20","cRLNumber");ut("2.5.29.21","cRLReason");ut("2.5.29.22","expirationDate");ut("2.5.29.23","instructionCode");ut("2.5.29.24","invalidityDate");ut("2.5.29.25","cRLDistributionPoints");ut("2.5.29.26","issuingDistributionPoint");ut("2.5.29.27","deltaCRLIndicator");ut("2.5.29.28","issuingDistributionPoint");ut("2.5.29.29","certificateIssuer");ut("2.5.29.30","nameConstraints");D("2.5.29.31","cRLDistributionPoints");D("2.5.29.32","certificatePolicies");ut("2.5.29.33","policyMappings");ut("2.5.29.34","policyConstraints");D("2.5.29.35","authorityKeyIdentifier");ut("2.5.29.36","policyConstraints");D("2.5.29.37","extKeyUsage");ut("2.5.29.46","freshestCRL");ut("2.5.29.54","inhibitAnyPolicy");D("1.3.6.1.4.1.11129.2.4.2","timestampList");D("1.3.6.1.5.5.7.1.1","authorityInfoAccess");D("1.3.6.1.5.5.7.3.1","serverAuth");D("1.3.6.1.5.5.7.3.2","clientAuth");D("1.3.6.1.5.5.7.3.3","codeSigning");D("1.3.6.1.5.5.7.3.4","emailProtection");D("1.3.6.1.5.5.7.3.8","timeStamping")});var Cn=yt((K2,yc)=>{var bt=dt();Nt();Ei();var V=yc.exports=bt.asn1=bt.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(e,t,r,n,i){if(bt.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:e,type:t,constructed:r,composed:r||bt.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(e,t){var r;if(bt.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(bt.util.isArray(e)){if(!bt.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function In(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 wd=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;In(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=bt.util.createBuffer(e));var r=e.length(),n=Si(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 Si(e,t,r,n){var i;In(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=wd(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(In(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),u.push(Si(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Si(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&&(In(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},x=Si(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)In(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=bt.util.createBuffer(),r=e.tagClass|e.type,n=bt.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=bt.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=bt.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),f+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),f&&(c=e.charAt(f),c==="+"||c==="-")){var u=parseInt(e.substr(f+1,2),10),l=parseInt(e.substr(f+4,2),10),d=u*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,f=0,u=!1;e.charAt(e.length-1)==="Z"&&(u=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var g=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);f=g*60+h,f*=6e4,d==="+"&&(f*=-1),u=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),u?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+f)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=bt.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=bt.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&bt.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var pc=/[^\\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,bt.pki&&bt.pki.oids&&c in bt.pki.oids&&(n+=" ("+bt.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+bt.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+bt.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var f=e.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)yc.test(e.value)||(n+="("+e.value+") "),n+="0x"+bt.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=bt.util.decodeUtf8(e.value)}catch(u){if(u.message==="URI malformed")n+="0x"+bt.util.bytesToHex(e.value)+" (malformed UTF8)";else throw u}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:yc.test(e.value)?n+="0x"+bt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var is=yt((V2,xc)=>{var Ot=dt();Nt();xc.exports=Ot.cipher=Ot.cipher||{};Ot.cipher.algorithms=Ot.cipher.algorithms||{};Ot.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};Ot.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};Ot.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),Ot.cipher.algorithms[e]=t};Ot.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in Ot.cipher.algorithms?Ot.cipher.algorithms[e]:null};var ns=Ot.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};ns.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=Ot.util.createBuffer(),this.output=e.output||Ot.util.createBuffer(),this.mode.start(t)};ns.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()};ns.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 ss=yt((F2,mc)=>{var Mt=dt();Nt();Mt.cipher=Mt.cipher||{};var it=mc.exports=Mt.cipher.modes=Mt.cipher.modes||{};it.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.ecb.prototype.start=function(e){};it.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};it.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};it.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};it.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};it.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=Bi(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};it.cbc.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n]);this._prev=this._outBlock};it.cbc.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};it.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};it.cbc.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};it.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Bi(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32()^this._outBlock[i],t.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32(),t.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Bi(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(e.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb.prototype.decrypt=it.ofb.prototype.encrypt;it.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Bi(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ctr.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0&&(e.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}Ai(this._inBlock)};it.ctr.prototype.decrypt=it.ctr.prototype.encrypt;it.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};it.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Mt.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Mt.util.createBuffer(e.additionalData):r=Mt.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Mt.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(os(n*8)))}this._inBlock=this._j0.slice(0),Ai(this._inBlock),this._partialBytes=0,r=Mt.util.createBuffer(r),this._aDataLength=os(r.length()*8);var i=r.length()%this.blockSize;for(i&&r.fillWithByte(0,this.blockSize-i),this._s=[0,0,0,0];r.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()])};it.gcm.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^=e.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.read-=this.blockSize,t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Ai(this._inBlock)};it.gcm.prototype.decrypt=function(e,t,r){var n=e.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),Ai(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};it.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Mt.util.createBuffer();var n=this._aDataLength.concat(os(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),t.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};it.gcm.prototype.multiply=function(e,t){for(var r=[0,0,0,0],n=t.slice(0),i=0;i<128;++i){var o=e[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};it.gcm.prototype.pow=function(e,t){for(var r=e[3]&1,n=3;n>0;--n)t[n]=e[n]>>>1|(e[n-1]&1)<<31;t[0]=e[0]>>>1,r&&(t[0]^=this._R)};it.gcm.prototype.tableMultiply=function(e){for(var t=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=e[n]>>>(7-r%8)*4&15,o=this._m[r][i];t[0]^=o[0],t[1]^=o[1],t[2]^=o[2],t[3]^=o[3]}return t};it.gcm.prototype.ghash=function(e,t,r){return t[0]^=r[0],t[1]^=r[1],t[2]^=r[2],t[3]^=r[3],this.tableMultiply(t)};it.gcm.prototype.generateHashTable=function(e,t){for(var r=8/t,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,f=(n-1-s%n)*t;a[c]=1<<t-1<<f,o[s]=this.generateSubHashTable(this.multiply(a,e),t)}return o};it.gcm.prototype.generateSubHashTable=function(e,t){var r=1<<t,n=r>>>1,i=new Array(r);i[n]=e.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var f=i[o^n];i[o]=[e[0]^f[0],e[1]^f[1],e[2]^f[2],e[3]^f[3]]}return i};function Bi(e,t){if(typeof e=="string"&&(e=Mt.util.createBuffer(e)),Mt.util.isArray(e)&&e.length>4){var r=e;e=Mt.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Mt.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Ai(e){e[e.length-1]=e[e.length-1]+1&4294967295}function os(e){return[e/4294967296|0,e&4294967295]}});var us=yt((H2,Ec)=>{var gt=dt();is();ss();Nt();Ec.exports=gt.aes=gt.aes||{};gt.aes.startEncrypting=function(e,t,r,n){var i=Ii({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};gt.aes.createEncryptionCipher=function(e,t){return Ii({key:e,output:null,decrypt:!1,mode:t})};gt.aes.startDecrypting=function(e,t,r,n){var i=Ii({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};gt.aes.createDecryptionCipher=function(e,t){return Ii({key:e,output:null,decrypt:!0,mode:t})};gt.aes.Algorithm=function(e,t){fs||vc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return cs(r._w,n,i,!1)},decrypt:function(n,i){return cs(r._w,n,i,!0)}}}),r._init=!1};gt.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t=e.key,r;if(typeof t=="string"&&(t.length===16||t.length===24||t.length===32))t=gt.util.createBuffer(t);else if(gt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=gt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!gt.util.isArray(t)){r=t,t=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)t.push(r.getInt32())}}if(!gt.util.isArray(t)||!(t.length===4||t.length===6||t.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=wc(t,e.decrypt&&!s),this._init=!0}};gt.aes._expandKey=function(e,t){return fs||vc(),wc(e,t)};gt.aes._updateBlock=cs;Yr("AES-ECB",gt.cipher.modes.ecb);Yr("AES-CBC",gt.cipher.modes.cbc);Yr("AES-CFB",gt.cipher.modes.cfb);Yr("AES-OFB",gt.cipher.modes.ofb);Yr("AES-CTR",gt.cipher.modes.ctr);Yr("AES-GCM",gt.cipher.modes.gcm);function Yr(e,t){var r=function(){return new gt.aes.Algorithm(e,t)};gt.cipher.registerAlgorithm(e,r)}var fs=!1,$r=4,Zt,as,bc,br,ye;function vc(){fs=!0,bc=[0,1,2,4,8,16,32,64,128,27,54];for(var e=new Array(256),t=0;t<128;++t)e[t]=t<<1,e[t+128]=t+128<<1^283;Zt=new Array(256),as=new Array(256),br=new Array(4),ye=new Array(4);for(var t=0;t<4;++t)br[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,Zt[r]=a,as[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)br[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 wc(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=$r*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Zt[n>>>16&255]<<24^Zt[n>>>8&255]<<16^Zt[n&255]<<8^Zt[n>>>24]^bc[i]<<24,i++):o>6&&c%o===4&&(n=Zt[n>>>24]<<24^Zt[n>>>16&255]<<16^Zt[n>>>8&255]<<8^Zt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=ye[0],l=ye[1],d=ye[2],g=ye[3],h=r.slice(0);a=r.length;for(var c=0,p=a-$r;c<a;c+=$r,p-=$r)if(c===0||c===a-$r)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<$r;++y)f=r[p+y],h[c+(3&-y)]=u[Zt[f>>>24]]^l[Zt[f>>>16&255]]^d[Zt[f>>>8&255]]^g[Zt[f&255]];r=h}return r}function cs(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=as):(o=br[0],s=br[1],a=br[2],c=br[3],f=Zt);var u,l,d,g,h,p,y;u=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],g=t[n?1:3]^e[3];for(var x=3,v=1;v<i;++v)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[g&255]^e[++x],p=o[l>>>24]^s[d>>>16&255]^a[g>>>8&255]^c[u&255]^e[++x],y=o[d>>>24]^s[g>>>16&255]^a[u>>>8&255]^c[l&255]^e[++x],g=o[g>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^e[++x],u=h,l=p,d=y;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[g&255]^e[++x],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[g>>>8&255]<<8^f[u&255]^e[++x],r[2]=f[d>>>24]<<24^f[g>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++x],r[n?1:3]=f[g>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^e[++x]}function Ii(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=gt.cipher.createDecipher(r,e.key):n=gt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof gt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Ac=yt((q2,Bc)=>{var Et=dt();is();ss();Nt();Bc.exports=Et.des=Et.des||{};Et.des.startEncrypting=function(e,t,r,n){var i=Ci({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createEncryptionCipher=function(e,t){return Ci({key:e,output:null,decrypt:!1,mode:t})};Et.des.startDecrypting=function(e,t,r,n){var i=Ci({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createDecryptionCipher=function(e,t){return Ci({key:e,output:null,decrypt:!0,mode:t})};Et.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return Sc(r._keys,n,i,!1)},decrypt:function(n,i){return Sc(r._keys,n,i,!0)}}}),r._init=!1};Et.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=Et.util.createBuffer(e.key);if(this.name.indexOf("3DES")===0&&t.length()!==24)throw new Error("Invalid Triple-DES key size: "+t.length()*8);this._keys=Nd(t),this._init=!0}};Ee("DES-ECB",Et.cipher.modes.ecb);Ee("DES-CBC",Et.cipher.modes.cbc);Ee("DES-CFB",Et.cipher.modes.cfb);Ee("DES-OFB",Et.cipher.modes.ofb);Ee("DES-CTR",Et.cipher.modes.ctr);Ee("3DES-ECB",Et.cipher.modes.ecb);Ee("3DES-CBC",Et.cipher.modes.cbc);Ee("3DES-CFB",Et.cipher.modes.cfb);Ee("3DES-OFB",Et.cipher.modes.ofb);Ee("3DES-CTR",Et.cipher.modes.ctr);function Ee(e,t){var r=function(){return new Et.des.Algorithm(e,t)};Et.cipher.registerAlgorithm(e,r)}var Bd=[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],Ad=[-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],Id=[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],Cd=[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],Td=[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],_d=[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],Ld=[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],Rd=[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 Nd(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 Sc(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^(Ad[g>>>24&63]|Cd[g>>>16&63]|_d[g>>>8&63]|Rd[g&63]|Bd[h>>>24&63]|Id[h>>>16&63]|Td[h>>>8&63]|Ld[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 Ci(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=Et.cipher.createDecipher(r,e.key):n=Et.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Et.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var vr=yt((z2,Ic)=>{var Ti=dt();Ic.exports=Ti.md=Ti.md||{};Ti.md.algorithms=Ti.md.algorithms||{}});var Tc=yt((G2,Cc)=>{var qe=dt();vr();Nt();var Pd=Cc.exports=qe.hmac=qe.hmac||{};Pd.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 qe.md.algorithms)t=qe.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=qe.util.createBuffer(s);else if(qe.util.isArray(s)){var a=s;s=qe.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=qe.util.createBuffer(),n=qe.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 _i=yt(()=>{});var Lc=yt((Y2,_c)=>{var Xt=dt();Tc();vr();Nt();var Dd=Xt.pkcs5=Xt.pkcs5||{},ze;Xt.util.isNodejs&&!Xt.options.usePureJavaScript&&(ze=_i());_c.exports=Xt.pbkdf2=Dd.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Xt.util.isNodejs&&!Xt.options.usePureJavaScript&&ze.pbkdf2&&(i===null||typeof i!="object")&&(ze.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?ze.pbkdf2Sync.length===4?ze.pbkdf2(e,t,r,n,function(m,C){if(m)return o(m);o(null,C.toString("binary"))}):ze.pbkdf2(e,t,r,n,i,function(m,C){if(m)return o(m);o(null,C.toString("binary"))}):ze.pbkdf2Sync.length===4?ze.pbkdf2Sync(e,t,r,n).toString("binary"):ze.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Xt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Xt.md[i].create()}var s=i.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(o)return o(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=Xt.hmac.create();u.start(i,e);var l="",d,g,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Xt.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var y=2;y<=r;++y)u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Xt.util.xorBytes(d,g,s),h=g;l+=p<c?d:d.substr(0,f)}return l}var p=1,y;function x(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Xt.util.int32ToBytes(p)),d=h=u.digest().getBytes(),y=2,v()}function v(){if(y<=r)return u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Xt.util.xorBytes(d,g,s),h=g,++y,Xt.util.setImmediate(v);l+=p<c?d:d.substr(0,f),++p,x()}x()}});var Pc=yt((Z2,Nc)=>{var Ri=dt();Nt();var Rc=Nc.exports=Ri.pem=Ri.pem||{};Rc.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
8
+ `,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,bt.pki&&bt.pki.oids&&c in bt.pki.oids&&(n+=" ("+bt.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+bt.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+bt.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var f=e.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)pc.test(e.value)||(n+="("+e.value+") "),n+="0x"+bt.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=bt.util.decodeUtf8(e.value)}catch(u){if(u.message==="URI malformed")n+="0x"+bt.util.bytesToHex(e.value)+" (malformed UTF8)";else throw u}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:pc.test(e.value)?n+="0x"+bt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var is=yt((O2,gc)=>{var Ot=dt();Nt();gc.exports=Ot.cipher=Ot.cipher||{};Ot.cipher.algorithms=Ot.cipher.algorithms||{};Ot.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};Ot.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};Ot.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),Ot.cipher.algorithms[e]=t};Ot.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in Ot.cipher.algorithms?Ot.cipher.algorithms[e]:null};var ns=Ot.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};ns.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=Ot.util.createBuffer(),this.output=e.output||Ot.util.createBuffer(),this.mode.start(t)};ns.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()};ns.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 ss=yt((M2,xc)=>{var Mt=dt();Nt();Mt.cipher=Mt.cipher||{};var nt=xc.exports=Mt.cipher.modes=Mt.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=Bi(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=Mt.util.createBuffer(),this._partialBytes=0};nt.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Bi(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=Mt.util.createBuffer(),this._partialBytes=0};nt.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Bi(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=Mt.util.createBuffer(),this._partialBytes=0};nt.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Bi(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}Ai(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=Mt.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=Mt.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Mt.util.createBuffer(e.additionalData):r=Mt.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Mt.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(os(n*8)))}this._inBlock=this._j0.slice(0),Ai(this._inBlock),this._partialBytes=0,r=Mt.util.createBuffer(r),this._aDataLength=os(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),Ai(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),Ai(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=Mt.util.createBuffer();var n=this._aDataLength.concat(os(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 Bi(e,t){if(typeof e=="string"&&(e=Mt.util.createBuffer(e)),Mt.util.isArray(e)&&e.length>4){var r=e;e=Mt.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Mt.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Ai(e){e[e.length-1]=e[e.length-1]+1&4294967295}function os(e){return[e/4294967296|0,e&4294967295]}});var us=yt((V2,wc)=>{var gt=dt();is();ss();Nt();wc.exports=gt.aes=gt.aes||{};gt.aes.startEncrypting=function(e,t,r,n){var i=Ii({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};gt.aes.createEncryptionCipher=function(e,t){return Ii({key:e,output:null,decrypt:!1,mode:t})};gt.aes.startDecrypting=function(e,t,r,n){var i=Ii({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};gt.aes.createDecryptionCipher=function(e,t){return Ii({key:e,output:null,decrypt:!0,mode:t})};gt.aes.Algorithm=function(e,t){fs||bc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return cs(r._w,n,i,!1)},decrypt:function(n,i){return cs(r._w,n,i,!0)}}}),r._init=!1};gt.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t=e.key,r;if(typeof t=="string"&&(t.length===16||t.length===24||t.length===32))t=gt.util.createBuffer(t);else if(gt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=gt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!gt.util.isArray(t)){r=t,t=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)t.push(r.getInt32())}}if(!gt.util.isArray(t)||!(t.length===4||t.length===6||t.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=vc(t,e.decrypt&&!s),this._init=!0}};gt.aes._expandKey=function(e,t){return fs||bc(),vc(e,t)};gt.aes._updateBlock=cs;Yr("AES-ECB",gt.cipher.modes.ecb);Yr("AES-CBC",gt.cipher.modes.cbc);Yr("AES-CFB",gt.cipher.modes.cfb);Yr("AES-OFB",gt.cipher.modes.ofb);Yr("AES-CTR",gt.cipher.modes.ctr);Yr("AES-GCM",gt.cipher.modes.gcm);function Yr(e,t){var r=function(){return new gt.aes.Algorithm(e,t)};gt.cipher.registerAlgorithm(e,r)}var fs=!1,$r=4,Zt,as,mc,br,ye;function bc(){fs=!0,mc=[0,1,2,4,8,16,32,64,128,27,54];for(var e=new Array(256),t=0;t<128;++t)e[t]=t<<1,e[t+128]=t+128<<1^283;Zt=new Array(256),as=new Array(256),br=new Array(4),ye=new Array(4);for(var t=0;t<4;++t)br[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,Zt[r]=a,as[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)br[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=$r*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Zt[n>>>16&255]<<24^Zt[n>>>8&255]<<16^Zt[n&255]<<8^Zt[n>>>24]^mc[i]<<24,i++):o>6&&c%o===4&&(n=Zt[n>>>24]<<24^Zt[n>>>16&255]<<16^Zt[n>>>8&255]<<8^Zt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=ye[0],l=ye[1],d=ye[2],g=ye[3],h=r.slice(0);a=r.length;for(var c=0,p=a-$r;c<a;c+=$r,p-=$r)if(c===0||c===a-$r)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<$r;++y)f=r[p+y],h[c+(3&-y)]=u[Zt[f>>>24]]^l[Zt[f>>>16&255]]^d[Zt[f>>>8&255]]^g[Zt[f&255]];r=h}return r}function cs(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=as):(o=br[0],s=br[1],a=br[2],c=br[3],f=Zt);var u,l,d,g,h,p,y;u=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],g=t[n?1:3]^e[3];for(var x=3,v=1;v<i;++v)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[g&255]^e[++x],p=o[l>>>24]^s[d>>>16&255]^a[g>>>8&255]^c[u&255]^e[++x],y=o[d>>>24]^s[g>>>16&255]^a[u>>>8&255]^c[l&255]^e[++x],g=o[g>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^e[++x],u=h,l=p,d=y;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[g&255]^e[++x],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[g>>>8&255]<<8^f[u&255]^e[++x],r[2]=f[d>>>24]<<24^f[g>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++x],r[n?1:3]=f[g>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^e[++x]}function Ii(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=gt.cipher.createDecipher(r,e.key):n=gt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof gt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Bc=yt((F2,Sc)=>{var Et=dt();is();ss();Nt();Sc.exports=Et.des=Et.des||{};Et.des.startEncrypting=function(e,t,r,n){var i=Ci({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createEncryptionCipher=function(e,t){return Ci({key:e,output:null,decrypt:!1,mode:t})};Et.des.startDecrypting=function(e,t,r,n){var i=Ci({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createDecryptionCipher=function(e,t){return Ci({key:e,output:null,decrypt:!0,mode:t})};Et.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return Ec(r._keys,n,i,!1)},decrypt:function(n,i){return Ec(r._keys,n,i,!0)}}}),r._init=!1};Et.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=Et.util.createBuffer(e.key);if(this.name.indexOf("3DES")===0&&t.length()!==24)throw new Error("Invalid Triple-DES key size: "+t.length()*8);this._keys=Ld(t),this._init=!0}};Ee("DES-ECB",Et.cipher.modes.ecb);Ee("DES-CBC",Et.cipher.modes.cbc);Ee("DES-CFB",Et.cipher.modes.cfb);Ee("DES-OFB",Et.cipher.modes.ofb);Ee("DES-CTR",Et.cipher.modes.ctr);Ee("3DES-ECB",Et.cipher.modes.ecb);Ee("3DES-CBC",Et.cipher.modes.cbc);Ee("3DES-CFB",Et.cipher.modes.cfb);Ee("3DES-OFB",Et.cipher.modes.ofb);Ee("3DES-CTR",Et.cipher.modes.ctr);function Ee(e,t){var r=function(){return new Et.des.Algorithm(e,t)};Et.cipher.registerAlgorithm(e,r)}var Ed=[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],Sd=[-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],Bd=[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],Ad=[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],Id=[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],Cd=[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],Td=[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],_d=[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 Ld(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 Ec(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^(Sd[g>>>24&63]|Ad[g>>>16&63]|Cd[g>>>8&63]|_d[g&63]|Ed[h>>>24&63]|Bd[h>>>16&63]|Id[h>>>8&63]|Td[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 Ci(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=Et.cipher.createDecipher(r,e.key):n=Et.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Et.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var vr=yt((H2,Ac)=>{var Ti=dt();Ac.exports=Ti.md=Ti.md||{};Ti.md.algorithms=Ti.md.algorithms||{}});var Cc=yt((q2,Ic)=>{var qe=dt();vr();Nt();var Rd=Ic.exports=qe.hmac=qe.hmac||{};Rd.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 qe.md.algorithms)t=qe.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=qe.util.createBuffer(s);else if(qe.util.isArray(s)){var a=s;s=qe.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=qe.util.createBuffer(),n=qe.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 _i=yt(()=>{});var _c=yt((W2,Tc)=>{var Xt=dt();Cc();vr();Nt();var Nd=Xt.pkcs5=Xt.pkcs5||{},ze;Xt.util.isNodejs&&!Xt.options.usePureJavaScript&&(ze=_i());Tc.exports=Xt.pbkdf2=Nd.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Xt.util.isNodejs&&!Xt.options.usePureJavaScript&&ze.pbkdf2&&(i===null||typeof i!="object")&&(ze.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?ze.pbkdf2Sync.length===4?ze.pbkdf2(e,t,r,n,function(m,C){if(m)return o(m);o(null,C.toString("binary"))}):ze.pbkdf2(e,t,r,n,i,function(m,C){if(m)return o(m);o(null,C.toString("binary"))}):ze.pbkdf2Sync.length===4?ze.pbkdf2Sync(e,t,r,n).toString("binary"):ze.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Xt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Xt.md[i].create()}var s=i.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(o)return o(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=Xt.hmac.create();u.start(i,e);var l="",d,g,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Xt.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var y=2;y<=r;++y)u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Xt.util.xorBytes(d,g,s),h=g;l+=p<c?d:d.substr(0,f)}return l}var p=1,y;function x(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Xt.util.int32ToBytes(p)),d=h=u.digest().getBytes(),y=2,v()}function v(){if(y<=r)return u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Xt.util.xorBytes(d,g,s),h=g,++y,Xt.util.setImmediate(v);l+=p<c?d:d.substr(0,f),++p,x()}x()}});var Nc=yt(($2,Rc)=>{var Ri=dt();Nt();var Lc=Rc.exports=Ri.pem=Ri.pem||{};Lc.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
9
9
  `,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=Li(n)),e.contentDomain&&(n={name:"Content-Domain",values:[e.contentDomain]},r+=Li(n)),e.dekInfo&&(n={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&n.values.push(e.dekInfo.parameters),r+=Li(n)),e.headers)for(var i=0;i<e.headers.length;++i)r+=Li(e.headers[i]);return e.procType&&(r+=`\r
10
10
  `),r+=Ri.util.encode64(e.body,t.maxline||64)+`\r
11
11
  `,r+="-----END "+e.type+`-----\r
12
- `,r};Rc.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:Ri.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(kd(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 Li(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
12
+ `,r};Lc.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:Ri.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(Pd(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 Li(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 kd(e){return e.replace(/^\s+/,"")}});var Mc=yt((X2,Oc)=>{var Se=dt();vr();Nt();var kc=Oc.exports=Se.sha256=Se.sha256||{};Se.md.sha256=Se.md.algorithms.sha256=kc;kc.create=function(){Uc||Ud();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),Dc(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(ls.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};Dc(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 ls=null,Uc=!1,Kc=null;function Ud(){ls="\x80",ls+=Se.util.fillString("\0",64),Kc=[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],Uc=!0}function Dc(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+Kc[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 Fc=yt((Q2,Vc)=>{var Be=dt();Nt();var Ni=null;Be.util.isNodejs&&!Be.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Ni=_i());var Kd=Vc.exports=Be.prng=Be.prng||{};Kd.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 Ni?(t.seedFile=function(f,u){Ni.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Ni.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 Tn=yt((J2,hs)=>{var Vt=dt();us();Mc();Fc();Nt();(function(){if(Vt.random&&Vt.random.getBytes){hs.exports=Vt.random;return}(function(e){var t={},r=new Array(4),n=Vt.util.createBuffer();t.formatKey=function(l){var d=Vt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Vt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Vt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return Vt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Vt.md.sha256;function i(){var l=Vt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=Vt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Vt.options.usePureJavaScript||!Vt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Vt.random)Vt.random=o;else for(var u in o)Vt.random[u]=o[u];Vt.random.createInstance=i,hs.exports=Vt.random})(typeof jQuery<"u"?jQuery:null)})()});var Gc=yt((j2,zc)=>{var Jt=dt();Nt();var ds=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],Hc=[1,2,3,5],Od=function(e,t){return e<<t&65535|(e&65535)>>16-t},Md=function(e,t){return(e&65535)>>t|e<<16-t&65535};zc.exports=Jt.rc2=Jt.rc2||{};Jt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Jt.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(ds[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,ds[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,ds[r.at(a+1)^r.at(a+o)]);return r};var qc=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Jt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=Od(h[f],Hc[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]=Md(h[f],Hc[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var x=0;x<h.length;x++)for(var v=0;v<h[x][0];v++)h[x][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(h,p){h&&typeof h=="string"&&(h=Jt.util.createBuffer(h)),n=!1,i=Jt.util.createBuffer(),o=p||new Jt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var x=o.length(),v=o.at(x-1);v>x?p=!1:o.truncate(v)}return p}},g};Jt.rc2.startEncrypting=function(e,t,r){var n=Jt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createEncryptionCipher=function(e,t){return qc(e,t,!0)};Jt.rc2.startDecrypting=function(e,t,r){var n=Jt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createDecryptionCipher=function(e,t){return qc(e,t,!1)}});var ki=yt((tb,jc)=>{var ps=dt();jc.exports=ps.jsbn=ps.jsbn||{};var Ge,Vd=0xdeadbeefcafe,Wc=(Vd&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))}ps.jsbn.BigInteger=P;function at(){return new P(null)}function Fd(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 Hd(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 $c(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=$c,Ge=28):Wc&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=Hd,Ge=30):Wc&&navigator.appName!="Netscape"?(P.prototype.am=Fd,Ge=26):(P.prototype.am=$c,Ge=28);P.prototype.DB=Ge;P.prototype.DM=(1<<Ge)-1;P.prototype.DV=1<<Ge;var ys=52;P.prototype.FV=Math.pow(2,ys);P.prototype.F1=ys-Ge;P.prototype.F2=2*Ge-ys;var qd="0123456789abcdefghijklmnopqrstuvwxyz",Pi=new Array,Zr,ie;Zr=48;for(ie=0;ie<=9;++ie)Pi[Zr++]=ie;Zr=97;for(ie=10;ie<36;++ie)Pi[Zr++]=ie;Zr=65;for(ie=10;ie<36;++ie)Pi[Zr++]=ie;function Yc(e){return qd.charAt(e)}function Zc(e,t){var r=Pi[e.charCodeAt(t)];return r??-1}function zd(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function Gd(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=at();return t.fromInt(e),t}function Wd(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:Zc(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 $d(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function Yd(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=Yc(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+=Yc(n));return i?o:"0"}function Zd(){var e=at();return P.ZERO.subTo(this,e),e}function Xd(){return this.s<0?this.negate():this}function Qd(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 Di(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 Jd(){return this.t<=0?0:this.DB*(this.t-1)+Di(this.data[this.t-1]^this.s&this.DM)}function jd(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 tp(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 ep(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 rp(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 np(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 ip(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 op(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 sp(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=at());var o=at(),s=this.s,a=e.s,c=this.DB-Di(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,x=t??at();for(o.dlShiftTo(y,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),P.ONE.dlShiftTo(f,x),x.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,x),r.subTo(x,r);r.data[p]<--v;)r.subTo(x,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&P.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function ap(e){var t=at();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(P.ZERO)>0&&e.subTo(t,t),t}function wr(e){this.m=e}function cp(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function fp(e){return e}function up(e){e.divRemTo(this.m,null,e)}function lp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function hp(e,t){e.squareTo(t),this.reduce(t)}wr.prototype.convert=cp;wr.prototype.revert=fp;wr.prototype.reduce=up;wr.prototype.mulTo=lp;wr.prototype.sqrTo=hp;function dp(){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 Er(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 pp(e){var t=at();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(P.ZERO)>0&&this.m.subTo(t,t),t}function yp(e){var t=at();return e.copyTo(t),this.reduce(t),t}function gp(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 xp(e,t){e.squareTo(t),this.reduce(t)}function mp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Er.prototype.convert=pp;Er.prototype.revert=yp;Er.prototype.reduce=gp;Er.prototype.mulTo=mp;Er.prototype.sqrTo=xp;function bp(){return(this.t>0?this.data[0]&1:this.s)==0}function vp(e,t){if(e>4294967295||e<1)return P.ONE;var r=at(),n=at(),i=t.convert(this),o=Di(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 wr(t):r=new Er(t),this.exp(e,r)}P.prototype.copyTo=zd;P.prototype.fromInt=Gd;P.prototype.fromString=Wd;P.prototype.clamp=$d;P.prototype.dlShiftTo=jd;P.prototype.drShiftTo=tp;P.prototype.lShiftTo=ep;P.prototype.rShiftTo=rp;P.prototype.subTo=np;P.prototype.multiplyTo=ip;P.prototype.squareTo=op;P.prototype.divRemTo=sp;P.prototype.invDigit=dp;P.prototype.isEven=bp;P.prototype.exp=vp;P.prototype.toString=Yd;P.prototype.negate=Zd;P.prototype.abs=Xd;P.prototype.compareTo=Qd;P.prototype.bitLength=Jd;P.prototype.mod=ap;P.prototype.modPowInt=wp;P.ZERO=sr(0);P.ONE=sr(1);function Ep(){var e=at();return this.copyTo(e),e}function Sp(){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 Bp(){return this.t==0?this.s:this.data[0]<<24>>24}function Ap(){return this.t==0?this.s:this.data[0]<<16>>16}function Ip(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Cp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Tp(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=at(),o=at(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function _p(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=Zc(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 Lp(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),gs,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 Rp(){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 Np(e){return this.compareTo(e)==0}function Pp(e){return this.compareTo(e)<0?this:e}function Dp(e){return this.compareTo(e)>0?this:e}function kp(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 Up(e,t){return e&t}function Kp(e){var t=at();return this.bitwiseTo(e,Up,t),t}function gs(e,t){return e|t}function Op(e){var t=at();return this.bitwiseTo(e,gs,t),t}function Xc(e,t){return e^t}function Mp(e){var t=at();return this.bitwiseTo(e,Xc,t),t}function Qc(e,t){return e&~t}function Vp(e){var t=at();return this.bitwiseTo(e,Qc,t),t}function Fp(){for(var e=at(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function Hp(e){var t=at();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function qp(e){var t=at();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function zp(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function Gp(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+zp(this.data[e]);return this.s<0?this.t*this.DB:-1}function Wp(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function $p(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=Wp(this.data[r]^t);return e}function Yp(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function Zp(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function Xp(e){return this.changeBit(e,gs)}function Qp(e){return this.changeBit(e,Qc)}function Jp(e){return this.changeBit(e,Xc)}function jp(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 ty(e){var t=at();return this.addTo(e,t),t}function ey(e){var t=at();return this.subTo(e,t),t}function ry(e){var t=at();return this.multiplyTo(e,t),t}function ny(e){var t=at();return this.divRemTo(e,t,null),t}function iy(e){var t=at();return this.divRemTo(e,null,t),t}function oy(e){var t=at(),r=at();return this.divRemTo(e,t,r),new Array(t,r)}function sy(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function ay(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 _n(){}function Jc(e){return e}function cy(e,t,r){e.multiplyTo(t,r)}function fy(e,t){e.squareTo(t)}_n.prototype.convert=Jc;_n.prototype.revert=Jc;_n.prototype.mulTo=cy;_n.prototype.sqrTo=fy;function uy(e){return this.exp(e,new _n)}function ly(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 hy(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 Xr(e){this.r2=at(),this.q3=at(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function dy(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=at();return e.copyTo(t),this.reduce(t),t}function py(e){return e}function yy(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 gy(e,t){e.squareTo(t),this.reduce(t)}function xy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Xr.prototype.convert=dy;Xr.prototype.revert=py;Xr.prototype.reduce=yy;Xr.prototype.mulTo=xy;Xr.prototype.sqrTo=gy;function my(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 wr(t):t.isEven()?o=new Xr(t):o=new Er(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=at();for(o.sqrTo(s[1],u);a<=f;)s[a]=at(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=at(),p;for(r=Di(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 by(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function vy(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=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 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],Ey=(1<<26)/ge[ge.length-1];function Sy(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<Ey;)n*=ge[i++];for(n=r.modInt(n);t<i;)if(n%ge[t++]==0)return!1}return r.millerRabin(e)}function By(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=Ay(),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 Ay(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Ip;P.prototype.toRadix=Tp;P.prototype.fromRadix=_p;P.prototype.fromNumber=Lp;P.prototype.bitwiseTo=kp;P.prototype.changeBit=Zp;P.prototype.addTo=jp;P.prototype.dMultiply=sy;P.prototype.dAddOffset=ay;P.prototype.multiplyLowerTo=ly;P.prototype.multiplyUpperTo=hy;P.prototype.modInt=vy;P.prototype.millerRabin=By;P.prototype.clone=Ep;P.prototype.intValue=Sp;P.prototype.byteValue=Bp;P.prototype.shortValue=Ap;P.prototype.signum=Cp;P.prototype.toByteArray=Rp;P.prototype.equals=Np;P.prototype.min=Pp;P.prototype.max=Dp;P.prototype.and=Kp;P.prototype.or=Op;P.prototype.xor=Mp;P.prototype.andNot=Vp;P.prototype.not=Fp;P.prototype.shiftLeft=Hp;P.prototype.shiftRight=qp;P.prototype.getLowestSetBit=Gp;P.prototype.bitCount=$p;P.prototype.testBit=Yp;P.prototype.setBit=Xp;P.prototype.clearBit=Qp;P.prototype.flipBit=Jp;P.prototype.add=ty;P.prototype.subtract=ey;P.prototype.multiply=ry;P.prototype.divide=ny;P.prototype.remainder=iy;P.prototype.divideAndRemainder=oy;P.prototype.modPow=my;P.prototype.modInverse=wy;P.prototype.pow=uy;P.prototype.gcd=by;P.prototype.isProbablePrime=Sy});var of=yt((eb,nf)=>{var Ae=dt();vr();Nt();var ef=nf.exports=Ae.sha1=Ae.sha1||{};Ae.md.sha1=Ae.md.algorithms.sha1=ef;ef.create=function(){rf||Iy();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),tf(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(xs.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};tf(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 xs=null,rf=!1;function Iy(){xs="\x80",xs+=Ae.util.fillString("\0",64),rf=!0}function tf(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=yt((rb,af)=>{var Ie=dt();Nt();Tn();of();var sf=af.exports=Ie.pkcs1=Ie.pkcs1||{};sf.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=Ui(i,a-o.digestLength-1,s),y=Ie.util.xorBytes(h,p,h.length),x=Ui(y,o.digestLength,s),v=Ie.util.xorBytes(i,x,i.length);return"\0"+v+y};sf.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=Ui(u,i.digestLength,o),d=Ie.util.xorBytes(f,l,f.length),g=Ui(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 Ui(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 ff=yt((nb,ms)=>{var ar=dt();Nt();ki();Tn();(function(){if(ar.prime){ms.exports=ar.prime;return}var e=ms.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,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 U=M.data;if(U.found){for(var q=0;q<S.length;++q)S[q].terminate();return L=!0,h(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:x}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var Oi=yt((ib,gf)=>{var W=dt();Cn();ki();Ei();cf();ff();Tn();Nt();typeof st>"u"&&(st=W.jsbn.BigInteger);var st,bs=W.util.isNodejs?_i():null,E=W.asn1,oe=W.util;W.pki=W.pki||{};gf.exports=W.pki.rsa=W.rsa=W.rsa||{};var Q=W.pki,Cy=[6,4,2,4,2,4,6,2],Ty={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"}]},_y={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"}]},Ly={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"}]},Ry=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Ny={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"}]},Py=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(st.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(st.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new st(W.util.bytesToHex(W.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(st.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=yf(e,t,r)):(i=W.util.createBuffer(),i.putBytes(e));for(var s=new st(i.toHex(),16),a=pf(s,t,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new st(W.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=pf(s,t,r),c=a.toString(16),f=W.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),n!==!1?Ki(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||W.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new st(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new st(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new st(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(st.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(ky(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Cy[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(st.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(uf("generateKeyPair"))return bs.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:df(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return oe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(hf("generateKey")&&hf("exportKey")){var i=oe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:df(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=oe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer(W.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(uf("generateKeyPairSync")){var o=bs.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;Dy(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 yf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=Ki(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,Ny,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===W.oids.md2||h===W.oids.md5||h===W.oids.sha1||h===W.oids.sha224||h===W.oids.sha256||h===W.oids.sha384||h===W.oids.sha512||h===W.oids["sha512-224"]||h===W.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===W.oids.md2||h===W.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Ki(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:Ki};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return W.pkcs1.decode_rsa_oaep(h,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:Py},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,Ty,t,r)&&(e=E.fromDer(W.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,_y,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(t.privateKeyModulus).toHex(),o=W.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(t.privateKeyPrime1).toHex(),c=W.util.createBuffer(t.privateKeyPrime2).toHex(),f=W.util.createBuffer(t.privateKeyExponent1).toHex(),u=W.util.createBuffer(t.privateKeyExponent2).toHex(),l=W.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new st(i,16),new st(o,16),new st(s,16),new st(a,16),new st(c,16),new st(f,16),new st(u,16),new st(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,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,Ry,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,Ly,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(t.publicKeyModulus).toHex(),s=W.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new st(o,16),new st(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.e))])};function yf(e,t,r){var n=W.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=W.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(e),n}function Ki(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=W.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function Dy(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.p=null,i();return}if(e.q.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(st.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function Ce(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=W.util.hexToBytes(t);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function ky(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 uf(e){return W.util.isNodejs&&typeof bs[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 hf(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 df(e){for(var t=W.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var Ef=yt((ob,wf)=>{var H=dt();us();Cn();Ac();vr();Ei();Lc();Pc();Tn();Gc();Oi();Nt();typeof xf>"u"&&(xf=H.jsbn.BigInteger);var xf,I=H.asn1,tt=H.pki=H.pki||{};wf.exports=tt.pbe=H.pbe=H.pbe||{};var Sr=tt.oids,Uy={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"}]},Ky={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"}]}]},Oy={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=H.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=Sr["aes128-CBC"],l=H.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Sr["aes192-CBC"],l=H.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Sr["aes256-CBC"],l=H.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Sr.desCBC,l=H.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=vf(g),p=H.pkcs5.pbkdf2(t,n,i,s,h),y=H.random.getBytesSync(f),x=l(p);x.start(y),x.update(I.toDer(e)),x.finish(),c=x.output.getBytes();var v=My(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(Sr.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(Sr.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 H.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,m,1,i,s),y=tt.pbe.generatePkcs12Key(t,m,2,i,s),x=H.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(Sr["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,Uy,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=H.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 H.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=H.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=H.random.getBytesSync(16),a=H.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=H.random.getBytesSync(16),a=H.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=H.random.getBytesSync(16),a=H.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=H.random.getBytesSync(8),a=H.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=H.random.getBytesSync(8),a=H.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=H.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:H.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return H.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=H.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=H.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=H.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=H.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=H.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=H.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return H.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return H.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return H.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=H.util.hexToBytes(n.dekInfo.parameters),c=H.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(H.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 H.md))throw new Error('"sha1" hash algorithm unavailable.');o=H.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new H.util.ByteBuffer,l=new H.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 H.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new H.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var x=f*Math.ceil(d/f),v=new H.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 H.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 H.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 H.util.ByteBuffer;for(s=0;s<O;s++){var U=new H.util.ByteBuffer(m.getBytes(f)),q=511;for(a=L.length()-1;a>=0;a--)q=q>>8,q+=L.at(a)+U.at(a),U.setAt(a,q&255);M.putBuffer(U)}m=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!I.validate(t,Ky,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=H.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=H.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=H.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=H.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=H.des.createDecryptionCipher;break;case"desCBC":c=8,f=H.des.createDecryptionCipher;break}var u=bf(n.prfOid),l=H.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,Oy,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=H.util.createBuffer(n.salt),a=H.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=H.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var x=H.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=bf(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 H.md))throw new Error('"md5" hash algorithm unavailable.');n=H.md.md5.create()}t===null&&(t="");for(var i=[mf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(mf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function mf(e,t){return e.start().update(t).digest().getBytes()}function bf(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 vf(t)}function vf(e){var t=H.md;switch(e){case"hmacWithSHA224":t=H.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 My(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,H.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 du=yt((c8,hu)=>{var vt=dt();vr();Nt();var Kn=hu.exports=vt.sha512=vt.sha512||{};vt.md.sha512=vt.md.algorithms.sha512=Kn;var uu=vt.sha384=vt.sha512.sha384=vt.sha512.sha384||{};uu.create=function(){return Kn.create("SHA-384")};vt.md.sha384=vt.md.algorithms.sha384=uu;vt.sha512.sha256=vt.sha512.sha256||{create:function(){return Kn.create("SHA-512/256")}};vt.md["sha512/256"]=vt.md.algorithms["sha512/256"]=vt.sha512.sha256;vt.sha512.sha224=vt.sha512.sha224||{create:function(){return Kn.create("SHA-512/224")}};vt.md["sha512/224"]=vt.md.algorithms["sha512/224"]=vt.sha512.sha224;Kn.create=function(e){if(lu||og(),typeof e>"u"&&(e="SHA-512"),!(e in Rr))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=Rr[e],r=null,n=vt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=vt.util.createBuffer(),r=new Array(t.length);for(var f=0;f<t.length;++f)r[f]=t[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=vt.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),fu(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=vt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(sa.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);fu(p,i,c);var y=vt.util.createBuffer(),x;e==="SHA-512"?x=p.length:e==="SHA-384"?x=p.length-2:x=p.length-4;for(var h=0;h<x;++h)y.putInt32(p[h][0]),(h!==x-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var sa=null,lu=!1,aa=null,Rr=null;function og(){sa="\x80",sa+=vt.util.fillString("\0",128),aa=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],Rr={},Rr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Rr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Rr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Rr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],lu=!0}function fu(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,U,q,z,Z,A,N,T,_,w,k,K,F=r.length();F>=128;){for(A=0;A<16;++A)t[A][0]=r.getInt32()>>>0,t[A][1]=r.getInt32()>>>0;for(;A<80;++A)_=t[A-2],N=_[0],T=_[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,k=t[A-15],N=k[0],T=k[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[A-7],K=t[A-16],T=i+w[1]+s+K[1],t[A][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[A][1]=T>>>0;for(p=e[0][0],y=e[0][1],x=e[1][0],v=e[1][1],m=e[2][0],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],U=e[6][0],q=e[6][1],z=e[7][0],Z=e[7][1],A=0;A<80;++A)f=((R>>>14|L<<18)^(R>>>18|L<<14)^(L>>>9|R<<23))>>>0,u=((R<<18|L>>>14)^(R<<14|L>>>18)^(L<<23|R>>>9))>>>0,l=(U^R&(O^U))>>>0,d=(q^L&(M^q))>>>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+aa[A][1]+t[A][1],n=z+f+l+aa[A][0]+t[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=U,Z=q,U=O,q=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]+q,e[6][0]=e[6][0]+U+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,F-=128}}});var lx={};Dt(lx,{webTransport:()=>ux});function ke(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function nt(e=0){return globalThis.Buffer?.alloc!=null?ke(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function kt(e=0){return globalThis.Buffer?.allocUnsafe!=null?ke(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Dl=Math.pow(2,7),kl=Math.pow(2,14),Ul=Math.pow(2,21),ho=Math.pow(2,28),po=Math.pow(2,35),yo=Math.pow(2,42),go=Math.pow(2,49),ft=128,Wt=127;function $t(e){if(e<Dl)return 1;if(e<kl)return 2;if(e<Ul)return 3;if(e<ho)return 4;if(e<po)return 5;if(e<yo)return 6;if(e<go)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Kl(e,t,r=0){switch($t(e)){case 8:t[r++]=e&255|ft,e/=128;case 7:t[r++]=e&255|ft,e/=128;case 6:t[r++]=e&255|ft,e/=128;case 5:t[r++]=e&255|ft,e/=128;case 4:t[r++]=e&255|ft,e>>>=7;case 3:t[r++]=e&255|ft,e>>>=7;case 2:t[r++]=e&255|ft,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function Ol(e,t,r=0){switch($t(e)){case 8:t.set(r++,e&255|ft),e/=128;case 7:t.set(r++,e&255|ft),e/=128;case 6:t.set(r++,e&255|ft),e/=128;case 5:t.set(r++,e&255|ft),e/=128;case 4:t.set(r++,e&255|ft),e>>>=7;case 3:t.set(r++,e&255|ft),e>>>=7;case 2:t.set(r++,e&255|ft),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function Ml(e,t){let r=e[t],n=0;if(n+=r&Wt,r<ft||(r=e[t+1],n+=(r&Wt)<<7,r<ft)||(r=e[t+2],n+=(r&Wt)<<14,r<ft)||(r=e[t+3],n+=(r&Wt)<<21,r<ft)||(r=e[t+4],n+=(r&Wt)*ho,r<ft)||(r=e[t+5],n+=(r&Wt)*po,r<ft)||(r=e[t+6],n+=(r&Wt)*yo,r<ft)||(r=e[t+7],n+=(r&Wt)*go,r<ft))return n;throw new RangeError("Could not decode varint")}function Vl(e,t){let r=e.get(t),n=0;if(n+=r&Wt,r<ft||(r=e.get(t+1),n+=(r&Wt)<<7,r<ft)||(r=e.get(t+2),n+=(r&Wt)<<14,r<ft)||(r=e.get(t+3),n+=(r&Wt)<<21,r<ft)||(r=e.get(t+4),n+=(r&Wt)*ho,r<ft)||(r=e.get(t+5),n+=(r&Wt)*po,r<ft)||(r=e.get(t+6),n+=(r&Wt)*yo,r<ft)||(r=e.get(t+7),n+=(r&Wt)*go,r<ft))return n;throw new RangeError("Could not decode varint")}function Qe(e,t,r=0){return t==null&&(t=kt($t(e))),t instanceof Uint8Array?Kl(e,t,r):Ol(e,t,r)}function fe(e,t=0){return e instanceof Uint8Array?Ml(e,t):Vl(e,t)}function At(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=kt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return ke(r)}function It(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var e0=Symbol.for("@achingbrain/uint8arraylist");function t0(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 kr(e){return!!e?.[e0]}var Ct=class e{bufs;length;[e0]=!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(kr(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(kr(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=t0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=t0(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(kr(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return At(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:At(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=[...n],o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let f=t>=a&&t<c,u=r>a&&r<=c;if(f&&u){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!kr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=nt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=nt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!It(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function Xn(e){return e[Symbol.asyncIterator]!=null}var Qn=e=>{let t=$t(e),r=kt(t);return Qe(e,r),Qn.bytes=t,r};Qn.bytes=0;function dn(e,t){t=t??{};let r=t.lengthEncoder??Qn;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Xn(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}dn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??Qn;return new Ct(r(e.byteLength),e)};var Ur=Qt(i0(),1);var Hl=8,ql=1024*1024*4,dr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(dr||(dr={}));var xo=e=>{let t=fe(e);return xo.bytes=$t(t),t};xo.bytes=0;function pn(e,t){let r=new Ct,n=dr.LENGTH,i=-1,o=t?.lengthDecoder??xo,s=t?.maxLengthLength??Hl,a=t?.maxDataLength??ql;function*c(){for(;r.byteLength>0;){if(n===dr.LENGTH)try{if(i=o(r),i<0)throw(0,Ur.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Ur.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,Ur.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 Xn(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Ur.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,Ur.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}pn.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 pn(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 Jn=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 o0(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new Jn(r?.errorMessage,r?.errorCode));let n,i=new Jn(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 mo=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 o0(this.needNext.promise,r?.signal,r)}};function s0(){return new mo}var jn=class extends Error{code;constructor(t,r){super(t),this.code=r}},bo=class extends jn{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function a0(e,t){let r=s0();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new Ct;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new bo("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new Ct:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new jn("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 ti=class extends Error{code;constructor(t,r){super(t),this.code=r}},c0=e=>fe(e);c0.bytes=0;function vo(e,t={}){let r=a0(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=$t(t.maxDataLength)),{read:async i=>{let o=-1,s=new Ct,a=t?.lengthDecoder??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 ti("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new ti("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(dn.single(i,t),o)},writeV:async(i,o)=>{let s=new Ct(...i.map(a=>dn.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function wo(){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 f0(){let e=wo(),t=wo();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}var ei=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Kr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new ei(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 ei(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 Eo=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function ri(e={}){return Gl(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 Gl(e,t){t=t??{};let r=t.onEnd,n=new Kr,i,o,s,a=ue(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,x)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(m){x(m)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ue()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Kr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Kr,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let x=y?.signal;if(x?.throwIfAborted(),n.isEmpty())return;let v,m;x!=null&&(v=new Promise((C,S)=>{m=()=>{S(new Eo)},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 Wl(e){return e[Symbol.asyncIterator]!=null}function $l(...e){let t=[];for(let r of e)Wl(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=ri({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 u0=$l;function l0(e,...t){if(e==null)throw new Error("Empty pipeline");if(So(e)){let n=e;e=()=>n.source}else if(d0(e)||h0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&So(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++)So(r[n])&&(r[n]=Zl(r[n]));return Yl(...r)}var Yl=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},h0=e=>e?.[Symbol.asyncIterator]!=null,d0=e=>e?.[Symbol.iterator]!=null,So=e=>e==null?!1:e.sink!=null&&e.source!=null,Zl=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=ri({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(h0(o))i=async function*(){yield*o,n.end()};else if(d0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return u0(n,i())}return e.source};var Or=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Ue=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 y0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Xl=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Xl)throw new Error("Non little-endian hardware is not supported");function ni(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ii(e){if(typeof e=="string")e=ni(e);else if(p0(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var Ql=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function g0(e,t){if(t!==void 0&&(typeof t!="object"||!Ql(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function pr(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 x0(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 Bo=(e,t)=>(Object.assign(t,e),t);function Ao(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 oi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`wrong positive integer: ${e}`)}function Io(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function Jl(e){return e!=null&&typeof e=="object"&&(e instanceof Uint8Array||e.constructor.name==="Uint8Array")}function Mr(e,...t){if(!Jl(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 Co(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function m0(e,t){Mr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var qt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,To=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=ii(t),pr(t,32);let r=qt(t,0),n=qt(t,2),i=qt(t,4),o=qt(t,6),s=qt(t,8),a=qt(t,10),c=qt(t,12),f=qt(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=qt(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],x=qt(t,r+0),v=qt(t,r+2),m=qt(t,r+4),C=qt(t,r+6),S=qt(t,r+8),B=qt(t,r+10),R=qt(t,r+12),L=qt(t,r+14),O=o[0]+(x&8191),M=o[1]+((x>>>13|v<<3)&8191),U=o[2]+((v>>>10|m<<6)&8191),q=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,k=w+O*a+M*(5*y)+U*(5*p)+q*(5*h)+z*(5*g);w=k>>>13,k&=8191,k+=Z*(5*d)+A*(5*l)+N*(5*u)+T*(5*f)+_*(5*c),w+=k>>>13,k&=8191;let K=w+O*c+M*a+U*(5*y)+q*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+A*(5*d)+N*(5*l)+T*(5*u)+_*(5*f),w+=K>>>13,K&=8191;let F=w+O*f+M*c+U*a+q*(5*y)+z*(5*p);w=F>>>13,F&=8191,F+=Z*(5*h)+A*(5*g)+N*(5*d)+T*(5*l)+_*(5*u),w+=F>>>13,F&=8191;let $=w+O*u+M*f+U*c+q*a+z*(5*y);w=$>>>13,$&=8191,$+=Z*(5*p)+A*(5*h)+N*(5*g)+T*(5*d)+_*(5*l),w+=$>>>13,$&=8191;let Y=w+O*l+M*u+U*f+q*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+A*(5*p)+N*(5*h)+T*(5*g)+_*(5*d),w+=Y>>>13,Y&=8191;let rt=w+O*d+M*l+U*u+q*f+z*c;w=rt>>>13,rt&=8191,rt+=Z*a+A*(5*y)+N*(5*p)+T*(5*h)+_*(5*g),w+=rt>>>13,rt&=8191;let X=w+O*g+M*d+U*l+q*u+z*f;w=X>>>13,X&=8191,X+=Z*c+A*a+N*(5*y)+T*(5*p)+_*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+U*d+q*l+z*u;w=J>>>13,J&=8191,J+=Z*f+A*c+N*a+T*(5*y)+_*(5*p),w+=J>>>13,J&=8191;let pt=w+O*p+M*h+U*g+q*d+z*l;w=pt>>>13,pt&=8191,pt+=Z*u+A*f+N*c+T*a+_*(5*y),w+=pt>>>13,pt&=8191;let ht=w+O*y+M*p+U*h+q*g+z*d;w=ht>>>13,ht&=8191,ht+=Z*l+A*u+N*f+T*c+_*a,w+=ht>>>13,ht&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=F,o[3]=$,o[4]=Y,o[5]=rt,o[6]=X,o[7]=J,o[8]=pt,o[9]=ht}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){Co(this);let{buffer:r,blockLen:n}=this;t=ii(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){Co(this),m0(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 jl(e){let t=(n,i)=>e(i).update(ii(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var b0=jl(e=>new To(e));var th=ni("expand 16-byte k"),eh=ni("expand 32-byte k"),rh=Ue(th),nh=Ue(eh);function G(e,t){return e<<t|e>>>32-t}function _o(e){return e.byteOffset%4===0}var si=64,ih=16,w0=2**32-1,v0=new Uint32Array;function oh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(si),u=Ue(f),l=_o(i)&&_o(o),d=l?Ue(i):v0,g=l?Ue(o):v0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=w0)throw new Error("arx: counter overflow");let p=Math.min(si,c-h);if(l&&p===si){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let x=0,v;x<ih;x++)v=y+x,g[v]=d[v]^u[x];h+=si;continue}for(let y=0,x;y<p;y++)x=h+y,o[x]=i[x]^f[y];h+=p}}function Lo(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=g0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return oi(i),oi(s),Io(o),Io(r),(a,c,f,u,l=0)=>{Mr(a),Mr(c),Mr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Mr(u),oi(l),l<0||l>=w0)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=nh;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=rh,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);_o(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 C=new Uint8Array(12);C.set(c,o?0:12-c.length),c=C,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 B0(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,U=l,q=d,z=g,Z=h,A=p,N=y,T=x,_=v,w=m,k=C,K=S;for(let $=0;$<o;$+=2)B=B+M|0,_=G(_^B,16),Z=Z+_|0,M=G(M^Z,12),B=B+M|0,_=G(_^B,8),Z=Z+_|0,M=G(M^Z,7),R=R+U|0,w=G(w^R,16),A=A+w|0,U=G(U^A,12),R=R+U|0,w=G(w^R,8),A=A+w|0,U=G(U^A,7),L=L+q|0,k=G(k^L,16),N=N+k|0,q=G(q^N,12),L=L+q|0,k=G(k^L,8),N=N+k|0,q=G(q^N,7),O=O+z|0,K=G(K^O,16),T=T+K|0,z=G(z^T,12),O=O+z|0,K=G(K^O,8),T=T+K|0,z=G(z^T,7),B=B+U|0,K=G(K^B,16),N=N+K|0,U=G(U^N,12),B=B+U|0,K=G(K^B,8),N=N+K|0,U=G(U^N,7),R=R+q|0,_=G(_^R,16),T=T+_|0,q=G(q^T,12),R=R+q|0,_=G(_^R,8),T=T+_|0,q=G(q^T,7),L=L+z|0,w=G(w^L,16),Z=Z+w|0,z=G(z^Z,12),L=L+z|0,w=G(w^L,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,k=G(k^O,16),A=A+k|0,M=G(M^A,12),O=O+M|0,k=G(k^O,8),A=A+k|0,M=G(M^A,7);let F=0;n[F++]=s+B|0,n[F++]=a+R|0,n[F++]=c+L|0,n[F++]=f+O|0,n[F++]=u+M|0,n[F++]=l+U|0,n[F++]=d+q|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+k|0,n[F++]=S+K|0}function sh(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 ah=Lo(B0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),ch=Lo(B0,{counterRight:!1,counterLength:8,extendNonceFn:sh,allowShortKeys:!1});var fh=new Uint8Array(16),E0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(fh.subarray(r))},uh=new Uint8Array(32);function S0(e,t,r,n,i){let o=e(t,r,uh),s=b0.create(o);i&&E0(s,i),E0(s,n);let a=new Uint8Array(16),c=y0(a);Ao(c,0,BigInt(i?i.length:0),!0),Ao(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var A0=e=>(t,r,n)=>(pr(t,32),pr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?pr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=S0(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?pr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=S0(e,t,r,f,n);if(!x0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),Ro=Bo({blockSize:64,nonceLength:12,tagLength:16},A0(ah)),bm=Bo({blockSize:64,nonceLength:24,tagLength:16},A0(ch));function ai(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function lh(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function No(e,...t){if(!lh(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 yn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");ai(e.outputLen),ai(e.blockLen)}function Vr(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 I0(e,t){No(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var ci=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function C0(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var fi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),le=(e,t)=>e<<32-t|e>>>t,hh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!hh)throw new Error("Non little-endian hardware is not supported");function Po(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=Po(e)),!C0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function ui(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];if(!C0(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 Fr=class{clone(){return this._cloneInto()}},Bm={}.toString;function li(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 yr(e=32){if(ci&&typeof ci.getRandomValues=="function")return ci.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function dh(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 Hr=class extends Fr{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=fi(this.buffer)}update(t){Vr(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=fi(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){Vr(this),I0(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;dh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=fi(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 hi=BigInt(4294967295),Do=BigInt(32);function T0(e,t=!1){return t?{h:Number(e&hi),l:Number(e>>Do&hi)}:{h:Number(e>>Do&hi)|0,l:Number(e&hi)|0}}function ph(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}=T0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var yh=(e,t)=>BigInt(e>>>0)<<Do|BigInt(t>>>0),gh=(e,t,r)=>e>>>r,xh=(e,t,r)=>e<<32-r|t>>>r,mh=(e,t,r)=>e>>>r|t<<32-r,bh=(e,t,r)=>e<<32-r|t>>>r,vh=(e,t,r)=>e<<64-r|t>>>r-32,wh=(e,t,r)=>e>>>r-32|t<<64-r,Eh=(e,t)=>t,Sh=(e,t)=>e,Bh=(e,t,r)=>e<<r|t>>>32-r,Ah=(e,t,r)=>t<<r|e>>>32-r,Ih=(e,t,r)=>t<<r-32|e>>>64-r,Ch=(e,t,r)=>e<<r-32|t>>>64-r;function Th(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var _h=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Lh=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Rh=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Nh=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,Ph=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Dh=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var kh={fromBig:T0,split:ph,toBig:yh,shrSH:gh,shrSL:xh,rotrSH:mh,rotrSL:bh,rotrBH:vh,rotrBL:wh,rotr32H:Eh,rotr32L:Sh,rotlSH:Bh,rotlSL:Ah,rotlBH:Ih,rotlBL:Ch,add:Th,add3L:_h,add3H:Lh,add4L:Rh,add4H:Nh,add5H:Dh,add5L:Ph},j=kh;var[Uh,Kh]=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),ko=class extends Hr{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 C=je[m-15]|0,S=tr[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=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),U=j.rotrSL(L,O,19)^j.rotrBL(L,O,61)^j.shrSL(L,O,6),q=j.add4L(R,U,tr[m-7],tr[m-16]),z=j.add4H(q,B,M,je[m-7],je[m-16]);je[m]=z|0,tr[m]=q|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,Kh[m],tr[m]),O=j.add5H(L,x,C,B,Uh[m],je[m]),M=L|0,U=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),q=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,q,Z);n=j.add3H(A,O,U,z),i=A|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:x,l:v}=j.add(this.Hh|0,this.Hl|0,x|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v)}roundClean(){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 Uo=li(()=>new ko);var pi={};Dt(pi,{bitGet:()=>zh,bitLen:()=>qh,bitMask:()=>gn,bitSet:()=>Gh,bytesToHex:()=>Oe,bytesToNumberBE:()=>Me,bytesToNumberLE:()=>de,concatBytes:()=>Fe,createHmacDrbg:()=>Mo,ensureBytes:()=>xt,equalBytes:()=>Fh,hexToBytes:()=>gr,hexToNumber:()=>Oo,isBytes:()=>he,numberToBytesBE:()=>er,numberToBytesLE:()=>Ve,numberToHexUnpadded:()=>N0,numberToVarBytesBE:()=>Vh,utf8ToBytes:()=>Hh,validateObject:()=>ne});var R0=BigInt(0),di=BigInt(1),Oh=BigInt(2);function he(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var Mh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Oe(e){if(!he(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=Mh[e[r]];return t}function N0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Oo(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}var Ke={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function _0(e){if(e>=Ke._0&&e<=Ke._9)return e-Ke._0;if(e>=Ke._A&&e<=Ke._F)return e-(Ke._A-10);if(e>=Ke._a&&e<=Ke._f)return e-(Ke._a-10)}function gr(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=_0(e.charCodeAt(o)),a=_0(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 Me(e){return Oo(Oe(e))}function de(e){if(!he(e))throw new Error("Uint8Array expected");return Oo(Oe(Uint8Array.from(e).reverse()))}function er(e,t){return gr(e.toString(16).padStart(t*2,"0"))}function Ve(e,t){return er(e,t).reverse()}function Vh(e){return gr(N0(e))}function xt(e,t,r){let n;if(typeof t=="string")try{n=gr(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 Fe(...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 Fh(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 Hh(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function qh(e){let t;for(t=0;e>R0;e>>=di,t+=1);return t}function zh(e,t){return e>>BigInt(t)&di}var Gh=(e,t,r)=>e|(r?di:R0)<<BigInt(t),gn=e=>(Oh<<BigInt(e-1))-di,Ko=e=>new Uint8Array(e),L0=e=>Uint8Array.from(e);function Mo(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=Ko(e),i=Ko(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Ko())=>{i=a(L0([0]),l),n=a(),l.length!==0&&(i=a(L0([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 Fe(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var Wh={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=Wh[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Ut=BigInt(0),wt=BigInt(1),xr=BigInt(2),$h=BigInt(3),Vo=BigInt(4),P0=BigInt(5),D0=BigInt(8),Yh=BigInt(9),Zh=BigInt(16);function ct(e,t){let r=e%t;return r>=Ut?r:t+r}function Fo(e,t,r){if(r<=Ut||t<Ut)throw new Error("Expected power/modulo > 0");if(r===wt)return Ut;let n=wt;for(;t>Ut;)t&wt&&(n=n*e%r),e=e*e%r,t>>=wt;return n}function mt(e,t,r){let n=e;for(;t-- >Ut;)n*=n,n%=r;return n}function yi(e,t){if(e===Ut||t<=Ut)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=ct(e,t),n=t,i=Ut,o=wt,s=wt,a=Ut;for(;r!==Ut;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==wt)throw new Error("invert: does not exist");return ct(i,t)}function Xh(e){let t=(e-wt)/xr,r,n,i;for(r=e-wt,n=0;r%xr===Ut;r/=xr,n++);for(i=xr;i<e&&Fo(i,t,e)!==e-wt;i++);if(n===1){let s=(e+wt)/Vo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+wt)/xr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,wt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function Qh(e){if(e%Vo===$h){let t=(e+wt)/Vo;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%D0===P0){let t=(e-P0)/D0;return function(n,i){let o=n.mul(i,xr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,xr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return e%Zh,Xh(e)}var k0=(e,t)=>(ct(e,t)&wt)===wt,Jh=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Ho(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Jh.reduce((n,i)=>(n[i]="function",n),t);return ne(e,r)}function jh(e,t,r){if(r<Ut)throw new Error("Expected power > 0");if(r===Ut)return e.ONE;if(r===wt)return t;let n=e.ONE,i=t;for(;r>Ut;)r&wt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=wt;return n}function td(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function qo(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function gi(e,t,r=!1,n={}){if(e<=Ut)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=qo(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Qh(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:gn(i),ZERO:Ut,ONE:wt,create:c=>ct(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ut<=c&&c<e},is0:c=>c===Ut,isOdd:c=>(c&wt)===wt,neg:c=>ct(-c,e),eql:(c,f)=>c===f,sqr:c=>ct(c*c,e),add:(c,f)=>ct(c+f,e),sub:(c,f)=>ct(c-f,e),mul:(c,f)=>ct(c*f,e),pow:(c,f)=>jh(a,c,f),div:(c,f)=>ct(c*yi(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>yi(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>td(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Ve(c,o):er(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?de(c):Me(c)}});return Object.freeze(a)}function U0(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 K0(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 zo(e){let t=K0(e);return t+Math.ceil(t/2)}function O0(e,t,r=!1){let n=e.length,i=K0(t),o=zo(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Me(e):de(e),a=ct(s,t-wt)+wt;return r?Ve(a,i):er(a,i)}var rd=BigInt(0),Go=BigInt(1);function xi(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>rd;)o&Go&&(s=s.add(a)),a=a.double(),o>>=Go;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+=Go);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 xn(e){return Ho(e.Fp),ne(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...qo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var pe=BigInt(0),ee=BigInt(1),mi=BigInt(2),nd=BigInt(8),id={zip215:!0};function od(e){let t=xn(e);return ne(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function bi(e){let t=od(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=mi<<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,k)=>{if(w.length||k)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,k,K,F){if(this.ex=w,this.ey=k,this.ez=K,this.et=F,!y(w))throw new Error("x required");if(!y(k))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(F))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:k,y:K}=w||{};if(!y(k)||!y(K))throw new Error("invalid affine point");return new S(k,K,ee,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,F)=>K.toAffine(k[F])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,m.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:F,ez:$,et:Y}=this,rt=u(K*K),X=u(F*F),J=u($*$),pt=u(J*J),ht=u(rt*w),Ft=u(J*u(ht+X)),Ht=u(pt+u(k*u(rt*X)));if(Ft!==Ht)throw new Error("bad point: equation left != right (1)");let Pt=u(K*F),Gt=u($*Y);if(Pt!==Gt)throw new Error("bad point: equation left != right (2)")}equals(w){C(w);let{ex:k,ey:K,ez:F}=this,{ex:$,ey:Y,ez:rt}=w,X=u(k*rt),J=u($*F),pt=u(K*rt),ht=u(Y*F);return X===J&&pt===ht}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:k,ey:K,ez:F}=this,$=u(k*k),Y=u(K*K),rt=u(mi*u(F*F)),X=u(w*$),J=k+K,pt=u(u(J*J)-$-Y),ht=X+Y,Ft=ht-rt,Ht=X-Y,Pt=u(pt*Ft),Gt=u(ht*Ht),De=u(pt*Ht),hr=u(Ft*ht);return new S(Pt,Gt,hr,De)}add(w){C(w);let{a:k,d:K}=t,{ex:F,ey:$,ez:Y,et:rt}=this,{ex:X,ey:J,ez:pt,et:ht}=w;if(k===BigInt(-1)){let Wa=u(($-F)*(J+X)),$a=u(($+F)*(J-X)),lo=u($a-Wa);if(lo===pe)return this.double();let Ya=u(Y*mi*ht),Za=u(rt*mi*pt),Xa=Za+Ya,Qa=$a+Wa,Ja=Za-Ya,Bl=u(Xa*lo),Al=u(Qa*Ja),Il=u(Xa*Ja),Cl=u(lo*Qa);return new S(Bl,Al,Cl,Il)}let Ft=u(F*X),Ht=u($*J),Pt=u(rt*K*ht),Gt=u(Y*pt),De=u((F+$)*(X+J)-Ft-Ht),hr=Gt-Pt,ln=Gt+Pt,Ga=u(Ht-k*Ft),vl=u(De*hr),wl=u(ln*Ga),El=u(De*Ga),Sl=u(hr*ln);return new S(vl,wl,Sl,El)}subtract(w){return this.add(w.negate())}wNAF(w){return L.wNAFCached(this,m,w,S.normalizeZ)}multiply(w){let{p:k,f:K}=this.wNAF(x(w,n));return S.normalizeZ([k,K])[0]}multiplyUnsafe(w){let k=v(w);return k===pe?R:this.equals(R)||k===ee?this:this.equals(B)?this.wNAF(k).p:L.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return L.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:F}=this,$=this.is0();w==null&&(w=$?nd:r.inv(F));let Y=u(k*w),rt=u(K*w),X=u(F*w);if($)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,k=!1){let{d:K,a:F}=t,$=r.BYTES;w=xt("pointHex",w,$);let Y=w.slice(),rt=w[$-1];Y[$-1]=rt&-129;let X=de(Y);X===pe||(k?x(X,f):x(X,r.ORDER));let J=u(X*X),pt=u(J-ee),ht=u(K*J-F),{isValid:Ft,value:Ht}=l(pt,ht);if(!Ft)throw new Error("Point.fromHex: invalid y coordinate");let Pt=(Ht&ee)===ee,Gt=(rt&128)!==0;if(!k&&Ht===pe&&Gt)throw new Error("Point.fromHex: x=0 and x_0=1");return Gt!==Pt&&(Ht=u(-Ht)),S.fromAffine({x:Ht,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=Ve(k,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Oe(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(pe,ee,ee,pe);let{BASE:B,ZERO:R}=S,L=xi(S,a*8);function O(_){return ct(_,n)}function M(_){return O(de(_))}function U(_){let w=a;_=xt("private key",_,w);let k=xt("hashed private key",o(_),2*w),K=d(k.slice(0,w)),F=k.slice(w,2*w),$=M(K),Y=B.multiply($),rt=Y.toRawBytes();return{head:K,prefix:F,scalar:$,point:Y,pointBytes:rt}}function q(_){return U(_).pointBytes}function z(_=new Uint8Array,...w){let k=Fe(...w);return M(o(g(k,xt("context",_),!!i)))}function Z(_,w,k={}){_=xt("message",_),i&&(_=i(_));let{prefix:K,scalar:F,pointBytes:$}=U(w),Y=z(k.context,K,_),rt=B.multiply(Y).toRawBytes(),X=z(k.context,rt,$,_),J=O(Y+X*F);v(J);let pt=Fe(rt,Ve(J,r.BYTES));return xt("result",pt,a*2)}let A=id;function N(_,w,k,K=A){let{context:F,zip215:$}=K,Y=r.BYTES;_=xt("signature",_,2*Y),w=xt("message",w),i&&(w=i(w));let rt=de(_.slice(Y,2*Y)),X,J,pt;try{X=S.fromHex(k,$),J=S.fromHex(_.slice(0,Y),$),pt=B.multiplyUnsafe(rt)}catch{return!1}if(!$&&X.isSmallOrder())return!1;let ht=z(F,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(ht)).subtract(pt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:q,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(_=8,w=S.BASE){return w._setWindowSize(_),w.multiply(BigInt(3)),w}}}}var mn=BigInt(0),Wo=BigInt(1);function sd(e){return ne(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function M0(e){let t=sd(e),{P:r}=t,n=m=>ct(m,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(m=>m),c=t.powPminus2||(m=>Fo(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"&&mn<=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=Wo,O=mn,M=S,U=Wo,q=mn,z;for(let A=BigInt(i-1);A>=mn;A--){let N=B>>A&Wo;q^=N,z=f(q,L,M),L=z[0],M=z[1],z=f(q,O,U),O=z[0],U=z[1],q=N;let T=L+O,_=n(T*T),w=L-O,k=n(w*w),K=_-k,F=M+U,$=M-U,Y=n($*T),rt=n(F*w),X=Y+rt,J=Y-rt;M=n(X*X),U=n(R*n(J*J)),L=n(_*k),O=n(K*(_+n(l*K)))}z=f(q,L,M),L=z[0],M=z[1],z=f(q,O,U),O=z[0],U=z[1];let Z=c(O);return n(L*Z)}function g(m){return Ve(n(m),o)}function h(m){let C=xt("u coordinate",m,o);return s===32&&(C[31]&=127),de(C)}function p(m){let C=xt("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===mn)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 bn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),V0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Xm=BigInt(0),ad=BigInt(1),$o=BigInt(2),cd=BigInt(5),F0=BigInt(10),fd=BigInt(20),ud=BigInt(40),H0=BigInt(80);function q0(e){let t=bn,n=e*e%t*e%t,i=mt(n,$o,t)*n%t,o=mt(i,ad,t)*e%t,s=mt(o,cd,t)*o%t,a=mt(s,F0,t)*s%t,c=mt(a,fd,t)*a%t,f=mt(c,ud,t)*c%t,u=mt(f,H0,t)*f%t,l=mt(u,H0,t)*f%t,d=mt(l,F0,t)*s%t;return{pow_p_5_8:mt(d,$o,t)*e%t,b2:n}}function z0(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function ld(e,t){let r=bn,n=ct(t*t*t,r),i=ct(n*n*t,r),o=q0(e*i).pow_p_5_8,s=ct(e*n*o,r),a=ct(t*s*s,r),c=s,f=ct(s*V0,r),u=a===e,l=a===ct(-e,r),d=a===ct(-e*V0,r);return u&&(s=c),(l||d)&&(s=f),k0(s,r)&&(s=ct(-s,r)),{isValid:u||l,value:s}}var He=gi(bn,void 0,!0),Yo={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:He,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Uo,randomBytes:yr,adjustScalarBytes:z0,uvRatio:ld},qr=bi(Yo);function G0(e,t,r){if(t.length>255)throw new Error("Context is too big");return ui(Po("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var Qm=bi({...Yo,domain:G0}),Jm=bi({...Yo,domain:G0,prehash:Uo}),vn=M0({P:bn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=bn,{pow_p_5_8:r,b2:n}=q0(e);return ct(mt(r,BigInt(3),t)*n,t)},adjustScalarBytes:z0,randomBytes:yr});var hd=(He.ORDER+BigInt(3))/BigInt(8),jm=He.pow($o,hd),t2=He.sqrt(He.neg(He.ONE)),e2=(He.ORDER-BigInt(5))/BigInt(8),r2=BigInt(486662);var n2=U0(He,He.neg(BigInt(486664)));var i2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),o2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),s2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),a2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var c2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var vi=class extends Fr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,yn(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 Vr(this),this.iHash.update(t),this}digestInto(t){Vr(this),No(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},zr=(e,t,r)=>new vi(e,t).update(r).digest();zr.create=(e,t)=>new vi(e,t);function $0(e,t,r){return yn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),zr(e,Je(r),Je(t))}var Zo=new Uint8Array([0]),W0=new Uint8Array;function Y0(e,t,r,n=32){if(yn(e),ai(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=W0);let o=new Uint8Array(i*e.outputLen),s=zr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)Zo[0]=f+1,a.update(f===0?W0:c).update(r).update(Zo).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),Zo.fill(0),o.slice(0,n)}var dd=(e,t,r)=>e&t^~e&r,pd=(e,t,r)=>e&t^e&r^t&r,yd=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),Xo=class extends Hr{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+dd(a,c,f)+yd[l]+nr[l]|0,p=(le(n,2)^le(n,13)^le(n,22))+pd(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 Gr=li(()=>new Xo);var Qo={hashSHA256(e){return Gr(e.subarray())},getHKDF(e,t){let r=$0(Gr,t,e),i=Y0(Gr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let e=vn.utils.randomPrivateKey();return{publicKey:vn.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:vn.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return vn.getSharedSecret(e.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return Ro(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return Ro(n,t,r).decrypt(e.subarray(),i)}};var Z0=Qo;var Wr=e=>{let t=kt(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Wr.bytes=2;var wn=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)};wn.bytes=2;function X0(e){return new Ct(e.ne,e.ciphertext)}function Q0(e){return new Ct(e.ne,e.ns,e.ciphertext)}function J0(e){return new Ct(e.ns,e.ciphertext)}function j0(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:nt(0)}}function tc(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 ec(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:nt(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var nc=16;function ic(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new Ct(Wr(s.byteLength),s)}}}function oc(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-nc<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-nc),{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 Sn=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},mr=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var f4=Qt(Cn(),1),u4=Qt(Ef(),1);var sb=Symbol.for("@libp2p/connection");var cb=Symbol.for("@libp2p/content-routing");var lb=Symbol.for("@libp2p/peer-discovery");var Sf=Symbol.for("@libp2p/peer-id");var pb=Symbol.for("@libp2p/peer-routing");var Bf;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(Bf||(Bf={}));var If=Symbol.for("@libp2p/transport");var Af;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Af||(Af={}));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 vs=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},vb=globalThis.CustomEvent??vs;var Tg=Qt(dt(),1);var As={};Dt(As,{base10:()=>Gy});var Xb=new Uint8Array(0);function Cf(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 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")}function Tf(e){return new TextEncoder().encode(e)}function _f(e){return new TextDecoder().decode(e)}function Vy(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 Fy=Vy,Hy=Fy,Rf=Hy;var ws=class{name;prefix;baseEncode;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")}},Es=class{name;prefix;baseDecode;prefixCodePoint;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 Nf(this,t)}},Ss=class{decoders;constructor(t){this.decoders=t}or(t){return Nf(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Nf(e,t){return new Ss({...e.decoders??{[e.prefix]:e},...t.decoders??{[t.prefix]:t}})}var Bs=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ws(t,r,n),this.decoder=new Es(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function Qr({name:e,prefix:t,encode:r,decode:n}){return new Bs(e,t,r,n)}function cr({name:e,prefix:t,alphabet:r}){let{encode:n,decode:i}=Rf(r,e);return Qr({prefix:t,name:e,encode:n,decode:o=>We(i(o))})}function qy(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}function zy(e,t,r){let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s!==0&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o}function Tt({name:e,prefix:t,bitsPerChar:r,alphabet:n}){return Qr({prefix:t,name:e,encode(i){return zy(i,n,r)},decode(i){return qy(i,n,r,e)}})}var Gy=cr({prefix:"9",name:"base10",alphabet:"0123456789"});var Is={};Dt(Is,{base16:()=>Wy,base16upper:()=>$y});var Wy=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),$y=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Cs={};Dt(Cs,{base2:()=>Yy});var Yy=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ts={};Dt(Ts,{base256emoji:()=>jy});var Pf=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}"),Zy=Pf.reduce((e,t,r)=>(e[r]=t,e),[]),Xy=Pf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function Qy(e){return e.reduce((t,r)=>(t+=Zy[r],t),"")}function Jy(e){let t=[];for(let r of e){let n=Xy[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var jy=Qr({prefix:"\u{1F680}",name:"base256emoji",encode:Qy,decode:Jy});var _s={};Dt(_s,{base32:()=>$e,base32hex:()=>n1,base32hexpad:()=>o1,base32hexpadupper:()=>s1,base32hexupper:()=>i1,base32pad:()=>e1,base32padupper:()=>r1,base32upper:()=>t1,base32z:()=>a1});var $e=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),t1=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),e1=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),r1=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),n1=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),i1=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),o1=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),s1=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),a1=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Ls={};Dt(Ls,{base36:()=>c1,base36upper:()=>f1});var c1=cr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),f1=cr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Rs={};Dt(Rs,{base58btc:()=>_t,base58flickr:()=>u1});var _t=cr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),u1=cr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ps={};Dt(Ps,{base64:()=>Mi,base64pad:()=>l1,base64url:()=>Ns,base64urlpad:()=>h1});var Mi=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),l1=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ns=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),h1=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Ds={};Dt(Ds,{base8:()=>d1});var d1=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ks={};Dt(ks,{identity:()=>p1});var p1=Qr({prefix:"\0",name:"identity",encode:e=>_f(e),decode:e=>Tf(e)});var hv=new TextEncoder,dv=new TextDecoder;var Os={};Dt(Os,{identity:()=>ur});var Te={};Dt(Te,{Digest:()=>Br,create:()=>xe,decode:()=>fr,equals:()=>Ks});var x1=Uf,Df=128,m1=127,b1=~m1,v1=Math.pow(2,31);function Uf(e,t,r){t=t||[],r=r||0;for(var n=r;e>=v1;)t[r++]=e&255|Df,e/=128;for(;e&b1;)t[r++]=e&255|Df,e>>>=7;return t[r]=e|0,Uf.bytes=r-n+1,t}var w1=Us,E1=128,kf=127;function Us(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Us.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&kf)<<i:(s&kf)*Math.pow(2,i),i+=7}while(s>=E1);return Us.bytes=o-n,r}var S1=Math.pow(2,7),B1=Math.pow(2,14),A1=Math.pow(2,21),I1=Math.pow(2,28),C1=Math.pow(2,35),T1=Math.pow(2,42),_1=Math.pow(2,49),L1=Math.pow(2,56),R1=Math.pow(2,63),N1=function(e){return e<S1?1:e<B1?2:e<A1?3:e<I1?4:e<C1?5:e<T1?6:e<_1?7:e<L1?8:e<R1?9:10},P1={encode:x1,decode:w1,encodingLength:N1},D1=P1,Ln=D1;function Rn(e,t=0){return[Ln.decode(e,t),Ln.decode.bytes]}function Jr(e,t,r=0){return Ln.encode(e,t,r),t}function jr(e){return Ln.encodingLength(e)}function xe(e,t){let r=t.byteLength,n=jr(e),i=n+jr(r),o=new Uint8Array(i+r);return Jr(e,o,0),Jr(r,o,n),o.set(t,i),new Br(e,r,t,o)}function fr(e){let t=We(e),[r,n]=Rn(t),[i,o]=Rn(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Br(r,i,s,t)}function Ks(e,t){if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Cf(e.bytes,r.bytes)}}var Br=class{code;size;digest;bytes;constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var Kf=0,k1="identity",Of=We;function U1(e){return xe(Kf,Of(e))}var ur={code:Kf,name:k1,encode:Of,digest:U1};var Fs={};Dt(Fs,{sha256:()=>zt,sha512:()=>K1});function Vs({name:e,code:t,encode:r}){return new Ms(e,t,r)}var Ms=class{name;code;encode;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")}};function Vf(e){return async t=>new Uint8Array(await crypto.subtle.digest(e,t))}var zt=Vs({name:"sha2-256",code:18,encode:Vf("SHA-256")}),K1=Vs({name:"sha2-512",code:19,encode:Vf("SHA-512")});function Ff(e,t){let{bytes:r,version:n}=e;switch(n){case 0:return M1(r,Hs(e),t??_t.encoder);default:return V1(r,Hs(e),t??$e.encoder)}}var Hf=new WeakMap;function Hs(e){let t=Hf.get(e);if(t==null){let r=new Map;return Hf.set(e,r),r}return t}var me=class e{code;version;multihash;bytes;"/";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!==Nn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==F1)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!=null&&t.code===n.code&&t.version===n.version&&Ks(t.multihash,n.multihash)}toString(t){return Ff(this,t)}toJSON(){return{"/":Ff(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s??qf(n,i,o.bytes))}else if(r[H1]===!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!==Nn)throw new Error(`Version 0 CID must use dag-pb (code: ${Nn}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=qf(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Nn,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length!==0)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 Br(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=Rn(t.subarray(r));return r+=d,l},i=n(),o=Nn;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]=O1(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 Hs(o).set(n,t),o}};function O1(e,t){switch(e[0]){case"Q":{let r=t??_t;return[_t.prefix,r.decode(`${_t.prefix}${e}`)]}case _t.prefix:{let r=t??_t;return[_t.prefix,r.decode(e)]}case $e.prefix:{let r=t??$e;return[$e.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)]}}}function M1(e,t,r){let{prefix:n}=r;if(n!==_t.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i}function V1(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}var Nn=112,F1=18;function qf(e,t,r){let n=jr(e),i=n+jr(t),o=new Uint8Array(i+r.byteLength);return Jr(e,o,0),Jr(t,o,n),o.set(r,i),o}var H1=Symbol.for("@ipld/js-cid/CID");var _e={...ks,...Cs,...Ds,...As,...Is,..._s,...Ls,...Rs,...Ps,...Ts},Dv={...Fs,...Os};function Gf(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var zf=Gf("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),qs=Gf("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=kt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),q1={utf8:zf,"utf-8":zf,hex:_e.base16,latin1:qs,ascii:qs,binary:qs,..._e},Fi=q1;function Bt(e,t="utf8"){let r=Fi[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 oa={};Dt(oa,{Ed25519PrivateKey:()=>Lr,Ed25519PublicKey:()=>Un,generateKeyPair:()=>eg,generateKeyPairFromSeed:()=>cu,unmarshalEd25519PrivateKey:()=>j1,unmarshalEd25519PublicKey:()=>tg});var zv=Qt(Nt(),1),Gv=Qt(ki(),1),Wf=Qt(dt(),1);function ot(e,t="utf8"){let r=Fi[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=At([new Uint8Array(t-r.length),r])}return ot(r,"base64url")}function re(e){let t=$f(e);return new Wf.default.jsbn.BigInteger(ot(t,"base16"),16)}function $f(e,t){let r=Bt(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=At([new Uint8Array(t-r.length),r])}return r}function se(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var tn=32,Ye=64,Hi=32;function Yf(){let e=qr.utils.randomPrivateKey(),t=qr.getPublicKey(e);return{privateKey:Jf(e,t),publicKey:t}}function Zf(e){if(e.length!==Hi)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=qr.getPublicKey(t);return{privateKey:Jf(t,r),publicKey:r}}function Xf(e,t){let r=e.subarray(0,Hi);return qr.sign(t instanceof Uint8Array?t:t.subarray(),r)}function Qf(e,t,r){return qr.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function Jf(e,t){let r=new Uint8Array(Ye);for(let n=0;n<Hi;n++)r[n]=e[n],r[Hi+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 zs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Gs(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=jt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=Bt(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",zs,{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",zs,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(p,y,l);return At([g,p.iv,new Uint8Array(x)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=Bt(d));let x;if(d.length===0)try{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},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",zs,{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 en(e,t){let n=await Gs().encrypt(e,t);return Mi.encode(n)}var Ws=new Float32Array([-0]),lr=new Uint8Array(Ws.buffer);function tu(e,t,r){Ws[0]=e,t[r]=lr[0],t[r+1]=lr[1],t[r+2]=lr[2],t[r+3]=lr[3]}function eu(e,t){return lr[0]=e[t],lr[1]=e[t+1],lr[2]=e[t+2],lr[3]=e[t+3],Ws[0]}var $s=new Float64Array([-0]),Yt=new Uint8Array($s.buffer);function ru(e,t,r){$s[0]=e,t[r]=Yt[0],t[r+1]=Yt[1],t[r+2]=Yt[2],t[r+3]=Yt[3],t[r+4]=Yt[4],t[r+5]=Yt[5],t[r+6]=Yt[6],t[r+7]=Yt[7]}function nu(e,t){return Yt[0]=e[t],Yt[1]=e[t+1],Yt[2]=e[t+2],Yt[3]=e[t+3],Yt[4]=e[t+4],Yt[5]=e[t+5],Yt[6]=e[t+6],Yt[7]=e[t+7],$s[0]}var G1=BigInt(Number.MAX_SAFE_INTEGER),W1=BigInt(Number.MIN_SAFE_INTEGER),te=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Ar;if(t<G1&&t>W1)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>iu&&(i=0n,++n>iu&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Ar;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):Ar}},Ar=new te(0,0);Ar.toBigInt=function(){return 0n};Ar.zzEncode=Ar.zzDecode=function(){return this};Ar.length=function(){return 1};var iu=4294967296n;function ou(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 su(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 Ys(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 qi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var Zs=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 qi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ve(this,4);return qi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ve(this,4);let t=eu(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw ve(this,4);let t=nu(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 su(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 te(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw 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=qi(this.buf,this.pos+=4),r=qi(this.buf,this.pos+=4);return new te(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function Xs(e){return new Zs(e instanceof Uint8Array?e:e.subarray())}function Ir(e,t){let r=Xs(e);return t.decode(r)}function Qs(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return kt(s);i+s>t&&(n=kt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Cr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function Js(){}var ta=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},$1=Qs();function Y1(e){return globalThis.Buffer!=null?kt(e):$1(e)}var kn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Cr(Js,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Cr(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new ea((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(Pn,10,te.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=te.fromBigInt(t);return this._push(Pn,r.length(),r)}uint64Number(t){let r=te.fromNumber(t);return this._push(Pn,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=te.fromBigInt(t).zzEncode();return this._push(Pn,r.length(),r)}sint64Number(t){let r=te.fromNumber(t).zzEncode();return this._push(Pn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(js,1,t?1:0)}fixed32(t){return this._push(Dn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=te.fromBigInt(t);return this._push(Dn,4,r.lo)._push(Dn,4,r.hi)}fixed64Number(t){let r=te.fromNumber(t);return this._push(Dn,4,r.lo)._push(Dn,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(tu,4,t)}double(t){return this._push(ru,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(js,1,0):this.uint32(r)._push(X1,r,t)}string(t){let r=ou(t);return r!==0?this.uint32(r)._push(Ys,r,t):this._push(js,1,0)}fork(){return this.states=new ta(this),this.head=this.tail=new Cr(Js,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 Cr(Js,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=Y1(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function js(e,t,r){t[r]=e&255}function Z1(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var ea=class extends Cr{next;constructor(t,r){super(Z1,t,r),this.next=void 0}};function Pn(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 Dn(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 X1(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(kn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(Q1,t,e),this},kn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(J1,t,e),this});function Q1(e,t,r){t.set(e,r)}function J1(e,t,r){e.length<40?Ys(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(Bt(e),r)}function ra(){return new kn}function Tr(e,t){let r=ra();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var rn;(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"})(rn||(rn={}));function zi(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function na(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 zi("enum",rn.VARINT,r,n)}function _r(e,t){return zi("message",rn.LENGTH_DELIMITED,e,t)}var St;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(St||(St={}));var ia;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(ia||(ia={}));(function(e){e.codec=()=>na(ia)})(St||(St={}));var Le;(function(e){let t;e.codec=()=>(t==null&&(t=_r((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Le||(Le={}));var Re;(function(e){let t;e.codec=()=>(t==null&&(t=_r((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Re||(Re={}));var Un=class{_key;constructor(t){this._key=nn(t,tn)}verify(t,r){return Qf(this._key,r,t)}marshal(){return this._key}get bytes(){return Le.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},Lr=class{_key;_publicKey;constructor(t,r){this._key=nn(t,Ye),this._publicKey=nn(r,tn)}sign(t){return Xf(this._key,t)}get public(){return new Un(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}async hash(){let t=zt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=ur.digest(this.public.bytes);return _t.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return en(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function j1(e){if(e.length>Ye){e=nn(e,Ye+tn);let n=e.subarray(0,Ye),i=e.subarray(Ye,e.length);return new Lr(n,i)}e=nn(e,Ye);let t=e.subarray(0,Ye),r=e.subarray(tn);return new Lr(t,r)}function tg(e){return e=nn(e,tn),new Un(e)}async function eg(){let{privateKey:e,publicKey:t}=Yf();return new Lr(e,t)}async function cu(e){let{privateKey:t,publicKey:r}=Zf(e);return new Lr(t,r)}function nn(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 rg={"P-256":256,"P-384":384,"P-521":521},ng=Object.keys(rg),Ww=ng.join(" / ");var ua={};Dt(ua,{MAX_KEY_SIZE:()=>Vn,RsaPrivateKey:()=>on,RsaPublicKey:()=>Mn,fromJwk:()=>pg,generateKeyPair:()=>yg,unmarshalRsaPrivateKey:()=>hg,unmarshalRsaPublicKey:()=>dg});var On=Qt(dt(),1);var L8=Qt(du(),1);function Wi(e){if(isNaN(e)||e<=0)throw new et("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return yr(e)}var h8=Qt(Oi(),1),ca=Qt(dt(),1);function pu(e,t){return t.map(r=>re(e[r]))}function yu(e){return ca.default.pki.setRsaPrivateKey(...pu(e,["n","e","d","p","q","dp","dq","qi"]))}function gu(e){return ca.default.pki.setRsaPublicKey(...pu(e,["n","e"]))}var Nr={};Dt(Nr,{jwkToPkcs1:()=>ag,jwkToPkix:()=>fg,pkcs1ToJwk:()=>sg,pkixToJwk:()=>cg});var y8=Qt(Cn(),1),g8=Qt(Oi(),1);var Ze=Qt(dt(),1);function sg(e){let t=Ze.default.asn1.fromDer(ot(e,"ascii")),r=Ze.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 ag(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=Ze.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return Bt(Ze.default.asn1.toDer(t).getBytes(),"ascii")}function cg(e){let t=Ze.default.asn1.fromDer(ot(e,"ascii")),r=Ze.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:be(r.n),e:be(r.e)}}function fg(e){if(e.n==null||e.e==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Ze.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return Bt(Ze.default.asn1.toDer(t).getBytes(),"ascii")}async function xu(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 vu(t);return{privateKey:r[0],publicKey:r[1]}}async function fa(e){let r=[await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await ug(e)],n=await vu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function mu(e,t){let r=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function bu(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 vu(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 ug(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 wu(e,t,r,n){let i=t?gu(e):yu(e),o=ot(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return Bt(s,"ascii")}function Eu(e,t){return wu(e,!0,t,(r,n)=>n.encrypt(r))}function Su(e,t){return wu(e,!1,t,(r,n)=>n.decrypt(r))}function $i(e){if(e.kty!=="RSA")throw new et("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new et("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Bt(e.n,"base64url").length*8}var Vn=8192,Mn=class{_key;constructor(t){this._key=t}verify(t,r){return bu(this._key,r,t)}marshal(){return Nr.jwkToPkix(this._key)}get bytes(){return Le.encode({Type:St.RSA,Data:this.marshal()}).subarray()}encrypt(t){return Eu(this._key,t)}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},on=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return Wi(16)}sign(t){return mu(this._key,t)}get public(){if(this._publicKey==null)throw new et("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Mn(this._publicKey)}decrypt(t){return Su(this._key,t)}marshal(){return Nr.jwkToPkcs1(this._key)}get bytes(){return Re.encode({Type:St.RSA,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ot(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new On.default.util.ByteBuffer(this.marshal()),i=On.default.asn1.fromDer(n),o=On.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return On.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return en(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function hg(e){let t=Nr.pkcs1ToJwk(e);if($i(t)>Vn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await fa(t);return new on(r.privateKey,r.publicKey)}function dg(e){let t=Nr.pkixToJwk(e);if($i(t)>Vn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Mn(t)}async function pg(e){if($i(e)>Vn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await fa(e);return new on(t.privateKey,t.publicKey)}async function yg(e){if(e>Vn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await xu(e);return new on(t.privateKey,t.publicKey)}var pa={};Dt(pa,{Secp256k1PrivateKey:()=>Hn,Secp256k1PublicKey:()=>Fn,generateKeyPair:()=>Cg,unmarshalSecp256k1PrivateKey:()=>Ag,unmarshalSecp256k1PublicKey:()=>Ig});function gg(e){let t=xn(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:mg}=pi,Pr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Pr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:xg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Pr,r=typeof e=="string"?mg(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}=Pr._parseInt(r.subarray(2)),{d:s,l:a}=Pr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Xe=BigInt(0),ae=BigInt(1),K8=BigInt(2),Bu=BigInt(3),O8=BigInt(4);function bg(e){let t=gg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let x=p.toAffine();return Fe(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"&&Xe<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=Oe(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:Me(xt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return x&&(m=ct(m,v)),a(m),m}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,x){if(this.px=p,this.py=y,this.pz=x,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(p){let{x:y,y:x}=p||{};if(!p||!r.isValid(y)||!r.isValid(x))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let v=m=>r.eql(m,r.ZERO);return v(y)&&v(x)?l.ZERO:new l(y,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(x=>x.pz));return p.map((x,v)=>x.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(xt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let x=r.sqr(y),v=o(p);if(!r.eql(x,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py: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,Bu),{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),U=r.mul(v,m);return U=r.add(U,U),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(U,S),R=r.mul(x,R),M=r.mul(p,M),U=r.sub(L,M),U=r.mul(p,U),U=r.add(U,R),R=r.add(L,L),L=r.add(R,L),L=r.add(L,M),L=r.mul(L,U),B=r.add(B,L),M=r.mul(m,C),M=r.add(M,M),L=r.mul(M,U),S=r.sub(S,L),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:C,pz:S}=p,B=r.ZERO,R=r.ZERO,L=r.ZERO,O=t.a,M=r.mul(t.b,Bu),U=r.mul(y,m),q=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(U,q),Z=r.sub(Z,A),A=r.add(y,v);let N=r.add(m,S);return A=r.mul(A,N),N=r.add(U,z),A=r.sub(A,N),N=r.add(x,v),B=r.add(C,S),N=r.mul(N,B),B=r.add(q,z),N=r.sub(N,B),L=r.mul(O,A),B=r.mul(M,z),L=r.add(B,L),B=r.sub(q,L),L=r.add(q,L),R=r.mul(B,L),q=r.add(U,U),q=r.add(q,U),z=r.mul(O,z),A=r.mul(M,A),q=r.add(q,z),z=r.sub(U,z),z=r.mul(O,z),A=r.add(A,z),U=r.mul(q,A),R=r.add(R,U),U=r.mul(N,A),B=r.mul(Z,B),B=r.sub(B,U),U=r.mul(Z,q),L=r.mul(N,L),L=r.add(L,U),new l(B,R,L)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let x=r.invertBatch(y.map(v=>v.pz));return y.map((v,m)=>v.toAffine(x[m])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Xe)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>Xe||S>Xe;)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:U}=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(U)}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===Xe||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 Oe(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=xi(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function vg(e){let t=xn(e);return ne(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Au(e){let t=vg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return Xe<A&&A<r.ORDER}function a(A){return ct(A,n)}function c(A){return yi(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=bg({...t,toBytes(A,N,T){let _=N.toAffine(),w=r.toBytes(_.x),k=Fe;return T?k(Uint8Array.from([N.hasEvenY()?2:3]),w):k(Uint8Array.from([4]),w,r.toBytes(_.y))},fromBytes(A){let N=A.length,T=A[0],_=A.subarray(1);if(N===i&&(T===2||T===3)){let w=Me(_);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),F=(K&ae)===ae;return(T&1)===1!==F&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(_.subarray(0,r.BYTES)),k=r.fromBytes(_.subarray(r.BYTES,2*r.BYTES));return{x:w,y:k}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>Oe(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)=>Me(A.slice(N,T));class x{constructor(N,T,_){this.r=N,this.s=T,this.recovery=_,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=xt("compactSignature",N,T*2),new x(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:_}=Pr.toSig(xt("DER",N));return new x(T,_)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new x(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:_,recovery:w}=this,k=R(xt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let F=w&1?"03":"02",$=f.fromHex(F+g(K)),Y=c(K),rt=a(-k*Y),X=a(_*Y),J=f.BASE.multiplyAndAddUnsafe($,rt,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new x(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return gr(this.toDERHex())}toDERHex(){return Pr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return gr(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=zo(t.n);return O0(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=Me(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=gn(t.nBitLength);function O(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(Xe<=A&&A<L))throw new Error(`bigint expected < 2^${t.nBitLength}`);return er(A,t.nByteLength)}function M(A,N,T=U){if(["recovered","canonical"].some(ht=>ht in T))throw new Error("sign() legacy options not supported");let{hash:_,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:F}=T;k==null&&(k=!0),A=xt("msgHash",A),K&&(A=xt("prehashed msgHash",_(A)));let $=R(A),Y=u(N),rt=[O(Y),O($)];if(F!=null){let ht=F===!0?w(r.BYTES):F;rt.push(xt("extraEntropy",ht))}let X=Fe(...rt),J=$;function pt(ht){let Ft=B(ht);if(!d(Ft))return;let Ht=c(Ft),Pt=f.BASE.multiply(Ft).toAffine(),Gt=a(Pt.x);if(Gt===Xe)return;let De=a(Ht*a(J+Gt*Y));if(De===Xe)return;let hr=(Pt.x===Gt?0:2)|Number(Pt.y&ae),ln=De;return k&&h(De)&&(ln=p(De),hr^=1),new x(Gt,ln,hr)}return{seed:X,k2sig:pt}}let U={lowS:t.lowS,prehash:!1},q={lowS:t.lowS,prehash:!1};function z(A,N,T=U){let{seed:_,k2sig:w}=M(A,N,T),k=t;return Mo(k.hash.outputLen,k.nByteLength,k.hmac)(_,w)}f.BASE._setWindowSize(8);function Z(A,N,T,_=q){let w=A;if(N=xt("msgHash",N),T=xt("publicKey",T),"strict"in _)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=_,F,$;try{if(typeof w=="string"||he(w))try{F=x.fromDER(w)}catch(Pt){if(!(Pt instanceof Pr.Err))throw Pt;F=x.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Pt,s:Gt}=w;F=new x(Pt,Gt)}else throw new Error("PARSE");$=f.fromHex(T)}catch(Pt){if(Pt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&F.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:rt}=F,X=R(N),J=c(rt),pt=a(X*J),ht=a(Y*J),Ft=f.BASE.multiplyAndAddUnsafe($,pt,ht)?.toAffine();return Ft?a(Ft.x)===Y:!1}return{CURVE:t,getPublicKey:m,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:x,utils:v}}function wg(e){return{hash:e,hmac:(t,...r)=>zr(e,t,ui(...r)),randomBytes:yr}}function Iu(e,t){let r=n=>Au({...e,...wg(n)});return Object.freeze({...r(t),create:r})}var _u=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Cu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Eg=BigInt(1),la=BigInt(2),Tu=(e,t)=>(e+t/la)/t;function Sg(e){let t=_u,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=mt(u,r,t)*u%t,d=mt(l,r,t)*u%t,g=mt(d,la,t)*f%t,h=mt(g,i,t)*g%t,p=mt(h,o,t)*h%t,y=mt(p,a,t)*p%t,x=mt(y,c,t)*y%t,v=mt(x,a,t)*p%t,m=mt(v,r,t)*u%t,C=mt(m,s,t)*h%t,S=mt(C,n,t)*f%t,B=mt(S,la,t);if(!ha.eql(ha.sqr(B),e))throw new Error("Cannot find square root");return B}var ha=gi(_u,void 0,void 0,{sqrt:Sg}),we=Iu({a:BigInt(0),b:BigInt(7),Fp:ha,n:Cu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Cu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Eg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Tu(o*e,t),c=Tu(-n*e,t),f=ct(e-a*r-c*i,t),u=ct(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Gr),$8=BigInt(0);var Y8=we.ProjectivePoint;function Lu(){return we.utils.randomPrivateKey()}function Ru(e,t){let r=zt.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 Nu(e,t,r){let n=zt.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 Pu(e){return we.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Du(e){try{we.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}function da(e){try{we.ProjectivePoint.fromHex(e)}catch(t){throw new et(String(t),"ERR_INVALID_PUBLIC_KEY")}}function ku(e){try{return we.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Fn=class{_key;constructor(t){da(t),this._key=t}verify(t,r){return Nu(this._key,r,t)}marshal(){return Pu(this._key)}get bytes(){return Le.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}async hash(){let t=zt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}},Hn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??ku(t),Du(this._key),da(this._publicKey)}sign(t){return Ru(this._key,t)}get public(){return new Fn(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ot(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return en(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Ag(e){return new Hn(e)}function Ig(e){return new Fn(e)}async function Cg(){let e=Lu();return new Hn(e)}var Dr={rsa:ua,ed25519:oa,secp256k1:pa};function Uu(e){let t=Object.keys(Dr).join(" / ");return new et(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Ku(e){let t=Le.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Dr.rsa.unmarshalRsaPublicKey(r);case St.Ed25519:return Dr.ed25519.unmarshalEd25519PublicKey(r);case St.Secp256k1:return Dr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Uu(t.Type??"unknown")}}async function Ou(e){let t=Re.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Dr.rsa.unmarshalRsaPrivateKey(r);case St.Ed25519:return Dr.ed25519.unmarshalEd25519PrivateKey(r);case St.Secp256k1:return Dr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Uu(t.Type??"RSA")}}var _g=Symbol.for("nodejs.util.inspect.custom"),Mu=Object.values(_e).map(e=>e.decoder).reduce((e,t)=>e.or(t),_e.identity.decoder),Vu=114,ya=36,ga=37,qn=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()})`}[Sf]=!0;toString(){return this.string==null&&(this.string=_t.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return me.createV1(Vu,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t==null)return!1;if(t instanceof Uint8Array)return It(this.multihash.bytes,t);if(typeof t=="string")return xa(t).equals(this);if(t?.multihash?.bytes!=null)return It(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[_g](){return`PeerId(${this.toString()})`}},sn=class extends qn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},an=class extends qn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},cn=class extends qn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function xa(e,t){if(t=t??Mu,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=fr(_t.decode(`z${e}`));return e.startsWith("12D")?new an({multihash:r}):e.startsWith("16U")?new cn({multihash:r}):new sn({multihash:r})}return Lg(Mu.decode(e))}function Lg(e){try{let t=fr(e);if(t.code===ur.code){if(t.digest.length===ya)return new an({multihash:t});if(t.digest.length===ga)return new cn({multihash:t})}if(t.code===zt.code)return new sn({multihash:t})}catch{return Rg(me.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Rg(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Vu)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===zt.code)return new sn({multihash:e.multihash});if(t.code===ur.code){if(t.digest.length===ya)return new an({multihash:e.multihash});if(t.digest.length===ga)return new cn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function ma(e,t){return e.length===ya?new an({multihash:xe(ur.code,e),privateKey:t}):e.length===ga?new cn({multihash:xe(ur.code,e),privateKey:t}):new sn({multihash:await zt.digest(e),publicKey:e,privateKey:t})}var Yi;(function(e){let t;e.codec=()=>(t==null&&(t=_r((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=>Tr(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Yi||(Yi={}));var zn;(function(e){let t;e.codec=()=>(t==null&&(t=_r((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),Yi.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:nt(0),identitySig:nt(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.identityKey=r.bytes();break}case 2:{i.identitySig=r.bytes();break}case 4:{i.extensions=Yi.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(zn||(zn={}));async function Fu(e,t,r){let n=await Pg(e,Hu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Ng(e.publicKey,n,r)}function Ng(e,t,r){return zn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Pg(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await Ou(e.privateKey)).sign(t)}async function ba(e){return ma(e.identityKey)}function va(e){return zn.decode(e)}function Hu(e){let t=Bt("noise-libp2p-static-key:");return e instanceof Uint8Array?At([t,e],t.length+e.length):(e.prepend(t),e)}async function wa(e,t,r){let n=await ma(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Hu(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 Ku(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Gn(e){return!(!(e instanceof Uint8Array)&&!kr(e)||e.byteLength!==32)}var Dg=0,kg=4294967295,Ug="Cipherstate has reached maximum n, a new handshake must be performed",Zi=class{n;bytes;view;constructor(t=Dg){this.n=t,this.bytes=nt(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>kg)throw new Error(Ug)}};var Xi=class{crypto;log;constructor(t,r){this.log=t.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return nt(32)}isEmptyKey(t){let r=this.createEmptyKey();return It(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:nt(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),nt(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new Ct(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new Zi}}initializeSymmetric(t){let r=Bt(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=nt(32);return r.set(t),r}else return this.getHash(t,nt(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,nt(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,nt(0),r),i=this.createEmptyKey(),o=nt(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,nt(0),r.ciphertext)}};var Qi=class extends Xi{initializeInitiator(t,r,n,i){let s=this.initializeSymmetric("Noise_XX_25519_ChaChaPoly_SHA256");this.mixHash(s,t);let a=nt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let s=this.initializeSymmetric("Noise_XX_25519_ChaChaPoly_SHA256");this.mixHash(s,t);let a=nt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=nt(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Gn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Gn(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&&Gn(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&&Gn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=nt(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=nt(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};function qu(e,t){!t.enabled||!Or||(t(`LOCAL_STATIC_PUBLIC_KEY ${ot(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${ot(e.privateKey,"hex")}`))}function Ea(e,t){!t.enabled||!Or||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${ot(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${ot(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function zu(e,t){!t.enabled||!Or||t(`REMOTE_STATIC_PUBLIC_KEY ${ot(e.subarray(),"hex")}`)}function Sa(e,t){!t.enabled||!Or||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${ot(e.subarray(),"hex")}`)}function Gu(e,t){!t.enabled||!Or||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${ot(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${ot(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var Ji=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 Qi(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(qu(this.session.hs.s,this.log),this.isInitiator){this.log.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,nt(0));await this.connection.write(X0(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),Ea(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=j0((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new mr("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),Sa(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=tc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new mr("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),Sa(this.session.hs.re,this.log),zu(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=va(r);this.remotePeer=this.remotePeer||await ba(i),await wa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Sn(`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(Q0(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Ea(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(J0(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=ec((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new mr("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=va(r);this.remotePeer=this.remotePeer||await ba(i),await wa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Sn(`Error occurred while verifying signed payload: ${o.message}`)}}Gu(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,nt(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,nt(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new mr("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 Wu(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var ji=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(t,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=t;this.components=t,this.crypto=o??Z0,this.extensions=i,this.metrics=a?Wu(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??nt(0)}async secureOutbound(t,r,n){let i=vo(r,{lengthEncoder:Wr,lengthDecoder:wn,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=vo(r,{lengthEncoder:Wr,lengthDecoder:wn,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 Fu(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 Ji(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]=f0(),o=t.unwrap();return await l0(n,ic(r,this.metrics),o,s=>pn(s,{lengthDecoder:wn}),oc(r,this.metrics),n),i}};function $u(e={}){return t=>new ji(t,e)}var to=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 Yu=45,Kg=15,fn=new to;function Ba(e){if(!(e.length>Kg))return fn.new(e).parseWith(()=>fn.readIPv4Addr())}function Aa(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Yu))return fn.new(e).parseWith(()=>fn.readIPv6Addr())}function eo(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Yu))return fn.new(e).parseWith(()=>fn.readIPAddr())}var qE=parseInt("0xFFFF",16),zE=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function ro(e){return!!Ba(e)}function no(e){return!!Aa(e)}function io(e){return!!eo(e)}var Qu=ro,Hg=no,Ia=function(e){let t=0;if(e=e.toString().trim(),Qu(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Hg(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Qu(r[n]),s;o&&(s=Ia(r[n]),r[n]=ot(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,ot(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},Ju=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 un={},Ca={},zg=[[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"]];zg.forEach(e=>{let t=Gg(...e);Ca[t.code]=t,un[t.name]=t});function Gg(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function lt(e){if(typeof e=="number"){if(Ca[e]!=null)return Ca[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(un[e]!=null)return un[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var CS=lt("ip4"),TS=lt("ip6"),_S=lt("ipcidr");function _a(e,t){switch(lt(e).code){case 4:case 41:return $g(t);case 42:return el(t);case 6:case 273:case 33:case 132:return nl(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return el(t);case 421:return Qg(t);case 444:return rl(t);case 445:return rl(t);case 466:return Xg(t);default:return ot(t,"base16")}}function La(e,t){switch(lt(e).code){case 4:return ju(t);case 41:return ju(t);case 42:return tl(t);case 6:case 273:case 33:case 132:return Ra(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return tl(t);case 421:return Yg(t);case 444:return Jg(t);case 445:return jg(t);case 466:return Zg(t);default:return Bt(t,"base16")}}var Ta=Object.values(_e).map(e=>e.decoder),Wg=function(){let e=Ta[0].or(Ta[1]);return Ta.slice(2).forEach(t=>e=e.or(t)),e}();function ju(e){if(!io(e))throw new Error("invalid ip address");return Ia(e)}function $g(e){let t=Ju(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!io(t))throw new Error("invalid ip address");return t}function Ra(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function nl(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function tl(e){let t=Bt(e),r=Uint8Array.from(Qe(t.length));return At([r,t],r.length+t.length)}function el(e){let t=fe(e);if(e=e.slice($t(t)),e.length!==t)throw new Error("inconsistent lengths");return ot(e)}function Yg(e){let t;e[0]==="Q"||e[0]==="1"?t=fr(_t.decode(`z${e}`)).bytes:t=me.parse(e).multihash.bytes;let r=Uint8Array.from(Qe(t.length));return At([r,t],r.length+t.length)}function Zg(e){let t=Wg.decode(e),r=Uint8Array.from(Qe(t.length));return At([r,t],r.length+t.length)}function Xg(e){let t=fe(e),r=e.slice($t(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+ot(r,"base64url")}function Qg(e){let t=fe(e),r=e.slice($t(t));if(r.length!==t)throw new Error("inconsistent lengths");return ot(r,"base58btc")}function Jg(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=$e.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=Ra(n);return At([r,i],r.length+i.length)}function jg(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=$e.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=Ra(n);return At([r,i],r.length+i.length)}function rl(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=ot(t,"base32"),i=nl(r);return`${n}:${i}`}function il(e){e=Na(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=lt(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw sl("invalid address: "+e);if(a.path===!0){n=Na(i.slice(o).join("/")),t.push([a.code,La(a.code,n)]),r.push([a.code,n]);break}let c=La(a.code,i[o]);t.push([a.code,c]),r.push([a.code,_a(a.code,c)])}return{string:ol(r),bytes:Da(t),tuples:t,stringTuples:r,path:n}}function Pa(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=fe(e,i),s=$t(o),a=lt(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 sl("Invalid address Uint8Array: "+ot(e,"base16"));t.push([o,f]);let u=_a(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=lt(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Na(t.join("/"))}function Da(e){return At(e.map(t=>{let r=lt(t[0]),n=Uint8Array.from(Qe(r.code));return t.length>1&&t[1]!=null&&(n=At([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+$t(r)}}function Na(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function sl(e){return new Error("Error parsing address: "+e)}var ex=Symbol.for("nodejs.util.inspect.custom"),Ua=Symbol.for("@multiformats/js-multiaddr/multiaddr"),rx=[lt("dns").code,lt("dns4").code,lt("dns6").code,lt("dnsaddr").code],ka=class e{bytes;#e;#t;#r;#n;[Ua]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Pa(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=il(t)}else if(cl(t))r=Pa(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,r,n,i,o="",s=lt("tcp"),a=lt("udp"),c=lt("ip4"),f=lt("ip6"),u=lt("dns6"),l=lt("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),rx.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=lt(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=lt(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},lt(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>lt(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Da(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===un.p2p.code&&t.push([n,i]),n===un["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?ot(_t.decode(`z${n}`),"base58btc"):ot(me.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return It(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=al.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)}[ex](){return`Multiaddr(${this.#e})`}};var al=new Map;function cl(e){return!!e?.[Ua]}var nx=e=>e.toString().split("/").slice(1),Wn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Lt=e=>({match:t=>Wn(r=>r===e).match(t),pattern:e}),ao=()=>({match:e=>Wn(t=>typeof t=="string").match(e),pattern:"{string}"}),fl=()=>({match:e=>Wn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ce=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{_t.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),oo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Ns.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(", ")})`}),Rt=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Kt(...e){function t(i){let o=nx(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 Oa=Rt(Lt("dns4"),ao()),Ma=Rt(Lt("dns6"),ao()),Va=Rt(Lt("dnsaddr"),ao()),ul=Rt(Lt("dns"),ao()),o3=Kt(Oa),s3=Kt(Ma),a3=Kt(Va),c3=Kt(Pe(ul,Va,Oa,Ma)),ll=Rt(Lt("ip4"),Wn(ro)),hl=Rt(Lt("ip6"),Wn(no)),dl=Pe(ll,hl),$n=Pe(dl,ul,Oa,Ma,Va),f3=Kt($n),u3=Kt(ll),l3=Kt(hl),h3=Kt(dl),co=Rt($n,Lt("tcp"),fl()),Yn=Rt($n,Lt("udp"),fl()),ix=Pe(co,Yn),d3=Kt(co),p3=Kt(Yn),Fa=Rt(Yn,Lt("quic")),fo=Rt(Yn,Lt("quic-v1")),ox=Pe(Fa,fo),y3=Kt(Fa),g3=Kt(fo),Ka=Pe($n,co,Yn,Fa,fo),pl=Pe(Rt(Ka,Lt("ws"),Ne(ce()))),x3=Kt(pl),yl=Pe(Rt(Ka,Lt("wss"),Ne(ce())),Rt(Ka,Lt("tls"),Lt("ws"),Ne(ce()))),m3=Kt(yl),gl=Rt(ix,Lt("webrtc-direct"),oo(),Ne(oo()),Ne(ce())),b3=Kt(gl),xl=Rt(fo,Lt("webtransport"),oo(),oo(),Ne(ce())),uo=Kt(xl),so=Pe(pl,yl,Rt(co,Ne(ce())),Rt(ox,Ne(ce())),Rt($n,Ne(ce())),gl,xl,ce()),v3=Kt(so),sx=Rt(so,Lt("p2p-circuit"),ce()),w3=Kt(sx),ax=Pe(Rt(so,Lt("p2p-circuit"),Lt("webrtc"),ce()),Rt(so,Lt("webrtc"),Ne(ce())),Lt("webrtc")),E3=Kt(ax);async function Ha(e,t,r,n,i,o){let s=o.forComponent(`libp2p:webtransport:stream:${r}:${t}`),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Ct(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}},log:s};return g}function qa(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function ml(e,t){return t.filter(n=>!!e.find(i=>It(n,i))).length===t.length}var cx=Object.values(_e).map(e=>e.decoder).reduce((e,t)=>e.or(t));function fx(e){return Te.decode(cx.decode(e))}function bl(e){if(!uo.matches(e))throw new et("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===lt("certhash").code).map(([s,a])=>fx(a??"")),n=t.filter(([s,a])=>s===lt("p2p").code).map(([s,a])=>xa(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 za=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";[If]=!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}=bl(t);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},log:this.components.logger.forComponent("libp2p:webtransport:maconn"),...qa()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let d of l)d instanceof Uint8Array?await s.write(d):await s.write(d.subarray())}},f=$u()(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}`)}),!ml(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(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 Ha(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 Ha(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...qa()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(uo.exactMatch)}};function ux(e={}){return t=>new za(t,e)}return Pl(lx);})();
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 Pd(e){return e.replace(/^\s+/,"")}});var Oc=yt((Y2,Kc)=>{var Se=dt();vr();Nt();var Dc=Kc.exports=Se.sha256=Se.sha256||{};Se.md.sha256=Se.md.algorithms.sha256=Dc;Dc.create=function(){kc||Dd();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),Pc(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(ls.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};Pc(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 ls=null,kc=!1,Uc=null;function Dd(){ls="\x80",ls+=Se.util.fillString("\0",64),Uc=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],kc=!0}function Pc(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+Uc[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 Vc=yt((Z2,Mc)=>{var Be=dt();Nt();var Ni=null;Be.util.isNodejs&&!Be.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Ni=_i());var kd=Mc.exports=Be.prng=Be.prng||{};kd.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 Ni?(t.seedFile=function(f,u){Ni.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Ni.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 Tn=yt((X2,hs)=>{var Vt=dt();us();Oc();Vc();Nt();(function(){if(Vt.random&&Vt.random.getBytes){hs.exports=Vt.random;return}(function(e){var t={},r=new Array(4),n=Vt.util.createBuffer();t.formatKey=function(l){var d=Vt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Vt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Vt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return Vt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Vt.md.sha256;function i(){var l=Vt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=Vt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Vt.options.usePureJavaScript||!Vt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Vt.random)Vt.random=o;else for(var u in o)Vt.random[u]=o[u];Vt.random.createInstance=i,hs.exports=Vt.random})(typeof jQuery<"u"?jQuery:null)})()});var zc=yt((Q2,qc)=>{var Jt=dt();Nt();var ds=[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],Fc=[1,2,3,5],Ud=function(e,t){return e<<t&65535|(e&65535)>>16-t},Kd=function(e,t){return(e&65535)>>t|e<<16-t&65535};qc.exports=Jt.rc2=Jt.rc2||{};Jt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Jt.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(ds[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,ds[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,ds[r.at(a+1)^r.at(a+o)]);return r};var Hc=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Jt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=Ud(h[f],Fc[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=Kd(h[f],Fc[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var x=0;x<h.length;x++)for(var v=0;v<h[x][0];v++)h[x][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(h,p){h&&typeof h=="string"&&(h=Jt.util.createBuffer(h)),n=!1,i=Jt.util.createBuffer(),o=p||new Jt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var x=o.length(),v=o.at(x-1);v>x?p=!1:o.truncate(v)}return p}},g};Jt.rc2.startEncrypting=function(e,t,r){var n=Jt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createEncryptionCipher=function(e,t){return Hc(e,t,!0)};Jt.rc2.startDecrypting=function(e,t,r){var n=Jt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createDecryptionCipher=function(e,t){return Hc(e,t,!1)}});var ki=yt((J2,Jc)=>{var ps=dt();Jc.exports=ps.jsbn=ps.jsbn||{};var Ge,Od=0xdeadbeefcafe,Gc=(Od&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))}ps.jsbn.BigInteger=P;function at(){return new P(null)}function Md(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 Vd(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 Wc(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=Wc,Ge=28):Gc&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=Vd,Ge=30):Gc&&navigator.appName!="Netscape"?(P.prototype.am=Md,Ge=26):(P.prototype.am=Wc,Ge=28);P.prototype.DB=Ge;P.prototype.DM=(1<<Ge)-1;P.prototype.DV=1<<Ge;var ys=52;P.prototype.FV=Math.pow(2,ys);P.prototype.F1=ys-Ge;P.prototype.F2=2*Ge-ys;var Fd="0123456789abcdefghijklmnopqrstuvwxyz",Pi=new Array,Zr,ie;Zr=48;for(ie=0;ie<=9;++ie)Pi[Zr++]=ie;Zr=97;for(ie=10;ie<36;++ie)Pi[Zr++]=ie;Zr=65;for(ie=10;ie<36;++ie)Pi[Zr++]=ie;function $c(e){return Fd.charAt(e)}function Yc(e,t){var r=Pi[e.charCodeAt(t)];return r??-1}function Hd(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 qd(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=at();return t.fromInt(e),t}function zd(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:Yc(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 Gd(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function Wd(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=$c(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+=$c(n));return i?o:"0"}function $d(){var e=at();return P.ZERO.subTo(this,e),e}function Yd(){return this.s<0?this.negate():this}function Zd(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 Di(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 Xd(){return this.t<=0?0:this.DB*(this.t-1)+Di(this.data[this.t-1]^this.s&this.DM)}function Qd(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 Jd(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 jd(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 ep(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 rp(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 np(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 ip(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=at());var o=at(),s=this.s,a=e.s,c=this.DB-Di(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,x=t??at();for(o.dlShiftTo(y,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),P.ONE.dlShiftTo(f,x),x.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,x),r.subTo(x,r);r.data[p]<--v;)r.subTo(x,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&P.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function op(e){var t=at();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(P.ZERO)>0&&e.subTo(t,t),t}function wr(e){this.m=e}function sp(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function ap(e){return e}function cp(e){e.divRemTo(this.m,null,e)}function fp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function up(e,t){e.squareTo(t),this.reduce(t)}wr.prototype.convert=sp;wr.prototype.revert=ap;wr.prototype.reduce=cp;wr.prototype.mulTo=fp;wr.prototype.sqrTo=up;function lp(){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 Er(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 hp(e){var t=at();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(P.ZERO)>0&&this.m.subTo(t,t),t}function dp(e){var t=at();return e.copyTo(t),this.reduce(t),t}function pp(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 yp(e,t){e.squareTo(t),this.reduce(t)}function gp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Er.prototype.convert=hp;Er.prototype.revert=dp;Er.prototype.reduce=pp;Er.prototype.mulTo=gp;Er.prototype.sqrTo=yp;function xp(){return(this.t>0?this.data[0]&1:this.s)==0}function mp(e,t){if(e>4294967295||e<1)return P.ONE;var r=at(),n=at(),i=t.convert(this),o=Di(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 bp(e,t){var r;return e<256||t.isEven()?r=new wr(t):r=new Er(t),this.exp(e,r)}P.prototype.copyTo=Hd;P.prototype.fromInt=qd;P.prototype.fromString=zd;P.prototype.clamp=Gd;P.prototype.dlShiftTo=Qd;P.prototype.drShiftTo=Jd;P.prototype.lShiftTo=jd;P.prototype.rShiftTo=tp;P.prototype.subTo=ep;P.prototype.multiplyTo=rp;P.prototype.squareTo=np;P.prototype.divRemTo=ip;P.prototype.invDigit=lp;P.prototype.isEven=xp;P.prototype.exp=mp;P.prototype.toString=Wd;P.prototype.negate=$d;P.prototype.abs=Yd;P.prototype.compareTo=Zd;P.prototype.bitLength=Xd;P.prototype.mod=op;P.prototype.modPowInt=bp;P.ZERO=sr(0);P.ONE=sr(1);function vp(){var e=at();return this.copyTo(e),e}function wp(){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 Ep(){return this.t==0?this.s:this.data[0]<<24>>24}function Sp(){return this.t==0?this.s:this.data[0]<<16>>16}function Bp(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Ap(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Ip(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=at(),o=at(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function Cp(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=Yc(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 Tp(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),gs,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 _p(){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 Lp(e){return this.compareTo(e)==0}function Rp(e){return this.compareTo(e)<0?this:e}function Np(e){return this.compareTo(e)>0?this:e}function Pp(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 Dp(e,t){return e&t}function kp(e){var t=at();return this.bitwiseTo(e,Dp,t),t}function gs(e,t){return e|t}function Up(e){var t=at();return this.bitwiseTo(e,gs,t),t}function Zc(e,t){return e^t}function Kp(e){var t=at();return this.bitwiseTo(e,Zc,t),t}function Xc(e,t){return e&~t}function Op(e){var t=at();return this.bitwiseTo(e,Xc,t),t}function Mp(){for(var e=at(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function Vp(e){var t=at();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function Fp(e){var t=at();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function Hp(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 qp(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+Hp(this.data[e]);return this.s<0?this.t*this.DB:-1}function zp(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function Gp(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=zp(this.data[r]^t);return e}function Wp(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function $p(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function Yp(e){return this.changeBit(e,gs)}function Zp(e){return this.changeBit(e,Xc)}function Xp(e){return this.changeBit(e,Zc)}function Qp(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 Jp(e){var t=at();return this.addTo(e,t),t}function jp(e){var t=at();return this.subTo(e,t),t}function ty(e){var t=at();return this.multiplyTo(e,t),t}function ey(e){var t=at();return this.divRemTo(e,t,null),t}function ry(e){var t=at();return this.divRemTo(e,null,t),t}function ny(e){var t=at(),r=at();return this.divRemTo(e,t,r),new Array(t,r)}function iy(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function oy(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 _n(){}function Qc(e){return e}function sy(e,t,r){e.multiplyTo(t,r)}function ay(e,t){e.squareTo(t)}_n.prototype.convert=Qc;_n.prototype.revert=Qc;_n.prototype.mulTo=sy;_n.prototype.sqrTo=ay;function cy(e){return this.exp(e,new _n)}function fy(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 uy(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 Xr(e){this.r2=at(),this.q3=at(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function ly(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=at();return e.copyTo(t),this.reduce(t),t}function hy(e){return e}function dy(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 py(e,t){e.squareTo(t),this.reduce(t)}function yy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Xr.prototype.convert=ly;Xr.prototype.revert=hy;Xr.prototype.reduce=dy;Xr.prototype.mulTo=yy;Xr.prototype.sqrTo=py;function gy(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 wr(t):t.isEven()?o=new Xr(t):o=new Er(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=at();for(o.sqrTo(s[1],u);a<=f;)s[a]=at(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=at(),p;for(r=Di(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 xy(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 my(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 by(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 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],vy=(1<<26)/ge[ge.length-1];function wy(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<vy;)n*=ge[i++];for(n=r.modInt(n);t<i;)if(n%ge[t++]==0)return!1}return r.millerRabin(e)}function Ey(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=Sy(),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 Sy(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Bp;P.prototype.toRadix=Ip;P.prototype.fromRadix=Cp;P.prototype.fromNumber=Tp;P.prototype.bitwiseTo=Pp;P.prototype.changeBit=$p;P.prototype.addTo=Qp;P.prototype.dMultiply=iy;P.prototype.dAddOffset=oy;P.prototype.multiplyLowerTo=fy;P.prototype.multiplyUpperTo=uy;P.prototype.modInt=my;P.prototype.millerRabin=Ey;P.prototype.clone=vp;P.prototype.intValue=wp;P.prototype.byteValue=Ep;P.prototype.shortValue=Sp;P.prototype.signum=Ap;P.prototype.toByteArray=_p;P.prototype.equals=Lp;P.prototype.min=Rp;P.prototype.max=Np;P.prototype.and=kp;P.prototype.or=Up;P.prototype.xor=Kp;P.prototype.andNot=Op;P.prototype.not=Mp;P.prototype.shiftLeft=Vp;P.prototype.shiftRight=Fp;P.prototype.getLowestSetBit=qp;P.prototype.bitCount=Gp;P.prototype.testBit=Wp;P.prototype.setBit=Yp;P.prototype.clearBit=Zp;P.prototype.flipBit=Xp;P.prototype.add=Jp;P.prototype.subtract=jp;P.prototype.multiply=ty;P.prototype.divide=ey;P.prototype.remainder=ry;P.prototype.divideAndRemainder=ny;P.prototype.modPow=gy;P.prototype.modInverse=by;P.prototype.pow=cy;P.prototype.gcd=xy;P.prototype.isProbablePrime=wy});var nf=yt((j2,rf)=>{var Ae=dt();vr();Nt();var tf=rf.exports=Ae.sha1=Ae.sha1||{};Ae.md.sha1=Ae.md.algorithms.sha1=tf;tf.create=function(){ef||By();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),jc(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(xs.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};jc(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 xs=null,ef=!1;function By(){xs="\x80",xs+=Ae.util.fillString("\0",64),ef=!0}function jc(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 af=yt((tb,sf)=>{var Ie=dt();Nt();Tn();nf();var of=sf.exports=Ie.pkcs1=Ie.pkcs1||{};of.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=Ui(i,a-o.digestLength-1,s),y=Ie.util.xorBytes(h,p,h.length),x=Ui(y,o.digestLength,s),v=Ie.util.xorBytes(i,x,i.length);return"\0"+v+y};of.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=Ui(u,i.digestLength,o),d=Ie.util.xorBytes(f,l,f.length),g=Ui(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 Ui(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 cf=yt((eb,ms)=>{var ar=dt();Nt();ki();Tn();(function(){if(ar.prime){ms.exports=ar.prime;return}var e=ms.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,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 U=M.data;if(U.found){for(var q=0;q<S.length;++q)S[q].terminate();return L=!0,h(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:x}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var Oi=yt((rb,yf)=>{var W=dt();Cn();ki();Ei();af();cf();Tn();Nt();typeof st>"u"&&(st=W.jsbn.BigInteger);var st,bs=W.util.isNodejs?_i():null,E=W.asn1,oe=W.util;W.pki=W.pki||{};yf.exports=W.pki.rsa=W.rsa=W.rsa||{};var Q=W.pki,Ay=[6,4,2,4,2,4,6,2],Iy={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"}]},Cy={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"}]},Ty={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"}]},_y=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Ly={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"}]},Ry=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()},df=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(st.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(st.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new st(W.util.bytesToHex(W.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(st.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=pf(e,t,r)):(i=W.util.createBuffer(),i.putBytes(e));for(var s=new st(i.toHex(),16),a=df(s,t,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new st(W.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=df(s,t,r),c=a.toString(16),f=W.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),n!==!1?Ki(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||W.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new st(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new st(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new st(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(st.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(Py(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Ay[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(st.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(ff("generateKeyPair"))return bs.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:hf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return oe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(lf("generateKey")&&lf("exportKey")){var i=oe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:hf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=oe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer(W.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(ff("generateKeyPairSync")){var o=bs.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;Ny(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 pf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=Ki(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,Ly,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===W.oids.md2||h===W.oids.md5||h===W.oids.sha1||h===W.oids.sha224||h===W.oids.sha256||h===W.oids.sha384||h===W.oids.sha512||h===W.oids["sha512-224"]||h===W.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===W.oids.md2||h===W.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Ki(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:Ki};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return W.pkcs1.decode_rsa_oaep(h,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:Ry},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,Iy,t,r)&&(e=E.fromDer(W.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,Cy,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(t.privateKeyModulus).toHex(),o=W.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(t.privateKeyPrime1).toHex(),c=W.util.createBuffer(t.privateKeyPrime2).toHex(),f=W.util.createBuffer(t.privateKeyExponent1).toHex(),u=W.util.createBuffer(t.privateKeyExponent2).toHex(),l=W.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new st(i,16),new st(o,16),new st(s,16),new st(a,16),new st(c,16),new st(f,16),new st(u,16),new st(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,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,_y,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,Ty,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(t.publicKeyModulus).toHex(),s=W.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new st(o,16),new st(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.e))])};function pf(e,t,r){var n=W.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=W.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(e),n}function Ki(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=W.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function Ny(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.p=null,i();return}if(e.q.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(st.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function Ce(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=W.util.hexToBytes(t);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function Py(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 ff(e){return W.util.isNodejs&&typeof bs[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 lf(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 hf(e){for(var t=W.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var wf=yt((nb,vf)=>{var H=dt();us();Cn();Bc();vr();Ei();_c();Nc();Tn();zc();Oi();Nt();typeof gf>"u"&&(gf=H.jsbn.BigInteger);var gf,I=H.asn1,tt=H.pki=H.pki||{};vf.exports=tt.pbe=H.pbe=H.pbe||{};var Sr=tt.oids,Dy={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"}]},ky={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"}]}]},Uy={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=H.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=Sr["aes128-CBC"],l=H.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Sr["aes192-CBC"],l=H.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Sr["aes256-CBC"],l=H.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Sr.desCBC,l=H.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=bf(g),p=H.pkcs5.pbkdf2(t,n,i,s,h),y=H.random.getBytesSync(f),x=l(p);x.start(y),x.update(I.toDer(e)),x.finish(),c=x.output.getBytes();var v=Ky(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(Sr.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(Sr.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 H.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,m,1,i,s),y=tt.pbe.generatePkcs12Key(t,m,2,i,s),x=H.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(Sr["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,Dy,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=H.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 H.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=H.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=H.random.getBytesSync(16),a=H.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=H.random.getBytesSync(16),a=H.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=H.random.getBytesSync(16),a=H.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=H.random.getBytesSync(8),a=H.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=H.random.getBytesSync(8),a=H.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=H.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:H.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return H.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=H.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=H.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=H.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=H.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=H.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=H.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return H.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return H.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return H.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=H.util.hexToBytes(n.dekInfo.parameters),c=H.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(H.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 H.md))throw new Error('"sha1" hash algorithm unavailable.');o=H.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new H.util.ByteBuffer,l=new H.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 H.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new H.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var x=f*Math.ceil(d/f),v=new H.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 H.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 H.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 H.util.ByteBuffer;for(s=0;s<O;s++){var U=new H.util.ByteBuffer(m.getBytes(f)),q=511;for(a=L.length()-1;a>=0;a--)q=q>>8,q+=L.at(a)+U.at(a),U.setAt(a,q&255);M.putBuffer(U)}m=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!I.validate(t,ky,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=H.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=H.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=H.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=H.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=H.des.createDecryptionCipher;break;case"desCBC":c=8,f=H.des.createDecryptionCipher;break}var u=mf(n.prfOid),l=H.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,Uy,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=H.util.createBuffer(n.salt),a=H.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=H.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var x=H.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=mf(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 H.md))throw new Error('"md5" hash algorithm unavailable.');n=H.md.md5.create()}t===null&&(t="");for(var i=[xf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(xf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function xf(e,t){return e.start().update(t).digest().getBytes()}function mf(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 bf(t)}function bf(e){var t=H.md;switch(e){case"hmacWithSHA224":t=H.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function Ky(e,t,r,n){var i=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,H.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 lu=yt((xw,uu)=>{var vt=dt();vr();Nt();var Kn=uu.exports=vt.sha512=vt.sha512||{};vt.md.sha512=vt.md.algorithms.sha512=Kn;var cu=vt.sha384=vt.sha512.sha384=vt.sha512.sha384||{};cu.create=function(){return Kn.create("SHA-384")};vt.md.sha384=vt.md.algorithms.sha384=cu;vt.sha512.sha256=vt.sha512.sha256||{create:function(){return Kn.create("SHA-512/256")}};vt.md["sha512/256"]=vt.md.algorithms["sha512/256"]=vt.sha512.sha256;vt.sha512.sha224=vt.sha512.sha224||{create:function(){return Kn.create("SHA-512/224")}};vt.md["sha512/224"]=vt.md.algorithms["sha512/224"]=vt.sha512.sha224;Kn.create=function(e){if(fu||ng(),typeof e>"u"&&(e="SHA-512"),!(e in Rr))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=Rr[e],r=null,n=vt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=vt.util.createBuffer(),r=new Array(t.length);for(var f=0;f<t.length;++f)r[f]=t[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=vt.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),au(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=vt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(oa.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);au(p,i,c);var y=vt.util.createBuffer(),x;e==="SHA-512"?x=p.length:e==="SHA-384"?x=p.length-2:x=p.length-4;for(var h=0;h<x;++h)y.putInt32(p[h][0]),(h!==x-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var oa=null,fu=!1,sa=null,Rr=null;function ng(){oa="\x80",oa+=vt.util.fillString("\0",128),sa=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],Rr={},Rr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Rr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Rr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Rr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],fu=!0}function au(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,U,q,z,Z,A,N,T,_,w,k,K,F=r.length();F>=128;){for(A=0;A<16;++A)t[A][0]=r.getInt32()>>>0,t[A][1]=r.getInt32()>>>0;for(;A<80;++A)_=t[A-2],N=_[0],T=_[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,k=t[A-15],N=k[0],T=k[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[A-7],K=t[A-16],T=i+w[1]+s+K[1],t[A][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[A][1]=T>>>0;for(p=e[0][0],y=e[0][1],x=e[1][0],v=e[1][1],m=e[2][0],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],U=e[6][0],q=e[6][1],z=e[7][0],Z=e[7][1],A=0;A<80;++A)f=((R>>>14|L<<18)^(R>>>18|L<<14)^(L>>>9|R<<23))>>>0,u=((R<<18|L>>>14)^(R<<14|L>>>18)^(L<<23|R>>>9))>>>0,l=(U^R&(O^U))>>>0,d=(q^L&(M^q))>>>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+sa[A][1]+t[A][1],n=z+f+l+sa[A][0]+t[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=U,Z=q,U=O,q=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]+q,e[6][0]=e[6][0]+U+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,F-=128}}});var fx={};Dt(fx,{webTransport:()=>cx});function ke(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function rt(e=0){return globalThis.Buffer?.alloc!=null?ke(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function kt(e=0){return globalThis.Buffer?.allocUnsafe!=null?ke(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Nl=Math.pow(2,7),Pl=Math.pow(2,14),Dl=Math.pow(2,21),ho=Math.pow(2,28),po=Math.pow(2,35),yo=Math.pow(2,42),go=Math.pow(2,49),ft=128,Wt=127;function $t(e){if(e<Nl)return 1;if(e<Pl)return 2;if(e<Dl)return 3;if(e<ho)return 4;if(e<po)return 5;if(e<yo)return 6;if(e<go)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function kl(e,t,r=0){switch($t(e)){case 8:t[r++]=e&255|ft,e/=128;case 7:t[r++]=e&255|ft,e/=128;case 6:t[r++]=e&255|ft,e/=128;case 5:t[r++]=e&255|ft,e/=128;case 4:t[r++]=e&255|ft,e>>>=7;case 3:t[r++]=e&255|ft,e>>>=7;case 2:t[r++]=e&255|ft,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function Ul(e,t,r=0){switch($t(e)){case 8:t.set(r++,e&255|ft),e/=128;case 7:t.set(r++,e&255|ft),e/=128;case 6:t.set(r++,e&255|ft),e/=128;case 5:t.set(r++,e&255|ft),e/=128;case 4:t.set(r++,e&255|ft),e>>>=7;case 3:t.set(r++,e&255|ft),e>>>=7;case 2:t.set(r++,e&255|ft),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function Kl(e,t){let r=e[t],n=0;if(n+=r&Wt,r<ft||(r=e[t+1],n+=(r&Wt)<<7,r<ft)||(r=e[t+2],n+=(r&Wt)<<14,r<ft)||(r=e[t+3],n+=(r&Wt)<<21,r<ft)||(r=e[t+4],n+=(r&Wt)*ho,r<ft)||(r=e[t+5],n+=(r&Wt)*po,r<ft)||(r=e[t+6],n+=(r&Wt)*yo,r<ft)||(r=e[t+7],n+=(r&Wt)*go,r<ft))return n;throw new RangeError("Could not decode varint")}function Ol(e,t){let r=e.get(t),n=0;if(n+=r&Wt,r<ft||(r=e.get(t+1),n+=(r&Wt)<<7,r<ft)||(r=e.get(t+2),n+=(r&Wt)<<14,r<ft)||(r=e.get(t+3),n+=(r&Wt)<<21,r<ft)||(r=e.get(t+4),n+=(r&Wt)*ho,r<ft)||(r=e.get(t+5),n+=(r&Wt)*po,r<ft)||(r=e.get(t+6),n+=(r&Wt)*yo,r<ft)||(r=e.get(t+7),n+=(r&Wt)*go,r<ft))return n;throw new RangeError("Could not decode varint")}function Qe(e,t,r=0){return t==null&&(t=kt($t(e))),t instanceof Uint8Array?kl(e,t,r):Ul(e,t,r)}function fe(e,t=0){return e instanceof Uint8Array?Kl(e,t):Ol(e,t)}function At(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=kt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return ke(r)}function It(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var t0=Symbol.for("@achingbrain/uint8arraylist");function ja(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function kr(e){return!!e?.[t0]}var Ct=class e{bufs;length;[t0]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(kr(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(kr(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=ja(this.bufs,t);return r.buf[r.index]}set(t,r){let n=ja(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(kr(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return At(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:At(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=[...n],o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let f=t>=a&&t<c,u=r>a&&r<=c;if(f&&u){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!kr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=rt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=rt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=rt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=rt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=rt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=rt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=rt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=rt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!It(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function Xn(e){return e[Symbol.asyncIterator]!=null}var Qn=e=>{let t=$t(e),r=kt(t);return Qe(e,r),Qn.bytes=t,r};Qn.bytes=0;function dn(e,t){t=t??{};let r=t.lengthEncoder??Qn;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Xn(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}dn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??Qn;return new Ct(r(e.byteLength),e)};var Ur=Qt(n0(),1);var Vl=8,Fl=1024*1024*4,dr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(dr||(dr={}));var xo=e=>{let t=fe(e);return xo.bytes=$t(t),t};xo.bytes=0;function pn(e,t){let r=new Ct,n=dr.LENGTH,i=-1,o=t?.lengthDecoder??xo,s=t?.maxLengthLength??Vl,a=t?.maxDataLength??Fl;function*c(){for(;r.byteLength>0;){if(n===dr.LENGTH)try{if(i=o(r),i<0)throw(0,Ur.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Ur.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,Ur.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 Xn(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Ur.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,Ur.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}pn.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 pn(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 Jn=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function i0(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new Jn(r?.errorMessage,r?.errorCode));let n,i=new Jn(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 mo=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 i0(this.needNext.promise,r?.signal,r)}};function o0(){return new mo}var jn=class extends Error{code;constructor(t,r){super(t),this.code=r}},bo=class extends jn{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function s0(e,t){let r=o0();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new Ct;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new bo("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new Ct:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new jn("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 ti=class extends Error{code;constructor(t,r){super(t),this.code=r}},a0=e=>fe(e);a0.bytes=0;function vo(e,t={}){let r=s0(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=$t(t.maxDataLength)),{read:async i=>{let o=-1,s=new Ct,a=t?.lengthDecoder??a0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new ti("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new ti("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(dn.single(i,t),o)},writeV:async(i,o)=>{let s=new Ct(...i.map(a=>dn.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function wo(){let e=ue(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function c0(){let e=wo(),t=wo();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}var ei=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Kr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new ei(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 ei(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 Eo=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function ri(e={}){return ql(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},e)}function ql(e,t){t=t??{};let r=t.onEnd,n=new Kr,i,o,s,a=ue(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,x)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(m){x(m)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ue()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Kr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Kr,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let x=y?.signal;if(x?.throwIfAborted(),n.isEmpty())return;let v,m;x!=null&&(v=new Promise((C,S)=>{m=()=>{S(new Eo)},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 zl(e){return e[Symbol.asyncIterator]!=null}function Gl(...e){let t=[];for(let r of e)zl(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=ri({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var f0=Gl;function u0(e,...t){if(e==null)throw new Error("Empty pipeline");if(So(e)){let n=e;e=()=>n.source}else if(h0(e)||l0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&So(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++)So(r[n])&&(r[n]=$l(r[n]));return Wl(...r)}var Wl=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},l0=e=>e?.[Symbol.asyncIterator]!=null,h0=e=>e?.[Symbol.iterator]!=null,So=e=>e==null?!1:e.sink!=null&&e.source!=null,$l=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=ri({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(l0(o))i=async function*(){yield*o,n.end()};else if(h0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return f0(n,i())}return e.source};var Or=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Ue=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));function d0(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var p0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Yl=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Yl)throw new Error("Non little-endian hardware is not supported");function ni(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ii(e){if(typeof e=="string")e=ni(e);else if(d0(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var Zl=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function y0(e,t){if(t!==void 0&&(typeof t!="object"||!Zl(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function pr(e,t){if(!d0(e))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function g0(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 Bo=(e,t)=>(Object.assign(t,e),t);function Ao(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 oi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`wrong positive integer: ${e}`)}function Io(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function Xl(e){return e!=null&&typeof e=="object"&&(e instanceof Uint8Array||e.constructor.name==="Uint8Array")}function Mr(e,...t){if(!Xl(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 Co(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 x0(e,t){Mr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var qt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,To=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=ii(t),pr(t,32);let r=qt(t,0),n=qt(t,2),i=qt(t,4),o=qt(t,6),s=qt(t,8),a=qt(t,10),c=qt(t,12),f=qt(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=qt(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],x=qt(t,r+0),v=qt(t,r+2),m=qt(t,r+4),C=qt(t,r+6),S=qt(t,r+8),B=qt(t,r+10),R=qt(t,r+12),L=qt(t,r+14),O=o[0]+(x&8191),M=o[1]+((x>>>13|v<<3)&8191),U=o[2]+((v>>>10|m<<6)&8191),q=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,k=w+O*a+M*(5*y)+U*(5*p)+q*(5*h)+z*(5*g);w=k>>>13,k&=8191,k+=Z*(5*d)+A*(5*l)+N*(5*u)+T*(5*f)+_*(5*c),w+=k>>>13,k&=8191;let K=w+O*c+M*a+U*(5*y)+q*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+A*(5*d)+N*(5*l)+T*(5*u)+_*(5*f),w+=K>>>13,K&=8191;let F=w+O*f+M*c+U*a+q*(5*y)+z*(5*p);w=F>>>13,F&=8191,F+=Z*(5*h)+A*(5*g)+N*(5*d)+T*(5*l)+_*(5*u),w+=F>>>13,F&=8191;let $=w+O*u+M*f+U*c+q*a+z*(5*y);w=$>>>13,$&=8191,$+=Z*(5*p)+A*(5*h)+N*(5*g)+T*(5*d)+_*(5*l),w+=$>>>13,$&=8191;let Y=w+O*l+M*u+U*f+q*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 et=w+O*d+M*l+U*u+q*f+z*c;w=et>>>13,et&=8191,et+=Z*a+A*(5*y)+N*(5*p)+T*(5*h)+_*(5*g),w+=et>>>13,et&=8191;let X=w+O*g+M*d+U*l+q*u+z*f;w=X>>>13,X&=8191,X+=Z*c+A*a+N*(5*y)+T*(5*p)+_*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+U*d+q*l+z*u;w=J>>>13,J&=8191,J+=Z*f+A*c+N*a+T*(5*y)+_*(5*p),w+=J>>>13,J&=8191;let pt=w+O*p+M*h+U*g+q*d+z*l;w=pt>>>13,pt&=8191,pt+=Z*u+A*f+N*c+T*a+_*(5*y),w+=pt>>>13,pt&=8191;let ht=w+O*y+M*p+U*h+q*g+z*d;w=ht>>>13,ht&=8191,ht+=Z*l+A*u+N*f+T*c+_*a,w+=ht>>>13,ht&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=F,o[3]=$,o[4]=Y,o[5]=et,o[6]=X,o[7]=J,o[8]=pt,o[9]=ht}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){Co(this);let{buffer:r,blockLen:n}=this;t=ii(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){Co(this),x0(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 Ql(e){let t=(n,i)=>e(i).update(ii(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var m0=Ql(e=>new To(e));var Jl=ni("expand 16-byte k"),jl=ni("expand 32-byte k"),th=Ue(Jl),eh=Ue(jl);function G(e,t){return e<<t|e>>>32-t}function _o(e){return e.byteOffset%4===0}var si=64,rh=16,v0=2**32-1,b0=new Uint32Array;function nh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(si),u=Ue(f),l=_o(i)&&_o(o),d=l?Ue(i):b0,g=l?Ue(o):b0;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(si,c-h);if(l&&p===si){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let x=0,v;x<rh;x++)v=y+x,g[v]=d[v]^u[x];h+=si;continue}for(let y=0,x;y<p;y++)x=h+y,o[x]=i[x]^f[y];h+=p}}function Lo(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=y0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return oi(i),oi(s),Io(o),Io(r),(a,c,f,u,l=0)=>{Mr(a),Mr(c),Mr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Mr(u),oi(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=eh;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}`);_o(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 C=new Uint8Array(12);C.set(c,o?0:12-c.length),c=C,g.push(c)}let m=Ue(c);for(nh(e,y,x,m,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function S0(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,U=l,q=d,z=g,Z=h,A=p,N=y,T=x,_=v,w=m,k=C,K=S;for(let $=0;$<o;$+=2)B=B+M|0,_=G(_^B,16),Z=Z+_|0,M=G(M^Z,12),B=B+M|0,_=G(_^B,8),Z=Z+_|0,M=G(M^Z,7),R=R+U|0,w=G(w^R,16),A=A+w|0,U=G(U^A,12),R=R+U|0,w=G(w^R,8),A=A+w|0,U=G(U^A,7),L=L+q|0,k=G(k^L,16),N=N+k|0,q=G(q^N,12),L=L+q|0,k=G(k^L,8),N=N+k|0,q=G(q^N,7),O=O+z|0,K=G(K^O,16),T=T+K|0,z=G(z^T,12),O=O+z|0,K=G(K^O,8),T=T+K|0,z=G(z^T,7),B=B+U|0,K=G(K^B,16),N=N+K|0,U=G(U^N,12),B=B+U|0,K=G(K^B,8),N=N+K|0,U=G(U^N,7),R=R+q|0,_=G(_^R,16),T=T+_|0,q=G(q^T,12),R=R+q|0,_=G(_^R,8),T=T+_|0,q=G(q^T,7),L=L+z|0,w=G(w^L,16),Z=Z+w|0,z=G(z^Z,12),L=L+z|0,w=G(w^L,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,k=G(k^O,16),A=A+k|0,M=G(M^A,12),O=O+M|0,k=G(k^O,8),A=A+k|0,M=G(M^A,7);let F=0;n[F++]=s+B|0,n[F++]=a+R|0,n[F++]=c+L|0,n[F++]=f+O|0,n[F++]=u+M|0,n[F++]=l+U|0,n[F++]=d+q|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+k|0,n[F++]=S+K|0}function ih(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 oh=Lo(S0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),sh=Lo(S0,{counterRight:!1,counterLength:8,extendNonceFn:ih,allowShortKeys:!1});var ah=new Uint8Array(16),w0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(ah.subarray(r))},ch=new Uint8Array(32);function E0(e,t,r,n,i){let o=e(t,r,ch),s=m0.create(o);i&&w0(s,i),w0(s,n);let a=new Uint8Array(16),c=p0(a);Ao(c,0,BigInt(i?i.length:0),!0),Ao(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var B0=e=>(t,r,n)=>(pr(t,32),pr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?pr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=E0(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?pr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=E0(e,t,r,f,n);if(!g0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),Ro=Bo({blockSize:64,nonceLength:12,tagLength:16},B0(oh)),xm=Bo({blockSize:64,nonceLength:24,tagLength:16},B0(sh));function ai(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function fh(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function No(e,...t){if(!fh(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 yn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");ai(e.outputLen),ai(e.blockLen)}function Vr(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 A0(e,t){No(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var ci=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function I0(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var fi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),le=(e,t)=>e<<32-t|e>>>t,uh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!uh)throw new Error("Non little-endian hardware is not supported");function Po(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=Po(e)),!I0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function ui(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];if(!I0(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 Fr=class{clone(){return this._cloneInto()}},Em={}.toString;function li(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 yr(e=32){if(ci&&typeof ci.getRandomValues=="function")return ci.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function lh(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 Hr=class extends Fr{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=fi(this.buffer)}update(t){Vr(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=fi(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){Vr(this),A0(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;lh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=fi(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 hi=BigInt(4294967295),Do=BigInt(32);function C0(e,t=!1){return t?{h:Number(e&hi),l:Number(e>>Do&hi)}:{h:Number(e>>Do&hi)|0,l:Number(e&hi)|0}}function hh(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}=C0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var dh=(e,t)=>BigInt(e>>>0)<<Do|BigInt(t>>>0),ph=(e,t,r)=>e>>>r,yh=(e,t,r)=>e<<32-r|t>>>r,gh=(e,t,r)=>e>>>r|t<<32-r,xh=(e,t,r)=>e<<32-r|t>>>r,mh=(e,t,r)=>e<<64-r|t>>>r-32,bh=(e,t,r)=>e>>>r-32|t<<64-r,vh=(e,t)=>t,wh=(e,t)=>e,Eh=(e,t,r)=>e<<r|t>>>32-r,Sh=(e,t,r)=>t<<r|e>>>32-r,Bh=(e,t,r)=>t<<r-32|e>>>64-r,Ah=(e,t,r)=>e<<r-32|t>>>64-r;function Ih(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Ch=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Th=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,_h=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Lh=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,Rh=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Nh=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var Ph={fromBig:C0,split:hh,toBig:dh,shrSH:ph,shrSL:yh,rotrSH:gh,rotrSL:xh,rotrBH:mh,rotrBL:bh,rotr32H:vh,rotr32L:wh,rotlSH:Eh,rotlSL:Sh,rotlBH:Bh,rotlBL:Ah,add:Ih,add3L:Ch,add3H:Th,add4L:_h,add4H:Lh,add5H:Nh,add5L:Rh},j=Ph;var[Dh,kh]=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),ko=class extends Hr{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 C=je[m-15]|0,S=tr[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=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),U=j.rotrSL(L,O,19)^j.rotrBL(L,O,61)^j.shrSL(L,O,6),q=j.add4L(R,U,tr[m-7],tr[m-16]),z=j.add4H(q,B,M,je[m-7],je[m-16]);je[m]=z|0,tr[m]=q|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,kh[m],tr[m]),O=j.add5H(L,x,C,B,Dh[m],je[m]),M=L|0,U=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),q=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,q,Z);n=j.add3H(A,O,U,z),i=A|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:x,l:v}=j.add(this.Hh|0,this.Hl|0,x|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v)}roundClean(){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 Uo=li(()=>new ko);var pi={};Dt(pi,{bitGet:()=>Hh,bitLen:()=>Fh,bitMask:()=>gn,bitSet:()=>qh,bytesToHex:()=>Oe,bytesToNumberBE:()=>Me,bytesToNumberLE:()=>de,concatBytes:()=>Fe,createHmacDrbg:()=>Mo,ensureBytes:()=>xt,equalBytes:()=>Mh,hexToBytes:()=>gr,hexToNumber:()=>Oo,isBytes:()=>he,numberToBytesBE:()=>er,numberToBytesLE:()=>Ve,numberToHexUnpadded:()=>R0,numberToVarBytesBE:()=>Oh,utf8ToBytes:()=>Vh,validateObject:()=>ne});var L0=BigInt(0),di=BigInt(1),Uh=BigInt(2);function he(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var Kh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Oe(e){if(!he(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=Kh[e[r]];return t}function R0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Oo(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}var Ke={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function T0(e){if(e>=Ke._0&&e<=Ke._9)return e-Ke._0;if(e>=Ke._A&&e<=Ke._F)return e-(Ke._A-10);if(e>=Ke._a&&e<=Ke._f)return e-(Ke._a-10)}function gr(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=T0(e.charCodeAt(o)),a=T0(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 Me(e){return Oo(Oe(e))}function de(e){if(!he(e))throw new Error("Uint8Array expected");return Oo(Oe(Uint8Array.from(e).reverse()))}function er(e,t){return gr(e.toString(16).padStart(t*2,"0"))}function Ve(e,t){return er(e,t).reverse()}function Oh(e){return gr(R0(e))}function xt(e,t,r){let n;if(typeof t=="string")try{n=gr(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 Fe(...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 Mh(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 Vh(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Fh(e){let t;for(t=0;e>L0;e>>=di,t+=1);return t}function Hh(e,t){return e>>BigInt(t)&di}var qh=(e,t,r)=>e|(r?di:L0)<<BigInt(t),gn=e=>(Uh<<BigInt(e-1))-di,Ko=e=>new Uint8Array(e),_0=e=>Uint8Array.from(e);function Mo(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=Ko(e),i=Ko(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Ko())=>{i=a(_0([0]),l),n=a(),l.length!==0&&(i=a(_0([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 Fe(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var zh={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=zh[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Ut=BigInt(0),wt=BigInt(1),xr=BigInt(2),Gh=BigInt(3),Vo=BigInt(4),N0=BigInt(5),P0=BigInt(8),Wh=BigInt(9),$h=BigInt(16);function ct(e,t){let r=e%t;return r>=Ut?r:t+r}function Fo(e,t,r){if(r<=Ut||t<Ut)throw new Error("Expected power/modulo > 0");if(r===wt)return Ut;let n=wt;for(;t>Ut;)t&wt&&(n=n*e%r),e=e*e%r,t>>=wt;return n}function mt(e,t,r){let n=e;for(;t-- >Ut;)n*=n,n%=r;return n}function yi(e,t){if(e===Ut||t<=Ut)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=ct(e,t),n=t,i=Ut,o=wt,s=wt,a=Ut;for(;r!==Ut;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==wt)throw new Error("invert: does not exist");return ct(i,t)}function Yh(e){let t=(e-wt)/xr,r,n,i;for(r=e-wt,n=0;r%xr===Ut;r/=xr,n++);for(i=xr;i<e&&Fo(i,t,e)!==e-wt;i++);if(n===1){let s=(e+wt)/Vo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+wt)/xr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,wt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function Zh(e){if(e%Vo===Gh){let t=(e+wt)/Vo;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%P0===N0){let t=(e-N0)/P0;return function(n,i){let o=n.mul(i,xr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,xr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return e%$h,Yh(e)}var D0=(e,t)=>(ct(e,t)&wt)===wt,Xh=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Ho(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Xh.reduce((n,i)=>(n[i]="function",n),t);return ne(e,r)}function Qh(e,t,r){if(r<Ut)throw new Error("Expected power > 0");if(r===Ut)return e.ONE;if(r===wt)return t;let n=e.ONE,i=t;for(;r>Ut;)r&wt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=wt;return n}function Jh(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function qo(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function gi(e,t,r=!1,n={}){if(e<=Ut)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=qo(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Zh(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:gn(i),ZERO:Ut,ONE:wt,create:c=>ct(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ut<=c&&c<e},is0:c=>c===Ut,isOdd:c=>(c&wt)===wt,neg:c=>ct(-c,e),eql:(c,f)=>c===f,sqr:c=>ct(c*c,e),add:(c,f)=>ct(c+f,e),sub:(c,f)=>ct(c-f,e),mul:(c,f)=>ct(c*f,e),pow:(c,f)=>Qh(a,c,f),div:(c,f)=>ct(c*yi(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>yi(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Jh(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Ve(c,o):er(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?de(c):Me(c)}});return Object.freeze(a)}function k0(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 U0(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 zo(e){let t=U0(e);return t+Math.ceil(t/2)}function K0(e,t,r=!1){let n=e.length,i=U0(t),o=zo(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Me(e):de(e),a=ct(s,t-wt)+wt;return r?Ve(a,i):er(a,i)}var td=BigInt(0),Go=BigInt(1);function xi(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&Go&&(s=s.add(a)),a=a.double(),o>>=Go;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+=Go);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 xn(e){return Ho(e.Fp),ne(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...qo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var pe=BigInt(0),ee=BigInt(1),mi=BigInt(2),ed=BigInt(8),rd={zip215:!0};function nd(e){let t=xn(e);return ne(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function bi(e){let t=nd(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=mi<<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,k)=>{if(w.length||k)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,k,K,F){if(this.ex=w,this.ey=k,this.ez=K,this.et=F,!y(w))throw new Error("x required");if(!y(k))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(F))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:k,y:K}=w||{};if(!y(k)||!y(K))throw new Error("invalid affine point");return new S(k,K,ee,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,F)=>K.toAffine(k[F])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,m.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:F,ez:$,et:Y}=this,et=u(K*K),X=u(F*F),J=u($*$),pt=u(J*J),ht=u(et*w),Ft=u(J*u(ht+X)),Ht=u(pt+u(k*u(et*X)));if(Ft!==Ht)throw new Error("bad point: equation left != right (1)");let Pt=u(K*F),Gt=u($*Y);if(Pt!==Gt)throw new Error("bad point: equation left != right (2)")}equals(w){C(w);let{ex:k,ey:K,ez:F}=this,{ex:$,ey:Y,ez:et}=w,X=u(k*et),J=u($*F),pt=u(K*et),ht=u(Y*F);return X===J&&pt===ht}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:k,ey:K,ez:F}=this,$=u(k*k),Y=u(K*K),et=u(mi*u(F*F)),X=u(w*$),J=k+K,pt=u(u(J*J)-$-Y),ht=X+Y,Ft=ht-et,Ht=X-Y,Pt=u(pt*Ft),Gt=u(ht*Ht),De=u(pt*Ht),hr=u(Ft*ht);return new S(Pt,Gt,hr,De)}add(w){C(w);let{a:k,d:K}=t,{ex:F,ey:$,ez:Y,et}=this,{ex:X,ey:J,ez:pt,et:ht}=w;if(k===BigInt(-1)){let Ga=u(($-F)*(J+X)),Wa=u(($+F)*(J-X)),lo=u(Wa-Ga);if(lo===pe)return this.double();let $a=u(Y*mi*ht),Ya=u(et*mi*pt),Za=Ya+$a,Xa=Wa+Ga,Qa=Ya-$a,El=u(Za*lo),Sl=u(Xa*Qa),Bl=u(Za*Qa),Al=u(lo*Xa);return new S(El,Sl,Al,Bl)}let Ft=u(F*X),Ht=u($*J),Pt=u(et*K*ht),Gt=u(Y*pt),De=u((F+$)*(X+J)-Ft-Ht),hr=Gt-Pt,ln=Gt+Pt,za=u(Ht-k*Ft),ml=u(De*hr),bl=u(ln*za),vl=u(De*za),wl=u(hr*ln);return new S(ml,bl,wl,vl)}subtract(w){return this.add(w.negate())}wNAF(w){return L.wNAFCached(this,m,w,S.normalizeZ)}multiply(w){let{p:k,f:K}=this.wNAF(x(w,n));return S.normalizeZ([k,K])[0]}multiplyUnsafe(w){let k=v(w);return k===pe?R:this.equals(R)||k===ee?this:this.equals(B)?this.wNAF(k).p:L.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return L.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:F}=this,$=this.is0();w==null&&(w=$?ed:r.inv(F));let Y=u(k*w),et=u(K*w),X=u(F*w);if($)return{x:pe,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:et}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,k=!1){let{d:K,a:F}=t,$=r.BYTES;w=xt("pointHex",w,$);let Y=w.slice(),et=w[$-1];Y[$-1]=et&-129;let X=de(Y);X===pe||(k?x(X,f):x(X,r.ORDER));let J=u(X*X),pt=u(J-ee),ht=u(K*J-F),{isValid:Ft,value:Ht}=l(pt,ht);if(!Ft)throw new Error("Point.fromHex: invalid y coordinate");let Pt=(Ht&ee)===ee,Gt=(et&128)!==0;if(!k&&Ht===pe&&Gt)throw new Error("Point.fromHex: x=0 and x_0=1");return Gt!==Pt&&(Ht=u(-Ht)),S.fromAffine({x:Ht,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=Ve(k,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Oe(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(pe,ee,ee,pe);let{BASE:B,ZERO:R}=S,L=xi(S,a*8);function O(_){return ct(_,n)}function M(_){return O(de(_))}function U(_){let w=a;_=xt("private key",_,w);let k=xt("hashed private key",o(_),2*w),K=d(k.slice(0,w)),F=k.slice(w,2*w),$=M(K),Y=B.multiply($),et=Y.toRawBytes();return{head:K,prefix:F,scalar:$,point:Y,pointBytes:et}}function q(_){return U(_).pointBytes}function z(_=new Uint8Array,...w){let k=Fe(...w);return M(o(g(k,xt("context",_),!!i)))}function Z(_,w,k={}){_=xt("message",_),i&&(_=i(_));let{prefix:K,scalar:F,pointBytes:$}=U(w),Y=z(k.context,K,_),et=B.multiply(Y).toRawBytes(),X=z(k.context,et,$,_),J=O(Y+X*F);v(J);let pt=Fe(et,Ve(J,r.BYTES));return xt("result",pt,a*2)}let A=rd;function N(_,w,k,K=A){let{context:F,zip215:$}=K,Y=r.BYTES;_=xt("signature",_,2*Y),w=xt("message",w),i&&(w=i(w));let et=de(_.slice(Y,2*Y)),X,J,pt;try{X=S.fromHex(k,$),J=S.fromHex(_.slice(0,Y),$),pt=B.multiplyUnsafe(et)}catch{return!1}if(!$&&X.isSmallOrder())return!1;let ht=z(F,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(ht)).subtract(pt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:q,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(_=8,w=S.BASE){return w._setWindowSize(_),w.multiply(BigInt(3)),w}}}}var mn=BigInt(0),Wo=BigInt(1);function id(e){return ne(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function O0(e){let t=id(e),{P:r}=t,n=m=>ct(m,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(m=>m),c=t.powPminus2||(m=>Fo(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"&&mn<=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=Wo,O=mn,M=S,U=Wo,q=mn,z;for(let A=BigInt(i-1);A>=mn;A--){let N=B>>A&Wo;q^=N,z=f(q,L,M),L=z[0],M=z[1],z=f(q,O,U),O=z[0],U=z[1],q=N;let T=L+O,_=n(T*T),w=L-O,k=n(w*w),K=_-k,F=M+U,$=M-U,Y=n($*T),et=n(F*w),X=Y+et,J=Y-et;M=n(X*X),U=n(R*n(J*J)),L=n(_*k),O=n(K*(_+n(l*K)))}z=f(q,L,M),L=z[0],M=z[1],z=f(q,O,U),O=z[0],U=z[1];let Z=c(O);return n(L*Z)}function g(m){return Ve(n(m),o)}function h(m){let C=xt("u coordinate",m,o);return s===32&&(C[31]&=127),de(C)}function p(m){let C=xt("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===mn)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 bn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),M0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Ym=BigInt(0),od=BigInt(1),$o=BigInt(2),sd=BigInt(5),V0=BigInt(10),ad=BigInt(20),cd=BigInt(40),F0=BigInt(80);function H0(e){let t=bn,n=e*e%t*e%t,i=mt(n,$o,t)*n%t,o=mt(i,od,t)*e%t,s=mt(o,sd,t)*o%t,a=mt(s,V0,t)*s%t,c=mt(a,ad,t)*a%t,f=mt(c,cd,t)*c%t,u=mt(f,F0,t)*f%t,l=mt(u,F0,t)*f%t,d=mt(l,V0,t)*s%t;return{pow_p_5_8:mt(d,$o,t)*e%t,b2:n}}function q0(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function fd(e,t){let r=bn,n=ct(t*t*t,r),i=ct(n*n*t,r),o=H0(e*i).pow_p_5_8,s=ct(e*n*o,r),a=ct(t*s*s,r),c=s,f=ct(s*M0,r),u=a===e,l=a===ct(-e,r),d=a===ct(-e*M0,r);return u&&(s=c),(l||d)&&(s=f),D0(s,r)&&(s=ct(-s,r)),{isValid:u||l,value:s}}var He=gi(bn,void 0,!0),Yo={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:He,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Uo,randomBytes:yr,adjustScalarBytes:q0,uvRatio:fd},qr=bi(Yo);function z0(e,t,r){if(t.length>255)throw new Error("Context is too big");return ui(Po("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var Zm=bi({...Yo,domain:z0}),Xm=bi({...Yo,domain:z0,prehash:Uo}),vn=O0({P:bn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=bn,{pow_p_5_8:r,b2:n}=H0(e);return ct(mt(r,BigInt(3),t)*n,t)},adjustScalarBytes:q0,randomBytes:yr});var ud=(He.ORDER+BigInt(3))/BigInt(8),Qm=He.pow($o,ud),Jm=He.sqrt(He.neg(He.ONE)),jm=(He.ORDER-BigInt(5))/BigInt(8),t2=BigInt(486662);var e2=k0(He,He.neg(BigInt(486664)));var r2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),n2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),i2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),o2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var s2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var vi=class extends Fr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,yn(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 Vr(this),this.iHash.update(t),this}digestInto(t){Vr(this),No(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},zr=(e,t,r)=>new vi(e,t).update(r).digest();zr.create=(e,t)=>new vi(e,t);function W0(e,t,r){return yn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),zr(e,Je(r),Je(t))}var Zo=new Uint8Array([0]),G0=new Uint8Array;function $0(e,t,r,n=32){if(yn(e),ai(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=G0);let o=new Uint8Array(i*e.outputLen),s=zr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)Zo[0]=f+1,a.update(f===0?G0:c).update(r).update(Zo).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),Zo.fill(0),o.slice(0,n)}var ld=(e,t,r)=>e&t^~e&r,hd=(e,t,r)=>e&t^e&r^t&r,dd=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),Xo=class extends Hr{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+ld(a,c,f)+dd[l]+nr[l]|0,p=(le(n,2)^le(n,13)^le(n,22))+hd(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 Gr=li(()=>new Xo);var Qo={hashSHA256(e){return Gr(e.subarray())},getHKDF(e,t){let r=W0(Gr,t,e),i=$0(Gr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let e=vn.utils.randomPrivateKey();return{publicKey:vn.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:vn.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return vn.getSharedSecret(e.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return Ro(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return Ro(n,t,r).decrypt(e.subarray(),i)}};var Y0=Qo;var Wr=e=>{let t=kt(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Wr.bytes=2;var wn=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)};wn.bytes=2;function Z0(e){return new Ct(e.ne,e.ciphertext)}function X0(e){return new Ct(e.ne,e.ns,e.ciphertext)}function Q0(e){return new Ct(e.ns,e.ciphertext)}function J0(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:rt(0)}}function j0(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 tc(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:rt(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var rc=16;function nc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new Ct(Wr(s.byteLength),s)}}}function ic(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-rc<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-rc),{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 Sn=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},mr=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var m8=Qt(Cn(),1),b8=Qt(wf(),1);var Ef=Symbol.for("@libp2p/peer-id");var Bf=Symbol.for("@libp2p/transport");var Sf;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Sf||(Sf={}));var it=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var Ig=Qt(dt(),1);var Bs={};Dt(Bs,{base10:()=>qy});var ab=new Uint8Array(0);function Af(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function 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")}function If(e){return new TextEncoder().encode(e)}function Cf(e){return new TextDecoder().decode(e)}function Oy(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 My=Oy,Vy=My,_f=Vy;var vs=class{name;prefix;baseEncode;constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},ws=class{name;prefix;baseDecode;prefixCodePoint;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 Lf(this,t)}},Es=class{decoders;constructor(t){this.decoders=t}or(t){return Lf(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Lf(e,t){return new Es({...e.decoders??{[e.prefix]:e},...t.decoders??{[t.prefix]:t}})}var Ss=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new vs(t,r,n),this.decoder=new ws(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function Qr({name:e,prefix:t,encode:r,decode:n}){return new Ss(e,t,r,n)}function cr({name:e,prefix:t,alphabet:r}){let{encode:n,decode:i}=_f(r,e);return Qr({prefix:t,name:e,encode:n,decode:o=>We(i(o))})}function Fy(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}function Hy(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!==0&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o}function Tt({name:e,prefix:t,bitsPerChar:r,alphabet:n}){return Qr({prefix:t,name:e,encode(i){return Hy(i,n,r)},decode(i){return Fy(i,n,r,e)}})}var qy=cr({prefix:"9",name:"base10",alphabet:"0123456789"});var As={};Dt(As,{base16:()=>zy,base16upper:()=>Gy});var zy=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Gy=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Is={};Dt(Is,{base2:()=>Wy});var Wy=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Cs={};Dt(Cs,{base256emoji:()=>Qy});var Rf=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}"),$y=Rf.reduce((e,t,r)=>(e[r]=t,e),[]),Yy=Rf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function Zy(e){return e.reduce((t,r)=>(t+=$y[r],t),"")}function Xy(e){let t=[];for(let r of e){let n=Yy[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var Qy=Qr({prefix:"\u{1F680}",name:"base256emoji",encode:Zy,decode:Xy});var Ts={};Dt(Ts,{base32:()=>$e,base32hex:()=>e1,base32hexpad:()=>n1,base32hexpadupper:()=>i1,base32hexupper:()=>r1,base32pad:()=>jy,base32padupper:()=>t1,base32upper:()=>Jy,base32z:()=>o1});var $e=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Jy=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),jy=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),t1=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),e1=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),r1=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),n1=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),i1=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),o1=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var _s={};Dt(_s,{base36:()=>s1,base36upper:()=>a1});var s1=cr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),a1=cr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ls={};Dt(Ls,{base58btc:()=>_t,base58flickr:()=>c1});var _t=cr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),c1=cr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ns={};Dt(Ns,{base64:()=>Mi,base64pad:()=>f1,base64url:()=>Rs,base64urlpad:()=>u1});var Mi=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),f1=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Rs=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),u1=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Ps={};Dt(Ps,{base8:()=>l1});var l1=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ds={};Dt(Ds,{identity:()=>h1});var h1=Qr({prefix:"\0",name:"identity",encode:e=>Cf(e),decode:e=>If(e)});var Sb=new TextEncoder,Bb=new TextDecoder;var Ks={};Dt(Ks,{identity:()=>ur});var Te={};Dt(Te,{Digest:()=>Br,create:()=>xe,decode:()=>fr,equals:()=>Us});var y1=Df,Nf=128,g1=127,x1=~g1,m1=Math.pow(2,31);function Df(e,t,r){t=t||[],r=r||0;for(var n=r;e>=m1;)t[r++]=e&255|Nf,e/=128;for(;e&x1;)t[r++]=e&255|Nf,e>>>=7;return t[r]=e|0,Df.bytes=r-n+1,t}var b1=ks,v1=128,Pf=127;function ks(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw ks.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&Pf)<<i:(s&Pf)*Math.pow(2,i),i+=7}while(s>=v1);return ks.bytes=o-n,r}var w1=Math.pow(2,7),E1=Math.pow(2,14),S1=Math.pow(2,21),B1=Math.pow(2,28),A1=Math.pow(2,35),I1=Math.pow(2,42),C1=Math.pow(2,49),T1=Math.pow(2,56),_1=Math.pow(2,63),L1=function(e){return e<w1?1:e<E1?2:e<S1?3:e<B1?4:e<A1?5:e<I1?6:e<C1?7:e<T1?8:e<_1?9:10},R1={encode:y1,decode:b1,encodingLength:L1},N1=R1,Ln=N1;function Rn(e,t=0){return[Ln.decode(e,t),Ln.decode.bytes]}function Jr(e,t,r=0){return Ln.encode(e,t,r),t}function jr(e){return Ln.encodingLength(e)}function xe(e,t){let r=t.byteLength,n=jr(e),i=n+jr(r),o=new Uint8Array(i+r);return Jr(e,o,0),Jr(r,o,n),o.set(t,i),new Br(e,r,t,o)}function fr(e){let t=We(e),[r,n]=Rn(t),[i,o]=Rn(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Br(r,i,s,t)}function Us(e,t){if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Af(e.bytes,r.bytes)}}var Br=class{code;size;digest;bytes;constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var kf=0,P1="identity",Uf=We;function D1(e){return xe(kf,Uf(e))}var ur={code:kf,name:P1,encode:Uf,digest:D1};var Vs={};Dt(Vs,{sha256:()=>zt,sha512:()=>k1});function Ms({name:e,code:t,encode:r}){return new Os(e,t,r)}var Os=class{name;code;encode;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")}};function Of(e){return async t=>new Uint8Array(await crypto.subtle.digest(e,t))}var zt=Ms({name:"sha2-256",code:18,encode:Of("SHA-256")}),k1=Ms({name:"sha2-512",code:19,encode:Of("SHA-512")});function Mf(e,t){let{bytes:r,version:n}=e;switch(n){case 0:return K1(r,Fs(e),t??_t.encoder);default:return O1(r,Fs(e),t??$e.encoder)}}var Vf=new WeakMap;function Fs(e){let t=Vf.get(e);if(t==null){let r=new Map;return Vf.set(e,r),r}return t}var me=class e{code;version;multihash;bytes;"/";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!==Nn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==M1)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!=null&&t.code===n.code&&t.version===n.version&&Us(t.multihash,n.multihash)}toString(t){return Mf(this,t)}toJSON(){return{"/":Mf(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s??Ff(n,i,o.bytes))}else if(r[V1]===!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!==Nn)throw new Error(`Version 0 CID must use dag-pb (code: ${Nn}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=Ff(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Nn,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length!==0)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 Br(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=Rn(t.subarray(r));return r+=d,l},i=n(),o=Nn;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]=U1(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Fs(o).set(n,t),o}};function U1(e,t){switch(e[0]){case"Q":{let r=t??_t;return[_t.prefix,r.decode(`${_t.prefix}${e}`)]}case _t.prefix:{let r=t??_t;return[_t.prefix,r.decode(e)]}case $e.prefix:{let r=t??$e;return[$e.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)]}}}function K1(e,t,r){let{prefix:n}=r;if(n!==_t.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i}function O1(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}var Nn=112,M1=18;function Ff(e,t,r){let n=jr(e),i=n+jr(t),o=new Uint8Array(i+r.byteLength);return Jr(e,o,0),Jr(t,o,n),o.set(r,i),o}var V1=Symbol.for("@ipld/js-cid/CID");var _e={...Ds,...Is,...Ps,...Bs,...As,...Ts,..._s,...Ls,...Ns,...Cs},Gb={...Vs,...Ks};function qf(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Hf=qf("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Hs=qf("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=kt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),F1={utf8:Hf,"utf-8":Hf,hex:_e.base16,latin1:Hs,ascii:Hs,binary:Hs,..._e},Fi=F1;function Bt(e,t="utf8"){let r=Fi[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 ia={};Dt(ia,{Ed25519PrivateKey:()=>Lr,Ed25519PublicKey:()=>Un,generateKeyPair:()=>j1,generateKeyPairFromSeed:()=>su,unmarshalEd25519PrivateKey:()=>Q1,unmarshalEd25519PublicKey:()=>J1});var ev=Qt(Nt(),1),rv=Qt(ki(),1),zf=Qt(dt(),1);function ot(e,t="utf8"){let r=Fi[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=At([new Uint8Array(t-r.length),r])}return ot(r,"base64url")}function re(e){let t=Gf(e);return new zf.default.jsbn.BigInteger(ot(t,"base16"),16)}function Gf(e,t){let r=Bt(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=At([new Uint8Array(t-r.length),r])}return r}function se(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var tn=32,Ye=64,Hi=32;function Wf(){let e=qr.utils.randomPrivateKey(),t=qr.getPublicKey(e);return{privateKey:Xf(e,t),publicKey:t}}function $f(e){if(e.length!==Hi)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=qr.getPublicKey(t);return{privateKey:Xf(t,r),publicKey:r}}function Yf(e,t){let r=e.subarray(0,Hi);return qr.sign(t instanceof Uint8Array?t:t.subarray(),r)}function Zf(e,t,r){return qr.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function Xf(e,t){let r=new Uint8Array(Ye);for(let n=0;n<Hi;n++)r[n]=e[n],r[Hi+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 qs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function zs(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=jt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=Bt(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",qs,{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",qs,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(p,y,l);return At([g,p.iv,new Uint8Array(x)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=Bt(d));let x;if(d.length===0)try{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},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",qs,{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 en(e,t){let n=await zs().encrypt(e,t);return Mi.encode(n)}var Gs=new Float32Array([-0]),lr=new Uint8Array(Gs.buffer);function Jf(e,t,r){Gs[0]=e,t[r]=lr[0],t[r+1]=lr[1],t[r+2]=lr[2],t[r+3]=lr[3]}function jf(e,t){return lr[0]=e[t],lr[1]=e[t+1],lr[2]=e[t+2],lr[3]=e[t+3],Gs[0]}var Ws=new Float64Array([-0]),Yt=new Uint8Array(Ws.buffer);function tu(e,t,r){Ws[0]=e,t[r]=Yt[0],t[r+1]=Yt[1],t[r+2]=Yt[2],t[r+3]=Yt[3],t[r+4]=Yt[4],t[r+5]=Yt[5],t[r+6]=Yt[6],t[r+7]=Yt[7]}function eu(e,t){return Yt[0]=e[t],Yt[1]=e[t+1],Yt[2]=e[t+2],Yt[3]=e[t+3],Yt[4]=e[t+4],Yt[5]=e[t+5],Yt[6]=e[t+6],Yt[7]=e[t+7],Ws[0]}var q1=BigInt(Number.MAX_SAFE_INTEGER),z1=BigInt(Number.MIN_SAFE_INTEGER),te=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Ar;if(t<q1&&t>z1)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>ru&&(i=0n,++n>ru&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Ar;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):Ar}},Ar=new te(0,0);Ar.toBigInt=function(){return 0n};Ar.zzEncode=Ar.zzDecode=function(){return this};Ar.length=function(){return 1};var ru=4294967296n;function nu(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 iu(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function $s(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function ve(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function qi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var Ys=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,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 qi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ve(this,4);return qi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ve(this,4);let t=jf(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 iu(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 te(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw 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=qi(this.buf,this.pos+=4),r=qi(this.buf,this.pos+=4);return new te(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function Zs(e){return new Ys(e instanceof Uint8Array?e:e.subarray())}function Ir(e,t){let r=Zs(e);return t.decode(r)}function Xs(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return kt(s);i+s>t&&(n=kt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Cr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function Qs(){}var js=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},G1=Xs();function W1(e){return globalThis.Buffer!=null?kt(e):G1(e)}var kn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Cr(Qs,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Cr(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new ta((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Pn,10,te.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=te.fromBigInt(t);return this._push(Pn,r.length(),r)}uint64Number(t){let r=te.fromNumber(t);return this._push(Pn,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=te.fromBigInt(t).zzEncode();return this._push(Pn,r.length(),r)}sint64Number(t){let r=te.fromNumber(t).zzEncode();return this._push(Pn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(Js,1,t?1:0)}fixed32(t){return this._push(Dn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=te.fromBigInt(t);return this._push(Dn,4,r.lo)._push(Dn,4,r.hi)}fixed64Number(t){let r=te.fromNumber(t);return this._push(Dn,4,r.lo)._push(Dn,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(Jf,4,t)}double(t){return this._push(tu,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(Js,1,0):this.uint32(r)._push(Y1,r,t)}string(t){let r=nu(t);return r!==0?this.uint32(r)._push($s,r,t):this._push(Js,1,0)}fork(){return this.states=new js(this),this.head=this.tail=new Cr(Qs,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Cr(Qs,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=W1(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function Js(e,t,r){t[r]=e&255}function $1(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var ta=class extends Cr{next;constructor(t,r){super($1,t,r),this.next=void 0}};function Pn(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 Dn(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 Y1(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(kn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(Z1,t,e),this},kn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(X1,t,e),this});function Z1(e,t,r){t.set(e,r)}function X1(e,t,r){e.length<40?$s(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(Bt(e),r)}function ea(){return new kn}function Tr(e,t){let r=ea();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var rn;(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"})(rn||(rn={}));function zi(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ra(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return zi("enum",rn.VARINT,r,n)}function _r(e,t){return zi("message",rn.LENGTH_DELIMITED,e,t)}var St;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(St||(St={}));var na;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(na||(na={}));(function(e){e.codec=()=>ra(na)})(St||(St={}));var Le;(function(e){let t;e.codec=()=>(t==null&&(t=_r((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Le||(Le={}));var Re;(function(e){let t;e.codec=()=>(t==null&&(t=_r((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Re||(Re={}));var Un=class{_key;constructor(t){this._key=nn(t,tn)}verify(t,r){return Zf(this._key,r,t)}marshal(){return this._key}get bytes(){return Le.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},Lr=class{_key;_publicKey;constructor(t,r){this._key=nn(t,Ye),this._publicKey=nn(r,tn)}sign(t){return Yf(this._key,t)}get public(){return new Un(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}async hash(){let t=zt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=ur.digest(this.public.bytes);return _t.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return en(this.bytes,t);throw new it(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Q1(e){if(e.length>Ye){e=nn(e,Ye+tn);let n=e.subarray(0,Ye),i=e.subarray(Ye,e.length);return new Lr(n,i)}e=nn(e,Ye);let t=e.subarray(0,Ye),r=e.subarray(tn);return new Lr(t,r)}function J1(e){return e=nn(e,tn),new Un(e)}async function j1(){let{privateKey:e,publicKey:t}=Wf();return new Lr(e,t)}async function su(e){let{privateKey:t,publicKey:r}=$f(e);return new Lr(t,r)}function nn(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new it(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var tg={"P-256":256,"P-384":384,"P-521":521},eg=Object.keys(tg),rw=eg.join(" / ");var fa={};Dt(fa,{MAX_KEY_SIZE:()=>Vn,RsaPrivateKey:()=>on,RsaPublicKey:()=>Mn,fromJwk:()=>hg,generateKeyPair:()=>dg,unmarshalRsaPrivateKey:()=>ug,unmarshalRsaPublicKey:()=>lg});var On=Qt(dt(),1);var Mw=Qt(lu(),1);function Wi(e){if(isNaN(e)||e<=0)throw new it("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return yr(e)}var ww=Qt(Oi(),1),aa=Qt(dt(),1);function hu(e,t){return t.map(r=>re(e[r]))}function du(e){return aa.default.pki.setRsaPrivateKey(...hu(e,["n","e","d","p","q","dp","dq","qi"]))}function pu(e){return aa.default.pki.setRsaPublicKey(...hu(e,["n","e"]))}var Nr={};Dt(Nr,{jwkToPkcs1:()=>og,jwkToPkix:()=>ag,pkcs1ToJwk:()=>ig,pkixToJwk:()=>sg});var Bw=Qt(Cn(),1),Aw=Qt(Oi(),1);var Ze=Qt(dt(),1);function ig(e){let t=Ze.default.asn1.fromDer(ot(e,"ascii")),r=Ze.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 og(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 it("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Ze.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return Bt(Ze.default.asn1.toDer(t).getBytes(),"ascii")}function sg(e){let t=Ze.default.asn1.fromDer(ot(e,"ascii")),r=Ze.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:be(r.n),e:be(r.e)}}function ag(e){if(e.n==null||e.e==null)throw new it("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Ze.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return Bt(Ze.default.asn1.toDer(t).getBytes(),"ascii")}async function yu(e){let t=await jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await mu(t);return{privateKey:r[0],publicKey:r[1]}}async function ca(e){let r=[await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await cg(e)],n=await mu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function gu(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 xu(e,t,r){let n=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r instanceof Uint8Array?r:r.subarray())}async function mu(e){if(e.privateKey==null||e.publicKey==null)throw new it("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 cg(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 bu(e,t,r,n){let i=t?pu(e):du(e),o=ot(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return Bt(s,"ascii")}function vu(e,t){return bu(e,!0,t,(r,n)=>n.encrypt(r))}function wu(e,t){return bu(e,!1,t,(r,n)=>n.decrypt(r))}function $i(e){if(e.kty!=="RSA")throw new it("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new it("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Bt(e.n,"base64url").length*8}var Vn=8192,Mn=class{_key;constructor(t){this._key=t}verify(t,r){return xu(this._key,r,t)}marshal(){return Nr.jwkToPkix(this._key)}get bytes(){return Le.encode({Type:St.RSA,Data:this.marshal()}).subarray()}encrypt(t){return vu(this._key,t)}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},on=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return Wi(16)}sign(t){return gu(this._key,t)}get public(){if(this._publicKey==null)throw new it("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Mn(this._publicKey)}decrypt(t){return wu(this._key,t)}marshal(){return Nr.jwkToPkcs1(this._key)}get bytes(){return Re.encode({Type:St.RSA,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ot(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new On.default.util.ByteBuffer(this.marshal()),i=On.default.asn1.fromDer(n),o=On.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return On.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return en(this.bytes,t);throw new it(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function ug(e){let t=Nr.pkcs1ToJwk(e);if($i(t)>Vn)throw new it("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await ca(t);return new on(r.privateKey,r.publicKey)}function lg(e){let t=Nr.pkixToJwk(e);if($i(t)>Vn)throw new it("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Mn(t)}async function hg(e){if($i(e)>Vn)throw new it("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await ca(e);return new on(t.privateKey,t.publicKey)}async function dg(e){if(e>Vn)throw new it("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await yu(e);return new on(t.privateKey,t.publicKey)}var da={};Dt(da,{Secp256k1PrivateKey:()=>Hn,Secp256k1PublicKey:()=>Fn,generateKeyPair:()=>Ag,unmarshalSecp256k1PrivateKey:()=>Sg,unmarshalSecp256k1PublicKey:()=>Bg});function pg(e){let t=xn(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:yg,hexToBytes:gg}=pi,Pr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Pr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:yg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Pr,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}=Pr._parseInt(r.subarray(2)),{d:s,l:a}=Pr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Xe=BigInt(0),ae=BigInt(1),Ww=BigInt(2),Eu=BigInt(3),$w=BigInt(4);function xg(e){let t=pg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let x=p.toAffine();return Fe(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"&&Xe<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=Oe(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:Me(xt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return x&&(m=ct(m,v)),a(m),m}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,x){if(this.px=p,this.py=y,this.pz=x,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(p){let{x:y,y:x}=p||{};if(!p||!r.isValid(y)||!r.isValid(x))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let v=m=>r.eql(m,r.ZERO);return v(y)&&v(x)?l.ZERO:new l(y,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(x=>x.pz));return p.map((x,v)=>x.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(xt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let x=r.sqr(y),v=o(p);if(!r.eql(x,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py: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,Eu),{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),U=r.mul(v,m);return U=r.add(U,U),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(U,S),R=r.mul(x,R),M=r.mul(p,M),U=r.sub(L,M),U=r.mul(p,U),U=r.add(U,R),R=r.add(L,L),L=r.add(R,L),L=r.add(L,M),L=r.mul(L,U),B=r.add(B,L),M=r.mul(m,C),M=r.add(M,M),L=r.mul(M,U),S=r.sub(S,L),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:C,pz:S}=p,B=r.ZERO,R=r.ZERO,L=r.ZERO,O=t.a,M=r.mul(t.b,Eu),U=r.mul(y,m),q=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(U,q),Z=r.sub(Z,A),A=r.add(y,v);let N=r.add(m,S);return A=r.mul(A,N),N=r.add(U,z),A=r.sub(A,N),N=r.add(x,v),B=r.add(C,S),N=r.mul(N,B),B=r.add(q,z),N=r.sub(N,B),L=r.mul(O,A),B=r.mul(M,z),L=r.add(B,L),B=r.sub(q,L),L=r.add(q,L),R=r.mul(B,L),q=r.add(U,U),q=r.add(q,U),z=r.mul(O,z),A=r.mul(M,A),q=r.add(q,z),z=r.sub(U,z),z=r.mul(O,z),A=r.add(A,z),U=r.mul(q,A),R=r.add(R,U),U=r.mul(N,A),B=r.mul(Z,B),B=r.sub(B,U),U=r.mul(Z,q),L=r.mul(N,L),L=r.add(L,U),new l(B,R,L)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let x=r.invertBatch(y.map(v=>v.pz));return y.map((v,m)=>v.toAffine(x[m])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Xe)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>Xe||S>Xe;)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:U}=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(U)}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===Xe||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 Oe(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=xi(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function mg(e){let t=xn(e);return ne(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Su(e){let t=mg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return Xe<A&&A<r.ORDER}function a(A){return ct(A,n)}function c(A){return yi(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=xg({...t,toBytes(A,N,T){let _=N.toAffine(),w=r.toBytes(_.x),k=Fe;return T?k(Uint8Array.from([N.hasEvenY()?2:3]),w):k(Uint8Array.from([4]),w,r.toBytes(_.y))},fromBytes(A){let N=A.length,T=A[0],_=A.subarray(1);if(N===i&&(T===2||T===3)){let w=Me(_);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),F=(K&ae)===ae;return(T&1)===1!==F&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(_.subarray(0,r.BYTES)),k=r.fromBytes(_.subarray(r.BYTES,2*r.BYTES));return{x:w,y:k}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>Oe(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)=>Me(A.slice(N,T));class x{constructor(N,T,_){this.r=N,this.s=T,this.recovery=_,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=xt("compactSignature",N,T*2),new x(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:_}=Pr.toSig(xt("DER",N));return new x(T,_)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new x(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:_,recovery:w}=this,k=R(xt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let F=w&1?"03":"02",$=f.fromHex(F+g(K)),Y=c(K),et=a(-k*Y),X=a(_*Y),J=f.BASE.multiplyAndAddUnsafe($,et,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 gr(this.toDERHex())}toDERHex(){return Pr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return gr(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=zo(t.n);return K0(t.randomBytes(A),t.n)},precompute(A=8,N=f.BASE){return N._setWindowSize(A),N.multiply(BigInt(3)),N}};function m(A,N=!0){return f.fromPrivateKey(A).toRawBytes(N)}function 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=Me(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=gn(t.nBitLength);function O(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(Xe<=A&&A<L))throw new Error(`bigint expected < 2^${t.nBitLength}`);return er(A,t.nByteLength)}function M(A,N,T=U){if(["recovered","canonical"].some(ht=>ht in T))throw new Error("sign() legacy options not supported");let{hash:_,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:F}=T;k==null&&(k=!0),A=xt("msgHash",A),K&&(A=xt("prehashed msgHash",_(A)));let $=R(A),Y=u(N),et=[O(Y),O($)];if(F!=null){let ht=F===!0?w(r.BYTES):F;et.push(xt("extraEntropy",ht))}let X=Fe(...et),J=$;function pt(ht){let Ft=B(ht);if(!d(Ft))return;let Ht=c(Ft),Pt=f.BASE.multiply(Ft).toAffine(),Gt=a(Pt.x);if(Gt===Xe)return;let De=a(Ht*a(J+Gt*Y));if(De===Xe)return;let hr=(Pt.x===Gt?0:2)|Number(Pt.y&ae),ln=De;return k&&h(De)&&(ln=p(De),hr^=1),new x(Gt,ln,hr)}return{seed:X,k2sig:pt}}let U={lowS:t.lowS,prehash:!1},q={lowS:t.lowS,prehash:!1};function z(A,N,T=U){let{seed:_,k2sig:w}=M(A,N,T),k=t;return Mo(k.hash.outputLen,k.nByteLength,k.hmac)(_,w)}f.BASE._setWindowSize(8);function Z(A,N,T,_=q){let w=A;if(N=xt("msgHash",N),T=xt("publicKey",T),"strict"in _)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=_,F,$;try{if(typeof w=="string"||he(w))try{F=x.fromDER(w)}catch(Pt){if(!(Pt instanceof Pr.Err))throw Pt;F=x.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Pt,s:Gt}=w;F=new x(Pt,Gt)}else throw new Error("PARSE");$=f.fromHex(T)}catch(Pt){if(Pt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&F.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:et}=F,X=R(N),J=c(et),pt=a(X*J),ht=a(Y*J),Ft=f.BASE.multiplyAndAddUnsafe($,pt,ht)?.toAffine();return Ft?a(Ft.x)===Y:!1}return{CURVE:t,getPublicKey:m,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:x,utils:v}}function bg(e){return{hash:e,hmac:(t,...r)=>zr(e,t,ui(...r)),randomBytes:yr}}function Bu(e,t){let r=n=>Su({...e,...bg(n)});return Object.freeze({...r(t),create:r})}var Cu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Au=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),vg=BigInt(1),ua=BigInt(2),Iu=(e,t)=>(e+t/ua)/t;function wg(e){let t=Cu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=mt(u,r,t)*u%t,d=mt(l,r,t)*u%t,g=mt(d,ua,t)*f%t,h=mt(g,i,t)*g%t,p=mt(h,o,t)*h%t,y=mt(p,a,t)*p%t,x=mt(y,c,t)*y%t,v=mt(x,a,t)*p%t,m=mt(v,r,t)*u%t,C=mt(m,s,t)*h%t,S=mt(C,n,t)*f%t,B=mt(S,ua,t);if(!la.eql(la.sqr(B),e))throw new Error("Cannot find square root");return B}var la=gi(Cu,void 0,void 0,{sqrt:wg}),we=Bu({a:BigInt(0),b:BigInt(7),Fp:la,n:Au,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Au,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-vg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Iu(o*e,t),c=Iu(-n*e,t),f=ct(e-a*r-c*i,t),u=ct(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Gr),r8=BigInt(0);var n8=we.ProjectivePoint;function Tu(){return we.utils.randomPrivateKey()}function _u(e,t){let r=zt.digest(t instanceof Uint8Array?t:t.subarray());if(se(r))return r.then(({digest:n})=>we.sign(n,e).toDERRawBytes()).catch(n=>{throw new it(String(n),"ERR_INVALID_INPUT")});try{return we.sign(r.digest,e).toDERRawBytes()}catch(n){throw new it(String(n),"ERR_INVALID_INPUT")}}function Lu(e,t,r){let n=zt.digest(r instanceof Uint8Array?r:r.subarray());if(se(n))return n.then(({digest:i})=>we.verify(t,i,e)).catch(i=>{throw new it(String(i),"ERR_INVALID_INPUT")});try{return we.verify(t,n.digest,e)}catch(i){throw new it(String(i),"ERR_INVALID_INPUT")}}function Ru(e){return we.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Nu(e){try{we.getPublicKey(e,!0)}catch(t){throw new it(String(t),"ERR_INVALID_PRIVATE_KEY")}}function ha(e){try{we.ProjectivePoint.fromHex(e)}catch(t){throw new it(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Pu(e){try{return we.getPublicKey(e,!0)}catch(t){throw new it(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Fn=class{_key;constructor(t){ha(t),this._key=t}verify(t,r){return Lu(this._key,r,t)}marshal(){return Ru(this._key)}get bytes(){return Le.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}async hash(){let t=zt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}},Hn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Pu(t),Nu(this._key),ha(this._publicKey)}sign(t){return _u(this._key,t)}get public(){return new Fn(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ot(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return en(this.bytes,t);throw new it(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Sg(e){return new Hn(e)}function Bg(e){return new Fn(e)}async function Ag(){let e=Tu();return new Hn(e)}var Dr={rsa:fa,ed25519:ia,secp256k1:da};function Du(e){let t=Object.keys(Dr).join(" / ");return new it(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function ku(e){let t=Le.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Dr.rsa.unmarshalRsaPublicKey(r);case St.Ed25519:return Dr.ed25519.unmarshalEd25519PublicKey(r);case St.Secp256k1:return Dr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Du(t.Type??"unknown")}}async function Uu(e){let t=Re.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Dr.rsa.unmarshalRsaPrivateKey(r);case St.Ed25519:return Dr.ed25519.unmarshalEd25519PrivateKey(r);case St.Secp256k1:return Dr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Du(t.Type??"RSA")}}var Cg=Symbol.for("nodejs.util.inspect.custom"),Ku=Object.values(_e).map(e=>e.decoder).reduce((e,t)=>e.or(t),_e.identity.decoder),Ou=114,pa=36,ya=37,qn=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()})`}[Ef]=!0;toString(){return this.string==null&&(this.string=_t.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return me.createV1(Ou,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t==null)return!1;if(t instanceof Uint8Array)return It(this.multihash.bytes,t);if(typeof t=="string")return ga(t).equals(this);if(t?.multihash?.bytes!=null)return It(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[Cg](){return`PeerId(${this.toString()})`}},sn=class extends qn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},an=class extends qn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},cn=class extends qn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function ga(e,t){if(t=t??Ku,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=fr(_t.decode(`z${e}`));return e.startsWith("12D")?new an({multihash:r}):e.startsWith("16U")?new cn({multihash:r}):new sn({multihash:r})}return Tg(Ku.decode(e))}function Tg(e){try{let t=fr(e);if(t.code===ur.code){if(t.digest.length===pa)return new an({multihash:t});if(t.digest.length===ya)return new cn({multihash:t})}if(t.code===zt.code)return new sn({multihash:t})}catch{return _g(me.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function _g(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Ou)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===zt.code)return new sn({multihash:e.multihash});if(t.code===ur.code){if(t.digest.length===pa)return new an({multihash:e.multihash});if(t.digest.length===ya)return new cn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function xa(e,t){return e.length===pa?new an({multihash:xe(ur.code,e),privateKey:t}):e.length===ya?new cn({multihash:xe(ur.code,e),privateKey:t}):new sn({multihash:await zt.digest(e),publicKey:e,privateKey:t})}var Yi;(function(e){let t;e.codec=()=>(t==null&&(t=_r((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=>Tr(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(Yi||(Yi={}));var zn;(function(e){let t;e.codec=()=>(t==null&&(t=_r((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),Yi.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:rt(0),identitySig:rt(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.identityKey=r.bytes();break}case 2:{i.identitySig=r.bytes();break}case 4:{i.extensions=Yi.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Tr(r,e.codec()),e.decode=r=>Ir(r,e.codec())})(zn||(zn={}));async function Mu(e,t,r){let n=await Rg(e,Vu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Lg(e.publicKey,n,r)}function Lg(e,t,r){return zn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Rg(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await Uu(e.privateKey)).sign(t)}async function ma(e){return xa(e.identityKey)}function ba(e){return zn.decode(e)}function Vu(e){let t=Bt("noise-libp2p-static-key:");return e instanceof Uint8Array?At([t,e],t.length+e.length):(e.prepend(t),e)}async function va(e,t,r){let n=await xa(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Vu(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 ku(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Gn(e){return!(!(e instanceof Uint8Array)&&!kr(e)||e.byteLength!==32)}var Ng=0,Pg=4294967295,Dg="Cipherstate has reached maximum n, a new handshake must be performed",Zi=class{n;bytes;view;constructor(t=Ng){this.n=t,this.bytes=rt(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>Pg)throw new Error(Dg)}};var Xi=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 rt(32)}isEmptyKey(t){let r=this.createEmptyKey();return It(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:rt(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),rt(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new Ct(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new Zi}}initializeSymmetric(t){let r=Bt(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=rt(32);return r.set(t),r}else return this.getHash(t,rt(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,rt(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,rt(0),r),i=this.createEmptyKey(),o=rt(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,rt(0),r.ciphertext)}};var Qi=class extends Xi{initializeInitiator(t,r,n,i){let s=this.initializeSymmetric("Noise_XX_25519_ChaChaPoly_SHA256");this.mixHash(s,t);let a=rt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let s=this.initializeSymmetric("Noise_XX_25519_ChaChaPoly_SHA256");this.mixHash(s,t);let a=rt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=rt(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Gn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Gn(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&&Gn(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&&Gn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=rt(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=rt(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};function Fu(e,t){!t.enabled||!Or||(t(`LOCAL_STATIC_PUBLIC_KEY ${ot(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${ot(e.privateKey,"hex")}`))}function wa(e,t){!t.enabled||!Or||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${ot(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${ot(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function Hu(e,t){!t.enabled||!Or||t(`REMOTE_STATIC_PUBLIC_KEY ${ot(e.subarray(),"hex")}`)}function Ea(e,t){!t.enabled||!Or||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${ot(e.subarray(),"hex")}`)}function qu(e,t){!t.enabled||!Or||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${ot(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${ot(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var Ji=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 Qi(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Fu(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,rt(0));await this.connection.write(Z0(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),wa(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=J0((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new mr("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),Ea(this.session.hs.re,this.log)}}async exchange(){if(this.isInitiator){this.log.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=j0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new mr("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),Ea(this.session.hs.re,this.log),Hu(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=ba(r);this.remotePeer=this.remotePeer||await ma(i),await va(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Sn(`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(X0(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),wa(this.session.hs.e,this.log)}}async finish(){if(this.isInitiator){this.log.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Q0(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=tc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new mr("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=ba(r);this.remotePeer=this.remotePeer||await ma(i),await va(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Sn(`Error occurred while verifying signed payload: ${o.message}`)}}qu(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,rt(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,rt(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new mr("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function zu(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var ji=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(t,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=t;this.components=t,this.crypto=o??Y0,this.extensions=i,this.metrics=a?zu(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??rt(0)}async secureOutbound(t,r,n){let i=vo(r,{lengthEncoder:Wr,lengthDecoder:wn,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=vo(r,{lengthEncoder:Wr,lengthDecoder:wn,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 Mu(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new Ji(this.components,n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=c0(),o=t.unwrap();return await u0(n,nc(r,this.metrics),o,s=>pn(s,{lengthDecoder:wn}),ic(r,this.metrics),n),i}};function Gu(e={}){return t=>new ji(t,e)}var to=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 Wu=45,kg=15,fn=new to;function Sa(e){if(!(e.length>kg))return fn.new(e).parseWith(()=>fn.readIPv4Addr())}function Ba(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Wu))return fn.new(e).parseWith(()=>fn.readIPv6Addr())}function eo(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Wu))return fn.new(e).parseWith(()=>fn.readIPAddr())}var Q4=parseInt("0xFFFF",16),J4=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function ro(e){return!!Sa(e)}function no(e){return!!Ba(e)}function io(e){return!!eo(e)}var Zu=ro,Vg=no,Aa=function(e){let t=0;if(e=e.toString().trim(),Zu(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Vg(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Zu(r[n]),s;o&&(s=Aa(r[n]),r[n]=ot(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,ot(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},Xu=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 un={},Ia={},Hg=[[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"]];Hg.forEach(e=>{let t=qg(...e);Ia[t.code]=t,un[t.name]=t});function qg(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function lt(e){if(typeof e=="number"){if(Ia[e]!=null)return Ia[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(un[e]!=null)return un[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var kE=lt("ip4"),UE=lt("ip6"),KE=lt("ipcidr");function Ta(e,t){switch(lt(e).code){case 4:case 41:return Gg(t);case 42:return ju(t);case 6:case 273:case 33:case 132:return el(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return ju(t);case 421:return Zg(t);case 444:return tl(t);case 445:return tl(t);case 466:return Yg(t);default:return ot(t,"base16")}}function _a(e,t){switch(lt(e).code){case 4:return Qu(t);case 41:return Qu(t);case 42:return Ju(t);case 6:case 273:case 33:case 132:return La(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Ju(t);case 421:return Wg(t);case 444:return Xg(t);case 445:return Qg(t);case 466:return $g(t);default:return Bt(t,"base16")}}var Ca=Object.values(_e).map(e=>e.decoder),zg=function(){let e=Ca[0].or(Ca[1]);return Ca.slice(2).forEach(t=>e=e.or(t)),e}();function Qu(e){if(!io(e))throw new Error("invalid ip address");return Aa(e)}function Gg(e){let t=Xu(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!io(t))throw new Error("invalid ip address");return t}function La(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function el(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function Ju(e){let t=Bt(e),r=Uint8Array.from(Qe(t.length));return At([r,t],r.length+t.length)}function ju(e){let t=fe(e);if(e=e.slice($t(t)),e.length!==t)throw new Error("inconsistent lengths");return ot(e)}function Wg(e){let t;e[0]==="Q"||e[0]==="1"?t=fr(_t.decode(`z${e}`)).bytes:t=me.parse(e).multihash.bytes;let r=Uint8Array.from(Qe(t.length));return At([r,t],r.length+t.length)}function $g(e){let t=zg.decode(e),r=Uint8Array.from(Qe(t.length));return At([r,t],r.length+t.length)}function Yg(e){let t=fe(e),r=e.slice($t(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+ot(r,"base64url")}function Zg(e){let t=fe(e),r=e.slice($t(t));if(r.length!==t)throw new Error("inconsistent lengths");return ot(r,"base58btc")}function Xg(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=$e.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=La(n);return At([r,i],r.length+i.length)}function Qg(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=$e.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=La(n);return At([r,i],r.length+i.length)}function tl(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=ot(t,"base32"),i=el(r);return`${n}:${i}`}function rl(e){e=Ra(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=lt(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw il("invalid address: "+e);if(a.path===!0){n=Ra(i.slice(o).join("/")),t.push([a.code,_a(a.code,n)]),r.push([a.code,n]);break}let c=_a(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ta(a.code,c)])}return{string:nl(r),bytes:Pa(t),tuples:t,stringTuples:r,path:n}}function Na(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=fe(e,i),s=$t(o),a=lt(o),c=Jg(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 il("Invalid address Uint8Array: "+ot(e,"base16"));t.push([o,f]);let u=Ta(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:nl(r),tuples:t,stringTuples:r,path:n}}function nl(e){let t=[];return e.map(r=>{let n=lt(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Ra(t.join("/"))}function Pa(e){return At(e.map(t=>{let r=lt(t[0]),n=Uint8Array.from(Qe(r.code));return t.length>1&&t[1]!=null&&(n=At([n,t[1]])),n}))}function Jg(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=fe(t instanceof Uint8Array?t:Uint8Array.from(t));return r+$t(r)}}function Ra(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function il(e){return new Error("Error parsing address: "+e)}var jg=Symbol.for("nodejs.util.inspect.custom"),ka=Symbol.for("@multiformats/js-multiaddr/multiaddr"),tx=[lt("dns").code,lt("dns4").code,lt("dns6").code,lt("dnsaddr").code],Da=class e{bytes;#e;#t;#r;#n;[ka]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Na(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=rl(t)}else if(sl(t))r=Na(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,r,n,i,o="",s=lt("tcp"),a=lt("udp"),c=lt("ip4"),f=lt("ip6"),u=lt("dns6"),l=lt("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),tx.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=lt(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=lt(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},lt(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>lt(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Pa(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===un.p2p.code&&t.push([n,i]),n===un["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?ot(_t.decode(`z${n}`),"base58btc"):ot(me.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return It(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=ol.get(r.name);if(n==null)throw new it(`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)}[jg](){return`Multiaddr(${this.#e})`}};var ol=new Map;function sl(e){return!!e?.[ka]}var ex=e=>e.toString().split("/").slice(1),Wn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Lt=e=>({match:t=>Wn(r=>r===e).match(t),pattern:e}),ao=()=>({match:e=>Wn(t=>typeof t=="string").match(e),pattern:"{string}"}),al=()=>({match:e=>Wn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ce=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{_t.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),oo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Rs.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),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(", ")})`}),Rt=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Kt(...e){function t(i){let o=ex(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Ka=Rt(Lt("dns4"),ao()),Oa=Rt(Lt("dns6"),ao()),Ma=Rt(Lt("dnsaddr"),ao()),cl=Rt(Lt("dns"),ao()),d3=Kt(Ka),p3=Kt(Oa),y3=Kt(Ma),g3=Kt(Pe(cl,Ma,Ka,Oa)),fl=Rt(Lt("ip4"),Wn(ro)),ul=Rt(Lt("ip6"),Wn(no)),ll=Pe(fl,ul),$n=Pe(ll,cl,Ka,Oa,Ma),x3=Kt($n),m3=Kt(fl),b3=Kt(ul),v3=Kt(ll),co=Rt($n,Lt("tcp"),al()),Yn=Rt($n,Lt("udp"),al()),rx=Pe(co,Yn),w3=Kt(co),E3=Kt(Yn),Va=Rt(Yn,Lt("quic")),fo=Rt(Yn,Lt("quic-v1")),nx=Pe(Va,fo),S3=Kt(Va),B3=Kt(fo),Ua=Pe($n,co,Yn,Va,fo),hl=Pe(Rt(Ua,Lt("ws"),Ne(ce()))),A3=Kt(hl),dl=Pe(Rt(Ua,Lt("wss"),Ne(ce())),Rt(Ua,Lt("tls"),Lt("ws"),Ne(ce()))),I3=Kt(dl),pl=Rt(rx,Lt("webrtc-direct"),oo(),Ne(oo()),Ne(ce())),C3=Kt(pl),yl=Rt(fo,Lt("webtransport"),oo(),oo(),Ne(ce())),uo=Kt(yl),so=Pe(hl,dl,Rt(co,Ne(ce())),Rt(nx,Ne(ce())),Rt($n,Ne(ce())),pl,yl,ce()),T3=Kt(so),ix=Rt(so,Lt("p2p-circuit"),ce()),_3=Kt(ix),ox=Pe(Rt(so,Lt("p2p-circuit"),Lt("webrtc"),ce()),Rt(so,Lt("webrtc"),Ne(ce())),Lt("webrtc")),L3=Kt(ox);async function Fa(e,t,r,n,i,o){let s=o.forComponent(`libp2p:webtransport:stream:${r}:${t}`),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Ct(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}},log:s};return g}function Ha(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function gl(e,t){return t.filter(n=>!!e.find(i=>It(n,i))).length===t.length}var sx=Object.values(_e).map(e=>e.decoder).reduce((e,t)=>e.or(t));function ax(e){return Te.decode(sx.decode(e))}function xl(e){if(!uo.matches(e))throw new it("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===lt("certhash").code).map(([s,a])=>ax(a??"")),n=t.filter(([s,a])=>s===lt("p2p").code).map(([s,a])=>ga(a??""))[0],i=e.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var qa=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";[Bf]=!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}=xl(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"),...Ha()},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=Gu()(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}`)}),!gl(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await Fa(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await Fa(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...Ha()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(uo.exactMatch)}};function cx(e={}){return t=>new qa(t,e)}return Rl(fx);})();
16
16
  //! TODO unclear how to add backpressure here?
17
17
  /*! Bundled license information:
18
18