@libp2p/webtransport 4.0.9 → 4.0.10-742915567

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 Al=Object.create;var $n=Object.defineProperty;var Il=Object.getOwnPropertyDescriptor;var Cl=Object.getOwnPropertyNames;var Tl=Object.getPrototypeOf,_l=Object.prototype.hasOwnProperty;var yt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Dt=(e,t)=>{for(var r in t)$n(e,r,{get:t[r],enumerable:!0})},Ja=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Cl(t))!_l.call(e,i)&&i!==r&&$n(e,i,{get:()=>t[i],enumerable:!(n=Il(t,i))||n.enumerable});return e};var Qt=(e,t,r)=>(r=e!=null?Al(Tl(e)):{},Ja(t||!e||!e.__esModule?$n(r,"default",{value:e,enumerable:!0}):r,e)),Ll=e=>Ja($n({},"__esModule",{value:!0}),e);var n0=yt((Ix,r0)=>{"use strict";function e0(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function Ol(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=""),t&&(r.code=t);try{return e0(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),e0(new i,r)}}r0.exports=Ol});var dt=yt((R2,nc)=>{nc.exports={options:{usePureJavaScript:!1}}});var sc=yt((N2,oc)=>{var Qo={};oc.exports=Qo;var ic={};Qo.encode=function(e,t,r){if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');if(r!==void 0&&typeof r!="number")throw new TypeError('"maxline" must be a number.');var n="";if(!(e instanceof Uint8Array))n=hd(e,t);else{var i=0,o=t.length,s=t.charAt(0),a=[0];for(i=0;i<e.length;++i){for(var c=0,f=e[i];c<a.length;++c)f+=a[c]<<8,a[c]=f%o,f=f/o|0;for(;f>0;)a.push(f%o),f=f/o|0}for(i=0;e[i]===0&&i<e.length-1;++i)n+=s;for(i=a.length-1;i>=0;--i)n+=t[a[i]]}if(r){var u=new RegExp(".{1,"+r+"}","g");n=n.match(u).join(`\r
3
- `)}return n};Qo.decode=function(e,t){if(typeof e!="string")throw new TypeError('"input" must be a string.');if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');var r=ic[t];if(!r){r=ic[t]=[];for(var n=0;n<t.length;++n)r[t.charCodeAt(n)]=n}e=e.replace(/\s/g,"");for(var i=t.length,o=t.charAt(0),s=[0],n=0;n<e.length;n++){var a=r[e.charCodeAt(n)];if(a===void 0)return;for(var c=0,f=a;c<s.length;++c)f+=s[c]*i,s[c]=f&255,f>>=8;for(;f>0;)s.push(f&255),f>>=8}for(var u=0;e[u]===o&&u<e.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function hd(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r<e.length();++r){for(var s=0,a=e.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;e.at(r)===0&&r<e.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=t[o[r]];return c}});var Nt=yt((P2,uc)=>{var ac=dt(),cc=sc(),b=uc.exports=ac.util=ac.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){b.nextTick=process.nextTick,typeof setImmediate=="function"?b.setImmediate=setImmediate:b.setImmediate=b.nextTick;return}if(typeof setImmediate=="function"){b.setImmediate=function(){return setImmediate.apply(void 0,arguments)},b.nextTick=function(a){return setImmediate(a)};return}if(b.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===e){c.stopPropagation();var f=t.slice();t.length=0,f.forEach(function(u){u()})}};var s=a,e="forge.setImmediate",t=[];b.setImmediate=function(c){t.push(c),t.length===1&&window.postMessage(e,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),t=[];new MutationObserver(function(){var c=t.slice();t.length=0,c.forEach(function(f){f()})}).observe(i,{attributes:!0});var o=b.setImmediate;b.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.length===1&&i.setAttribute("a",n=!n))}}b.nextTick=b.setImmediate})();b.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;b.globalScope=function(){return b.isNodejs?globalThis:typeof self>"u"?window:self}();b.isArray=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};b.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};b.isArrayBufferView=function(e){return e&&b.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function En(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=Jo;function Jo(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(b.isArrayBuffer(e)||b.isArrayBufferView(e))if(typeof Buffer<"u"&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch{for(var r=0;r<t.length;++r)this.putByte(t[r])}}else(e instanceof Jo||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=Jo;var dd=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>dd&&(this.data.substr(0,1),this._constructedStringLength=0)};b.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};b.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};b.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))};b.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this};b.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};b.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(b.encodeUtf8(e))};b.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};b.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};b.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))};b.ByteStringBuffer.prototype.putInt=function(e,t){En(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};b.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};b.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};b.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};b.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e};b.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e};b.ByteStringBuffer.prototype.getInt=function(e){En(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};b.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};b.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this};b.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};b.ByteStringBuffer.prototype.copy=function(){var e=b.createBuffer(this.data);return e.read=this.read,e};b.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};b.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};b.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};b.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.ByteStringBuffer.prototype.toString=function(){return b.decodeUtf8(this.bytes())};function pd(e,t){t=t||{},this.read=t.readOffset||0,this.growSize=t.growSize||1024;var r=b.isArrayBuffer(e),n=b.isArrayBufferView(e);if(r||n){r?this.data=new DataView(e):this.data=new DataView(e.buffer,e.byteOffset,e.byteLength),this.write="writeOffset"in t?t.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,e!=null&&this.putBytes(e),"writeOffset"in t&&(this.write=t.writeOffset)}b.DataBuffer=pd;b.DataBuffer.prototype.length=function(){return this.write-this.read};b.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};b.DataBuffer.prototype.accommodate=function(e,t){if(this.length()>=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this};b.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};b.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};b.DataBuffer.prototype.putBytes=function(e,t){if(b.isArrayBufferView(e)){var r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(b.isArrayBuffer(e)){var r=new Uint8Array(e);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(e instanceof b.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&b.isArrayBufferView(e.data)){var r=new Uint8Array(e.data.byteLength,e.read,e.length());this.accommodate(r.byteLength);var i=new Uint8Array(e.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(e instanceof b.ByteStringBuffer&&(e=e.data,t="binary"),t=t||"binary",typeof e=="string"){var o;if(t==="hex")return this.accommodate(Math.ceil(e.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.hex.decode(e,o,this.write),this;if(t==="base64")return this.accommodate(Math.ceil(e.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=b.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=b.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};b.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};b.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};b.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};b.DataBuffer.prototype.putInt24=function(e){return this.accommodate(3),this.data.setInt16(this.write,e>>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this};b.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};b.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};b.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this};b.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};b.DataBuffer.prototype.putInt=function(e,t){En(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};b.DataBuffer.prototype.putSignedInt=function(e,t){return En(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};b.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};b.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};b.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};b.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};b.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};b.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};b.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};b.DataBuffer.prototype.getInt=function(e){En(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};b.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};b.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this};b.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};b.DataBuffer.prototype.copy=function(){return new b.DataBuffer(this)};b.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this};b.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};b.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};b.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.byteLength;++t){var r=this.data.getUint8(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return b.binary.raw.encode(t);if(e==="hex")return b.binary.hex.encode(t);if(e==="base64")return b.binary.base64.encode(t);if(e==="utf8")return b.text.utf8.decode(t);if(e==="utf16")return b.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};b.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=b.encodeUtf8(e)),new b.ByteBuffer(e)};b.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};b.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};b.hexToBytes=function(e){var t="",r=0;for(e.length&!0&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t};b.bytesToHex=function(e){return b.createBuffer(e).toHex()};b.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var rr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",nr=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],fc="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";b.encode64=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.length;)i=e.charCodeAt(a++),o=e.charCodeAt(a++),s=e.charCodeAt(a++),r+=rr.charAt(i>>2),r+=rr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=rr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":rr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
4
- `,r=r.substr(t));return n+=r,n};b.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t="",r,n,i,o,s=0;s<e.length;)r=nr[e.charCodeAt(s++)-43],n=nr[e.charCodeAt(s++)-43],i=nr[e.charCodeAt(s++)-43],o=nr[e.charCodeAt(s++)-43],t+=String.fromCharCode(r<<2|n>>4),i!==64&&(t+=String.fromCharCode((n&15)<<4|i>>2),o!==64&&(t+=String.fromCharCode((i&3)<<6|o)));return t};b.encodeUtf8=function(e){return unescape(encodeURIComponent(e))};b.decodeUtf8=function(e){return decodeURIComponent(escape(e))};b.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:cc.encode,decode:cc.decode}};b.binary.raw.encode=function(e){return String.fromCharCode.apply(null,e)};b.binary.raw.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.binary.hex.encode=b.bytesToHex;b.binary.hex.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/2))),r=r||0;var i=0,o=r;for(e.length&1&&(i=1,n[o++]=parseInt(e[0],16));i<e.length;i+=2)n[o++]=parseInt(e.substr(i,2),16);return t?o-r:n};b.binary.base64.encode=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.byteLength;)i=e[a++],o=e[a++],s=e[a++],r+=rr.charAt(i>>2),r+=rr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=rr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":rr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
5
- `,r=r.substr(t));return n+=r,n};b.binary.base64.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/4)*3)),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,f=r;c<e.length;)i=nr[e.charCodeAt(c++)-43],o=nr[e.charCodeAt(c++)-43],s=nr[e.charCodeAt(c++)-43],a=nr[e.charCodeAt(c++)-43],n[f++]=i<<2|o>>4,s!==64&&(n[f++]=(o&15)<<4|s>>2,a!==64&&(n[f++]=(s&3)<<6|a));return t?f-r:n.subarray(0,f)};b.binary.base58.encode=function(e,t){return b.binary.baseN.encode(e,fc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,fc,t)};b.text={utf8:{},utf16:{}};b.text.utf8.encode=function(e,t,r){e=b.encodeUtf8(e);var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.text.utf8.decode=function(e){return b.decodeUtf8(String.fromCharCode.apply(null,e))};b.text.utf16.encode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<e.length;++a)i[s++]=e.charCodeAt(a),o+=2;return t?o-r:n};b.text.utf16.decode=function(e){return String.fromCharCode.apply(null,new Uint16Array(e.buffer))};b.deflate=function(e,t,r){if(t=b.decode64(e.deflate(b.encode64(t)).rval),r){var n=2,i=t.charCodeAt(1);i&32&&(n=6),t=t.substring(n,t.length-4)}return t};b.inflate=function(e,t,r){var n=e.inflate(b.encode64(t)).rval;return n===null?null:b.decode64(n)};var jo=function(e,t,r){if(!e)throw new Error("WebStorage not available.");var n;if(r===null?n=e.removeItem(t):(r=b.encode64(JSON.stringify(r)),n=e.setItem(t,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},ts=function(e,t){if(!e)throw new Error("WebStorage not available.");var r=e.getItem(t);if(e.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(b.decode64(r))),r},yd=function(e,t,r,n){var i=ts(e,t);i===null&&(i={}),i[r]=n,jo(e,t,i)},gd=function(e,t,r){var n=ts(e,t);return n!==null&&(n=r in n?n[r]:null),n},xd=function(e,t,r){var n=ts(e,t);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),jo(e,t,n)}},md=function(e,t){jo(e,t,null)},vi=function(e,t,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(t[0]===null)throw new Error("Flash local storage not available.");n=e.apply(this,t),o=i==="flash"}(i==="web"||i==="both")&&(t[0]=localStorage,n=e.apply(this,t),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};b.setItem=function(e,t,r,n,i){vi(yd,arguments,i)};b.getItem=function(e,t,r,n){return vi(gd,arguments,n)};b.removeItem=function(e,t,r,n){vi(xd,arguments,n)};b.clearItems=function(e,t,r){vi(md,arguments,r)};b.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};b.format=function(e){for(var t=/%./g,r,n,i=0,o=[],s=0;r=t.exec(e);){n=e.substring(s,t.lastIndex-2),n.length>0&&o.push(n),s=t.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")};b.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",f=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",u=f.length>3?f.length%3:0;return c+(u?f.substr(0,u)+a:"")+f.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-f).toFixed(o).slice(2):"")};b.formatSize=function(e){return e>=1073741824?e=b.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=b.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=b.formatNumber(e/1024,0)+" KiB":e=b.formatNumber(e,0)+" bytes",e};b.bytesFromIP=function(e){return e.indexOf(".")!==-1?b.bytesFromIPv4(e):e.indexOf(":")!==-1?b.bytesFromIPv6(e):null};b.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=b.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};b.bytesFromIPv6=function(e){var t=0;e=e.split(":").filter(function(s){return s.length===0&&++t,!0});for(var r=(8-e.length+t)*2,n=b.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=b.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};b.bytesToIP=function(e){return e.length===4?b.bytesToIPv4(e):e.length===16?b.bytesToIPv6(e):null};b.bytesToIPv4=function(e){if(e.length!==4)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")};b.bytesToIPv6=function(e){if(e.length!==16)return null;for(var t=[],r=[],n=0,i=0;i<e.length;i+=2){for(var o=b.bytesToHex(e[i]+e[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=t.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}t.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),c.start===0&&t.unshift(""),c.end===7&&t.push(""))}return t.join(":")};b.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in b&&!e.update)return t(null,b.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return b.cores=navigator.hardwareConcurrency,t(null,b.cores);if(typeof Worker>"u")return b.cores=1,t(null,b.cores);if(typeof Blob>"u")return b.cores=2,t(null,b.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var f=Math.floor(s.reduce(function(u,l){return u+l},0)/s.length);return b.cores=Math.max(1,f),URL.revokeObjectURL(r),t(null,b.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(d){if(f.push(d.data),f.length===s){for(var g=0;g<s;++g)c[g].terminate();a(null,f)}}),c.push(l)}for(var u=0;u<s;++u)c[u].postMessage(u)}function o(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],d=0;d<s;++d)if(f!==d){var g=a[d];(u.st>g.st&&u.st<g.et||g.st>u.st&&g.st<u.et)&&l.push(d)}return c.reduce(function(h,p){return Math.max(h,p.length)},0)}}});var wi=yt((D2,lc)=>{var Sn=dt();Sn.pki=Sn.pki||{};var es=lc.exports=Sn.pki.oids=Sn.oids=Sn.oids||{};function D(e,t){es[e]=t,es[t]=e}function ut(e,t){es[e]=t}D("1.2.840.113549.1.1.1","rsaEncryption");D("1.2.840.113549.1.1.4","md5WithRSAEncryption");D("1.2.840.113549.1.1.5","sha1WithRSAEncryption");D("1.2.840.113549.1.1.7","RSAES-OAEP");D("1.2.840.113549.1.1.8","mgf1");D("1.2.840.113549.1.1.9","pSpecified");D("1.2.840.113549.1.1.10","RSASSA-PSS");D("1.2.840.113549.1.1.11","sha256WithRSAEncryption");D("1.2.840.113549.1.1.12","sha384WithRSAEncryption");D("1.2.840.113549.1.1.13","sha512WithRSAEncryption");D("1.3.101.112","EdDSA25519");D("1.2.840.10040.4.3","dsa-with-sha1");D("1.3.14.3.2.7","desCBC");D("1.3.14.3.2.26","sha1");D("1.3.14.3.2.29","sha1WithRSASignature");D("2.16.840.1.101.3.4.2.1","sha256");D("2.16.840.1.101.3.4.2.2","sha384");D("2.16.840.1.101.3.4.2.3","sha512");D("2.16.840.1.101.3.4.2.4","sha224");D("2.16.840.1.101.3.4.2.5","sha512-224");D("2.16.840.1.101.3.4.2.6","sha512-256");D("1.2.840.113549.2.2","md2");D("1.2.840.113549.2.5","md5");D("1.2.840.113549.1.7.1","data");D("1.2.840.113549.1.7.2","signedData");D("1.2.840.113549.1.7.3","envelopedData");D("1.2.840.113549.1.7.4","signedAndEnvelopedData");D("1.2.840.113549.1.7.5","digestedData");D("1.2.840.113549.1.7.6","encryptedData");D("1.2.840.113549.1.9.1","emailAddress");D("1.2.840.113549.1.9.2","unstructuredName");D("1.2.840.113549.1.9.3","contentType");D("1.2.840.113549.1.9.4","messageDigest");D("1.2.840.113549.1.9.5","signingTime");D("1.2.840.113549.1.9.6","counterSignature");D("1.2.840.113549.1.9.7","challengePassword");D("1.2.840.113549.1.9.8","unstructuredAddress");D("1.2.840.113549.1.9.14","extensionRequest");D("1.2.840.113549.1.9.20","friendlyName");D("1.2.840.113549.1.9.21","localKeyId");D("1.2.840.113549.1.9.22.1","x509Certificate");D("1.2.840.113549.1.12.10.1.1","keyBag");D("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");D("1.2.840.113549.1.12.10.1.3","certBag");D("1.2.840.113549.1.12.10.1.4","crlBag");D("1.2.840.113549.1.12.10.1.5","secretBag");D("1.2.840.113549.1.12.10.1.6","safeContentsBag");D("1.2.840.113549.1.5.13","pkcs5PBES2");D("1.2.840.113549.1.5.12","pkcs5PBKDF2");D("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");D("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");D("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");D("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");D("1.2.840.113549.2.7","hmacWithSHA1");D("1.2.840.113549.2.8","hmacWithSHA224");D("1.2.840.113549.2.9","hmacWithSHA256");D("1.2.840.113549.2.10","hmacWithSHA384");D("1.2.840.113549.2.11","hmacWithSHA512");D("1.2.840.113549.3.7","des-EDE3-CBC");D("2.16.840.1.101.3.4.1.2","aes128-CBC");D("2.16.840.1.101.3.4.1.22","aes192-CBC");D("2.16.840.1.101.3.4.1.42","aes256-CBC");D("2.5.4.3","commonName");D("2.5.4.4","surname");D("2.5.4.5","serialNumber");D("2.5.4.6","countryName");D("2.5.4.7","localityName");D("2.5.4.8","stateOrProvinceName");D("2.5.4.9","streetAddress");D("2.5.4.10","organizationName");D("2.5.4.11","organizationalUnitName");D("2.5.4.12","title");D("2.5.4.13","description");D("2.5.4.15","businessCategory");D("2.5.4.17","postalCode");D("2.5.4.42","givenName");D("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");D("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");D("2.16.840.1.113730.1.1","nsCertType");D("2.16.840.1.113730.1.13","nsComment");ut("2.5.29.1","authorityKeyIdentifier");ut("2.5.29.2","keyAttributes");ut("2.5.29.3","certificatePolicies");ut("2.5.29.4","keyUsageRestriction");ut("2.5.29.5","policyMapping");ut("2.5.29.6","subtreesConstraint");ut("2.5.29.7","subjectAltName");ut("2.5.29.8","issuerAltName");ut("2.5.29.9","subjectDirectoryAttributes");ut("2.5.29.10","basicConstraints");ut("2.5.29.11","nameConstraints");ut("2.5.29.12","policyConstraints");ut("2.5.29.13","basicConstraints");D("2.5.29.14","subjectKeyIdentifier");D("2.5.29.15","keyUsage");ut("2.5.29.16","privateKeyUsagePeriod");D("2.5.29.17","subjectAltName");D("2.5.29.18","issuerAltName");D("2.5.29.19","basicConstraints");ut("2.5.29.20","cRLNumber");ut("2.5.29.21","cRLReason");ut("2.5.29.22","expirationDate");ut("2.5.29.23","instructionCode");ut("2.5.29.24","invalidityDate");ut("2.5.29.25","cRLDistributionPoints");ut("2.5.29.26","issuingDistributionPoint");ut("2.5.29.27","deltaCRLIndicator");ut("2.5.29.28","issuingDistributionPoint");ut("2.5.29.29","certificateIssuer");ut("2.5.29.30","nameConstraints");D("2.5.29.31","cRLDistributionPoints");D("2.5.29.32","certificatePolicies");ut("2.5.29.33","policyMappings");ut("2.5.29.34","policyConstraints");D("2.5.29.35","authorityKeyIdentifier");ut("2.5.29.36","policyConstraints");D("2.5.29.37","extKeyUsage");ut("2.5.29.46","freshestCRL");ut("2.5.29.54","inhibitAnyPolicy");D("1.3.6.1.4.1.11129.2.4.2","timestampList");D("1.3.6.1.5.5.7.1.1","authorityInfoAccess");D("1.3.6.1.5.5.7.3.1","serverAuth");D("1.3.6.1.5.5.7.3.2","clientAuth");D("1.3.6.1.5.5.7.3.3","codeSigning");D("1.3.6.1.5.5.7.3.4","emailProtection");D("1.3.6.1.5.5.7.3.8","timeStamping")});var An=yt((k2,dc)=>{var bt=dt();Nt();wi();var V=dc.exports=bt.asn1=bt.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(e,t,r,n,i){if(bt.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:e,type:t,constructed:r,composed:r||bt.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(e,t){var r;if(bt.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(bt.util.isArray(e)){if(!bt.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function Bn(e,t,r){if(r>t){var n=new Error("Too few bytes to parse DER.");throw n.available=e.length(),n.remaining=t,n.requested=r,n}}var bd=function(e,t){var r=e.getByte();if(t--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Bn(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=bt.util.createBuffer(e));var r=e.length(),n=Ei(e,e.length(),0,t);if(t.parseAllBytes&&e.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=e.length(),i}return n};function Ei(e,t,r,n){var i;Bn(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=bd(e,t);if(t-=i-e.length(),c!==void 0&&c>t){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=e.length(),f.remaining=t,f.requested=c,f}c=t}var u,l,d=(o&32)===32;if(d)if(u=[],c===void 0)for(;;){if(Bn(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),u.push(Ei(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Ei(e,c,r+1,n)),t-=i-e.length(),c-=i-e.length();if(u===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=e.bytes(c)),u===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var g=e.read,h=t,p=0;if(a===V.Type.BITSTRING&&(Bn(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},x=Ei(e,t,r+1,y),v=i-e.length();t-=v,a==V.Type.BITSTRING&&v++;var m=x.tagClass;v===c&&(m===V.Class.UNIVERSAL||m===V.Class.CONTEXT_SPECIFIC)&&(u=[x])}catch{}u===void 0&&(e.read=g,t=h)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=t}if(a===V.Type.BMPSTRING)for(u="";c>0;c-=2)Bn(e,t,2),u+=String.fromCharCode(e.getInt16()),t-=2;else u=e.getBytes(c),t-=c}var I=l===void 0?null:{bitStringContents:l};return V.create(s,a,d,u,I)}V.toDer=function(e){var t=bt.util.createBuffer(),r=e.tagClass|e.type,n=bt.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=bt.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=bt.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),f+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),f&&(c=e.charAt(f),c==="+"||c==="-")){var u=parseInt(e.substr(f+1,2),10),l=parseInt(e.substr(f+4,2),10),d=u*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,f=0,u=!1;e.charAt(e.length-1)==="Z"&&(u=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var g=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);f=g*60+h,f*=6e4,d==="+"&&(f*=-1),u=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),u?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+f)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=bt.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=bt.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&bt.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var hc=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
2
+ "use strict";var Libp2PWebtransport=(()=>{var th=Object.create;var ri=Object.defineProperty;var eh=Object.getOwnPropertyDescriptor;var rh=Object.getOwnPropertyNames;var nh=Object.getPrototypeOf,ih=Object.prototype.hasOwnProperty;var pt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Rt=(e,t)=>{for(var r in t)ri(e,r,{get:t[r],enumerable:!0})},d0=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of rh(t))!ih.call(e,i)&&i!==r&&ri(e,i,{get:()=>t[i],enumerable:!(n=eh(t,i))||n.enumerable});return e};var Xt=(e,t,r)=>(r=e!=null?th(nh(e)):{},d0(t||!e||!e.__esModule?ri(r,"default",{value:e,enumerable:!0}):r,e)),oh=e=>d0(ri({},"__esModule",{value:!0}),e);var S0=pt((um,E0)=>{"use strict";function w0(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function dh(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=""),t&&(r.code=t);try{return w0(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),w0(new i,r)}}E0.exports=dh});var ht=pt((mb,Ac)=>{Ac.exports={options:{usePureJavaScript:!1}}});var Tc=pt((bb,Cc)=>{var fs={};Cc.exports=fs;var Ic={};fs.encode=function(e,t,r){if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');if(r!==void 0&&typeof r!="number")throw new TypeError('"maxline" must be a number.');var n="";if(!(e instanceof Uint8Array))n=qd(e,t);else{var i=0,o=t.length,s=t.charAt(0),a=[0];for(i=0;i<e.length;++i){for(var c=0,f=e[i];c<a.length;++c)f+=a[c]<<8,a[c]=f%o,f=f/o|0;for(;f>0;)a.push(f%o),f=f/o|0}for(i=0;e[i]===0&&i<e.length-1;++i)n+=s;for(i=a.length-1;i>=0;--i)n+=t[a[i]]}if(r){var u=new RegExp(".{1,"+r+"}","g");n=n.match(u).join(`\r
3
+ `)}return n};fs.decode=function(e,t){if(typeof e!="string")throw new TypeError('"input" must be a string.');if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');var r=Ic[t];if(!r){r=Ic[t]=[];for(var n=0;n<t.length;++n)r[t.charCodeAt(n)]=n}e=e.replace(/\s/g,"");for(var i=t.length,o=t.charAt(0),s=[0],n=0;n<e.length;n++){var a=r[e.charCodeAt(n)];if(a===void 0)return;for(var c=0,f=a;c<s.length;++c)f+=s[c]*i,s[c]=f&255,f>>=8;for(;f>0;)s.push(f&255),f>>=8}for(var u=0;e[u]===o&&u<e.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function qd(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r<e.length();++r){for(var s=0,a=e.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;e.at(r)===0&&r<e.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=t[o[r]];return c}});var _t=pt((vb,Nc)=>{var _c=ht(),Lc=Tc(),b=Nc.exports=_c.util=_c.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){b.nextTick=process.nextTick,typeof setImmediate=="function"?b.setImmediate=setImmediate:b.setImmediate=b.nextTick;return}if(typeof setImmediate=="function"){b.setImmediate=function(){return setImmediate.apply(void 0,arguments)},b.nextTick=function(a){return setImmediate(a)};return}if(b.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===e){c.stopPropagation();var f=t.slice();t.length=0,f.forEach(function(u){u()})}};var s=a,e="forge.setImmediate",t=[];b.setImmediate=function(c){t.push(c),t.length===1&&window.postMessage(e,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),t=[];new MutationObserver(function(){var c=t.slice();t.length=0,c.forEach(function(f){f()})}).observe(i,{attributes:!0});var o=b.setImmediate;b.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.length===1&&i.setAttribute("a",n=!n))}}b.nextTick=b.setImmediate})();b.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;b.globalScope=function(){return b.isNodejs?globalThis:typeof self>"u"?window:self}();b.isArray=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};b.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};b.isArrayBufferView=function(e){return e&&b.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function Rn(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}b.ByteBuffer=us;function us(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(b.isArrayBuffer(e)||b.isArrayBufferView(e))if(typeof Buffer<"u"&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch{for(var r=0;r<t.length;++r)this.putByte(t[r])}}else(e instanceof us||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}b.ByteStringBuffer=us;var Hd=4096;b.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>Hd&&(this.data.substr(0,1),this._constructedStringLength=0)};b.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};b.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};b.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))};b.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this};b.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};b.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(b.encodeUtf8(e))};b.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};b.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};b.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};b.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))};b.ByteStringBuffer.prototype.putInt=function(e,t){Rn(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};b.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};b.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};b.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};b.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e};b.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};b.ByteStringBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e};b.ByteStringBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e};b.ByteStringBuffer.prototype.getInt=function(e){Rn(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};b.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};b.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this};b.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};b.ByteStringBuffer.prototype.copy=function(){var e=b.createBuffer(this.data);return e.read=this.read,e};b.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};b.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};b.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};b.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.ByteStringBuffer.prototype.toString=function(){return b.decodeUtf8(this.bytes())};function zd(e,t){t=t||{},this.read=t.readOffset||0,this.growSize=t.growSize||1024;var r=b.isArrayBuffer(e),n=b.isArrayBufferView(e);if(r||n){r?this.data=new DataView(e):this.data=new DataView(e.buffer,e.byteOffset,e.byteLength),this.write="writeOffset"in t?t.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,e!=null&&this.putBytes(e),"writeOffset"in t&&(this.write=t.writeOffset)}b.DataBuffer=zd;b.DataBuffer.prototype.length=function(){return this.write-this.read};b.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};b.DataBuffer.prototype.accommodate=function(e,t){if(this.length()>=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this};b.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};b.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};b.DataBuffer.prototype.putBytes=function(e,t){if(b.isArrayBufferView(e)){var r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(b.isArrayBuffer(e)){var r=new Uint8Array(e);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(e instanceof b.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&b.isArrayBufferView(e.data)){var r=new Uint8Array(e.data.byteLength,e.read,e.length());this.accommodate(r.byteLength);var i=new Uint8Array(e.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(e instanceof b.ByteStringBuffer&&(e=e.data,t="binary"),t=t||"binary",typeof e=="string"){var o;if(t==="hex")return this.accommodate(Math.ceil(e.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.hex.decode(e,o,this.write),this;if(t==="base64")return this.accommodate(Math.ceil(e.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=b.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=b.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=b.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};b.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};b.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};b.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};b.DataBuffer.prototype.putInt24=function(e){return this.accommodate(3),this.data.setInt16(this.write,e>>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this};b.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};b.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};b.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this};b.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};b.DataBuffer.prototype.putInt=function(e,t){Rn(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};b.DataBuffer.prototype.putSignedInt=function(e,t){return Rn(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};b.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};b.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};b.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};b.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};b.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};b.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};b.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};b.DataBuffer.prototype.getInt=function(e){Rn(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};b.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};b.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};b.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};b.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};b.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this};b.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};b.DataBuffer.prototype.copy=function(){return new b.DataBuffer(this)};b.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this};b.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};b.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};b.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.byteLength;++t){var r=this.data.getUint8(t);r<16&&(e+="0"),e+=r.toString(16)}return e};b.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return b.binary.raw.encode(t);if(e==="hex")return b.binary.hex.encode(t);if(e==="base64")return b.binary.base64.encode(t);if(e==="utf8")return b.text.utf8.decode(t);if(e==="utf16")return b.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};b.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=b.encodeUtf8(e)),new b.ByteBuffer(e)};b.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};b.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};b.hexToBytes=function(e){var t="",r=0;for(e.length&!0&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t};b.bytesToHex=function(e){return b.createBuffer(e).toHex()};b.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var sr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",ar=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],Rc="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";b.encode64=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.length;)i=e.charCodeAt(a++),o=e.charCodeAt(a++),s=e.charCodeAt(a++),r+=sr.charAt(i>>2),r+=sr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=sr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":sr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
4
+ `,r=r.substr(t));return n+=r,n};b.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t="",r,n,i,o,s=0;s<e.length;)r=ar[e.charCodeAt(s++)-43],n=ar[e.charCodeAt(s++)-43],i=ar[e.charCodeAt(s++)-43],o=ar[e.charCodeAt(s++)-43],t+=String.fromCharCode(r<<2|n>>4),i!==64&&(t+=String.fromCharCode((n&15)<<4|i>>2),o!==64&&(t+=String.fromCharCode((i&3)<<6|o)));return t};b.encodeUtf8=function(e){return unescape(encodeURIComponent(e))};b.decodeUtf8=function(e){return decodeURIComponent(escape(e))};b.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:Lc.encode,decode:Lc.decode}};b.binary.raw.encode=function(e){return String.fromCharCode.apply(null,e)};b.binary.raw.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.binary.hex.encode=b.bytesToHex;b.binary.hex.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/2))),r=r||0;var i=0,o=r;for(e.length&1&&(i=1,n[o++]=parseInt(e[0],16));i<e.length;i+=2)n[o++]=parseInt(e.substr(i,2),16);return t?o-r:n};b.binary.base64.encode=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.byteLength;)i=e[a++],o=e[a++],s=e[a++],r+=sr.charAt(i>>2),r+=sr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=sr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":sr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
5
+ `,r=r.substr(t));return n+=r,n};b.binary.base64.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/4)*3)),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,f=r;c<e.length;)i=ar[e.charCodeAt(c++)-43],o=ar[e.charCodeAt(c++)-43],s=ar[e.charCodeAt(c++)-43],a=ar[e.charCodeAt(c++)-43],n[f++]=i<<2|o>>4,s!==64&&(n[f++]=(o&15)<<4|s>>2,a!==64&&(n[f++]=(s&3)<<6|a));return t?f-r:n.subarray(0,f)};b.binary.base58.encode=function(e,t){return b.binary.baseN.encode(e,Rc,t)};b.binary.base58.decode=function(e,t){return b.binary.baseN.decode(e,Rc,t)};b.text={utf8:{},utf16:{}};b.text.utf8.encode=function(e,t,r){e=b.encodeUtf8(e);var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};b.text.utf8.decode=function(e){return b.decodeUtf8(String.fromCharCode.apply(null,e))};b.text.utf16.encode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<e.length;++a)i[s++]=e.charCodeAt(a),o+=2;return t?o-r:n};b.text.utf16.decode=function(e){return String.fromCharCode.apply(null,new Uint16Array(e.buffer))};b.deflate=function(e,t,r){if(t=b.decode64(e.deflate(b.encode64(t)).rval),r){var n=2,i=t.charCodeAt(1);i&32&&(n=6),t=t.substring(n,t.length-4)}return t};b.inflate=function(e,t,r){var n=e.inflate(b.encode64(t)).rval;return n===null?null:b.decode64(n)};var ls=function(e,t,r){if(!e)throw new Error("WebStorage not available.");var n;if(r===null?n=e.removeItem(t):(r=b.encode64(JSON.stringify(r)),n=e.setItem(t,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},hs=function(e,t){if(!e)throw new Error("WebStorage not available.");var r=e.getItem(t);if(e.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(b.decode64(r))),r},Gd=function(e,t,r,n){var i=hs(e,t);i===null&&(i={}),i[r]=n,ls(e,t,i)},$d=function(e,t,r){var n=hs(e,t);return n!==null&&(n=r in n?n[r]:null),n},Wd=function(e,t,r){var n=hs(e,t);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),ls(e,t,n)}},Yd=function(e,t){ls(e,t,null)},Ti=function(e,t,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(t[0]===null)throw new Error("Flash local storage not available.");n=e.apply(this,t),o=i==="flash"}(i==="web"||i==="both")&&(t[0]=localStorage,n=e.apply(this,t),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};b.setItem=function(e,t,r,n,i){Ti(Gd,arguments,i)};b.getItem=function(e,t,r,n){return Ti($d,arguments,n)};b.removeItem=function(e,t,r,n){Ti(Wd,arguments,n)};b.clearItems=function(e,t,r){Ti(Yd,arguments,r)};b.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};b.format=function(e){for(var t=/%./g,r,n,i=0,o=[],s=0;r=t.exec(e);){n=e.substring(s,t.lastIndex-2),n.length>0&&o.push(n),s=t.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")};b.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",f=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",u=f.length>3?f.length%3:0;return c+(u?f.substr(0,u)+a:"")+f.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-f).toFixed(o).slice(2):"")};b.formatSize=function(e){return e>=1073741824?e=b.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=b.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=b.formatNumber(e/1024,0)+" KiB":e=b.formatNumber(e,0)+" bytes",e};b.bytesFromIP=function(e){return e.indexOf(".")!==-1?b.bytesFromIPv4(e):e.indexOf(":")!==-1?b.bytesFromIPv6(e):null};b.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=b.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};b.bytesFromIPv6=function(e){var t=0;e=e.split(":").filter(function(s){return s.length===0&&++t,!0});for(var r=(8-e.length+t)*2,n=b.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=b.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};b.bytesToIP=function(e){return e.length===4?b.bytesToIPv4(e):e.length===16?b.bytesToIPv6(e):null};b.bytesToIPv4=function(e){if(e.length!==4)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")};b.bytesToIPv6=function(e){if(e.length!==16)return null;for(var t=[],r=[],n=0,i=0;i<e.length;i+=2){for(var o=b.bytesToHex(e[i]+e[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=t.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}t.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),c.start===0&&t.unshift(""),c.end===7&&t.push(""))}return t.join(":")};b.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in b&&!e.update)return t(null,b.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return b.cores=navigator.hardwareConcurrency,t(null,b.cores);if(typeof Worker>"u")return b.cores=1,t(null,b.cores);if(typeof Blob>"u")return b.cores=2,t(null,b.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var f=Math.floor(s.reduce(function(u,l){return u+l},0)/s.length);return b.cores=Math.max(1,f),URL.revokeObjectURL(r),t(null,b.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(d){if(f.push(d.data),f.length===s){for(var g=0;g<s;++g)c[g].terminate();a(null,f)}}),c.push(l)}for(var u=0;u<s;++u)c[u].postMessage(u)}function o(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],d=0;d<s;++d)if(f!==d){var g=a[d];(u.st>g.st&&u.st<g.et||g.st>u.st&&g.st<u.et)&&l.push(d)}return c.reduce(function(h,p){return Math.max(h,p.length)},0)}}});var _i=pt((wb,Pc)=>{var Nn=ht();Nn.pki=Nn.pki||{};var ds=Pc.exports=Nn.pki.oids=Nn.oids=Nn.oids||{};function D(e,t){ds[e]=t,ds[t]=e}function ft(e,t){ds[e]=t}D("1.2.840.113549.1.1.1","rsaEncryption");D("1.2.840.113549.1.1.4","md5WithRSAEncryption");D("1.2.840.113549.1.1.5","sha1WithRSAEncryption");D("1.2.840.113549.1.1.7","RSAES-OAEP");D("1.2.840.113549.1.1.8","mgf1");D("1.2.840.113549.1.1.9","pSpecified");D("1.2.840.113549.1.1.10","RSASSA-PSS");D("1.2.840.113549.1.1.11","sha256WithRSAEncryption");D("1.2.840.113549.1.1.12","sha384WithRSAEncryption");D("1.2.840.113549.1.1.13","sha512WithRSAEncryption");D("1.3.101.112","EdDSA25519");D("1.2.840.10040.4.3","dsa-with-sha1");D("1.3.14.3.2.7","desCBC");D("1.3.14.3.2.26","sha1");D("1.3.14.3.2.29","sha1WithRSASignature");D("2.16.840.1.101.3.4.2.1","sha256");D("2.16.840.1.101.3.4.2.2","sha384");D("2.16.840.1.101.3.4.2.3","sha512");D("2.16.840.1.101.3.4.2.4","sha224");D("2.16.840.1.101.3.4.2.5","sha512-224");D("2.16.840.1.101.3.4.2.6","sha512-256");D("1.2.840.113549.2.2","md2");D("1.2.840.113549.2.5","md5");D("1.2.840.113549.1.7.1","data");D("1.2.840.113549.1.7.2","signedData");D("1.2.840.113549.1.7.3","envelopedData");D("1.2.840.113549.1.7.4","signedAndEnvelopedData");D("1.2.840.113549.1.7.5","digestedData");D("1.2.840.113549.1.7.6","encryptedData");D("1.2.840.113549.1.9.1","emailAddress");D("1.2.840.113549.1.9.2","unstructuredName");D("1.2.840.113549.1.9.3","contentType");D("1.2.840.113549.1.9.4","messageDigest");D("1.2.840.113549.1.9.5","signingTime");D("1.2.840.113549.1.9.6","counterSignature");D("1.2.840.113549.1.9.7","challengePassword");D("1.2.840.113549.1.9.8","unstructuredAddress");D("1.2.840.113549.1.9.14","extensionRequest");D("1.2.840.113549.1.9.20","friendlyName");D("1.2.840.113549.1.9.21","localKeyId");D("1.2.840.113549.1.9.22.1","x509Certificate");D("1.2.840.113549.1.12.10.1.1","keyBag");D("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");D("1.2.840.113549.1.12.10.1.3","certBag");D("1.2.840.113549.1.12.10.1.4","crlBag");D("1.2.840.113549.1.12.10.1.5","secretBag");D("1.2.840.113549.1.12.10.1.6","safeContentsBag");D("1.2.840.113549.1.5.13","pkcs5PBES2");D("1.2.840.113549.1.5.12","pkcs5PBKDF2");D("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");D("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");D("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");D("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");D("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");D("1.2.840.113549.2.7","hmacWithSHA1");D("1.2.840.113549.2.8","hmacWithSHA224");D("1.2.840.113549.2.9","hmacWithSHA256");D("1.2.840.113549.2.10","hmacWithSHA384");D("1.2.840.113549.2.11","hmacWithSHA512");D("1.2.840.113549.3.7","des-EDE3-CBC");D("2.16.840.1.101.3.4.1.2","aes128-CBC");D("2.16.840.1.101.3.4.1.22","aes192-CBC");D("2.16.840.1.101.3.4.1.42","aes256-CBC");D("2.5.4.3","commonName");D("2.5.4.4","surname");D("2.5.4.5","serialNumber");D("2.5.4.6","countryName");D("2.5.4.7","localityName");D("2.5.4.8","stateOrProvinceName");D("2.5.4.9","streetAddress");D("2.5.4.10","organizationName");D("2.5.4.11","organizationalUnitName");D("2.5.4.12","title");D("2.5.4.13","description");D("2.5.4.15","businessCategory");D("2.5.4.17","postalCode");D("2.5.4.42","givenName");D("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");D("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");D("2.16.840.1.113730.1.1","nsCertType");D("2.16.840.1.113730.1.13","nsComment");ft("2.5.29.1","authorityKeyIdentifier");ft("2.5.29.2","keyAttributes");ft("2.5.29.3","certificatePolicies");ft("2.5.29.4","keyUsageRestriction");ft("2.5.29.5","policyMapping");ft("2.5.29.6","subtreesConstraint");ft("2.5.29.7","subjectAltName");ft("2.5.29.8","issuerAltName");ft("2.5.29.9","subjectDirectoryAttributes");ft("2.5.29.10","basicConstraints");ft("2.5.29.11","nameConstraints");ft("2.5.29.12","policyConstraints");ft("2.5.29.13","basicConstraints");D("2.5.29.14","subjectKeyIdentifier");D("2.5.29.15","keyUsage");ft("2.5.29.16","privateKeyUsagePeriod");D("2.5.29.17","subjectAltName");D("2.5.29.18","issuerAltName");D("2.5.29.19","basicConstraints");ft("2.5.29.20","cRLNumber");ft("2.5.29.21","cRLReason");ft("2.5.29.22","expirationDate");ft("2.5.29.23","instructionCode");ft("2.5.29.24","invalidityDate");ft("2.5.29.25","cRLDistributionPoints");ft("2.5.29.26","issuingDistributionPoint");ft("2.5.29.27","deltaCRLIndicator");ft("2.5.29.28","issuingDistributionPoint");ft("2.5.29.29","certificateIssuer");ft("2.5.29.30","nameConstraints");D("2.5.29.31","cRLDistributionPoints");D("2.5.29.32","certificatePolicies");ft("2.5.29.33","policyMappings");ft("2.5.29.34","policyConstraints");D("2.5.29.35","authorityKeyIdentifier");ft("2.5.29.36","policyConstraints");D("2.5.29.37","extKeyUsage");ft("2.5.29.46","freshestCRL");ft("2.5.29.54","inhibitAnyPolicy");D("1.3.6.1.4.1.11129.2.4.2","timestampList");D("1.3.6.1.5.5.7.1.1","authorityInfoAccess");D("1.3.6.1.5.5.7.3.1","serverAuth");D("1.3.6.1.5.5.7.3.2","clientAuth");D("1.3.6.1.5.5.7.3.3","codeSigning");D("1.3.6.1.5.5.7.3.4","emailProtection");D("1.3.6.1.5.5.7.3.8","timeStamping")});var Dn=pt((Eb,Uc)=>{var mt=ht();_t();_i();var V=Uc.exports=mt.asn1=mt.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(e,t,r,n,i){if(mt.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:e,type:t,constructed:r,composed:r||mt.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(e,t){var r;if(mt.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(mt.util.isArray(e)){if(!mt.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function Pn(e,t,r){if(r>t){var n=new Error("Too few bytes to parse DER.");throw n.available=e.length(),n.remaining=t,n.requested=r,n}}var Zd=function(e,t){var r=e.getByte();if(t--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Pn(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=mt.util.createBuffer(e));var r=e.length(),n=Li(e,e.length(),0,t);if(t.parseAllBytes&&e.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=e.length(),i}return n};function Li(e,t,r,n){var i;Pn(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Zd(e,t);if(t-=i-e.length(),c!==void 0&&c>t){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=e.length(),f.remaining=t,f.requested=c,f}c=t}var u,l,d=(o&32)===32;if(d)if(u=[],c===void 0)for(;;){if(Pn(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),u.push(Li(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),u.push(Li(e,c,r+1,n)),t-=i-e.length(),c-=i-e.length();if(u===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=e.bytes(c)),u===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var g=e.read,h=t,p=0;if(a===V.Type.BITSTRING&&(Pn(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},x=Li(e,t,r+1,y),v=i-e.length();t-=v,a==V.Type.BITSTRING&&v++;var m=x.tagClass;v===c&&(m===V.Class.UNIVERSAL||m===V.Class.CONTEXT_SPECIFIC)&&(u=[x])}catch{}u===void 0&&(e.read=g,t=h)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=t}if(a===V.Type.BMPSTRING)for(u="";c>0;c-=2)Pn(e,t,2),u+=String.fromCharCode(e.getInt16()),t-=2;else u=e.getBytes(c),t-=c}var C=l===void 0?null:{bitStringContents:l};return V.create(s,a,d,u,C)}V.toDer=function(e){var t=mt.util.createBuffer(),r=e.tagClass|e.type,n=mt.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=mt.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=mt.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),f+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),f&&(c=e.charAt(f),c==="+"||c==="-")){var u=parseInt(e.substr(f+1,2),10),l=parseInt(e.substr(f+4,2),10),d=u*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,f=0,u=!1;e.charAt(e.length-1)==="Z"&&(u=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var g=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);f=g*60+h,f*=6e4,d==="+"&&(f*=-1),u=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),u?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+f)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=mt.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=mt.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&mt.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var Dc=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
6
6
  `);for(var i="",o=0;o<t*r;++o)i+=" ";switch(n+=i+"Tag: ",e.tagClass){case V.Class.UNIVERSAL:n+="Universal:";break;case V.Class.APPLICATION:n+="Application:";break;case V.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case V.Class.PRIVATE:n+="Private:";break}if(e.tagClass===V.Class.UNIVERSAL)switch(n+=e.type,e.type){case V.Type.NONE:n+=" (None)";break;case V.Type.BOOLEAN:n+=" (Boolean)";break;case V.Type.INTEGER:n+=" (Integer)";break;case V.Type.BITSTRING:n+=" (Bit string)";break;case V.Type.OCTETSTRING:n+=" (Octet string)";break;case V.Type.NULL:n+=" (Null)";break;case V.Type.OID:n+=" (Object Identifier)";break;case V.Type.ODESC:n+=" (Object Descriptor)";break;case V.Type.EXTERNAL:n+=" (External or Instance of)";break;case V.Type.REAL:n+=" (Real)";break;case V.Type.ENUMERATED:n+=" (Enumerated)";break;case V.Type.EMBEDDED:n+=" (Embedded PDV)";break;case V.Type.UTF8:n+=" (UTF8)";break;case V.Type.ROID:n+=" (Relative Object Identifier)";break;case V.Type.SEQUENCE:n+=" (Sequence)";break;case V.Type.SET:n+=" (Set)";break;case V.Type.PRINTABLESTRING:n+=" (Printable String)";break;case V.Type.IA5String:n+=" (IA5String (ASCII))";break;case V.Type.UTCTIME:n+=" (UTC time)";break;case V.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case V.Type.BMPSTRING:n+=" (BMP String)";break}else n+=e.type;if(n+=`
7
7
  `,n+=i+"Constructed: "+e.constructed+`
8
- `,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,bt.pki&&bt.pki.oids&&c in bt.pki.oids&&(n+=" ("+bt.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+bt.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+bt.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var f=e.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)hc.test(e.value)||(n+="("+e.value+") "),n+="0x"+bt.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=bt.util.decodeUtf8(e.value)}catch(u){if(u.message==="URI malformed")n+="0x"+bt.util.bytesToHex(e.value)+" (malformed UTF8)";else throw u}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:hc.test(e.value)?n+="0x"+bt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var ns=yt((U2,pc)=>{var Ot=dt();Nt();pc.exports=Ot.cipher=Ot.cipher||{};Ot.cipher.algorithms=Ot.cipher.algorithms||{};Ot.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};Ot.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ot.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ot.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};Ot.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),Ot.cipher.algorithms[e]=t};Ot.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in Ot.cipher.algorithms?Ot.cipher.algorithms[e]:null};var rs=Ot.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};rs.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=Ot.util.createBuffer(),this.output=e.output||Ot.util.createBuffer(),this.mode.start(t)};rs.prototype.update=function(e){for(e&&this._input.putBuffer(e);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};rs.prototype.finish=function(e){e&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return e(this.blockSize,r,!1)},this.mode.unpad=function(r){return e(this.blockSize,r,!0)});var t={};return t.decrypt=this._decrypt,t.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,t)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,t))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,t))}});var os=yt((K2,yc)=>{var Mt=dt();Nt();Mt.cipher=Mt.cipher||{};var it=yc.exports=Mt.cipher.modes=Mt.cipher.modes||{};it.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.ecb.prototype.start=function(e){};it.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};it.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};it.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};it.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};it.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};it.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=Si(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};it.cbc.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n]);this._prev=this._outBlock};it.cbc.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};it.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};it.cbc.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};it.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Si(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32()^this._outBlock[i],t.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32(),t.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Si(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(e.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};it.ofb.prototype.decrypt=it.ofb.prototype.encrypt;it.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0};it.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Si(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};it.ctr.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0&&(e.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}Bi(this._inBlock)};it.ctr.prototype.decrypt=it.ctr.prototype.encrypt;it.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Mt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};it.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Mt.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Mt.util.createBuffer(e.additionalData):r=Mt.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Mt.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(is(n*8)))}this._inBlock=this._j0.slice(0),Bi(this._inBlock),this._partialBytes=0,r=Mt.util.createBuffer(r),this._aDataLength=is(r.length()*8);var i=r.length()%this.blockSize;for(i&&r.fillWithByte(0,this.blockSize-i),this._s=[0,0,0,0];r.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()])};it.gcm.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^=e.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.read-=this.blockSize,t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Bi(this._inBlock)};it.gcm.prototype.decrypt=function(e,t,r){var n=e.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),Bi(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};it.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Mt.util.createBuffer();var n=this._aDataLength.concat(is(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),t.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};it.gcm.prototype.multiply=function(e,t){for(var r=[0,0,0,0],n=t.slice(0),i=0;i<128;++i){var o=e[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};it.gcm.prototype.pow=function(e,t){for(var r=e[3]&1,n=3;n>0;--n)t[n]=e[n]>>>1|(e[n-1]&1)<<31;t[0]=e[0]>>>1,r&&(t[0]^=this._R)};it.gcm.prototype.tableMultiply=function(e){for(var t=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=e[n]>>>(7-r%8)*4&15,o=this._m[r][i];t[0]^=o[0],t[1]^=o[1],t[2]^=o[2],t[3]^=o[3]}return t};it.gcm.prototype.ghash=function(e,t,r){return t[0]^=r[0],t[1]^=r[1],t[2]^=r[2],t[3]^=r[3],this.tableMultiply(t)};it.gcm.prototype.generateHashTable=function(e,t){for(var r=8/t,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,f=(n-1-s%n)*t;a[c]=1<<t-1<<f,o[s]=this.generateSubHashTable(this.multiply(a,e),t)}return o};it.gcm.prototype.generateSubHashTable=function(e,t){var r=1<<t,n=r>>>1,i=new Array(r);i[n]=e.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var f=i[o^n];i[o]=[e[0]^f[0],e[1]^f[1],e[2]^f[2],e[3]^f[3]]}return i};function Si(e,t){if(typeof e=="string"&&(e=Mt.util.createBuffer(e)),Mt.util.isArray(e)&&e.length>4){var r=e;e=Mt.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Mt.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Bi(e){e[e.length-1]=e[e.length-1]+1&4294967295}function is(e){return[e/4294967296|0,e&4294967295]}});var fs=yt((O2,bc)=>{var gt=dt();ns();os();Nt();bc.exports=gt.aes=gt.aes||{};gt.aes.startEncrypting=function(e,t,r,n){var i=Ai({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};gt.aes.createEncryptionCipher=function(e,t){return Ai({key:e,output:null,decrypt:!1,mode:t})};gt.aes.startDecrypting=function(e,t,r,n){var i=Ai({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};gt.aes.createDecryptionCipher=function(e,t){return Ai({key:e,output:null,decrypt:!0,mode:t})};gt.aes.Algorithm=function(e,t){cs||xc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return as(r._w,n,i,!1)},decrypt:function(n,i){return as(r._w,n,i,!0)}}}),r._init=!1};gt.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t=e.key,r;if(typeof t=="string"&&(t.length===16||t.length===24||t.length===32))t=gt.util.createBuffer(t);else if(gt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=gt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!gt.util.isArray(t)){r=t,t=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)t.push(r.getInt32())}}if(!gt.util.isArray(t)||!(t.length===4||t.length===6||t.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=mc(t,e.decrypt&&!s),this._init=!0}};gt.aes._expandKey=function(e,t){return cs||xc(),mc(e,t)};gt.aes._updateBlock=as;Wr("AES-ECB",gt.cipher.modes.ecb);Wr("AES-CBC",gt.cipher.modes.cbc);Wr("AES-CFB",gt.cipher.modes.cfb);Wr("AES-OFB",gt.cipher.modes.ofb);Wr("AES-CTR",gt.cipher.modes.ctr);Wr("AES-GCM",gt.cipher.modes.gcm);function Wr(e,t){var r=function(){return new gt.aes.Algorithm(e,t)};gt.cipher.registerAlgorithm(e,r)}var cs=!1,Gr=4,Zt,ss,gc,xr,pe;function xc(){cs=!0,gc=[0,1,2,4,8,16,32,64,128,27,54];for(var e=new Array(256),t=0;t<128;++t)e[t]=t<<1,e[t+128]=t+128<<1^283;Zt=new Array(256),ss=new Array(256),xr=new Array(4),pe=new Array(4);for(var t=0;t<4;++t)xr[t]=new Array(256),pe[t]=new Array(256);for(var r=0,n=0,i,o,s,a,c,f,u,t=0;t<256;++t){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Zt[r]=a,ss[a]=r,c=e[a],i=e[r],o=e[i],s=e[o],f=c<<24^a<<16^a<<8^(a^c),u=(i^o^s)<<24^(r^s)<<16^(r^o^s)<<8^(r^i^s);for(var l=0;l<4;++l)xr[l][r]=f,pe[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=i^e[e[e[i^s]]],n^=e[e[n]])}}function mc(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Gr*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Zt[n>>>16&255]<<24^Zt[n>>>8&255]<<16^Zt[n&255]<<8^Zt[n>>>24]^gc[i]<<24,i++):o>6&&c%o===4&&(n=Zt[n>>>24]<<24^Zt[n>>>16&255]<<16^Zt[n>>>8&255]<<8^Zt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=pe[0],l=pe[1],d=pe[2],g=pe[3],h=r.slice(0);a=r.length;for(var c=0,p=a-Gr;c<a;c+=Gr,p-=Gr)if(c===0||c===a-Gr)h[c]=r[p],h[c+1]=r[p+3],h[c+2]=r[p+2],h[c+3]=r[p+1];else for(var y=0;y<Gr;++y)f=r[p+y],h[c+(3&-y)]=u[Zt[f>>>24]]^l[Zt[f>>>16&255]]^d[Zt[f>>>8&255]]^g[Zt[f&255]];r=h}return r}function as(e,t,r,n){var i=e.length/4-1,o,s,a,c,f;n?(o=pe[0],s=pe[1],a=pe[2],c=pe[3],f=ss):(o=xr[0],s=xr[1],a=xr[2],c=xr[3],f=Zt);var u,l,d,g,h,p,y;u=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],g=t[n?1:3]^e[3];for(var x=3,v=1;v<i;++v)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[g&255]^e[++x],p=o[l>>>24]^s[d>>>16&255]^a[g>>>8&255]^c[u&255]^e[++x],y=o[d>>>24]^s[g>>>16&255]^a[u>>>8&255]^c[l&255]^e[++x],g=o[g>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^e[++x],u=h,l=p,d=y;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[g&255]^e[++x],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[g>>>8&255]<<8^f[u&255]^e[++x],r[2]=f[d>>>24]<<24^f[g>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++x],r[n?1:3]=f[g>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^e[++x]}function Ai(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=gt.cipher.createDecipher(r,e.key):n=gt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof gt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Ec=yt((M2,wc)=>{var Et=dt();ns();os();Nt();wc.exports=Et.des=Et.des||{};Et.des.startEncrypting=function(e,t,r,n){var i=Ii({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createEncryptionCipher=function(e,t){return Ii({key:e,output:null,decrypt:!1,mode:t})};Et.des.startDecrypting=function(e,t,r,n){var i=Ii({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Et.des.createDecryptionCipher=function(e,t){return Ii({key:e,output:null,decrypt:!0,mode:t})};Et.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return vc(r._keys,n,i,!1)},decrypt:function(n,i){return vc(r._keys,n,i,!0)}}}),r._init=!1};Et.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=Et.util.createBuffer(e.key);if(this.name.indexOf("3DES")===0&&t.length()!==24)throw new Error("Invalid Triple-DES key size: "+t.length()*8);this._keys=Td(t),this._init=!0}};we("DES-ECB",Et.cipher.modes.ecb);we("DES-CBC",Et.cipher.modes.cbc);we("DES-CFB",Et.cipher.modes.cfb);we("DES-OFB",Et.cipher.modes.ofb);we("DES-CTR",Et.cipher.modes.ctr);we("3DES-ECB",Et.cipher.modes.ecb);we("3DES-CBC",Et.cipher.modes.cbc);we("3DES-CFB",Et.cipher.modes.cfb);we("3DES-OFB",Et.cipher.modes.ofb);we("3DES-CTR",Et.cipher.modes.ctr);function we(e,t){var r=function(){return new Et.des.Algorithm(e,t)};Et.cipher.registerAlgorithm(e,r)}var vd=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],wd=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],Ed=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],Sd=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],Bd=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],Ad=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],Id=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],Cd=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];function Td(e){for(var t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],g=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,y=[],x=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],v=0,m,I=0;I<p;I++){var S=e.getInt32(),B=e.getInt32();m=(S>>>4^B)&252645135,B^=m,S^=m<<4,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>2^B)&858993459,B^=m,S^=m<<2,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=(B>>>8^S)&16711935,S^=m,B^=m<<8,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=S<<8|B>>>20&240,S=B<<24|B<<8&16711680|B>>>8&65280|B>>>24&240,B=m;for(var R=0;R<x.length;++R){x[R]?(S=S<<2|S>>>26,B=B<<2|B>>>26):(S=S<<1|S>>>27,B=B<<1|B>>>27),S&=-15,B&=-15;var L=t[S>>>28]|r[S>>>24&15]|n[S>>>20&15]|i[S>>>16&15]|o[S>>>12&15]|s[S>>>8&15]|a[S>>>4&15],O=c[B>>>28]|f[B>>>24&15]|u[B>>>20&15]|l[B>>>16&15]|d[B>>>12&15]|g[B>>>8&15]|h[B>>>4&15];m=(O>>>16^L)&65535,y[v++]=L^m,y[v++]=O^m<<16}}return y}function vc(e,t,r,n){var i=e.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=t[0],c=t[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var f=0;f<i;f+=3){for(var u=o[f+1],l=o[f+2],d=o[f];d!=u;d+=l){var g=c^e[d],h=(c>>>4|c<<28)^e[d+1];s=a,a=c,c=s^(wd[g>>>24&63]|Sd[g>>>16&63]|Ad[g>>>8&63]|Cd[g&63]|vd[h>>>24&63]|Ed[h>>>16&63]|Bd[h>>>8&63]|Id[h&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function Ii(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=Et.cipher.createDecipher(r,e.key):n=Et.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Et.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var mr=yt((V2,Sc)=>{var Ci=dt();Sc.exports=Ci.md=Ci.md||{};Ci.md.algorithms=Ci.md.algorithms||{}});var Ac=yt((F2,Bc)=>{var Fe=dt();mr();Nt();var _d=Bc.exports=Fe.hmac=Fe.hmac||{};_d.create=function(){var e=null,t=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in Fe.md.algorithms)t=Fe.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else t=o;if(s===null)s=e;else{if(typeof s=="string")s=Fe.util.createBuffer(s);else if(Fe.util.isArray(s)){var a=s;s=Fe.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var f=s.length();f>t.blockLength&&(t.start(),t.update(s.bytes()),s=t.digest()),r=Fe.util.createBuffer(),n=Fe.util.createBuffer(),f=s.length();for(var c=0;c<f;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(f<t.blockLength)for(var a=t.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);e=s,r=r.bytes(),n=n.bytes()}t.start(),t.update(r)},i.update=function(o){t.update(o)},i.getMac=function(){var o=t.digest().bytes();return t.start(),t.update(n),t.update(o),t.digest()},i.digest=i.getMac,i}});var Ti=yt(()=>{});var Cc=yt((z2,Ic)=>{var Xt=dt();Ac();mr();Nt();var Ld=Xt.pkcs5=Xt.pkcs5||{},qe;Xt.util.isNodejs&&!Xt.options.usePureJavaScript&&(qe=Ti());Ic.exports=Xt.pbkdf2=Ld.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Xt.util.isNodejs&&!Xt.options.usePureJavaScript&&qe.pbkdf2&&(i===null||typeof i!="object")&&(qe.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?qe.pbkdf2Sync.length===4?qe.pbkdf2(e,t,r,n,function(m,I){if(m)return o(m);o(null,I.toString("binary"))}):qe.pbkdf2(e,t,r,n,i,function(m,I){if(m)return o(m);o(null,I.toString("binary"))}):qe.pbkdf2Sync.length===4?qe.pbkdf2Sync(e,t,r,n).toString("binary"):qe.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Xt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Xt.md[i].create()}var s=i.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(o)return o(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=Xt.hmac.create();u.start(i,e);var l="",d,g,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Xt.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var y=2;y<=r;++y)u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Xt.util.xorBytes(d,g,s),h=g;l+=p<c?d:d.substr(0,f)}return l}var p=1,y;function x(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Xt.util.int32ToBytes(p)),d=h=u.digest().getBytes(),y=2,v()}function v(){if(y<=r)return u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Xt.util.xorBytes(d,g,s),h=g,++y,Xt.util.setImmediate(v);l+=p<c?d:d.substr(0,f),++p,x()}x()}});var Lc=yt((G2,_c)=>{var Li=dt();Nt();var Tc=_c.exports=Li.pem=Li.pem||{};Tc.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
9
- `,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=_i(n)),e.contentDomain&&(n={name:"Content-Domain",values:[e.contentDomain]},r+=_i(n)),e.dekInfo&&(n={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&n.values.push(e.dekInfo.parameters),r+=_i(n)),e.headers)for(var i=0;i<e.headers.length;++i)r+=_i(e.headers[i]);return e.procType&&(r+=`\r
10
- `),r+=Li.util.encode64(e.body,t.maxline||64)+`\r
8
+ `,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,mt.pki&&mt.pki.oids&&c in mt.pki.oids&&(n+=" ("+mt.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+mt.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+mt.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var f=e.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)Dc.test(e.value)||(n+="("+e.value+") "),n+="0x"+mt.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=mt.util.decodeUtf8(e.value)}catch(u){if(u.message==="URI malformed")n+="0x"+mt.util.bytesToHex(e.value)+" (malformed UTF8)";else throw u}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:Dc.test(e.value)?n+="0x"+mt.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var ys=pt((Sb,kc)=>{var Dt=ht();_t();kc.exports=Dt.cipher=Dt.cipher||{};Dt.cipher.algorithms=Dt.cipher.algorithms||{};Dt.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Dt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};Dt.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Dt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};Dt.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),Dt.cipher.algorithms[e]=t};Dt.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in Dt.cipher.algorithms?Dt.cipher.algorithms[e]:null};var ps=Dt.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};ps.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=Dt.util.createBuffer(),this.output=e.output||Dt.util.createBuffer(),this.mode.start(t)};ps.prototype.update=function(e){for(e&&this._input.putBuffer(e);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};ps.prototype.finish=function(e){e&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return e(this.blockSize,r,!1)},this.mode.unpad=function(r){return e(this.blockSize,r,!0)});var t={};return t.decrypt=this._decrypt,t.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,t)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,t))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,t))}});var xs=pt((Bb,Kc)=>{var Ut=ht();_t();Ut.cipher=Ut.cipher||{};var nt=Kc.exports=Ut.cipher.modes=Ut.cipher.modes||{};nt.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};nt.ecb.prototype.start=function(e){};nt.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};nt.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};nt.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};nt.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};nt.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=Ri(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};nt.cbc.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n]);this._prev=this._outBlock};nt.cbc.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};nt.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};nt.cbc.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};nt.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Ut.util.createBuffer(),this._partialBytes=0};nt.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ri(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32()^this._outBlock[i],t.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};nt.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32(),t.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};nt.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Ut.util.createBuffer(),this._partialBytes=0};nt.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ri(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(e.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};nt.ofb.prototype.decrypt=nt.ofb.prototype.encrypt;nt.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Ut.util.createBuffer(),this._partialBytes=0};nt.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=Ri(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};nt.ctr.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0&&(e.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}Ni(this._inBlock)};nt.ctr.prototype.decrypt=nt.ctr.prototype.encrypt;nt.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Ut.util.createBuffer(),this._partialBytes=0,this._R=3774873600};nt.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Ut.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Ut.util.createBuffer(e.additionalData):r=Ut.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Ut.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(gs(n*8)))}this._inBlock=this._j0.slice(0),Ni(this._inBlock),this._partialBytes=0,r=Ut.util.createBuffer(r),this._aDataLength=gs(r.length()*8);var i=r.length()%this.blockSize;for(i&&r.fillWithByte(0,this.blockSize-i),this._s=[0,0,0,0];r.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()])};nt.gcm.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^=e.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.read-=this.blockSize,t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Ni(this._inBlock)};nt.gcm.prototype.decrypt=function(e,t,r){var n=e.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),Ni(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};nt.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Ut.util.createBuffer();var n=this._aDataLength.concat(gs(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),t.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};nt.gcm.prototype.multiply=function(e,t){for(var r=[0,0,0,0],n=t.slice(0),i=0;i<128;++i){var o=e[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};nt.gcm.prototype.pow=function(e,t){for(var r=e[3]&1,n=3;n>0;--n)t[n]=e[n]>>>1|(e[n-1]&1)<<31;t[0]=e[0]>>>1,r&&(t[0]^=this._R)};nt.gcm.prototype.tableMultiply=function(e){for(var t=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=e[n]>>>(7-r%8)*4&15,o=this._m[r][i];t[0]^=o[0],t[1]^=o[1],t[2]^=o[2],t[3]^=o[3]}return t};nt.gcm.prototype.ghash=function(e,t,r){return t[0]^=r[0],t[1]^=r[1],t[2]^=r[2],t[3]^=r[3],this.tableMultiply(t)};nt.gcm.prototype.generateHashTable=function(e,t){for(var r=8/t,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,f=(n-1-s%n)*t;a[c]=1<<t-1<<f,o[s]=this.generateSubHashTable(this.multiply(a,e),t)}return o};nt.gcm.prototype.generateSubHashTable=function(e,t){var r=1<<t,n=r>>>1,i=new Array(r);i[n]=e.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var f=i[o^n];i[o]=[e[0]^f[0],e[1]^f[1],e[2]^f[2],e[3]^f[3]]}return i};function Ri(e,t){if(typeof e=="string"&&(e=Ut.util.createBuffer(e)),Ut.util.isArray(e)&&e.length>4){var r=e;e=Ut.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Ut.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function Ni(e){e[e.length-1]=e[e.length-1]+1&4294967295}function gs(e){return[e/4294967296|0,e&4294967295]}});var ws=pt((Ab,Fc)=>{var yt=ht();ys();xs();_t();Fc.exports=yt.aes=yt.aes||{};yt.aes.startEncrypting=function(e,t,r,n){var i=Pi({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};yt.aes.createEncryptionCipher=function(e,t){return Pi({key:e,output:null,decrypt:!1,mode:t})};yt.aes.startDecrypting=function(e,t,r,n){var i=Pi({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};yt.aes.createDecryptionCipher=function(e,t){return Pi({key:e,output:null,decrypt:!0,mode:t})};yt.aes.Algorithm=function(e,t){vs||Mc();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return bs(r._w,n,i,!1)},decrypt:function(n,i){return bs(r._w,n,i,!0)}}}),r._init=!1};yt.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t=e.key,r;if(typeof t=="string"&&(t.length===16||t.length===24||t.length===32))t=yt.util.createBuffer(t);else if(yt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=yt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!yt.util.isArray(t)){r=t,t=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)t.push(r.getInt32())}}if(!yt.util.isArray(t)||!(t.length===4||t.length===6||t.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=Vc(t,e.decrypt&&!s),this._init=!0}};yt.aes._expandKey=function(e,t){return vs||Mc(),Vc(e,t)};yt.aes._updateBlock=bs;Jr("AES-ECB",yt.cipher.modes.ecb);Jr("AES-CBC",yt.cipher.modes.cbc);Jr("AES-CFB",yt.cipher.modes.cfb);Jr("AES-OFB",yt.cipher.modes.ofb);Jr("AES-CTR",yt.cipher.modes.ctr);Jr("AES-GCM",yt.cipher.modes.gcm);function Jr(e,t){var r=function(){return new yt.aes.Algorithm(e,t)};yt.cipher.registerAlgorithm(e,r)}var vs=!1,Qr=4,Yt,ms,Oc,Er,ye;function Mc(){vs=!0,Oc=[0,1,2,4,8,16,32,64,128,27,54];for(var e=new Array(256),t=0;t<128;++t)e[t]=t<<1,e[t+128]=t+128<<1^283;Yt=new Array(256),ms=new Array(256),Er=new Array(4),ye=new Array(4);for(var t=0;t<4;++t)Er[t]=new Array(256),ye[t]=new Array(256);for(var r=0,n=0,i,o,s,a,c,f,u,t=0;t<256;++t){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Yt[r]=a,ms[a]=r,c=e[a],i=e[r],o=e[i],s=e[o],f=c<<24^a<<16^a<<8^(a^c),u=(i^o^s)<<24^(r^s)<<16^(r^o^s)<<8^(r^i^s);for(var l=0;l<4;++l)Er[l][r]=f,ye[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=i^e[e[e[i^s]]],n^=e[e[n]])}}function Vc(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Qr*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Yt[n>>>16&255]<<24^Yt[n>>>8&255]<<16^Yt[n&255]<<8^Yt[n>>>24]^Oc[i]<<24,i++):o>6&&c%o===4&&(n=Yt[n>>>24]<<24^Yt[n>>>16&255]<<16^Yt[n>>>8&255]<<8^Yt[n&255]),r[c]=r[c-o]^n;if(t){var f,u=ye[0],l=ye[1],d=ye[2],g=ye[3],h=r.slice(0);a=r.length;for(var c=0,p=a-Qr;c<a;c+=Qr,p-=Qr)if(c===0||c===a-Qr)h[c]=r[p],h[c+1]=r[p+3],h[c+2]=r[p+2],h[c+3]=r[p+1];else for(var y=0;y<Qr;++y)f=r[p+y],h[c+(3&-y)]=u[Yt[f>>>24]]^l[Yt[f>>>16&255]]^d[Yt[f>>>8&255]]^g[Yt[f&255]];r=h}return r}function bs(e,t,r,n){var i=e.length/4-1,o,s,a,c,f;n?(o=ye[0],s=ye[1],a=ye[2],c=ye[3],f=ms):(o=Er[0],s=Er[1],a=Er[2],c=Er[3],f=Yt);var u,l,d,g,h,p,y;u=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],g=t[n?1:3]^e[3];for(var x=3,v=1;v<i;++v)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[g&255]^e[++x],p=o[l>>>24]^s[d>>>16&255]^a[g>>>8&255]^c[u&255]^e[++x],y=o[d>>>24]^s[g>>>16&255]^a[u>>>8&255]^c[l&255]^e[++x],g=o[g>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^e[++x],u=h,l=p,d=y;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[g&255]^e[++x],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[g>>>8&255]<<8^f[u&255]^e[++x],r[2]=f[d>>>24]<<24^f[g>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^e[++x],r[n?1:3]=f[g>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^e[++x]}function Pi(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=yt.cipher.createDecipher(r,e.key):n=yt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof yt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var zc=pt((Ib,Hc)=>{var wt=ht();ys();xs();_t();Hc.exports=wt.des=wt.des||{};wt.des.startEncrypting=function(e,t,r,n){var i=Di({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};wt.des.createEncryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!1,mode:t})};wt.des.startDecrypting=function(e,t,r,n){var i=Di({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};wt.des.createDecryptionCipher=function(e,t){return Di({key:e,output:null,decrypt:!0,mode:t})};wt.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return qc(r._keys,n,i,!1)},decrypt:function(n,i){return qc(r._keys,n,i,!0)}}}),r._init=!1};wt.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=wt.util.createBuffer(e.key);if(this.name.indexOf("3DES")===0&&t.length()!==24)throw new Error("Invalid Triple-DES key size: "+t.length()*8);this._keys=ip(t),this._init=!0}};Ee("DES-ECB",wt.cipher.modes.ecb);Ee("DES-CBC",wt.cipher.modes.cbc);Ee("DES-CFB",wt.cipher.modes.cfb);Ee("DES-OFB",wt.cipher.modes.ofb);Ee("DES-CTR",wt.cipher.modes.ctr);Ee("3DES-ECB",wt.cipher.modes.ecb);Ee("3DES-CBC",wt.cipher.modes.cbc);Ee("3DES-CFB",wt.cipher.modes.cfb);Ee("3DES-OFB",wt.cipher.modes.ofb);Ee("3DES-CTR",wt.cipher.modes.ctr);function Ee(e,t){var r=function(){return new wt.des.Algorithm(e,t)};wt.cipher.registerAlgorithm(e,r)}var Xd=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],Qd=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],Jd=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],jd=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],tp=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],ep=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],rp=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],np=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];function ip(e){for(var t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],g=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,y=[],x=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],v=0,m,C=0;C<p;C++){var S=e.getInt32(),B=e.getInt32();m=(S>>>4^B)&252645135,B^=m,S^=m<<4,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>2^B)&858993459,B^=m,S^=m<<2,m=(B>>>-16^S)&65535,S^=m,B^=m<<-16,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=(B>>>8^S)&16711935,S^=m,B^=m<<8,m=(S>>>1^B)&1431655765,B^=m,S^=m<<1,m=S<<8|B>>>20&240,S=B<<24|B<<8&16711680|B>>>8&65280|B>>>24&240,B=m;for(var R=0;R<x.length;++R){x[R]?(S=S<<2|S>>>26,B=B<<2|B>>>26):(S=S<<1|S>>>27,B=B<<1|B>>>27),S&=-15,B&=-15;var L=t[S>>>28]|r[S>>>24&15]|n[S>>>20&15]|i[S>>>16&15]|o[S>>>12&15]|s[S>>>8&15]|a[S>>>4&15],O=c[B>>>28]|f[B>>>24&15]|u[B>>>20&15]|l[B>>>16&15]|d[B>>>12&15]|g[B>>>8&15]|h[B>>>4&15];m=(O>>>16^L)&65535,y[v++]=L^m,y[v++]=O^m<<16}}return y}function qc(e,t,r,n){var i=e.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=t[0],c=t[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var f=0;f<i;f+=3){for(var u=o[f+1],l=o[f+2],d=o[f];d!=u;d+=l){var g=c^e[d],h=(c>>>4|c<<28)^e[d+1];s=a,a=c,c=s^(Qd[g>>>24&63]|jd[g>>>16&63]|ep[g>>>8&63]|np[g&63]|Xd[h>>>24&63]|Jd[h>>>16&63]|tp[h>>>8&63]|rp[h&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function Di(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=wt.cipher.createDecipher(r,e.key):n=wt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof wt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Sr=pt((Cb,Gc)=>{var Ui=ht();Gc.exports=Ui.md=Ui.md||{};Ui.md.algorithms=Ui.md.algorithms||{}});var Wc=pt((Tb,$c)=>{var ze=ht();Sr();_t();var op=$c.exports=ze.hmac=ze.hmac||{};op.create=function(){var e=null,t=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in ze.md.algorithms)t=ze.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else t=o;if(s===null)s=e;else{if(typeof s=="string")s=ze.util.createBuffer(s);else if(ze.util.isArray(s)){var a=s;s=ze.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var f=s.length();f>t.blockLength&&(t.start(),t.update(s.bytes()),s=t.digest()),r=ze.util.createBuffer(),n=ze.util.createBuffer(),f=s.length();for(var c=0;c<f;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(f<t.blockLength)for(var a=t.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);e=s,r=r.bytes(),n=n.bytes()}t.start(),t.update(r)},i.update=function(o){t.update(o)},i.getMac=function(){var o=t.digest().bytes();return t.start(),t.update(n),t.update(o),t.digest()},i.digest=i.getMac,i}});var ki=pt(()=>{});var Zc=pt((Rb,Yc)=>{var Zt=ht();Wc();Sr();_t();var sp=Zt.pkcs5=Zt.pkcs5||{},Ge;Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&(Ge=ki());Yc.exports=Zt.pbkdf2=sp.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&Ge.pbkdf2&&(i===null||typeof i!="object")&&(Ge.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?Ge.pbkdf2Sync.length===4?Ge.pbkdf2(e,t,r,n,function(m,C){if(m)return o(m);o(null,C.toString("binary"))}):Ge.pbkdf2(e,t,r,n,i,function(m,C){if(m)return o(m);o(null,C.toString("binary"))}):Ge.pbkdf2Sync.length===4?Ge.pbkdf2Sync(e,t,r,n).toString("binary"):Ge.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Zt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Zt.md[i].create()}var s=i.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(o)return o(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=Zt.hmac.create();u.start(i,e);var l="",d,g,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(t),u.update(Zt.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var y=2;y<=r;++y)u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Zt.util.xorBytes(d,g,s),h=g;l+=p<c?d:d.substr(0,f)}return l}var p=1,y;function x(){if(p>c)return o(null,l);u.start(null,null),u.update(t),u.update(Zt.util.int32ToBytes(p)),d=h=u.digest().getBytes(),y=2,v()}function v(){if(y<=r)return u.start(null,null),u.update(h),g=u.digest().getBytes(),d=Zt.util.xorBytes(d,g,s),h=g,++y,Zt.util.setImmediate(v);l+=p<c?d:d.substr(0,f),++p,x()}x()}});var Jc=pt((Nb,Qc)=>{var Oi=ht();_t();var Xc=Qc.exports=Oi.pem=Oi.pem||{};Xc.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
9
+ `,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=Ki(n)),e.contentDomain&&(n={name:"Content-Domain",values:[e.contentDomain]},r+=Ki(n)),e.dekInfo&&(n={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&n.values.push(e.dekInfo.parameters),r+=Ki(n)),e.headers)for(var i=0;i<e.headers.length;++i)r+=Ki(e.headers[i]);return e.procType&&(r+=`\r
10
+ `),r+=Oi.util.encode64(e.body,t.maxline||64)+`\r
11
11
  `,r+="-----END "+e.type+`-----\r
12
- `,r};Tc.decode=function(e){for(var t=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(e),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Li.util.decode64(o[3])};if(t.push(a),!!o[2]){for(var c=o[2].split(i),f=0;o&&f<c.length;){for(var u=c[f].replace(/\s+$/,""),l=f+1;l<c.length;++l){var d=c[l];if(!/\s/.test(d[0]))break;u+=d,f=l}if(o=u.match(n),o){for(var g={name:o[1],values:[]},h=o[2].split(","),p=0;p<h.length;++p)g.values.push(Rd(h[p]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=h[0]||"";else if(!a.dekInfo&&g.name==="DEK-Info"){if(g.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:h[0],parameters:h[1]||null}}else a.headers.push(g);else{if(g.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(g.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:h[0],type:h[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(t.length===0)throw new Error("Invalid PEM formatted message.");return t};function _i(e){for(var t=e.name+": ",r=[],n=function(c,f){return" "+f},i=0;i<e.values.length;++i)r.push(e.values[i].replace(/^(\S+\r\n)/,n));t+=r.join(",")+`\r
12
+ `,r};Xc.decode=function(e){for(var t=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(e),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Oi.util.decode64(o[3])};if(t.push(a),!!o[2]){for(var c=o[2].split(i),f=0;o&&f<c.length;){for(var u=c[f].replace(/\s+$/,""),l=f+1;l<c.length;++l){var d=c[l];if(!/\s/.test(d[0]))break;u+=d,f=l}if(o=u.match(n),o){for(var g={name:o[1],values:[]},h=o[2].split(","),p=0;p<h.length;++p)g.values.push(ap(h[p]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=h[0]||"";else if(!a.dekInfo&&g.name==="DEK-Info"){if(g.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:h[0],parameters:h[1]||null}}else a.headers.push(g);else{if(g.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(g.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:h[0],type:h[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(t.length===0)throw new Error("Invalid PEM formatted message.");return t};function Ki(e){for(var t=e.name+": ",r=[],n=function(c,f){return" "+f},i=0;i<e.values.length;++i)r.push(e.values[i].replace(/^(\S+\r\n)/,n));t+=r.join(",")+`\r
13
13
  `;for(var o=0,s=-1,i=0;i<t.length;++i,++o)if(o>65&&s!==-1){var a=t[s];a===","?(++s,t=t.substr(0,s)+`\r
14
14
  `+t.substr(s)):t=t.substr(0,s)+`\r
15
- `+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function Rd(e){return e.replace(/^\s+/,"")}});var Uc=yt((W2,kc)=>{var Ee=dt();mr();Nt();var Nc=kc.exports=Ee.sha256=Ee.sha256||{};Ee.md.sha256=Ee.md.algorithms.sha256=Nc;Nc.create=function(){Pc||Nd();var e=null,t=Ee.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Ee.util.createBuffer(),e={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ee.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),Rc(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ee.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(us.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};Rc(l,r,i);var d=Ee.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var us=null,Pc=!1,Dc=null;function Nd(){us="\x80",us+=Ee.util.fillString("\0",64),Dc=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],Pc=!0}function Rc(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v=r.length();v>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)n=t[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[f]=n+t[f-7]+i+t[f-16]|0;for(u=e.h0,l=e.h1,d=e.h2,g=e.h3,h=e.h4,p=e.h5,y=e.h6,x=e.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=x+s+a+Dc[f]+t[f],i=o+c,x=y,y=p,p=h,h=g+n>>>0,g=d,d=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+g|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+x|0,v-=64}}});var Oc=yt(($2,Kc)=>{var Se=dt();Nt();var Ri=null;Se.util.isNodejs&&!Se.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Ri=Ti());var Pd=Kc.exports=Se.prng=Se.prng||{};Pd.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(f,u){if(!u)return t.generateSync(f);var l=t.plugin.cipher,d=t.plugin.increment,g=t.plugin.formatKey,h=t.plugin.formatSeed,p=Se.util.createBuffer();t.key=null,y();function y(x){if(x)return u(x);if(p.length()>=f)return u(null,p.getBytes(f));if(t.generated>1048575&&(t.key=null),t.key===null)return Se.util.nextTick(function(){o(y)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=g(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Se.util.setImmediate(y)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,g=t.plugin.formatSeed;t.key=null;for(var h=Se.util.createBuffer();h.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(u(t.key,l(t.seed))),t.seed=g(u(t.key,t.seed))}return h.getBytes(f)};function o(f){if(t.pools[0].messageLength>=32)return a(),f();var u=32-t.pools[0].messageLength<<5;t.seedFile(u,function(l,d){if(l)return f(l);t.collect(d),a(),f()})}function s(){if(t.pools[0].messageLength>=32)return a();var f=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(f)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var f=t.plugin.md.create();f.update(t.keyBytes);for(var u=1,l=0;l<32;++l)t.reseeds%u===0&&(f.update(t.pools[l].digest().getBytes()),t.pools[l].start()),u=u<<1;t.keyBytes=f.digest().getBytes(),f.start(),f.update(t.keyBytes);var d=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(f){var u=null,l=Se.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(S){return d.getRandomValues(S)});var g=Se.util.createBuffer();if(u)for(;g.length()<f;){var h=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(g.length()<f)for(var x,v,m,I=Math.floor(Math.random()*65536);g.length()<f;){v=16807*(I&65535),x=16807*(I>>16),v+=(x&32767)<<16,v+=x>>15,v=(v&2147483647)+(v>>31),I=v&4294967295;for(var y=0;y<3;++y)m=I>>>(y<<3),m^=Math.floor(Math.random()*256),g.putByte(m&255)}return g.getBytes(f)}return Ri?(t.seedFile=function(f,u){Ri.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Ri.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,d){function g(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(g,h){f.postMessage({forge:{prng:{err:g,bytes:h}}})})};f.addEventListener("message",u)}},t}});var In=yt((Y2,ls)=>{var Vt=dt();fs();Uc();Oc();Nt();(function(){if(Vt.random&&Vt.random.getBytes){ls.exports=Vt.random;return}(function(e){var t={},r=new Array(4),n=Vt.util.createBuffer();t.formatKey=function(l){var d=Vt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Vt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Vt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return Vt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Vt.md.sha256;function i(){var l=Vt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=Vt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Vt.options.usePureJavaScript||!Vt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Vt.random)Vt.random=o;else for(var u in o)Vt.random[u]=o[u];Vt.random.createInstance=i,ls.exports=Vt.random})(typeof jQuery<"u"?jQuery:null)})()});var qc=yt((Z2,Fc)=>{var Jt=dt();Nt();var hs=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],Mc=[1,2,3,5],Dd=function(e,t){return e<<t&65535|(e&65535)>>16-t},kd=function(e,t){return(e&65535)>>t|e<<16-t&65535};Fc.exports=Jt.rc2=Jt.rc2||{};Jt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Jt.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(hs[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,hs[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,hs[r.at(a+1)^r.at(a+o)]);return r};var Vc=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Jt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=Dd(h[f],Mc[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=kd(h[f],Mc[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var x=0;x<h.length;x++)for(var v=0;v<h[x][0];v++)h[x][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(h,p){h&&typeof h=="string"&&(h=Jt.util.createBuffer(h)),n=!1,i=Jt.util.createBuffer(),o=p||new Jt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var x=o.length(),v=o.at(x-1);v>x?p=!1:o.truncate(v)}return p}},g};Jt.rc2.startEncrypting=function(e,t,r){var n=Jt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createEncryptionCipher=function(e,t){return Vc(e,t,!0)};Jt.rc2.startDecrypting=function(e,t,r){var n=Jt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Jt.rc2.createDecryptionCipher=function(e,t){return Vc(e,t,!1)}});var Di=yt((X2,Xc)=>{var ds=dt();Xc.exports=ds.jsbn=ds.jsbn||{};var He,Ud=0xdeadbeefcafe,Hc=(Ud&16777215)==15715070;function P(e,t,r){this.data=[],e!=null&&(typeof e=="number"?this.fromNumber(e,t,r):t==null&&typeof e!="string"?this.fromString(e,256):this.fromString(e,t))}ds.jsbn.BigInteger=P;function at(){return new P(null)}function Kd(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Od(e,t,r,n,i,o){for(var s=t&32767,a=t>>15;--o>=0;){var c=this.data[e]&32767,f=this.data[e++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function zc(e,t,r,n,i,o){for(var s=t&16383,a=t>>14;--o>=0;){var c=this.data[e]&16383,f=this.data[e++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(P.prototype.am=zc,He=28):Hc&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=Od,He=30):Hc&&navigator.appName!="Netscape"?(P.prototype.am=Kd,He=26):(P.prototype.am=zc,He=28);P.prototype.DB=He;P.prototype.DM=(1<<He)-1;P.prototype.DV=1<<He;var ps=52;P.prototype.FV=Math.pow(2,ps);P.prototype.F1=ps-He;P.prototype.F2=2*He-ps;var Md="0123456789abcdefghijklmnopqrstuvwxyz",Ni=new Array,$r,ie;$r=48;for(ie=0;ie<=9;++ie)Ni[$r++]=ie;$r=97;for(ie=10;ie<36;++ie)Ni[$r++]=ie;$r=65;for(ie=10;ie<36;++ie)Ni[$r++]=ie;function Gc(e){return Md.charAt(e)}function Wc(e,t){var r=Ni[e.charCodeAt(t)];return r??-1}function Vd(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function Fd(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0}function ir(e){var t=at();return t.fromInt(e),t}function qd(e,t){var r;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(e,t);return}this.t=0,this.s=0;for(var n=e.length,i=!1,o=0;--n>=0;){var s=r==8?e[n]&255:Wc(e,n);if(s<0){e.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&e[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&P.ZERO.subTo(this,this)}function Hd(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function zd(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<<t)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=Gc(n));s>=0;)a<t?(n=(this.data[s]&(1<<a)-1)<<t-a,n|=this.data[--s]>>(a+=this.DB-t)):(n=this.data[s]>>(a-=t)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=Gc(n));return i?o:"0"}function Gd(){var e=at();return P.ZERO.subTo(this,e),e}function Wd(){return this.s<0?this.negate():this}function $d(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this.data[r]-e.data[r])!=0)return t;return 0}function Pi(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function Yd(){return this.t<=0?0:this.DB*(this.t-1)+Pi(this.data[this.t-1]^this.s&this.DM)}function Zd(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s}function Xd(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function Qd(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function Jd(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function jd(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function tp(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&P.ZERO.subTo(t,t)}function ep(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e.data[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t.data[r],e,2*r,0,1);(e.data[r+t.t]+=t.am(r+1,2*t.data[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()}function rp(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=at());var o=at(),s=this.s,a=e.s,c=this.DB-Pi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,x=t??at();for(o.dlShiftTo(y,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),P.ONE.dlShiftTo(f,x),x.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,x),r.subTo(x,r);r.data[p]<--v;)r.subTo(x,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&P.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function np(e){var t=at();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(P.ZERO)>0&&e.subTo(t,t),t}function br(e){this.m=e}function ip(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function op(e){return e}function sp(e){e.divRemTo(this.m,null,e)}function ap(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function cp(e,t){e.squareTo(t),this.reduce(t)}br.prototype.convert=ip;br.prototype.revert=op;br.prototype.reduce=sp;br.prototype.mulTo=ap;br.prototype.sqrTo=cp;function fp(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function vr(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function up(e){var t=at();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(P.ZERO)>0&&this.m.subTo(t,t),t}function lp(e){var t=at();return e.copyTo(t),this.reduce(t),t}function hp(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=e.data[t]&32767,n=r*this.mpl+((r*this.mph+(e.data[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function dp(e,t){e.squareTo(t),this.reduce(t)}function pp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}vr.prototype.convert=up;vr.prototype.revert=lp;vr.prototype.reduce=hp;vr.prototype.mulTo=pp;vr.prototype.sqrTo=dp;function yp(){return(this.t>0?this.data[0]&1:this.s)==0}function gp(e,t){if(e>4294967295||e<1)return P.ONE;var r=at(),n=at(),i=t.convert(this),o=Pi(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function xp(e,t){var r;return e<256||t.isEven()?r=new br(t):r=new vr(t),this.exp(e,r)}P.prototype.copyTo=Vd;P.prototype.fromInt=Fd;P.prototype.fromString=qd;P.prototype.clamp=Hd;P.prototype.dlShiftTo=Zd;P.prototype.drShiftTo=Xd;P.prototype.lShiftTo=Qd;P.prototype.rShiftTo=Jd;P.prototype.subTo=jd;P.prototype.multiplyTo=tp;P.prototype.squareTo=ep;P.prototype.divRemTo=rp;P.prototype.invDigit=fp;P.prototype.isEven=yp;P.prototype.exp=gp;P.prototype.toString=zd;P.prototype.negate=Gd;P.prototype.abs=Wd;P.prototype.compareTo=$d;P.prototype.bitLength=Yd;P.prototype.mod=np;P.prototype.modPowInt=xp;P.ZERO=ir(0);P.ONE=ir(1);function mp(){var e=at();return this.copyTo(e),e}function bp(){if(this.s<0){if(this.t==1)return this.data[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this.data[0];if(this.t==0)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]}function vp(){return this.t==0?this.s:this.data[0]<<24>>24}function wp(){return this.t==0?this.s:this.data[0]<<16>>16}function Ep(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Sp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Bp(e){if(e==null&&(e=10),this.signum()==0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=ir(r),i=at(),o=at(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function Ap(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,o=0,s=0,a=0;a<e.length;++a){var c=Wc(e,a);if(c<0){e.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=t*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(t,o)),this.dAddOffset(s,0)),i&&P.ZERO.subTo(this,this)}function Ip(e,t,r){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(P.ONE.shiftLeft(e-1),ys,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(P.ONE.shiftLeft(e-1),this);else{var n=new Array,i=e&7;n.length=(e>>3)+1,t.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function Cp(){var e=this.t,t=new Array;t[0]=this.s;var r=this.DB-e*this.DB%8,n,i=0;if(e-- >0)for(r<this.DB&&(n=this.data[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<<this.DB-r);e>=0;)r<8?(n=(this.data[e]&(1<<r)-1)<<8-r,n|=this.data[--e]>>(r+=this.DB-8)):(n=this.data[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function Tp(e){return this.compareTo(e)==0}function _p(e){return this.compareTo(e)<0?this:e}function Lp(e){return this.compareTo(e)>0?this:e}function Rp(e,t,r){var n,i,o=Math.min(e.t,this.t);for(n=0;n<o;++n)r.data[n]=t(this.data[n],e.data[n]);if(e.t<this.t){for(i=e.s&this.DM,n=o;n<this.t;++n)r.data[n]=t(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<e.t;++n)r.data[n]=t(i,e.data[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()}function Np(e,t){return e&t}function Pp(e){var t=at();return this.bitwiseTo(e,Np,t),t}function ys(e,t){return e|t}function Dp(e){var t=at();return this.bitwiseTo(e,ys,t),t}function $c(e,t){return e^t}function kp(e){var t=at();return this.bitwiseTo(e,$c,t),t}function Yc(e,t){return e&~t}function Up(e){var t=at();return this.bitwiseTo(e,Yc,t),t}function Kp(){for(var e=at(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function Op(e){var t=at();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function Mp(e){var t=at();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function Vp(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function Fp(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+Vp(this.data[e]);return this.s<0?this.t*this.DB:-1}function qp(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function Hp(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=qp(this.data[r]^t);return e}function zp(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function Gp(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function Wp(e){return this.changeBit(e,ys)}function $p(e){return this.changeBit(e,Yc)}function Yp(e){return this.changeBit(e,$c)}function Zp(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]+e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()}function Xp(e){var t=at();return this.addTo(e,t),t}function Qp(e){var t=at();return this.subTo(e,t),t}function Jp(e){var t=at();return this.multiplyTo(e,t),t}function jp(e){var t=at();return this.divRemTo(e,t,null),t}function ty(e){var t=at();return this.divRemTo(e,null,t),t}function ey(e){var t=at(),r=at();return this.divRemTo(e,t,r),new Array(t,r)}function ry(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function ny(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function Cn(){}function Zc(e){return e}function iy(e,t,r){e.multiplyTo(t,r)}function oy(e,t){e.squareTo(t)}Cn.prototype.convert=Zc;Cn.prototype.revert=Zc;Cn.prototype.mulTo=iy;Cn.prototype.sqrTo=oy;function sy(e){return this.exp(e,new Cn)}function ay(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,e.data[n],r,n,0,this.t);for(i=Math.min(e.t,t);n<i;++n)this.am(0,e.data[n],r,n,0,t-n);r.clamp()}function cy(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function Yr(e){this.r2=at(),this.q3=at(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function fy(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=at();return e.copyTo(t),this.reduce(t),t}function uy(e){return e}function ly(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function hy(e,t){e.squareTo(t),this.reduce(t)}function dy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Yr.prototype.convert=fy;Yr.prototype.revert=uy;Yr.prototype.reduce=ly;Yr.prototype.mulTo=dy;Yr.prototype.sqrTo=hy;function py(e,t){var r=e.bitLength(),n,i=ir(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new br(t):t.isEven()?o=new Yr(t):o=new vr(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=at();for(o.sqrTo(s[1],u);a<=f;)s[a]=at(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=at(),p;for(r=Pi(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&f:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[d].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function yy(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function gy(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t==0)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r}function xy(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return P.ZERO;for(var r=e.clone(),n=this.clone(),i=ir(1),o=ir(0),s=ir(0),a=ir(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(P.ONE)!=0)return P.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var ye=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509],my=(1<<26)/ye[ye.length-1];function by(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=ye[ye.length-1]){for(t=0;t<ye.length;++t)if(r.data[0]==ye[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<ye.length;){for(var n=ye[t],i=t+1;i<ye.length&&n<my;)n*=ye[i++];for(n=r.modInt(n);t<i;)if(n%ye[t++]==0)return!1}return r.millerRabin(e)}function vy(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=wy(),o,s=0;s<e;++s){do o=new P(this.bitLength(),i);while(o.compareTo(P.ONE)<=0||o.compareTo(t)>=0);var a=o.modPow(n,this);if(a.compareTo(P.ONE)!=0&&a.compareTo(t)!=0){for(var c=1;c++<r&&a.compareTo(t)!=0;)if(a=a.modPowInt(2,this),a.compareTo(P.ONE)==0)return!1;if(a.compareTo(t)!=0)return!1}}return!0}function wy(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Ep;P.prototype.toRadix=Bp;P.prototype.fromRadix=Ap;P.prototype.fromNumber=Ip;P.prototype.bitwiseTo=Rp;P.prototype.changeBit=Gp;P.prototype.addTo=Zp;P.prototype.dMultiply=ry;P.prototype.dAddOffset=ny;P.prototype.multiplyLowerTo=ay;P.prototype.multiplyUpperTo=cy;P.prototype.modInt=gy;P.prototype.millerRabin=vy;P.prototype.clone=mp;P.prototype.intValue=bp;P.prototype.byteValue=vp;P.prototype.shortValue=wp;P.prototype.signum=Sp;P.prototype.toByteArray=Cp;P.prototype.equals=Tp;P.prototype.min=_p;P.prototype.max=Lp;P.prototype.and=Pp;P.prototype.or=Dp;P.prototype.xor=kp;P.prototype.andNot=Up;P.prototype.not=Kp;P.prototype.shiftLeft=Op;P.prototype.shiftRight=Mp;P.prototype.getLowestSetBit=Fp;P.prototype.bitCount=Hp;P.prototype.testBit=zp;P.prototype.setBit=Wp;P.prototype.clearBit=$p;P.prototype.flipBit=Yp;P.prototype.add=Xp;P.prototype.subtract=Qp;P.prototype.multiply=Jp;P.prototype.divide=jp;P.prototype.remainder=ty;P.prototype.divideAndRemainder=ey;P.prototype.modPow=py;P.prototype.modInverse=xy;P.prototype.pow=sy;P.prototype.gcd=yy;P.prototype.isProbablePrime=by});var ef=yt((Q2,tf)=>{var Be=dt();mr();Nt();var Jc=tf.exports=Be.sha1=Be.sha1||{};Be.md.sha1=Be.md.algorithms.sha1=Jc;Jc.create=function(){jc||Ey();var e=null,t=Be.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Be.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Be.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),Qc(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Be.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(gs.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};Qc(l,r,i);var d=Be.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var gs=null,jc=!1;function Ey(){gs="\x80",gs+=Be.util.fillString("\0",64),jc=!0}function Qc(e,t,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,u=0;u<16;++u)n=r.getInt32(),t[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,l-=64}}});var of=yt((J2,nf)=>{var Ae=dt();Nt();In();ef();var rf=nf.exports=Ae.pkcs1=Ae.pkcs1||{};rf.encode_rsa_oaep=function(e,t,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Ae.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=t.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",d=c-t.length,g=0;g<d;g++)l+="\0";var h=u.getBytes()+l+""+t;if(!i)i=Ae.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=i.length,f.digestLength=o.digestLength,f}var p=ki(i,a-o.digestLength-1,s),y=Ae.util.xorBytes(h,p,h.length),x=ki(y,o.digestLength,s),v=Ae.util.xorBytes(i,x,i.length);return"\0"+v+y};rf.decode_rsa_oaep=function(e,t,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(e.n.bitLength()/8);if(t.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}if(i===void 0?i=Ae.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=t.charAt(0),f=t.substring(1,i.digestLength+1),u=t.substring(1+i.digestLength),l=ki(u,i.digestLength,o),d=Ae.util.xorBytes(f,l,f.length),g=ki(d,s-i.digestLength-1,o),h=Ae.util.xorBytes(u,g,u.length),p=h.substring(0,i.digestLength),y=c!=="\0",x=0;x<i.digestLength;++x)y|=a.charAt(x)!==p.charAt(x);for(var v=1,m=i.digestLength,I=i.digestLength;I<h.length;I++){var S=h.charCodeAt(I),B=S&1^1,R=v?65534:0;y|=S&R,v=v&B,m+=v}if(y||h.charCodeAt(m)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(m+1)};function ki(e,t,r){r||(r=Ae.md.sha1.create());for(var n="",i=Math.ceil(t/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var sf=yt((j2,xs)=>{var or=dt();Nt();Di();In();(function(){if(or.prime){xs.exports=or.prime;return}var e=xs.exports=or.prime=or.prime||{},t=or.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,g){typeof d=="function"&&(g=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||or.random,y={nextBytes:function(x){for(var v=p.getBytesSync(x.length),m=0;m<x.length;++m)x[m]=v.charCodeAt(m)}};if(h.name==="PRIMEINC")return o(l,y,h.options,g);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,g,h){return"workers"in g?c(l,d,g,h):s(l,d,g,h)}function s(l,d,g,h){var p=f(l,d),y=0,x=u(p.bitLength());"millerRabinTests"in g&&(x=g.millerRabinTests);var v=10;"maxBlockTime"in g&&(v=g.maxBlockTime),a(p,l,d,y,x,v,h)}function a(l,d,g,h,p,y,x){var v=+new Date;do{if(l.bitLength()>d&&(l=f(d,g)),l.isProbablePrime(p))return x(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-v<y);or.util.setImmediate(function(){a(l,d,g,h,p,y,x)})}function c(l,d,g,h){if(typeof Worker>"u")return s(l,d,g,h);var p=f(l,d),y=g.workers,x=g.workLoad||100,v=x*30/8,m=g.workerScript||"forge/prime.worker.js";if(y===-1)return or.util.estimateCores(function(S,B){S&&(B=2),y=B-1,I()});I();function I(){y=Math.max(1,y);for(var S=[],B=0;B<y;++B)S[B]=new Worker(m);for(var R=y,B=0;B<y;++B)S[B].addEventListener("message",O);var L=!1;function O(M){if(!L){--R;var U=M.data;if(U.found){for(var H=0;H<S.length;++H)S[H].terminate();return L=!0,h(null,new t(U.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:x}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var Ki=yt((tb,df)=>{var W=dt();An();Di();wi();of();sf();In();Nt();typeof st>"u"&&(st=W.jsbn.BigInteger);var st,ms=W.util.isNodejs?Ti():null,E=W.asn1,oe=W.util;W.pki=W.pki||{};df.exports=W.pki.rsa=W.rsa=W.rsa||{};var Q=W.pki,Sy=[6,4,2,4,2,4,6,2],By={name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Ay={name:"RSAPrivateKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Iy={name:"RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},Cy=W.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Ty={name:"DigestInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:E.Class.UNIVERSAL,type:E.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},_y=function(e){var t;if(e.algorithm in Q.oids)t=Q.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=E.oidToDer(t).getBytes(),i=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]),o=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]);o.value.push(E.create(E.Class.UNIVERSAL,E.Type.OID,!1,n)),o.value.push(E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,""));var s=E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),E.toDer(i).getBytes()},lf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(st.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(st.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new st(W.util.bytesToHex(W.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(st.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=hf(e,t,r)):(i=W.util.createBuffer(),i.putBytes(e));for(var s=new st(i.toHex(),16),a=lf(s,t,n),c=a.toString(16),f=W.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new st(W.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=lf(s,t,r),c=a.toString(16),f=W.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(W.util.hexToBytes(c)),n!==!1?Ui(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||W.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new st(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new st(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new st(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(st.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(Ry(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Sy[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(st.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!W.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(af("generateKeyPair"))return ms.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:Q.privateKeyFromPem(f),publicKey:Q.publicKeyFromPem(c)})});if(cf("generateKey")&&cf("exportKey"))return oe.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:uf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return oe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer(W.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(ff("generateKey")&&ff("exportKey")){var i=oe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:uf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=oe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer(W.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(af("generateKeyPairSync")){var o=ms.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:Q.privateKeyFromPem(o.privateKey),publicKey:Q.publicKeyFromPem(o.publicKey)}}}var s=Q.rsa.createKeyPairGenerationState(e,t,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;Ly(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(e,t){var r={n:e,e:t};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return hf(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return W.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=Ui(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,Ty,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===W.oids.md2||h===W.oids.md5||h===W.oids.sha1||h===W.oids.sha224||h===W.oids.sha256||h===W.oids.sha384||h===W.oids.sha512||h===W.oids["sha512-224"]||h===W.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===W.oids.md2||h===W.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=Ui(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var d=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Ui};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return W.pkcs1.decode_rsa_oaep(h,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:_y},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(d,c,l)},c};Q.wrapRsaPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,E.toDer(e).getBytes())])};Q.privateKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,By,t,r)&&(e=E.fromDer(W.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,Ay,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=W.util.createBuffer(t.privateKeyModulus).toHex(),o=W.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=W.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=W.util.createBuffer(t.privateKeyPrime1).toHex(),c=W.util.createBuffer(t.privateKeyPrime2).toHex(),f=W.util.createBuffer(t.privateKeyExponent1).toHex(),u=W.util.createBuffer(t.privateKeyExponent2).toHex(),l=W.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new st(i,16),new st(o,16),new st(s,16),new st(a,16),new st(c,16),new st(f,16),new st(u,16),new st(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,Cy,t,r)){var n=E.derToOid(t.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}e=t.rsaPublicKey}if(r=[],!E.validate(e,Iy,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=W.util.createBuffer(t.publicKeyModulus).toHex(),s=W.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new st(o,16),new st(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ie(e.e))])};function hf(e,t,r){var n=W.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=W.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(e),n}function Ui(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=W.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function Ly(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){W.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.p=null,i();return}if(e.q.subtract(st.ONE).gcd(e.e).compareTo(st.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(st.ONE),e.q1=e.q.subtract(st.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(st.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function Ie(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=W.util.hexToBytes(t);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function Ry(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function af(e){return W.util.isNodejs&&typeof ms[e]=="function"}function cf(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.crypto=="object"&&typeof oe.globalScope.crypto.subtle=="object"&&typeof oe.globalScope.crypto.subtle[e]=="function"}function ff(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.msCrypto=="object"&&typeof oe.globalScope.msCrypto.subtle=="object"&&typeof oe.globalScope.msCrypto.subtle[e]=="function"}function uf(e){for(var t=W.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var bf=yt((eb,mf)=>{var q=dt();fs();An();Ec();mr();wi();Cc();Lc();In();qc();Ki();Nt();typeof pf>"u"&&(pf=q.jsbn.BigInteger);var pf,C=q.asn1,tt=q.pki=q.pki||{};mf.exports=tt.pbe=q.pbe=q.pbe||{};var wr=tt.oids,Ny={name:"EncryptedPrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},Py={name:"PBES2Algorithms",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},Dy={name:"pkcs-12PbeParams",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=q.random.getBytesSync(r.saltSize),i=r.count,o=C.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=wr["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=wr["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=wr["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=wr.desCBC,l=q.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),h=xf(g),p=q.pkcs5.pbkdf2(t,n,i,s,h),y=q.random.getBytesSync(f),x=l(p);x.start(y),x.update(C.toDer(e)),x.finish(),c=x.output.getBytes();var v=ky(n,o,s,g);a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(wr.pkcs5PBES2).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(wr.pkcs5PBKDF2).getBytes()),v]),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(u).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var m=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,m,1,i,s),y=tt.pbe.generatePkcs12Key(t,m,2,i,s),x=q.des.createEncryptionCipher(p);x.start(y),x.update(C.toDer(e)),x.finish(),c=x.output.getBytes(),a=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(wr["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,n),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var I=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[a,C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,c)]);return I};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!C.validate(e,Ny,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=C.derToOid(n.encryptionOid),a=tt.pbe.getCipher(s,n.encryptionParams,t),c=q.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=C.fromDer(a.output)),r};tt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:C.toDer(e).getBytes()};return q.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=q.pem.decode(e)[0];if(t.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return C.fromDer(t.body)};tt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=tt.wrapRsaPrivateKey(tt.privateKeyToAsn1(e));return n=tt.encryptPrivateKeyInfo(n,t,r),tt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=q.pbe.opensslDeriveBytes(t,o.substr(0,8),s),u=a(f);u.start(o),u.update(C.toDer(tt.privateKeyToAsn1(e))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:q.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return q.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=q.pem.decode(e)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=q.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=q.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=q.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=q.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=q.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return q.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return q.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return q.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=q.util.hexToBytes(n.dekInfo.parameters),c=q.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(q.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=tt.decryptPrivateKeyInfo(C.fromDer(r),t):r=C.fromDer(r),r!==null&&(r=tt.privateKeyFromAsn1(r)),r};tt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in q.md))throw new Error('"sha1" hash algorithm unavailable.');o=q.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new q.util.ByteBuffer,l=new q.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),g=t.length(),h=new q.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new q.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var x=f*Math.ceil(d/f),v=new q.util.ByteBuffer;for(a=0;a<x;a++)v.putByte(l.at(a%d));var m=y;m.putBuffer(v);for(var I=Math.ceil(i/c),S=1;S<=I;S++){var B=new q.util.ByteBuffer;B.putBytes(h.bytes()),B.putBytes(m.bytes());for(var R=0;R<n;R++)o.start(),o.update(B.getBytes()),B=o.digest();var L=new q.util.ByteBuffer;for(a=0;a<f;a++)L.putByte(B.at(a%c));var O=Math.ceil(g/f)+Math.ceil(d/f),M=new q.util.ByteBuffer;for(s=0;s<O;s++){var U=new q.util.ByteBuffer(m.getBytes(f)),H=511;for(a=L.length()-1;a>=0;a--)H=H>>8,H+=L.at(a)+U.at(a),U.setAt(a,H&255);M.putBuffer(U)}m=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!C.validate(t,Py,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(e=C.derToOid(n.kdfOid),e!==tt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=C.derToOid(n.encOid),e!==tt.oids["aes128-CBC"]&&e!==tt.oids["aes192-CBC"]&&e!==tt.oids["aes256-CBC"]&&e!==tt.oids["des-EDE3-CBC"]&&e!==tt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=q.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=q.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=q.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=q.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=q.des.createDecryptionCipher;break;case"desCBC":c=8,f=q.des.createDecryptionCipher;break}var u=gf(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,g=f(l);return g.start(d),g};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!C.validate(t,Dy,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=q.util.createBuffer(n.salt),a=q.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(e){case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=q.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var x=q.rc2.createDecryptionCipher(p,40);return x.start(y,null),x};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=gf(n.prfOid),d=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,g)};tt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in q.md))throw new Error('"md5" hash algorithm unavailable.');n=q.md.md5.create()}t===null&&(t="");for(var i=[yf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(yf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function yf(e,t){return e.start().update(t).digest().getBytes()}function gf(e){var t;if(!e)t="hmacWithSHA1";else if(t=tt.oids[C.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return xf(t)}function xf(e){var t=q.md;switch(e){case"hmacWithSHA224":t=q.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function ky(e,t,r,n){var i=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,e),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,q.util.hexToBytes(r.toString(16))),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(tt.oids[n]).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")])),i}});var uu=yt((Qw,fu)=>{var vt=dt();mr();Nt();var kn=fu.exports=vt.sha512=vt.sha512||{};vt.md.sha512=vt.md.algorithms.sha512=kn;var au=vt.sha384=vt.sha512.sha384=vt.sha512.sha384||{};au.create=function(){return kn.create("SHA-384")};vt.md.sha384=vt.md.algorithms.sha384=au;vt.sha512.sha256=vt.sha512.sha256||{create:function(){return kn.create("SHA-512/256")}};vt.md["sha512/256"]=vt.md.algorithms["sha512/256"]=vt.sha512.sha256;vt.sha512.sha224=vt.sha512.sha224||{create:function(){return kn.create("SHA-512/224")}};vt.md["sha512/224"]=vt.md.algorithms["sha512/224"]=vt.sha512.sha224;kn.create=function(e){if(cu||eg(),typeof e>"u"&&(e="SHA-512"),!(e in _r))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=_r[e],r=null,n=vt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=vt.util.createBuffer(),r=new Array(t.length);for(var f=0;f<t.length;++f)r[f]=t[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=vt.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),su(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=vt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(oa.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);su(p,i,c);var y=vt.util.createBuffer(),x;e==="SHA-512"?x=p.length:e==="SHA-384"?x=p.length-2:x=p.length-4;for(var h=0;h<x;++h)y.putInt32(p[h][0]),(h!==x-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var oa=null,cu=!1,sa=null,_r=null;function eg(){oa="\x80",oa+=vt.util.fillString("\0",128),sa=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],_r={},_r["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],_r["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],_r["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],_r["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],cu=!0}function su(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v,m,I,S,B,R,L,O,M,U,H,z,Z,A,N,T,_,w,k,K,F=r.length();F>=128;){for(A=0;A<16;++A)t[A][0]=r.getInt32()>>>0,t[A][1]=r.getInt32()>>>0;for(;A<80;++A)_=t[A-2],N=_[0],T=_[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,k=t[A-15],N=k[0],T=k[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[A-7],K=t[A-16],T=i+w[1]+s+K[1],t[A][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[A][1]=T>>>0;for(p=e[0][0],y=e[0][1],x=e[1][0],v=e[1][1],m=e[2][0],I=e[2][1],S=e[3][0],B=e[3][1],R=e[4][0],L=e[4][1],O=e[5][0],M=e[5][1],U=e[6][0],H=e[6][1],z=e[7][0],Z=e[7][1],A=0;A<80;++A)f=((R>>>14|L<<18)^(R>>>18|L<<14)^(L>>>9|R<<23))>>>0,u=((R<<18|L>>>14)^(R<<14|L>>>18)^(L<<23|R>>>9))>>>0,l=(U^R&(O^U))>>>0,d=(H^L&(M^H))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&x|m&(p^x))>>>0,h=(y&v|I&(y^v))>>>0,T=Z+u+d+sa[A][1]+t[A][1],n=z+f+l+sa[A][0]+t[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=U,Z=H,U=O,H=M,O=R,M=L,T=B+i,R=S+n+(T/4294967296>>>0)>>>0,L=T>>>0,S=m,B=I,m=x,I=v,x=p,v=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=e[0][1]+y,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+x+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+I,e[2][0]=e[2][0]+m+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+L,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+U+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,F-=128}}});var ax={};Dt(ax,{webTransport:()=>sx});function De(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function nt(e=0){return globalThis.Buffer?.alloc!=null?De(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function kt(e=0){return globalThis.Buffer?.allocUnsafe!=null?De(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Rl=Math.pow(2,7),Nl=Math.pow(2,14),Pl=Math.pow(2,21),lo=Math.pow(2,28),ho=Math.pow(2,35),po=Math.pow(2,42),yo=Math.pow(2,49),ft=128,Wt=127;function $t(e){if(e<Rl)return 1;if(e<Nl)return 2;if(e<Pl)return 3;if(e<lo)return 4;if(e<ho)return 5;if(e<po)return 6;if(e<yo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Dl(e,t,r=0){switch($t(e)){case 8:t[r++]=e&255|ft,e/=128;case 7:t[r++]=e&255|ft,e/=128;case 6:t[r++]=e&255|ft,e/=128;case 5:t[r++]=e&255|ft,e/=128;case 4:t[r++]=e&255|ft,e>>>=7;case 3:t[r++]=e&255|ft,e>>>=7;case 2:t[r++]=e&255|ft,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function kl(e,t,r=0){switch($t(e)){case 8:t.set(r++,e&255|ft),e/=128;case 7:t.set(r++,e&255|ft),e/=128;case 6:t.set(r++,e&255|ft),e/=128;case 5:t.set(r++,e&255|ft),e/=128;case 4:t.set(r++,e&255|ft),e>>>=7;case 3:t.set(r++,e&255|ft),e>>>=7;case 2:t.set(r++,e&255|ft),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function Ul(e,t){let r=e[t],n=0;if(n+=r&Wt,r<ft||(r=e[t+1],n+=(r&Wt)<<7,r<ft)||(r=e[t+2],n+=(r&Wt)<<14,r<ft)||(r=e[t+3],n+=(r&Wt)<<21,r<ft)||(r=e[t+4],n+=(r&Wt)*lo,r<ft)||(r=e[t+5],n+=(r&Wt)*ho,r<ft)||(r=e[t+6],n+=(r&Wt)*po,r<ft)||(r=e[t+7],n+=(r&Wt)*yo,r<ft))return n;throw new RangeError("Could not decode varint")}function Kl(e,t){let r=e.get(t),n=0;if(n+=r&Wt,r<ft||(r=e.get(t+1),n+=(r&Wt)<<7,r<ft)||(r=e.get(t+2),n+=(r&Wt)<<14,r<ft)||(r=e.get(t+3),n+=(r&Wt)<<21,r<ft)||(r=e.get(t+4),n+=(r&Wt)*lo,r<ft)||(r=e.get(t+5),n+=(r&Wt)*ho,r<ft)||(r=e.get(t+6),n+=(r&Wt)*po,r<ft)||(r=e.get(t+7),n+=(r&Wt)*yo,r<ft))return n;throw new RangeError("Could not decode varint")}function Ze(e,t,r=0){return t==null&&(t=kt($t(e))),t instanceof Uint8Array?Dl(e,t,r):kl(e,t,r)}function fe(e,t=0){return e instanceof Uint8Array?Ul(e,t):Kl(e,t)}function At(e,t){if(globalThis.Buffer!=null)return De(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=kt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return De(r)}function It(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var t0=Symbol.for("@achingbrain/uint8arraylist");function ja(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function Pr(e){return!!e?.[t0]}var Ct=class e{bufs;length;[t0]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Pr(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Pr(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=ja(this.bufs,t);return r.buf[r.index]}set(t,r){let n=ja(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(Pr(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return At(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:At(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=[...n],o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let f=t>=a&&t<c,u=r>a&&r<=c;if(f&&u){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!Pr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=nt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=kt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=nt(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=nt(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=nt(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!It(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function Yn(e){return e[Symbol.asyncIterator]!=null}var Zn=e=>{let t=$t(e),r=kt(t);return Ze(e,r),Zn.bytes=t,r};Zn.bytes=0;function ln(e,t){t=t??{};let r=t.lengthEncoder??Zn;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Yn(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}ln.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??Zn;return new Ct(r(e.byteLength),e)};var Dr=Qt(n0(),1);var Ml=8,Vl=1024*1024*4,lr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(lr||(lr={}));var go=e=>{let t=fe(e);return go.bytes=$t(t),t};go.bytes=0;function hn(e,t){let r=new Ct,n=lr.LENGTH,i=-1,o=t?.lengthDecoder??go,s=t?.maxLengthLength??Ml,a=t?.maxDataLength??Vl;function*c(){for(;r.byteLength>0;){if(n===lr.LENGTH)try{if(i=o(r),i<0)throw(0,Dr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Dr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),t?.onLength!=null&&t.onLength(i),n=lr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Dr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===lr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(f),yield f,n=lr.LENGTH}}}return Yn(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Dr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Dr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}hn.fromReader=(e,t)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await e.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return hn(n,{...t??{},onLength:o=>{r=o}})};function ue(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var Xn=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function i0(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new Xn(r?.errorMessage,r?.errorCode));let n,i=new Xn(r?.errorMessage,r?.errorCode);try{return await Promise.race([e,new Promise((o,s)=>{n=()=>{s(i)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var xo=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=ue(),this.haveNext=ue()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let t=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=ue(),t}async throw(t){return this.ended=!0,t!=null&&this.haveNext.reject(t),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,r){await this._push(t,r)}async end(t,r){t!=null?await this.throw(t):await this._push(void 0,r)}async _push(t,r){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=ue(),await i0(this.needNext.promise,r?.signal,r)}};function o0(){return new xo}var Qn=class extends Error{code;constructor(t,r){super(t),this.code=r}},mo=class extends Qn{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function s0(e,t){let r=o0();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new Ct;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new mo("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new Ct:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new Qn("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let u=i.sublist(0,s);return i.consume(s),u}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=e.source;e.source=async function*(){t?.yieldBytes===!1?yield i:yield*i,yield*s}()}return e}}}var Jn=class extends Error{code;constructor(t,r){super(t),this.code=r}},a0=e=>fe(e);a0.bytes=0;function bo(e,t={}){let r=s0(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=$t(t.maxDataLength)),{read:async i=>{let o=-1,s=new Ct,a=t?.lengthDecoder??a0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new Jn("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new Jn("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(ln.single(i,t),o)},writeV:async(i,o)=>{let s=new Ct(...i.map(a=>ln.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function vo(){let e=ue(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function c0(){let e=vo(),t=vo();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}var jn=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},kr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new jn(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let r=this.head;this.head=r.next=new jn(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var wo=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function ti(e={}){return ql(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},e)}function ql(e,t){t=t??{};let r=t.onEnd,n=new kr,i,o,s,a=ue(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,x)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(m){x(m)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ue()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new kr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new kr,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let x=y?.signal;if(x?.throwIfAborted(),n.isEmpty())return;let v,m;x!=null&&(v=new Promise((I,S)=>{m=()=>{S(new wo)},x.addEventListener("abort",m)}));try{await Promise.race([a.promise,v])}finally{m!=null&&x!=null&&x?.removeEventListener("abort",m)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:y=>p.onEmpty(y)},i}function Hl(e){return e[Symbol.asyncIterator]!=null}function zl(...e){let t=[];for(let r of e)Hl(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=ti({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var f0=zl;function u0(e,...t){if(e==null)throw new Error("Empty pipeline");if(Eo(e)){let n=e;e=()=>n.source}else if(h0(e)||l0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Eo(r[r.length-1])&&(r[r.length-1]=r[r.length-1].sink),r.length>2)for(let n=1;n<r.length-1;n++)Eo(r[n])&&(r[n]=Wl(r[n]));return Gl(...r)}var Gl=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},l0=e=>e?.[Symbol.asyncIterator]!=null,h0=e=>e?.[Symbol.iterator]!=null,Eo=e=>e==null?!1:e.sink!=null&&e.source!=null,Wl=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=ti({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(l0(o))i=async function*(){yield*o,n.end()};else if(h0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return f0(n,i())}return e.source};var Ur=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var $l=e=>e instanceof Uint8Array;var ke=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),d0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Yl=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Yl)throw new Error("Non little-endian hardware is not supported");function ei(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function ri(e){if(typeof e=="string")e=ei(e);else if($l(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var Zl=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function p0(e,t){if(t!==void 0&&(typeof t!="object"||!Zl(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function hr(e,t){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function y0(e,t){if(e.length!==t.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<e.length;n++)r&&(r=e[n]===t[n]);return r}var So=(e,t)=>(Object.assign(t,e),t);function Bo(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}function ni(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Ao(e){if(typeof e!="boolean")throw new Error(`Expected boolean, not ${e}`)}function Kr(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function Io(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function g0(e,t){Kr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Ht=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Co=class{constructor(t){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,t=ri(t),hr(t,32);let r=Ht(t,0),n=Ht(t,2),i=Ht(t,4),o=Ht(t,6),s=Ht(t,8),a=Ht(t,10),c=Ht(t,12),f=Ht(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Ht(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],x=Ht(t,r+0),v=Ht(t,r+2),m=Ht(t,r+4),I=Ht(t,r+6),S=Ht(t,r+8),B=Ht(t,r+10),R=Ht(t,r+12),L=Ht(t,r+14),O=o[0]+(x&8191),M=o[1]+((x>>>13|v<<3)&8191),U=o[2]+((v>>>10|m<<6)&8191),H=o[3]+((m>>>7|I<<9)&8191),z=o[4]+((I>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),A=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|L<<8)&8191),_=o[9]+(L>>>5|i),w=0,k=w+O*a+M*(5*y)+U*(5*p)+H*(5*h)+z*(5*g);w=k>>>13,k&=8191,k+=Z*(5*d)+A*(5*l)+N*(5*u)+T*(5*f)+_*(5*c),w+=k>>>13,k&=8191;let K=w+O*c+M*a+U*(5*y)+H*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+A*(5*d)+N*(5*l)+T*(5*u)+_*(5*f),w+=K>>>13,K&=8191;let F=w+O*f+M*c+U*a+H*(5*y)+z*(5*p);w=F>>>13,F&=8191,F+=Z*(5*h)+A*(5*g)+N*(5*d)+T*(5*l)+_*(5*u),w+=F>>>13,F&=8191;let $=w+O*u+M*f+U*c+H*a+z*(5*y);w=$>>>13,$&=8191,$+=Z*(5*p)+A*(5*h)+N*(5*g)+T*(5*d)+_*(5*l),w+=$>>>13,$&=8191;let Y=w+O*l+M*u+U*f+H*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+A*(5*p)+N*(5*h)+T*(5*g)+_*(5*d),w+=Y>>>13,Y&=8191;let rt=w+O*d+M*l+U*u+H*f+z*c;w=rt>>>13,rt&=8191,rt+=Z*a+A*(5*y)+N*(5*p)+T*(5*h)+_*(5*g),w+=rt>>>13,rt&=8191;let X=w+O*g+M*d+U*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+A*a+N*(5*y)+T*(5*p)+_*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+U*d+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+A*c+N*a+T*(5*y)+_*(5*p),w+=J>>>13,J&=8191;let pt=w+O*p+M*h+U*g+H*d+z*l;w=pt>>>13,pt&=8191,pt+=Z*u+A*f+N*c+T*a+_*(5*y),w+=pt>>>13,pt&=8191;let ht=w+O*y+M*p+U*h+H*g+z*d;w=ht>>>13,ht&=8191,ht+=Z*l+A*u+N*f+T*c+_*a,w+=ht>>>13,ht&=8191,w=(w<<2)+w|0,w=w+k|0,k=w&8191,w=w>>>13,K+=w,o[0]=k,o[1]=K,o[2]=F,o[3]=$,o[4]=Y,o[5]=rt,o[6]=X,o[7]=J,o[8]=pt,o[9]=ht}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){Io(this);let{buffer:r,blockLen:n}=this;t=ri(t);let i=t.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(t,o);continue}r.set(t.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(t){Io(this),g0(t,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)t[o++]=n[s]>>>0,t[o++]=n[s]>>>8;return t}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}};function Xl(e){let t=(n,i)=>e(i).update(ri(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var x0=Xl(e=>new Co(e));var Ql=ei("expand 16-byte k"),Jl=ei("expand 32-byte k"),jl=ke(Ql),th=ke(Jl);function G(e,t){return e<<t|e>>>32-t}function To(e){return e.byteOffset%4===0}var ii=64,eh=16,b0=2**32-1,m0=new Uint32Array;function rh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(ii),u=ke(f),l=To(i)&&To(o),d=l?ke(i):m0,g=l?ke(o):m0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=b0)throw new Error("arx: counter overflow");let p=Math.min(ii,c-h);if(l&&p===ii){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let x=0,v;x<eh;x++)v=y+x,g[v]=d[v]^u[x];h+=ii;continue}for(let y=0,x;y<p;y++)x=h+y,o[x]=i[x]^f[y];h+=p}}function _o(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=p0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return ni(i),ni(s),Ao(o),Ao(r),(a,c,f,u,l=0)=>{Kr(a),Kr(c),Kr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Kr(u),ni(l),l<0||l>=b0)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let g=[],h=a.length,p,y;if(h===32)p=a.slice(),g.push(p),y=th;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=jl,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);To(c)||(c=c.slice(),g.push(c));let x=ke(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,x,ke(c.subarray(0,16)),x),c=c.subarray(16)}let v=16-i;if(v!==c.length)throw new Error(`arx: nonce must be ${v} or 16 bytes`);if(v!==12){let I=new Uint8Array(12);I.set(c,o?0:12-c.length),c=I,g.push(c)}let m=ke(c);for(rh(e,y,x,m,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function E0(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],f=e[3],u=t[0],l=t[1],d=t[2],g=t[3],h=t[4],p=t[5],y=t[6],x=t[7],v=i,m=r[0],I=r[1],S=r[2],B=s,R=a,L=c,O=f,M=u,U=l,H=d,z=g,Z=h,A=p,N=y,T=x,_=v,w=m,k=I,K=S;for(let $=0;$<o;$+=2)B=B+M|0,_=G(_^B,16),Z=Z+_|0,M=G(M^Z,12),B=B+M|0,_=G(_^B,8),Z=Z+_|0,M=G(M^Z,7),R=R+U|0,w=G(w^R,16),A=A+w|0,U=G(U^A,12),R=R+U|0,w=G(w^R,8),A=A+w|0,U=G(U^A,7),L=L+H|0,k=G(k^L,16),N=N+k|0,H=G(H^N,12),L=L+H|0,k=G(k^L,8),N=N+k|0,H=G(H^N,7),O=O+z|0,K=G(K^O,16),T=T+K|0,z=G(z^T,12),O=O+z|0,K=G(K^O,8),T=T+K|0,z=G(z^T,7),B=B+U|0,K=G(K^B,16),N=N+K|0,U=G(U^N,12),B=B+U|0,K=G(K^B,8),N=N+K|0,U=G(U^N,7),R=R+H|0,_=G(_^R,16),T=T+_|0,H=G(H^T,12),R=R+H|0,_=G(_^R,8),T=T+_|0,H=G(H^T,7),L=L+z|0,w=G(w^L,16),Z=Z+w|0,z=G(z^Z,12),L=L+z|0,w=G(w^L,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,k=G(k^O,16),A=A+k|0,M=G(M^A,12),O=O+M|0,k=G(k^O,8),A=A+k|0,M=G(M^A,7);let F=0;n[F++]=s+B|0,n[F++]=a+R|0,n[F++]=c+L|0,n[F++]=f+O|0,n[F++]=u+M|0,n[F++]=l+U|0,n[F++]=d+H|0,n[F++]=g+z|0,n[F++]=h+Z|0,n[F++]=p+A|0,n[F++]=y+N|0,n[F++]=x+T|0,n[F++]=v+_|0,n[F++]=m+w|0,n[F++]=I+k|0,n[F++]=S+K|0}function nh(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],f=t[1],u=t[2],l=t[3],d=t[4],g=t[5],h=t[6],p=t[7],y=r[0],x=r[1],v=r[2],m=r[3];for(let S=0;S<20;S+=2)i=i+c|0,y=G(y^i,16),d=d+y|0,c=G(c^d,12),i=i+c|0,y=G(y^i,8),d=d+y|0,c=G(c^d,7),o=o+f|0,x=G(x^o,16),g=g+x|0,f=G(f^g,12),o=o+f|0,x=G(x^o,8),g=g+x|0,f=G(f^g,7),s=s+u|0,v=G(v^s,16),h=h+v|0,u=G(u^h,12),s=s+u|0,v=G(v^s,8),h=h+v|0,u=G(u^h,7),a=a+l|0,m=G(m^a,16),p=p+m|0,l=G(l^p,12),a=a+l|0,m=G(m^a,8),p=p+m|0,l=G(l^p,7),i=i+f|0,m=G(m^i,16),h=h+m|0,f=G(f^h,12),i=i+f|0,m=G(m^i,8),h=h+m|0,f=G(f^h,7),o=o+u|0,y=G(y^o,16),p=p+y|0,u=G(u^p,12),o=o+u|0,y=G(y^o,8),p=p+y|0,u=G(u^p,7),s=s+l|0,x=G(x^s,16),d=d+x|0,l=G(l^d,12),s=s+l|0,x=G(x^s,8),d=d+x|0,l=G(l^d,7),a=a+c|0,v=G(v^a,16),g=g+v|0,c=G(c^g,12),a=a+c|0,v=G(v^a,8),g=g+v|0,c=G(c^g,7);let I=0;n[I++]=i,n[I++]=o,n[I++]=s,n[I++]=a,n[I++]=y,n[I++]=x,n[I++]=v,n[I++]=m}var ih=_o(E0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),oh=_o(E0,{counterRight:!1,counterLength:8,extendNonceFn:nh,allowShortKeys:!1});var sh=new Uint8Array(16),v0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(sh.subarray(r))},ah=new Uint8Array(32);function w0(e,t,r,n,i){let o=e(t,r,ah),s=x0.create(o);i&&v0(s,i),v0(s,n);let a=new Uint8Array(16),c=d0(a);Bo(c,0,BigInt(i?i.length:0),!0),Bo(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var S0=e=>(t,r,n)=>(hr(t,32),hr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?hr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=w0(e,t,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?hr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=w0(e,t,r,f,n);if(!y0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),Lo=So({blockSize:64,nonceLength:12,tagLength:16},S0(ih)),ym=So({blockSize:64,nonceLength:24,tagLength:16},S0(oh));function oi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Ro(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function dn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");oi(e.outputLen),oi(e.blockLen)}function Or(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function B0(e,t){Ro(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var si=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var A0=e=>e instanceof Uint8Array;var ai=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),le=(e,t)=>e<<32-t|e>>>t,ch=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!ch)throw new Error("Non little-endian hardware is not supported");function No(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Xe(e){if(typeof e=="string"&&(e=No(e)),!A0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function ci(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!A0(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}var Mr=class{clone(){return this._cloneInto()}},vm={}.toString;function fi(e){let t=n=>e().update(Xe(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function dr(e=32){if(si&&typeof si.getRandomValues=="function")return si.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function fh(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}var Vr=class extends Mr{constructor(t,r,n,i){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=ai(this.buffer)}update(t){Or(this);let{view:r,buffer:n,blockLen:i}=this;t=Xe(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=ai(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Or(this),B0(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;fh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=ai(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var ui=BigInt(4294967295),Po=BigInt(32);function I0(e,t=!1){return t?{h:Number(e&ui),l:Number(e>>Po&ui)}:{h:Number(e>>Po&ui)|0,l:Number(e&ui)|0}}function uh(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=I0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var lh=(e,t)=>BigInt(e>>>0)<<Po|BigInt(t>>>0),hh=(e,t,r)=>e>>>r,dh=(e,t,r)=>e<<32-r|t>>>r,ph=(e,t,r)=>e>>>r|t<<32-r,yh=(e,t,r)=>e<<32-r|t>>>r,gh=(e,t,r)=>e<<64-r|t>>>r-32,xh=(e,t,r)=>e>>>r-32|t<<64-r,mh=(e,t)=>t,bh=(e,t)=>e,vh=(e,t,r)=>e<<r|t>>>32-r,wh=(e,t,r)=>t<<r|e>>>32-r,Eh=(e,t,r)=>t<<r-32|e>>>64-r,Sh=(e,t,r)=>e<<r-32|t>>>64-r;function Bh(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Ah=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Ih=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Ch=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Th=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,_h=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Lh=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var Rh={fromBig:I0,split:uh,toBig:lh,shrSH:hh,shrSL:dh,rotrSH:ph,rotrSL:yh,rotrBH:gh,rotrBL:xh,rotr32H:mh,rotr32L:bh,rotlSH:vh,rotlSL:wh,rotlBH:Eh,rotlBL:Sh,add:Bh,add3L:Ah,add3H:Ih,add4L:Ch,add4H:Th,add5H:Lh,add5L:_h},j=Rh;var[Nh,Ph]=j.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),Qe=new Uint32Array(80),Je=new Uint32Array(80),Do=class extends Vr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:g,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y]}set(t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y){this.Ah=t|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=d|0,this.Gh=g|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let m=0;m<16;m++,r+=4)Qe[m]=t.getUint32(r),Je[m]=t.getUint32(r+=4);for(let m=16;m<80;m++){let I=Qe[m-15]|0,S=Je[m-15]|0,B=j.rotrSH(I,S,1)^j.rotrSH(I,S,8)^j.shrSH(I,S,7),R=j.rotrSL(I,S,1)^j.rotrSL(I,S,8)^j.shrSL(I,S,7),L=Qe[m-2]|0,O=Je[m-2]|0,M=j.rotrSH(L,O,19)^j.rotrBH(L,O,61)^j.shrSH(L,O,6),U=j.rotrSL(L,O,19)^j.rotrBL(L,O,61)^j.shrSL(L,O,6),H=j.add4L(R,U,Je[m-7],Je[m-16]),z=j.add4H(H,B,M,Qe[m-7],Qe[m-16]);Qe[m]=z|0,Je[m]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:g,Fl:h,Gh:p,Gl:y,Hh:x,Hl:v}=this;for(let m=0;m<80;m++){let I=j.rotrSH(l,d,14)^j.rotrSH(l,d,18)^j.rotrBH(l,d,41),S=j.rotrSL(l,d,14)^j.rotrSL(l,d,18)^j.rotrBL(l,d,41),B=l&g^~l&p,R=d&h^~d&y,L=j.add5L(v,S,R,Ph[m],Je[m]),O=j.add5H(L,x,I,B,Nh[m],Qe[m]),M=L|0,U=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),H=j.rotrSL(n,i,28)^j.rotrBL(n,i,34)^j.rotrBL(n,i,39),z=n&o^n&a^o&a,Z=i&s^i&c^s&c;x=p|0,v=y|0,p=g|0,y=h|0,g=l|0,h=d|0,{h:l,l:d}=j.add(f|0,u|0,O|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let A=j.add3L(M,H,Z);n=j.add3H(A,O,U,z),i=A|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:x,l:v}=j.add(this.Hh|0,this.Hl|0,x|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v)}roundClean(){Qe.fill(0),Je.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var ko=fi(()=>new Do);var di={};Dt(di,{bitGet:()=>Vh,bitLen:()=>Mh,bitMask:()=>pn,bitSet:()=>Fh,bytesToHex:()=>Ue,bytesToNumberBE:()=>Ke,bytesToNumberLE:()=>he,concatBytes:()=>Me,createHmacDrbg:()=>Oo,ensureBytes:()=>xt,equalBytes:()=>Kh,hexToBytes:()=>pr,hexToNumber:()=>Ko,numberToBytesBE:()=>je,numberToBytesLE:()=>Oe,numberToHexUnpadded:()=>_0,numberToVarBytesBE:()=>Uh,utf8ToBytes:()=>Oh,validateObject:()=>ne});var T0=BigInt(0),li=BigInt(1),Dh=BigInt(2),hi=e=>e instanceof Uint8Array,kh=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Ue(e){if(!hi(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=kh[e[r]];return t}function _0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Ko(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}function pr(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let r=new Uint8Array(t/2);for(let n=0;n<r.length;n++){let i=n*2,o=e.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function Ke(e){return Ko(Ue(e))}function he(e){if(!hi(e))throw new Error("Uint8Array expected");return Ko(Ue(Uint8Array.from(e).reverse()))}function je(e,t){return pr(e.toString(16).padStart(t*2,"0"))}function Oe(e,t){return je(e,t).reverse()}function Uh(e){return pr(_0(e))}function xt(e,t,r){let n;if(typeof t=="string")try{n=pr(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(hi(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function Me(...e){let t=new Uint8Array(e.reduce((n,i)=>n+i.length,0)),r=0;return e.forEach(n=>{if(!hi(n))throw new Error("Uint8Array expected");t.set(n,r),r+=n.length}),t}function Kh(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function Oh(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Mh(e){let t;for(t=0;e>T0;e>>=li,t+=1);return t}function Vh(e,t){return e>>BigInt(t)&li}var Fh=(e,t,r)=>e|(r?li:T0)<<BigInt(t),pn=e=>(Dh<<BigInt(e-1))-li,Uo=e=>new Uint8Array(e),C0=e=>Uint8Array.from(e);function Oo(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=Uo(e),i=Uo(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Uo())=>{i=a(C0([0]),l),n=a(),l.length!==0&&(i=a(C0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let g=n.slice();d.push(g),l+=n.length}return Me(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var qh={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function ne(e,t,r={}){let n=(i,o,s)=>{let a=qh[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Ut=BigInt(0),wt=BigInt(1),yr=BigInt(2),Hh=BigInt(3),Mo=BigInt(4),L0=BigInt(5),R0=BigInt(8),zh=BigInt(9),Gh=BigInt(16);function ct(e,t){let r=e%t;return r>=Ut?r:t+r}function Vo(e,t,r){if(r<=Ut||t<Ut)throw new Error("Expected power/modulo > 0");if(r===wt)return Ut;let n=wt;for(;t>Ut;)t&wt&&(n=n*e%r),e=e*e%r,t>>=wt;return n}function mt(e,t,r){let n=e;for(;t-- >Ut;)n*=n,n%=r;return n}function pi(e,t){if(e===Ut||t<=Ut)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=ct(e,t),n=t,i=Ut,o=wt,s=wt,a=Ut;for(;r!==Ut;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==wt)throw new Error("invert: does not exist");return ct(i,t)}function Wh(e){let t=(e-wt)/yr,r,n,i;for(r=e-wt,n=0;r%yr===Ut;r/=yr,n++);for(i=yr;i<e&&Vo(i,t,e)!==e-wt;i++);if(n===1){let s=(e+wt)/Mo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+wt)/yr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,wt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function $h(e){if(e%Mo===Hh){let t=(e+wt)/Mo;return function(n,i){let o=n.pow(i,t);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(e%R0===L0){let t=(e-L0)/R0;return function(n,i){let o=n.mul(i,yr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,yr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return e%Gh,Wh(e)}var N0=(e,t)=>(ct(e,t)&wt)===wt,Yh=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Fo(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Yh.reduce((n,i)=>(n[i]="function",n),t);return ne(e,r)}function Zh(e,t,r){if(r<Ut)throw new Error("Expected power > 0");if(r===Ut)return e.ONE;if(r===wt)return t;let n=e.ONE,i=t;for(;r>Ut;)r&wt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=wt;return n}function Xh(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function qo(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function yi(e,t,r=!1,n={}){if(e<=Ut)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=qo(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=$h(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:pn(i),ZERO:Ut,ONE:wt,create:c=>ct(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Ut<=c&&c<e},is0:c=>c===Ut,isOdd:c=>(c&wt)===wt,neg:c=>ct(-c,e),eql:(c,f)=>c===f,sqr:c=>ct(c*c,e),add:(c,f)=>ct(c+f,e),sub:(c,f)=>ct(c-f,e),mul:(c,f)=>ct(c*f,e),pow:(c,f)=>Zh(a,c,f),div:(c,f)=>ct(c*pi(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>pi(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Xh(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Oe(c,o):je(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?he(c):Ke(c)}});return Object.freeze(a)}function P0(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");let r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function D0(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function Ho(e){let t=D0(e);return t+Math.ceil(t/2)}function k0(e,t,r=!1){let n=e.length,i=D0(t),o=Ho(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Ke(e):he(e),a=ct(s,t-wt)+wt;return r?Oe(a,i):je(a,i)}var Jh=BigInt(0),zo=BigInt(1);function gi(e,t){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(t/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=e.ZERO,a=i;for(;o>Jh;)o&zo&&(s=s.add(a)),a=a.double(),o>>=zo;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),d=2**i,g=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=g,y>c&&(y-=d,s+=zo);let x=p,v=p+Math.abs(y)-1,m=h%2!==0,I=y<0;y===0?u=u.add(r(m,o[x])):f=f.add(r(I,o[v]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function yn(e){return Fo(e.Fp),ne(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...qo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var de=BigInt(0),ee=BigInt(1),xi=BigInt(2),jh=BigInt(8),td={zip215:!0};function ed(e){let t=yn(e);return ne(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function mi(e){let t=ed(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=xi<<BigInt(a*8)-ee,u=r.create,l=t.uvRatio||((_,w)=>{try{return{isValid:!0,value:r.sqrt(_*r.inv(w))}}catch{return{isValid:!1,value:de}}}),d=t.adjustScalarBytes||(_=>_),g=t.domain||((_,w,k)=>{if(w.length||k)throw new Error("Contexts/pre-hash are not supported");return _}),h=_=>typeof _=="bigint"&&de<_,p=(_,w)=>h(_)&&h(w)&&_<w,y=_=>_===de||p(_,f);function x(_,w){if(p(_,w))return _;throw new Error(`Expected valid scalar < ${w}, got ${typeof _} ${_}`)}function v(_){return _===de?_:x(_,n)}let m=new Map;function I(_){if(!(_ instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,k,K,F){if(this.ex=w,this.ey=k,this.ez=K,this.et=F,!y(w))throw new Error("x required");if(!y(k))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(F))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:k,y:K}=w||{};if(!y(k)||!y(K))throw new Error("invalid affine point");return new S(k,K,ee,u(k*K))}static normalizeZ(w){let k=r.invertBatch(w.map(K=>K.ez));return w.map((K,F)=>K.toAffine(k[F])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,m.delete(this)}assertValidity(){let{a:w,d:k}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:F,ez:$,et:Y}=this,rt=u(K*K),X=u(F*F),J=u($*$),pt=u(J*J),ht=u(rt*w),Ft=u(J*u(ht+X)),qt=u(pt+u(k*u(rt*X)));if(Ft!==qt)throw new Error("bad point: equation left != right (1)");let Pt=u(K*F),Gt=u($*Y);if(Pt!==Gt)throw new Error("bad point: equation left != right (2)")}equals(w){I(w);let{ex:k,ey:K,ez:F}=this,{ex:$,ey:Y,ez:rt}=w,X=u(k*rt),J=u($*F),pt=u(K*rt),ht=u(Y*F);return X===J&&pt===ht}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:k,ey:K,ez:F}=this,$=u(k*k),Y=u(K*K),rt=u(xi*u(F*F)),X=u(w*$),J=k+K,pt=u(u(J*J)-$-Y),ht=X+Y,Ft=ht-rt,qt=X-Y,Pt=u(pt*Ft),Gt=u(ht*qt),Pe=u(pt*qt),ur=u(Ft*ht);return new S(Pt,Gt,ur,Pe)}add(w){I(w);let{a:k,d:K}=t,{ex:F,ey:$,ez:Y,et:rt}=this,{ex:X,ey:J,ez:pt,et:ht}=w;if(k===BigInt(-1)){let Ga=u(($-F)*(J+X)),Wa=u(($+F)*(J-X)),uo=u(Wa-Ga);if(uo===de)return this.double();let $a=u(Y*xi*ht),Ya=u(rt*xi*pt),Za=Ya+$a,Xa=Wa+Ga,Qa=Ya-$a,wl=u(Za*uo),El=u(Xa*Qa),Sl=u(Za*Qa),Bl=u(uo*Xa);return new S(wl,El,Bl,Sl)}let Ft=u(F*X),qt=u($*J),Pt=u(rt*K*ht),Gt=u(Y*pt),Pe=u((F+$)*(X+J)-Ft-qt),ur=Gt-Pt,fn=Gt+Pt,za=u(qt-k*Ft),xl=u(Pe*ur),ml=u(fn*za),bl=u(Pe*za),vl=u(ur*fn);return new S(xl,ml,vl,bl)}subtract(w){return this.add(w.negate())}wNAF(w){return L.wNAFCached(this,m,w,S.normalizeZ)}multiply(w){let{p:k,f:K}=this.wNAF(x(w,n));return S.normalizeZ([k,K])[0]}multiplyUnsafe(w){let k=v(w);return k===de?R:this.equals(R)||k===ee?this:this.equals(B)?this.wNAF(k).p:L.unsafeLadder(this,k)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return L.unsafeLadder(this,n).is0()}toAffine(w){let{ex:k,ey:K,ez:F}=this,$=this.is0();w==null&&(w=$?jh:r.inv(F));let Y=u(k*w),rt=u(K*w),X=u(F*w);if($)return{x:de,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:rt}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,k=!1){let{d:K,a:F}=t,$=r.BYTES;w=xt("pointHex",w,$);let Y=w.slice(),rt=w[$-1];Y[$-1]=rt&-129;let X=he(Y);X===de||(k?x(X,f):x(X,r.ORDER));let J=u(X*X),pt=u(J-ee),ht=u(K*J-F),{isValid:Ft,value:qt}=l(pt,ht);if(!Ft)throw new Error("Point.fromHex: invalid y coordinate");let Pt=(qt&ee)===ee,Gt=(rt&128)!==0;if(!k&&qt===de&&Gt)throw new Error("Point.fromHex: x=0 and x_0=1");return Gt!==Pt&&(qt=u(-qt)),S.fromAffine({x:qt,y:X})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:k}=this.toAffine(),K=Oe(k,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Ue(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(de,ee,ee,de);let{BASE:B,ZERO:R}=S,L=gi(S,a*8);function O(_){return ct(_,n)}function M(_){return O(he(_))}function U(_){let w=a;_=xt("private key",_,w);let k=xt("hashed private key",o(_),2*w),K=d(k.slice(0,w)),F=k.slice(w,2*w),$=M(K),Y=B.multiply($),rt=Y.toRawBytes();return{head:K,prefix:F,scalar:$,point:Y,pointBytes:rt}}function H(_){return U(_).pointBytes}function z(_=new Uint8Array,...w){let k=Me(...w);return M(o(g(k,xt("context",_),!!i)))}function Z(_,w,k={}){_=xt("message",_),i&&(_=i(_));let{prefix:K,scalar:F,pointBytes:$}=U(w),Y=z(k.context,K,_),rt=B.multiply(Y).toRawBytes(),X=z(k.context,rt,$,_),J=O(Y+X*F);v(J);let pt=Me(rt,Oe(J,r.BYTES));return xt("result",pt,a*2)}let A=td;function N(_,w,k,K=A){let{context:F,zip215:$}=K,Y=r.BYTES;_=xt("signature",_,2*Y),w=xt("message",w),i&&(w=i(w));let rt=he(_.slice(Y,2*Y)),X,J,pt;try{X=S.fromHex(k,$),J=S.fromHex(_.slice(0,Y),$),pt=B.multiplyUnsafe(rt)}catch{return!1}if(!$&&X.isSmallOrder())return!1;let ht=z(F,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(ht)).subtract(pt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(_=8,w=S.BASE){return w._setWindowSize(_),w.multiply(BigInt(3)),w}}}}var gn=BigInt(0),Go=BigInt(1);function rd(e){return ne(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function U0(e){let t=rd(e),{P:r}=t,n=m=>ct(m,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(m=>m),c=t.powPminus2||(m=>Vo(m,r-BigInt(2),r));function f(m,I,S){let B=n(m*(I-S));return I=n(I-B),S=n(S+B),[I,S]}function u(m){if(typeof m=="bigint"&&gn<=m&&m<r)return m;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(m,I){let S=u(m),B=u(I),R=S,L=Go,O=gn,M=S,U=Go,H=gn,z;for(let A=BigInt(i-1);A>=gn;A--){let N=B>>A&Go;H^=N,z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1],H=N;let T=L+O,_=n(T*T),w=L-O,k=n(w*w),K=_-k,F=M+U,$=M-U,Y=n($*T),rt=n(F*w),X=Y+rt,J=Y-rt;M=n(X*X),U=n(R*n(J*J)),L=n(_*k),O=n(K*(_+n(l*K)))}z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,U),O=z[0],U=z[1];let Z=c(O);return n(L*Z)}function g(m){return Oe(n(m),o)}function h(m){let I=xt("u coordinate",m,o);return s===o&&(I[s-1]&=127),he(I)}function p(m){let I=xt("scalar",m);if(I.length!==o&&I.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${I.length}`);return he(a(I))}function y(m,I){let S=h(I),B=p(m),R=d(S,B);if(R===gn)throw new Error("Invalid private or public key received");return g(R)}let x=g(t.Gu);function v(m){return y(m,x)}return{scalarMult:y,scalarMultBase:v,getSharedSecret:(m,I)=>y(m,I),getPublicKey:m=>v(m),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:x}}var xn=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),K0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Wm=BigInt(0),nd=BigInt(1),Wo=BigInt(2),id=BigInt(5),O0=BigInt(10),od=BigInt(20),sd=BigInt(40),M0=BigInt(80);function V0(e){let t=xn,n=e*e%t*e%t,i=mt(n,Wo,t)*n%t,o=mt(i,nd,t)*e%t,s=mt(o,id,t)*o%t,a=mt(s,O0,t)*s%t,c=mt(a,od,t)*a%t,f=mt(c,sd,t)*c%t,u=mt(f,M0,t)*f%t,l=mt(u,M0,t)*f%t,d=mt(l,O0,t)*s%t;return{pow_p_5_8:mt(d,Wo,t)*e%t,b2:n}}function F0(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function ad(e,t){let r=xn,n=ct(t*t*t,r),i=ct(n*n*t,r),o=V0(e*i).pow_p_5_8,s=ct(e*n*o,r),a=ct(t*s*s,r),c=s,f=ct(s*K0,r),u=a===e,l=a===ct(-e,r),d=a===ct(-e*K0,r);return u&&(s=c),(l||d)&&(s=f),N0(s,r)&&(s=ct(-s,r)),{isValid:u||l,value:s}}var Ve=yi(xn,void 0,!0),$o={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ve,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:ko,randomBytes:dr,adjustScalarBytes:F0,uvRatio:ad},Fr=mi($o);function q0(e,t,r){if(t.length>255)throw new Error("Context is too big");return ci(No("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var $m=mi({...$o,domain:q0}),Ym=mi({...$o,domain:q0,prehash:ko}),mn=U0({P:xn,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=xn,{pow_p_5_8:r,b2:n}=V0(e);return ct(mt(r,BigInt(3),t)*n,t)},adjustScalarBytes:F0,randomBytes:dr});var cd=(Ve.ORDER+BigInt(3))/BigInt(8),Zm=Ve.pow(Wo,cd),Xm=Ve.sqrt(Ve.neg(Ve.ONE)),Qm=(Ve.ORDER-BigInt(5))/BigInt(8),Jm=BigInt(486662);var jm=P0(Ve,Ve.neg(BigInt(486664)));var t2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),e2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),r2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),n2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var i2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var bi=class extends Mr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,dn(t);let n=Xe(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return Or(this),this.iHash.update(t),this}digestInto(t){Or(this),Ro(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},qr=(e,t,r)=>new bi(e,t).update(r).digest();qr.create=(e,t)=>new bi(e,t);function z0(e,t,r){return dn(e),r===void 0&&(r=new Uint8Array(e.outputLen)),qr(e,Xe(r),Xe(t))}var Yo=new Uint8Array([0]),H0=new Uint8Array;function G0(e,t,r,n=32){if(dn(e),oi(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=H0);let o=new Uint8Array(i*e.outputLen),s=qr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)Yo[0]=f+1,a.update(f===0?H0:c).update(r).update(Yo).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),Yo.fill(0),o.slice(0,n)}var fd=(e,t,r)=>e&t^~e&r,ud=(e,t,r)=>e&t^e&r^t&r,ld=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),tr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),er=new Uint32Array(64),Zo=class extends Vr{constructor(){super(64,32,8,!1),this.A=tr[0]|0,this.B=tr[1]|0,this.C=tr[2]|0,this.D=tr[3]|0,this.E=tr[4]|0,this.F=tr[5]|0,this.G=tr[6]|0,this.H=tr[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,r){for(let l=0;l<16;l++,r+=4)er[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=er[l-15],g=er[l-2],h=le(d,7)^le(d,18)^d>>>3,p=le(g,17)^le(g,19)^g>>>10;er[l]=p+er[l-7]+h+er[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let d=le(a,6)^le(a,11)^le(a,25),g=u+d+fd(a,c,f)+ld[l]+er[l]|0,p=(le(n,2)^le(n,13)^le(n,22))+ud(n,i,o)|0;u=f,f=c,c=a,a=s+g|0,s=o,o=i,i=n,n=g+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,i,o,s,a,c,f,u)}roundClean(){er.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Hr=fi(()=>new Zo);var Xo={hashSHA256(e){return Hr(e.subarray())},getHKDF(e,t){let r=z0(Hr,t,e),i=G0(Hr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let e=mn.utils.randomPrivateKey();return{publicKey:mn.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:mn.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return mn.getSharedSecret(e.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return Lo(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return Lo(n,t,r).decrypt(e.subarray(),i)}};var W0=Xo;var zr=e=>{let t=kt(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};zr.bytes=2;var bn=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};bn.bytes=2;function $0(e){return new Ct(e.ne,e.ciphertext)}function Y0(e){return new Ct(e.ne,e.ns,e.ciphertext)}function Z0(e){return new Ct(e.ns,e.ciphertext)}function X0(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:nt(0)}}function Q0(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.subarray(0,32),ns:e.subarray(32,80),ciphertext:e.subarray(80,e.length)}}function J0(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:nt(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var tc=16;function ec(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new Ct(zr(s.byteLength),s)}}}function rc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-tc<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-tc),{plaintext:c,valid:f}=e.decrypt(s,e.session,a);if(!f)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var wn=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},gr=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var J8=Qt(An(),1),j8=Qt(bf(),1);var rb=Symbol.for("@libp2p/connection");var ib=Symbol.for("@libp2p/content-routing");var ab=Symbol.for("@libp2p/peer-discovery");var vf=Symbol.for("@libp2p/peer-id");var ub=Symbol.for("@libp2p/peer-routing");var wf;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(wf||(wf={}));var Sf=Symbol.for("@libp2p/transport");var Ef;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Ef||(Ef={}));var et=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var bs=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},bb=globalThis.CustomEvent??bs;var Bg=Qt(dt(),1);var Bs={};Dt(Bs,{base10:()=>Fy});function Uy(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,x=0,v=h.length;x!==v&&h[x]===0;)x++,p++;for(var m=(v-x)*u+1>>>0,I=new Uint8Array(m);x!==v;){for(var S=h[x],B=0,R=m-1;(S!==0||B<y)&&R!==-1;R--,B++)S+=256*I[R]>>>0,I[R]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");y=B,x++}for(var L=m-y;L!==m&&I[L]===0;)L++;for(var O=c.repeat(p);L<m;++L)O+=e.charAt(I[L]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,x=0;h[p]===c;)y++,p++;for(var v=(h.length-p)*f+1>>>0,m=new Uint8Array(v);h[p];){var I=r[h.charCodeAt(p)];if(I===255)return;for(var S=0,B=v-1;(I!==0||S<x)&&B!==-1;B--,S++)I+=a*m[B]>>>0,m[B]=I%256>>>0,I=I/256>>>0;if(I!==0)throw new Error("Non-zero carry");x=S,p++}if(h[p]!==" "){for(var R=v-x;R!==v&&m[R]===0;)R++;for(var L=new Uint8Array(y+(v-R)),O=y;R!==v;)L[O++]=m[R++];return L}}}function g(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:g}}var Ky=Uy,Oy=Ky,Bf=Oy;var Gb=new Uint8Array(0);var Af=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},ze=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var If=e=>new TextEncoder().encode(e),Cf=e=>new TextDecoder().decode(e);var vs=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},ws=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return _f(this,t)}},Es=class{constructor(t){this.decoders=t}or(t){return _f(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},_f=(e,t)=>new Es({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),Ss=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new vs(t,r,n),this.decoder=new ws(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},Zr=({name:e,prefix:t,encode:r,decode:n})=>new Ss(e,t,r,n),sr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Bf(r,t);return Zr({prefix:e,name:t,encode:n,decode:o=>ze(i(o))})},My=(e,t,r,n)=>{let i={};for(let u=0;u<t.length;++u)i[t[u]]=u;let o=e.length;for(;e[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[e[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},Vy=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Tt=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>Zr({prefix:t,name:e,encode(i){return Vy(i,n,r)},decode(i){return My(i,n,r,e)}});var Fy=sr({prefix:"9",name:"base10",alphabet:"0123456789"});var As={};Dt(As,{base16:()=>qy,base16upper:()=>Hy});var qy=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Hy=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Is={};Dt(Is,{base2:()=>zy});var zy=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Cs={};Dt(Cs,{base256emoji:()=>Zy});var Lf=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Gy=Lf.reduce((e,t,r)=>(e[r]=t,e),[]),Wy=Lf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function $y(e){return e.reduce((t,r)=>(t+=Gy[r],t),"")}function Yy(e){let t=[];for(let r of e){let n=Wy[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var Zy=Zr({prefix:"\u{1F680}",name:"base256emoji",encode:$y,decode:Yy});var Ts={};Dt(Ts,{base32:()=>Ge,base32hex:()=>jy,base32hexpad:()=>e1,base32hexpadupper:()=>r1,base32hexupper:()=>t1,base32pad:()=>Qy,base32padupper:()=>Jy,base32upper:()=>Xy,base32z:()=>n1});var Ge=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Xy=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Qy=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Jy=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),jy=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),t1=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),e1=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),r1=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),n1=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var _s={};Dt(_s,{base36:()=>i1,base36upper:()=>o1});var i1=sr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),o1=sr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ls={};Dt(Ls,{base58btc:()=>_t,base58flickr:()=>s1});var _t=sr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),s1=sr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ns={};Dt(Ns,{base64:()=>Oi,base64pad:()=>a1,base64url:()=>Rs,base64urlpad:()=>c1});var Oi=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),a1=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Rs=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),c1=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Ps={};Dt(Ps,{base8:()=>f1});var f1=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ds={};Dt(Ds,{identity:()=>u1});var u1=Zr({prefix:"\0",name:"identity",encode:e=>Cf(e),decode:e=>If(e)});var sv=new TextEncoder,av=new TextDecoder;var Ks={};Dt(Ks,{identity:()=>cr});var Ce={};Dt(Ce,{Digest:()=>Er,create:()=>ge,decode:()=>ar,equals:()=>Us});var d1=Pf,Rf=128,p1=127,y1=~p1,g1=Math.pow(2,31);function Pf(e,t,r){t=t||[],r=r||0;for(var n=r;e>=g1;)t[r++]=e&255|Rf,e/=128;for(;e&y1;)t[r++]=e&255|Rf,e>>>=7;return t[r]=e|0,Pf.bytes=r-n+1,t}var x1=ks,m1=128,Nf=127;function ks(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw ks.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&Nf)<<i:(s&Nf)*Math.pow(2,i),i+=7}while(s>=m1);return ks.bytes=o-n,r}var b1=Math.pow(2,7),v1=Math.pow(2,14),w1=Math.pow(2,21),E1=Math.pow(2,28),S1=Math.pow(2,35),B1=Math.pow(2,42),A1=Math.pow(2,49),I1=Math.pow(2,56),C1=Math.pow(2,63),T1=function(e){return e<b1?1:e<v1?2:e<w1?3:e<E1?4:e<S1?5:e<B1?6:e<A1?7:e<I1?8:e<C1?9:10},_1={encode:d1,decode:x1,encodingLength:T1},L1=_1,Tn=L1;var _n=(e,t=0)=>[Tn.decode(e,t),Tn.decode.bytes],Xr=(e,t,r=0)=>(Tn.encode(e,t,r),t),Qr=e=>Tn.encodingLength(e);var ge=(e,t)=>{let r=t.byteLength,n=Qr(e),i=n+Qr(r),o=new Uint8Array(i+r);return Xr(e,o,0),Xr(r,o,n),o.set(t,i),new Er(e,r,t,o)},ar=e=>{let t=ze(e),[r,n]=_n(t),[i,o]=_n(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Er(r,i,s,t)},Us=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Af(e.bytes,r.bytes)}},Er=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var Df=0,R1="identity",kf=ze,N1=e=>ge(Df,kf(e)),cr={code:Df,name:R1,encode:kf,digest:N1};var Vs={};Dt(Vs,{sha256:()=>zt,sha512:()=>P1});var Ms=({name:e,code:t,encode:r})=>new Os(e,t,r),Os=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?ge(this.code,r):r.then(n=>ge(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Kf=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),zt=Ms({name:"sha2-256",code:18,encode:Kf("SHA-256")}),P1=Ms({name:"sha2-512",code:19,encode:Kf("SHA-512")});var Of=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return k1(r,Fs(e),t||_t.encoder);default:return U1(r,Fs(e),t||Ge.encoder)}};var Mf=new WeakMap,Fs=e=>{let t=Mf.get(e);if(t==null){let r=new Map;return Mf.set(e,r),r}return t},xe=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==Ln)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==K1)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=ge(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&Us(t.multihash,n.multihash)}toString(t){return Of(this,t)}toJSON(){return{"/":Of(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s||Vf(n,i,o.bytes))}else if(r[O1]===!0){let{version:n,multihash:i,code:o}=r,s=ar(i);return e.create(n,o,s)}else return null}static create(t,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(r!==Ln)throw new Error(`Version 0 CID must use dag-pb (code: ${Ln}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=Vf(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Ln,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=ze(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Er(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=_n(t.subarray(r));return r+=d,l},i=n(),o=Ln;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(t,r){let[n,i]=D1(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Fs(o).set(n,t),o}},D1=(e,t)=>{switch(e[0]){case"Q":{let r=t||_t;return[_t.prefix,r.decode(`${_t.prefix}${e}`)]}case _t.prefix:{let r=t||_t;return[_t.prefix,r.decode(e)]}case Ge.prefix:{let r=t||Ge;return[Ge.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},k1=(e,t,r)=>{let{prefix:n}=r;if(n!==_t.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},U1=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},Ln=112,K1=18,Vf=(e,t,r)=>{let n=Qr(e),i=n+Qr(t),o=new Uint8Array(i+r.byteLength);return Xr(e,o,0),Xr(t,o,n),o.set(r,i),o},O1=Symbol.for("@ipld/js-cid/CID");var Te={...Ds,...Is,...Ps,...Bs,...As,...Ts,..._s,...Ls,...Ns,...Cs},Sv={...Vs,...Ks};function qf(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Ff=qf("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),qs=qf("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=kt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),M1={utf8:Ff,"utf-8":Ff,hex:Te.base16,latin1:qs,ascii:qs,binary:qs,...Te},Vi=M1;function Bt(e,t="utf8"){let r=Vi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?De(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var ia={};Dt(ia,{Ed25519PrivateKey:()=>Tr,Ed25519PublicKey:()=>Dn,generateKeyPair:()=>Q1,generateKeyPairFromSeed:()=>ou,unmarshalEd25519PrivateKey:()=>Z1,unmarshalEd25519PublicKey:()=>X1});var Pv=Qt(Nt(),1),Dv=Qt(Di(),1),Hf=Qt(dt(),1);function ot(e,t="utf8"){let r=Vi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function me(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=At([new Uint8Array(t-r.length),r])}return ot(r,"base64url")}function re(e){let t=zf(e);return new Hf.default.jsbn.BigInteger(ot(t,"base16"),16)}function zf(e,t){let r=Bt(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=At([new Uint8Array(t-r.length),r])}return r}function se(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var Jr=32,We=64,Fi=32;function Gf(){let e=Fr.utils.randomPrivateKey(),t=Fr.getPublicKey(e);return{privateKey:Zf(e,t),publicKey:t}}function Wf(e){if(e.length!==Fi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=Fr.getPublicKey(t);return{privateKey:Zf(t,r),publicKey:r}}function $f(e,t){let r=e.subarray(0,Fi);return Fr.sign(t instanceof Uint8Array?t:t.subarray(),r)}function Yf(e,t,r){return Fr.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function Zf(e,t){let r=new Uint8Array(We);for(let n=0;n<Fi;n++)r[n]=e[n],r[Fi+n]=t[n];return r}var jt={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var Hs={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function zs(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=jt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=Bt(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(p,y,l);return At([g,p.iv,new Uint8Array(x)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=Bt(d));let x;if(d.length===0)try{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,I,{name:t,length:r},!0,["decrypt"])}catch{x=await a.subtle.importKey("jwk",Hs,{name:"AES-GCM"},!0,["decrypt"])}else{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},I=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,I,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(y,x,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function jr(e,t){let n=await zs().encrypt(e,t);return Oi.encode(n)}var Gs=new Float32Array([-0]),fr=new Uint8Array(Gs.buffer);function Qf(e,t,r){Gs[0]=e,t[r]=fr[0],t[r+1]=fr[1],t[r+2]=fr[2],t[r+3]=fr[3]}function Jf(e,t){return fr[0]=e[t],fr[1]=e[t+1],fr[2]=e[t+2],fr[3]=e[t+3],Gs[0]}var Ws=new Float64Array([-0]),Yt=new Uint8Array(Ws.buffer);function jf(e,t,r){Ws[0]=e,t[r]=Yt[0],t[r+1]=Yt[1],t[r+2]=Yt[2],t[r+3]=Yt[3],t[r+4]=Yt[4],t[r+5]=Yt[5],t[r+6]=Yt[6],t[r+7]=Yt[7]}function tu(e,t){return Yt[0]=e[t],Yt[1]=e[t+1],Yt[2]=e[t+2],Yt[3]=e[t+3],Yt[4]=e[t+4],Yt[5]=e[t+5],Yt[6]=e[t+6],Yt[7]=e[t+7],Ws[0]}var F1=BigInt(Number.MAX_SAFE_INTEGER),q1=BigInt(Number.MIN_SAFE_INTEGER),te=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Sr;if(t<F1&&t>q1)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,i=t-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>eu&&(i=0n,++n>eu&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Sr;let r=t<0;r&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new e(n,i)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):Sr}},Sr=new te(0,0);Sr.toBigInt=function(){return 0n};Sr.zzEncode=Sr.zzDecode=function(){return this};Sr.length=function(){return 1};var eu=4294967296n;function ru(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function nu(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function $s(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function be(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function qi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var Ys=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,be(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw be(this,4);return qi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw be(this,4);return qi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw be(this,4);let t=Jf(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw be(this,4);let t=tu(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw be(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return nu(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw be(this,t);this.pos+=t}else do if(this.pos>=this.len)throw be(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new te(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw be(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw be(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw be(this,8);let t=qi(this.buf,this.pos+=4),r=qi(this.buf,this.pos+=4);return new te(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function Zs(e){return new Ys(e instanceof Uint8Array?e:e.subarray())}function Br(e,t){let r=Zs(e);return t.decode(r)}function Xs(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return kt(s);i+s>t&&(n=kt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Ar=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function Qs(){}var js=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},H1=Xs();function z1(e){return globalThis.Buffer!=null?kt(e):H1(e)}var Pn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ar(Qs,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Ar(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new ta((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Rn,10,te.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=te.fromBigInt(t);return this._push(Rn,r.length(),r)}uint64Number(t){let r=te.fromNumber(t);return this._push(Rn,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=te.fromBigInt(t).zzEncode();return this._push(Rn,r.length(),r)}sint64Number(t){let r=te.fromNumber(t).zzEncode();return this._push(Rn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(Js,1,t?1:0)}fixed32(t){return this._push(Nn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=te.fromBigInt(t);return this._push(Nn,4,r.lo)._push(Nn,4,r.hi)}fixed64Number(t){let r=te.fromNumber(t);return this._push(Nn,4,r.lo)._push(Nn,4,r.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Qf,4,t)}double(t){return this._push(jf,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(Js,1,0):this.uint32(r)._push(W1,r,t)}string(t){let r=ru(t);return r!==0?this.uint32(r)._push($s,r,t):this._push(Js,1,0)}fork(){return this.states=new js(this),this.head=this.tail=new Ar(Qs,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ar(Qs,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=z1(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function Js(e,t,r){t[r]=e&255}function G1(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var ta=class extends Ar{next;constructor(t,r){super(G1,t,r),this.next=void 0}};function Rn(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function Nn(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function W1(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Pn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push($1,t,e),this},Pn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(Y1,t,e),this});function $1(e,t,r){t.set(e,r)}function Y1(e,t,r){e.length<40?$s(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(Bt(e),r)}function ea(){return new Pn}function Ir(e,t){let r=ea();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var tn;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(tn||(tn={}));function Hi(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ra(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Hi("enum",tn.VARINT,r,n)}function Cr(e,t){return Hi("message",tn.LENGTH_DELIMITED,e,t)}var St;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(St||(St={}));var na;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(na||(na={}));(function(e){e.codec=()=>ra(na)})(St||(St={}));var _e;(function(e){let t;e.codec=()=>(t==null&&(t=Cr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Ir(r,e.codec()),e.decode=r=>Br(r,e.codec())})(_e||(_e={}));var Le;(function(e){let t;e.codec=()=>(t==null&&(t=Cr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),St.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=St.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Ir(r,e.codec()),e.decode=r=>Br(r,e.codec())})(Le||(Le={}));var Dn=class{_key;constructor(t){this._key=en(t,Jr)}verify(t,r){return Yf(this._key,r,t)}marshal(){return this._key}get bytes(){return _e.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},Tr=class{_key;_publicKey;constructor(t,r){this._key=en(t,We),this._publicKey=en(r,Jr)}sign(t){return $f(this._key,t)}get public(){return new Dn(this._publicKey)}marshal(){return this._key}get bytes(){return Le.encode({Type:St.Ed25519,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}async hash(){let t=zt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=cr.digest(this.public.bytes);return _t.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return jr(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Z1(e){if(e.length>We){e=en(e,We+Jr);let n=e.subarray(0,We),i=e.subarray(We,e.length);return new Tr(n,i)}e=en(e,We);let t=e.subarray(0,We),r=e.subarray(Jr);return new Tr(t,r)}function X1(e){return e=en(e,Jr),new Dn(e)}async function Q1(){let{privateKey:e,publicKey:t}=Gf();return new Tr(e,t)}async function ou(e){let{privateKey:t,publicKey:r}=Wf(e);return new Tr(t,r)}function en(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new et(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var J1={"P-256":256,"P-384":384,"P-521":521},j1=Object.keys(J1),kw=j1.join(" / ");var fa={};Dt(fa,{MAX_KEY_SIZE:()=>On,RsaPrivateKey:()=>rn,RsaPublicKey:()=>Kn,fromJwk:()=>ug,generateKeyPair:()=>lg,unmarshalRsaPrivateKey:()=>cg,unmarshalRsaPublicKey:()=>fg});var Un=Qt(dt(),1);var b8=Qt(uu(),1);function Gi(e){if(isNaN(e)||e<=0)throw new et("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return dr(e)}var e8=Qt(Ki(),1),aa=Qt(dt(),1);function lu(e,t){return t.map(r=>re(e[r]))}function hu(e){return aa.default.pki.setRsaPrivateKey(...lu(e,["n","e","d","p","q","dp","dq","qi"]))}function du(e){return aa.default.pki.setRsaPublicKey(...lu(e,["n","e"]))}var Lr={};Dt(Lr,{jwkToPkcs1:()=>ng,jwkToPkix:()=>og,pkcs1ToJwk:()=>rg,pkixToJwk:()=>ig});var i8=Qt(An(),1),o8=Qt(Ki(),1);var $e=Qt(dt(),1);function rg(e){let t=$e.default.asn1.fromDer(ot(e,"ascii")),r=$e.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:me(r.n),e:me(r.e),d:me(r.d),p:me(r.p),q:me(r.q),dp:me(r.dP),dq:me(r.dQ),qi:me(r.qInv),alg:"RS256"}}function ng(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=$e.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return Bt($e.default.asn1.toDer(t).getBytes(),"ascii")}function ig(e){let t=$e.default.asn1.fromDer(ot(e,"ascii")),r=$e.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:me(r.n),e:me(r.e)}}function og(e){if(e.n==null||e.e==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=$e.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return Bt($e.default.asn1.toDer(t).getBytes(),"ascii")}async function pu(e){let t=await jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await xu(t);return{privateKey:r[0],publicKey:r[1]}}async function ca(e){let r=[await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await sg(e)],n=await xu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function yu(e,t){let r=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function gu(e,t,r){let n=await jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r instanceof Uint8Array?r:r.subarray())}async function xu(e){if(e.privateKey==null||e.publicKey==null)throw new et("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([jt.get().subtle.exportKey("jwk",e.privateKey),jt.get().subtle.exportKey("jwk",e.publicKey)])}async function sg(e){return jt.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function mu(e,t,r,n){let i=t?du(e):hu(e),o=ot(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return Bt(s,"ascii")}function bu(e,t){return mu(e,!0,t,(r,n)=>n.encrypt(r))}function vu(e,t){return mu(e,!1,t,(r,n)=>n.decrypt(r))}function Wi(e){if(e.kty!=="RSA")throw new et("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new et("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Bt(e.n,"base64url").length*8}var On=8192,Kn=class{_key;constructor(t){this._key=t}verify(t,r){return gu(this._key,r,t)}marshal(){return Lr.jwkToPkix(this._key)}get bytes(){return _e.encode({Type:St.RSA,Data:this.marshal()}).subarray()}encrypt(t){return bu(this._key,t)}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},rn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return Gi(16)}sign(t){return yu(this._key,t)}get public(){if(this._publicKey==null)throw new et("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Kn(this._publicKey)}decrypt(t){return vu(this._key,t)}marshal(){return Lr.jwkToPkcs1(this._key)}get bytes(){return Le.encode({Type:St.RSA,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ot(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Un.default.util.ByteBuffer(this.marshal()),i=Un.default.asn1.fromDer(n),o=Un.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Un.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return jr(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function cg(e){let t=Lr.pkcs1ToJwk(e);if(Wi(t)>On)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await ca(t);return new rn(r.privateKey,r.publicKey)}function fg(e){let t=Lr.pkixToJwk(e);if(Wi(t)>On)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Kn(t)}async function ug(e){if(Wi(e)>On)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await ca(e);return new rn(t.privateKey,t.publicKey)}async function lg(e){if(e>On)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await pu(e);return new rn(t.privateKey,t.publicKey)}var da={};Dt(da,{Secp256k1PrivateKey:()=>Vn,Secp256k1PublicKey:()=>Mn,generateKeyPair:()=>Sg,unmarshalSecp256k1PrivateKey:()=>wg,unmarshalSecp256k1PublicKey:()=>Eg});function hg(e){let t=yn(e);ne(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:dg,hexToBytes:pg}=di,Rr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Rr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:dg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Rr,r=typeof e=="string"?pg(e):e;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Rr._parseInt(r.subarray(2)),{d:s,l:a}=Rr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Ye=BigInt(0),ae=BigInt(1),I8=BigInt(2),wu=BigInt(3),C8=BigInt(4);function yg(e){let t=hg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let x=p.toAffine();return Me(Uint8Array.from([4]),r.toBytes(x.x),r.toBytes(x.y))}),i=t.fromBytes||(h=>{let p=h.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),x=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:x}});function o(h){let{a:p,b:y}=t,x=r.sqr(h),v=r.mul(x,h);return r.add(r.add(v,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Ye<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:x,n:v}=t;if(p&&typeof h!="bigint"){if(h instanceof Uint8Array&&(h=Ue(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let m;try{m=typeof h=="bigint"?h:Ke(xt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return x&&(m=ct(m,v)),a(m),m}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,x){if(this.px=p,this.py=y,this.pz=x,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(p){let{x:y,y:x}=p||{};if(!p||!r.isValid(y)||!r.isValid(x))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let v=m=>r.eql(m,r.ZERO);return v(y)&&v(x)?l.ZERO:new l(y,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(x=>x.pz));return p.map((x,v)=>x.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(xt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let x=r.sqr(y),v=o(p);if(!r.eql(x,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:I,pz:S}=p,B=r.eql(r.mul(y,S),r.mul(m,v)),R=r.eql(r.mul(x,S),r.mul(I,v));return B&&R}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,x=r.mul(y,wu),{px:v,py:m,pz:I}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,L=r.mul(v,v),O=r.mul(m,m),M=r.mul(I,I),U=r.mul(v,m);return U=r.add(U,U),R=r.mul(v,I),R=r.add(R,R),S=r.mul(p,R),B=r.mul(x,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(U,S),R=r.mul(x,R),M=r.mul(p,M),U=r.sub(L,M),U=r.mul(p,U),U=r.add(U,R),R=r.add(L,L),L=r.add(R,L),L=r.add(L,M),L=r.mul(L,U),B=r.add(B,L),M=r.mul(m,I),M=r.add(M,M),L=r.mul(M,U),S=r.sub(S,L),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:I,pz:S}=p,B=r.ZERO,R=r.ZERO,L=r.ZERO,O=t.a,M=r.mul(t.b,wu),U=r.mul(y,m),H=r.mul(x,I),z=r.mul(v,S),Z=r.add(y,x),A=r.add(m,I);Z=r.mul(Z,A),A=r.add(U,H),Z=r.sub(Z,A),A=r.add(y,v);let N=r.add(m,S);return A=r.mul(A,N),N=r.add(U,z),A=r.sub(A,N),N=r.add(x,v),B=r.add(I,S),N=r.mul(N,B),B=r.add(H,z),N=r.sub(N,B),L=r.mul(O,A),B=r.mul(M,z),L=r.add(B,L),B=r.sub(H,L),L=r.add(H,L),R=r.mul(B,L),H=r.add(U,U),H=r.add(H,U),z=r.mul(O,z),A=r.mul(M,A),H=r.add(H,z),z=r.sub(U,z),z=r.mul(O,z),A=r.add(A,z),U=r.mul(H,A),R=r.add(R,U),U=r.mul(N,A),B=r.mul(Z,B),B=r.sub(B,U),U=r.mul(Z,H),L=r.mul(N,L),L=r.add(L,U),new l(B,R,L)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let x=r.invertBatch(y.map(v=>v.pz));return y.map((v,m)=>v.toAffine(x[m])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Ye)return y;if(a(p),p===ae)return this;let{endo:x}=t;if(!x)return g.unsafeLadder(this,p);let{k1neg:v,k1:m,k2neg:I,k2:S}=x.splitScalar(p),B=y,R=y,L=this;for(;m>Ye||S>Ye;)m&ae&&(B=B.add(L)),S&ae&&(R=R.add(L)),L=L.double(),m>>=ae,S>>=ae;return v&&(B=B.negate()),I&&(R=R.negate()),R=new l(r.mul(R.px,x.beta),R.py,R.pz),B.add(R)}multiply(p){a(p);let y=p,x,v,{endo:m}=t;if(m){let{k1neg:I,k1:S,k2neg:B,k2:R}=m.splitScalar(y),{p:L,f:O}=this.wNAF(S),{p:M,f:U}=this.wNAF(R);L=g.constTimeNegate(I,L),M=g.constTimeNegate(B,M),M=new l(r.mul(M.px,m.beta),M.py,M.pz),x=L.add(M),v=O.add(U)}else{let{p:I,f:S}=this.wNAF(y);x=I,v=S}return l.normalizeZ([x,v])[0]}multiplyAndAddUnsafe(p,y,x){let v=l.BASE,m=(S,B)=>B===Ye||B===ae||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),I=m(this,y).add(m(p,x));return I.is0()?void 0:I}toAffine(p){let{px:y,py:x,pz:v}=this,m=this.is0();p==null&&(p=m?r.ONE:r.inv(v));let I=r.mul(y,p),S=r.mul(x,p),B=r.mul(v,p);if(m)return{x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return{x:I,y:S}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===ae)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=t;return p===ae?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ue(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=gi(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function gg(e){let t=yn(e);return ne(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Eu(e){let t=gg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return Ye<A&&A<r.ORDER}function a(A){return ct(A,n)}function c(A){return pi(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=yg({...t,toBytes(A,N,T){let _=N.toAffine(),w=r.toBytes(_.x),k=Me;return T?k(Uint8Array.from([N.hasEvenY()?2:3]),w):k(Uint8Array.from([4]),w,r.toBytes(_.y))},fromBytes(A){let N=A.length,T=A[0],_=A.subarray(1);if(N===i&&(T===2||T===3)){let w=Ke(_);if(!s(w))throw new Error("Point is not on curve");let k=l(w),K=r.sqrt(k),F=(K&ae)===ae;return(T&1)===1!==F&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(_.subarray(0,r.BYTES)),k=r.fromBytes(_.subarray(r.BYTES,2*r.BYTES));return{x:w,y:k}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>Ue(je(A,t.nByteLength));function h(A){let N=n>>ae;return A>N}function p(A){return h(A)?a(-A):A}let y=(A,N,T)=>Ke(A.slice(N,T));class x{constructor(N,T,_){this.r=N,this.s=T,this.recovery=_,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=xt("compactSignature",N,T*2),new x(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:_}=Rr.toSig(xt("DER",N));return new x(T,_)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new x(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:_,recovery:w}=this,k=R(xt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let F=w&1?"03":"02",$=f.fromHex(F+g(K)),Y=c(K),rt=a(-k*Y),X=a(_*Y),J=f.BASE.multiplyAndAddUnsafe($,rt,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new x(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return pr(this.toDERHex())}toDERHex(){return Rr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return pr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(A){try{return u(A),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let A=Ho(t.n);return k0(t.randomBytes(A),t.n)},precompute(A=8,N=f.BASE){return N._setWindowSize(A),N.multiply(BigInt(3)),N}};function m(A,N=!0){return f.fromPrivateKey(A).toRawBytes(N)}function I(A){let N=A instanceof Uint8Array,T=typeof A=="string",_=(N||T)&&A.length;return N?_===i||_===o:T?_===2*i||_===2*o:A instanceof f}function S(A,N,T=!0){if(I(A))throw new Error("first arg must be private key");if(!I(N))throw new Error("second arg must be public key");return f.fromHex(N).multiply(u(A)).toRawBytes(T)}let B=t.bits2int||function(A){let N=Ke(A),T=A.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(A){return a(B(A))},L=pn(t.nBitLength);function O(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(Ye<=A&&A<L))throw new Error(`bigint expected < 2^${t.nBitLength}`);return je(A,t.nByteLength)}function M(A,N,T=U){if(["recovered","canonical"].some(ht=>ht in T))throw new Error("sign() legacy options not supported");let{hash:_,randomBytes:w}=t,{lowS:k,prehash:K,extraEntropy:F}=T;k==null&&(k=!0),A=xt("msgHash",A),K&&(A=xt("prehashed msgHash",_(A)));let $=R(A),Y=u(N),rt=[O(Y),O($)];if(F!=null){let ht=F===!0?w(r.BYTES):F;rt.push(xt("extraEntropy",ht))}let X=Me(...rt),J=$;function pt(ht){let Ft=B(ht);if(!d(Ft))return;let qt=c(Ft),Pt=f.BASE.multiply(Ft).toAffine(),Gt=a(Pt.x);if(Gt===Ye)return;let Pe=a(qt*a(J+Gt*Y));if(Pe===Ye)return;let ur=(Pt.x===Gt?0:2)|Number(Pt.y&ae),fn=Pe;return k&&h(Pe)&&(fn=p(Pe),ur^=1),new x(Gt,fn,ur)}return{seed:X,k2sig:pt}}let U={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(A,N,T=U){let{seed:_,k2sig:w}=M(A,N,T),k=t;return Oo(k.hash.outputLen,k.nByteLength,k.hmac)(_,w)}f.BASE._setWindowSize(8);function Z(A,N,T,_=H){let w=A;if(N=xt("msgHash",N),T=xt("publicKey",T),"strict"in _)throw new Error("options.strict was renamed to lowS");let{lowS:k,prehash:K}=_,F,$;try{if(typeof w=="string"||w instanceof Uint8Array)try{F=x.fromDER(w)}catch(Pt){if(!(Pt instanceof Rr.Err))throw Pt;F=x.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Pt,s:Gt}=w;F=new x(Pt,Gt)}else throw new Error("PARSE");$=f.fromHex(T)}catch(Pt){if(Pt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(k&&F.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:rt}=F,X=R(N),J=c(rt),pt=a(X*J),ht=a(Y*J),Ft=f.BASE.multiplyAndAddUnsafe($,pt,ht)?.toAffine();return Ft?a(Ft.x)===Y:!1}return{CURVE:t,getPublicKey:m,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:x,utils:v}}function xg(e){return{hash:e,hmac:(t,...r)=>qr(e,t,ci(...r)),randomBytes:dr}}function Su(e,t){let r=n=>Eu({...e,...xg(n)});return Object.freeze({...r(t),create:r})}var Iu=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Bu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),mg=BigInt(1),ua=BigInt(2),Au=(e,t)=>(e+t/ua)/t;function bg(e){let t=Iu,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=mt(u,r,t)*u%t,d=mt(l,r,t)*u%t,g=mt(d,ua,t)*f%t,h=mt(g,i,t)*g%t,p=mt(h,o,t)*h%t,y=mt(p,a,t)*p%t,x=mt(y,c,t)*y%t,v=mt(x,a,t)*p%t,m=mt(v,r,t)*u%t,I=mt(m,s,t)*h%t,S=mt(I,n,t)*f%t,B=mt(S,ua,t);if(!la.eql(la.sqr(B),e))throw new Error("Cannot find square root");return B}var la=yi(Iu,void 0,void 0,{sqrt:bg}),ve=Su({a:BigInt(0),b:BigInt(7),Fp:la,n:Bu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Bu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-mg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Au(o*e,t),c=Au(-n*e,t),f=ct(e-a*r-c*i,t),u=ct(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Hr),U8=BigInt(0);var K8=ve.ProjectivePoint;function Cu(){return ve.utils.randomPrivateKey()}function Tu(e,t){let r=zt.digest(t instanceof Uint8Array?t:t.subarray());if(se(r))return r.then(({digest:n})=>ve.sign(n,e).toDERRawBytes()).catch(n=>{throw new et(String(n),"ERR_INVALID_INPUT")});try{return ve.sign(r.digest,e).toDERRawBytes()}catch(n){throw new et(String(n),"ERR_INVALID_INPUT")}}function _u(e,t,r){let n=zt.digest(r instanceof Uint8Array?r:r.subarray());if(se(n))return n.then(({digest:i})=>ve.verify(t,i,e)).catch(i=>{throw new et(String(i),"ERR_INVALID_INPUT")});try{return ve.verify(t,n.digest,e)}catch(i){throw new et(String(i),"ERR_INVALID_INPUT")}}function Lu(e){return ve.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Ru(e){try{ve.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}function ha(e){try{ve.ProjectivePoint.fromHex(e)}catch(t){throw new et(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Nu(e){try{return ve.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Mn=class{_key;constructor(t){ha(t),this._key=t}verify(t,r){return _u(this._key,r,t)}marshal(){return Lu(this._key)}get bytes(){return _e.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}async hash(){let t=zt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}},Vn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Nu(t),Ru(this._key),ha(this._publicKey)}sign(t){return Tu(this._key,t)}get public(){return new Mn(this._publicKey)}marshal(){return this._key}get bytes(){return Le.encode({Type:St.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return It(this.bytes,t.bytes)}hash(){let t=zt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return ot(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return jr(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function wg(e){return new Vn(e)}function Eg(e){return new Mn(e)}async function Sg(){let e=Cu();return new Vn(e)}var Nr={rsa:fa,ed25519:ia,secp256k1:da};function Pu(e){let t=Object.keys(Nr).join(" / ");return new et(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Du(e){let t=_e.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Nr.rsa.unmarshalRsaPublicKey(r);case St.Ed25519:return Nr.ed25519.unmarshalEd25519PublicKey(r);case St.Secp256k1:return Nr.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Pu(t.Type??"unknown")}}async function ku(e){let t=Le.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case St.RSA:return Nr.rsa.unmarshalRsaPrivateKey(r);case St.Ed25519:return Nr.ed25519.unmarshalEd25519PrivateKey(r);case St.Secp256k1:return Nr.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Pu(t.Type??"RSA")}}var Ag=Symbol.for("nodejs.util.inspect.custom"),Uu=Object.values(Te).map(e=>e.decoder).reduce((e,t)=>e.or(t),Te.identity.decoder),Ku=114,pa=36,ya=37,Fn=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[vf]=!0;toString(){return this.string==null&&(this.string=_t.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return xe.createV1(Ku,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return It(this.multihash.bytes,t);if(typeof t=="string")return ga(t).equals(this);if(t?.multihash?.bytes!=null)return It(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[Ag](){return`PeerId(${this.toString()})`}},nn=class extends Fn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},on=class extends Fn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},sn=class extends Fn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function ga(e,t){if(t=t??Uu,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=ar(_t.decode(`z${e}`));return e.startsWith("12D")?new on({multihash:r}):e.startsWith("16U")?new sn({multihash:r}):new nn({multihash:r})}return Ig(Uu.decode(e))}function Ig(e){try{let t=ar(e);if(t.code===cr.code){if(t.digest.length===pa)return new on({multihash:t});if(t.digest.length===ya)return new sn({multihash:t})}if(t.code===zt.code)return new nn({multihash:t})}catch{return Cg(xe.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Cg(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==Ku)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===zt.code)return new nn({multihash:e.multihash});if(t.code===cr.code){if(t.digest.length===pa)return new on({multihash:e.multihash});if(t.digest.length===ya)return new sn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function xa(e,t){return e.length===pa?new on({multihash:ge(cr.code,e),privateKey:t}):e.length===ya?new sn({multihash:ge(cr.code,e),privateKey:t}):new nn({multihash:await zt.digest(e),publicKey:e,privateKey:t})}var $i;(function(e){let t;e.codec=()=>(t==null&&(t=Cr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Ir(r,e.codec()),e.decode=r=>Br(r,e.codec())})($i||($i={}));var qn;(function(e){let t;e.codec=()=>(t==null&&(t=Cr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.identityKey!=null&&r.identityKey.byteLength>0&&(n.uint32(10),n.bytes(r.identityKey)),r.identitySig!=null&&r.identitySig.byteLength>0&&(n.uint32(18),n.bytes(r.identitySig)),r.extensions!=null&&(n.uint32(34),$i.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:nt(0),identitySig:nt(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.identityKey=r.bytes();break}case 2:{i.identitySig=r.bytes();break}case 4:{i.extensions=$i.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Ir(r,e.codec()),e.decode=r=>Br(r,e.codec())})(qn||(qn={}));async function Ou(e,t,r){let n=await _g(e,Mu(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Tg(e.publicKey,n,r)}function Tg(e,t,r){return qn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function _g(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await ku(e.privateKey)).sign(t)}async function ma(e){return xa(e.identityKey)}function ba(e){return qn.decode(e)}function Mu(e){let t=Bt("noise-libp2p-static-key:");return e instanceof Uint8Array?At([t,e],t.length+e.length):(e.prepend(t),e)}async function va(e,t,r){let n=await xa(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Mu(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await Du(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Hn(e){return!(!(e instanceof Uint8Array)&&!Pr(e)||e.byteLength!==32)}var Lg=0,Rg=4294967295,Ng="Cipherstate has reached maximum n, a new handshake must be performed",Yi=class{n;bytes;view;constructor(t=Lg){this.n=t,this.bytes=nt(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>Rg)throw new Error(Ng)}};var Zi=class{crypto;log;constructor(t,r){this.log=t.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return nt(32)}isEmptyKey(t){let r=this.createEmptyKey();return It(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:nt(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),nt(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new Ct(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new Yi}}initializeSymmetric(t){let r=Bt(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=nt(32);return r.set(t),r}else return this.getHash(t,nt(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,nt(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,nt(0),r),i=this.createEmptyKey(),o=nt(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,nt(0),r.ciphertext)}};var Xi=class extends Zi{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=nt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=nt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=nt(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Hn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Hn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);i&&Hn(n)&&(t.rs=n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(t,r){let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);if(i&&Hn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=nt(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=nt(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};function Vu(e,t){!t.enabled||!Ur||(t(`LOCAL_STATIC_PUBLIC_KEY ${ot(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${ot(e.privateKey,"hex")}`))}function wa(e,t){!t.enabled||!Ur||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${ot(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${ot(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function Fu(e,t){!t.enabled||!Ur||t(`REMOTE_STATIC_PUBLIC_KEY ${ot(e.subarray(),"hex")}`)}function Ea(e,t){!t.enabled||!Ur||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${ot(e.subarray(),"hex")}`)}function qu(e,t){!t.enabled||!Ur||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${ot(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${ot(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var Qi=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;log;constructor(t,r,n,i,o,s,a,c,f){this.log=t.logger.forComponent("libp2p:noise:xxhandshake"),this.isInitiator=r,this.payload=n,this.prologue=i,this.staticKeypair=s,this.connection=a,c&&(this.remotePeer=c),this.xx=f??new Xi(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Vu(this.session.hs.s,this.log),this.isInitiator){this.log.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,nt(0));await this.connection.write($0(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),wa(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=X0((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new gr("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),Ea(this.session.hs.re,this.log)}}async exchange(){if(this.isInitiator){this.log.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=Q0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new gr("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),Ea(this.session.hs.re,this.log),Fu(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=ba(r);this.remotePeer=this.remotePeer||await ma(i),await va(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new wn(`Error occurred while verifying signed payload: ${o.message}`)}this.log.trace("All good with the signature!")}else{this.log.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Y0(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),wa(this.session.hs.e,this.log)}}async finish(){if(this.isInitiator){this.log.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Z0(t)),this.log.trace("Stage 2 - Initiator sent message with signed payload.")}else{this.log.trace("Stage 2 - Responder waiting for third handshake message...");let t=J0((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new gr("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=ba(r);this.remotePeer=this.remotePeer||await ma(i),await va(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new wn(`Error occurred while verifying signed payload: ${o.message}`)}}qu(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,nt(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,nt(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new gr("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function Hu(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var Ji=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(t,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=t;this.components=t,this.crypto=o??W0,this.extensions=i,this.metrics=a?Hu(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??nt(0)}async secureOutbound(t,r,n){let i=bo(r,{lengthEncoder:zr,lengthDecoder:bn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=bo(r,{lengthEncoder:zr,lengthDecoder:bn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await Ou(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new Qi(this.components,n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=c0(),o=t.unwrap();return await u0(n,ec(r,this.metrics),o,s=>hn(s,{lengthDecoder:bn}),rc(r,this.metrics),n),i}};function zu(e={}){return t=>new Ji(t,e)}var ji=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(o*=t,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=t(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Gu=45,Pg=15,an=new ji;function Sa(e){if(!(e.length>Pg))return an.new(e).parseWith(()=>an.readIPv4Addr())}function Ba(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Gu))return an.new(e).parseWith(()=>an.readIPv6Addr())}function to(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>Gu))return an.new(e).parseWith(()=>an.readIPAddr())}var NE=parseInt("0xFFFF",16),PE=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function eo(e){return!!Sa(e)}function ro(e){return!!Ba(e)}function no(e){return!!to(e)}var Yu=eo,Og=ro,Aa=function(e){let t=0;if(e=e.toString().trim(),Yu(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Og(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Yu(r[n]),s;o&&(s=Aa(r[n]),r[n]=ot(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,ot(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},Zu=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var cn={},Ia={},Vg=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,-1,"memory"]];Vg.forEach(e=>{let t=Fg(...e);Ia[t.code]=t,cn[t.name]=t});function Fg(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function lt(e){if(typeof e=="number"){if(Ia[e]!=null)return Ia[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(cn[e]!=null)return cn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var gS=lt("ip4"),xS=lt("ip6"),mS=lt("ipcidr");function Ta(e,t){switch(lt(e).code){case 4:case 41:return Hg(t);case 42:return Ju(t);case 6:case 273:case 33:case 132:return tl(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Ju(t);case 421:return $g(t);case 444:return ju(t);case 445:return ju(t);case 466:return Wg(t);default:return ot(t,"base16")}}function _a(e,t){switch(lt(e).code){case 4:return Xu(t);case 41:return Xu(t);case 42:return Qu(t);case 6:case 273:case 33:case 132:return La(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Qu(t);case 421:return zg(t);case 444:return Yg(t);case 445:return Zg(t);case 466:return Gg(t);default:return Bt(t,"base16")}}var Ca=Object.values(Te).map(e=>e.decoder),qg=function(){let e=Ca[0].or(Ca[1]);return Ca.slice(2).forEach(t=>e=e.or(t)),e}();function Xu(e){if(!no(e))throw new Error("invalid ip address");return Aa(e)}function Hg(e){let t=Zu(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!no(t))throw new Error("invalid ip address");return t}function La(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function tl(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function Qu(e){let t=Bt(e),r=Uint8Array.from(Ze(t.length));return At([r,t],r.length+t.length)}function Ju(e){let t=fe(e);if(e=e.slice($t(t)),e.length!==t)throw new Error("inconsistent lengths");return ot(e)}function zg(e){let t;e[0]==="Q"||e[0]==="1"?t=ar(_t.decode(`z${e}`)).bytes:t=xe.parse(e).multihash.bytes;let r=Uint8Array.from(Ze(t.length));return At([r,t],r.length+t.length)}function Gg(e){let t=qg.decode(e),r=Uint8Array.from(Ze(t.length));return At([r,t],r.length+t.length)}function Wg(e){let t=fe(e),r=e.slice($t(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+ot(r,"base64url")}function $g(e){let t=fe(e),r=e.slice($t(t));if(r.length!==t)throw new Error("inconsistent lengths");return ot(r,"base58btc")}function Yg(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=Ge.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=La(n);return At([r,i],r.length+i.length)}function Zg(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=Ge.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=La(n);return At([r,i],r.length+i.length)}function ju(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=ot(t,"base32"),i=tl(r);return`${n}:${i}`}function el(e){e=Ra(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=lt(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw nl("invalid address: "+e);if(a.path===!0){n=Ra(i.slice(o).join("/")),t.push([a.code,_a(a.code,n)]),r.push([a.code,n]);break}let c=_a(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ta(a.code,c)])}return{string:rl(r),bytes:Pa(t),tuples:t,stringTuples:r,path:n}}function Na(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=fe(e,i),s=$t(o),a=lt(o),c=Xg(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let f=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw nl("Invalid address Uint8Array: "+ot(e,"base16"));t.push([o,f]);let u=Ta(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:rl(r),tuples:t,stringTuples:r,path:n}}function rl(e){let t=[];return e.map(r=>{let n=lt(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Ra(t.join("/"))}function Pa(e){return At(e.map(t=>{let r=lt(t[0]),n=Uint8Array.from(Ze(r.code));return t.length>1&&t[1]!=null&&(n=At([n,t[1]])),n}))}function Xg(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=fe(t instanceof Uint8Array?t:Uint8Array.from(t));return r+$t(r)}}function Ra(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function nl(e){return new Error("Error parsing address: "+e)}var Qg=Symbol.for("nodejs.util.inspect.custom"),ka=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Jg=[lt("dns").code,lt("dns4").code,lt("dns6").code,lt("dnsaddr").code],Da=class e{bytes;#e;#t;#r;#n;[ka]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Na(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=el(t)}else if(ol(t))r=Na(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,r,n,i,o="",s=lt("tcp"),a=lt("udp"),c=lt("ip4"),f=lt("ip6"),u=lt("dns6"),l=lt("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),Jg.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=lt(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=lt(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},lt(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>lt(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Pa(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===cn.p2p.code&&t.push([n,i]),n===cn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?ot(_t.decode(`z${n}`),"base58btc"):ot(xe.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return It(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=il.get(r.name);if(n==null)throw new et(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[Qg](){return`Multiaddr(${this.#e})`}};var il=new Map;function ol(e){return!!e?.[ka]}var jg=e=>e.toString().split("/").slice(1),zn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Lt=e=>({match:t=>zn(r=>r===e).match(t),pattern:e}),so=()=>({match:e=>zn(t=>typeof t=="string").match(e),pattern:"{string}"}),sl=()=>({match:e=>zn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ce=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{_t.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),io=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Rs.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Re=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),Ne=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),Rt=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Kt(...e){function t(i){let o=jg(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Ka=Rt(Lt("dns4"),so()),Oa=Rt(Lt("dns6"),so()),Ma=Rt(Lt("dnsaddr"),so()),al=Rt(Lt("dns"),so()),YS=Kt(Ka),ZS=Kt(Oa),XS=Kt(Ma),QS=Kt(Ne(al,Ma,Ka,Oa)),cl=Rt(Lt("ip4"),zn(eo)),fl=Rt(Lt("ip6"),zn(ro)),ul=Ne(cl,fl),Gn=Ne(ul,al,Ka,Oa,Ma),JS=Kt(Gn),jS=Kt(cl),t3=Kt(fl),e3=Kt(ul),ao=Rt(Gn,Lt("tcp"),sl()),Wn=Rt(Gn,Lt("udp"),sl()),tx=Ne(ao,Wn),r3=Kt(ao),n3=Kt(Wn),Va=Rt(Wn,Lt("quic")),co=Rt(Wn,Lt("quic-v1")),ex=Ne(Va,co),i3=Kt(Va),o3=Kt(co),Ua=Ne(Gn,ao,Wn,Va,co),ll=Ne(Rt(Ua,Lt("ws"),Re(ce()))),s3=Kt(ll),hl=Ne(Rt(Ua,Lt("wss"),Re(ce())),Rt(Ua,Lt("tls"),Lt("ws"),Re(ce()))),a3=Kt(hl),dl=Rt(tx,Lt("webrtc-direct"),io(),Re(io()),Re(ce())),c3=Kt(dl),pl=Rt(co,Lt("webtransport"),io(),io(),Re(ce())),fo=Kt(pl),oo=Ne(ll,hl,Rt(ao,Re(ce())),Rt(ex,Re(ce())),Rt(Gn,Re(ce())),dl,pl,ce()),f3=Kt(oo),rx=Rt(oo,Lt("p2p-circuit"),ce()),u3=Kt(rx),nx=Ne(Rt(oo,Lt("p2p-circuit"),Lt("webrtc"),ce()),Rt(oo,Lt("webrtc"),Re(ce())),Lt("webrtc")),l3=Kt(nx);async function Fa(e,t,r,n,i,o){let s=o.forComponent(`libp2p:webtransport:stream:${r}:${t}`),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Ct(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}},log:s};return g}function qa(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function yl(e,t){return t.filter(n=>!!e.find(i=>It(n,i))).length===t.length}var ix=Object.values(Te).map(e=>e.decoder).reduce((e,t)=>e.or(t));function ox(e){return Ce.decode(ix.decode(e))}function gl(e){if(!fo.matches(e))throw new et("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===lt("certhash").code).map(([s,a])=>ox(a??"")),n=t.filter(([s,a])=>s===lt("p2p").code).map(([s,a])=>ga(a??""))[0],i=e.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var Ha=class{log;components;config;metrics;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webtransport"),this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[Sf]=!0;async dial(t,r){r?.signal?.throwIfAborted(),this.log("dialing %s",t);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=gl(t);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},log:this.components.logger.forComponent("libp2p:webtransport:maconn"),...qa()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let d of l)d instanceof Uint8Array?await s.write(d):await s.write(d.subarray())}},f=zu()(this.components),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{this.log.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{this.log.error(`Failed to close authentication stream reader: ${l.message}`)}),!yl(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await Fa(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await Fa(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...qa()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(fo.exactMatch)}};function sx(e={}){return t=>new Ha(t,e)}return Ll(ax);})();
15
+ `+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function ap(e){return e.replace(/^\s+/,"")}});var of=pt((Pb,nf)=>{var Se=ht();Sr();_t();var tf=nf.exports=Se.sha256=Se.sha256||{};Se.md.sha256=Se.md.algorithms.sha256=tf;tf.create=function(){ef||cp();var e=null,t=Se.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Se.util.createBuffer(),e={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Se.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),jc(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Se.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Es.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};jc(l,r,i);var d=Se.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var Es=null,ef=!1,rf=null;function cp(){Es="\x80",Es+=Se.util.fillString("\0",64),rf=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],ef=!0}function jc(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v=r.length();v>=64;){for(f=0;f<16;++f)t[f]=r.getInt32();for(;f<64;++f)n=t[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[f]=n+t[f-7]+i+t[f-16]|0;for(u=e.h0,l=e.h1,d=e.h2,g=e.h3,h=e.h4,p=e.h5,y=e.h6,x=e.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=x+s+a+rf[f]+t[f],i=o+c,x=y,y=p,p=h,h=g+n>>>0,g=d,d=l,l=u,u=n+i>>>0;e.h0=e.h0+u|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+g|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+x|0,v-=64}}});var af=pt((Db,sf)=>{var Be=ht();_t();var Mi=null;Be.util.isNodejs&&!Be.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Mi=ki());var fp=sf.exports=Be.prng=Be.prng||{};fp.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(f,u){if(!u)return t.generateSync(f);var l=t.plugin.cipher,d=t.plugin.increment,g=t.plugin.formatKey,h=t.plugin.formatSeed,p=Be.util.createBuffer();t.key=null,y();function y(x){if(x)return u(x);if(p.length()>=f)return u(null,p.getBytes(f));if(t.generated>1048575&&(t.key=null),t.key===null)return Be.util.nextTick(function(){o(y)});var v=l(t.key,t.seed);t.generated+=v.length,p.putBytes(v),t.key=g(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Be.util.setImmediate(y)}},t.generateSync=function(f){var u=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,g=t.plugin.formatSeed;t.key=null;for(var h=Be.util.createBuffer();h.length()<f;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=u(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(u(t.key,l(t.seed))),t.seed=g(u(t.key,t.seed))}return h.getBytes(f)};function o(f){if(t.pools[0].messageLength>=32)return a(),f();var u=32-t.pools[0].messageLength<<5;t.seedFile(u,function(l,d){if(l)return f(l);t.collect(d),a(),f()})}function s(){if(t.pools[0].messageLength>=32)return a();var f=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(f)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var f=t.plugin.md.create();f.update(t.keyBytes);for(var u=1,l=0;l<32;++l)t.reseeds%u===0&&(f.update(t.pools[l].digest().getBytes()),t.pools[l].start()),u=u<<1;t.keyBytes=f.digest().getBytes(),f.start(),f.update(t.keyBytes);var d=f.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(f){var u=null,l=Be.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(S){return d.getRandomValues(S)});var g=Be.util.createBuffer();if(u)for(;g.length()<f;){var h=Math.max(1,Math.min(f-g.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(S){if(!(typeof QuotaExceededError<"u"&&S instanceof QuotaExceededError))throw S}}if(g.length()<f)for(var x,v,m,C=Math.floor(Math.random()*65536);g.length()<f;){v=16807*(C&65535),x=16807*(C>>16),v+=(x&32767)<<16,v+=x>>15,v=(v&2147483647)+(v>>31),C=v&4294967295;for(var y=0;y<3;++y)m=C>>>(y<<3),m^=Math.floor(Math.random()*256),g.putByte(m&255)}return g.getBytes(f)}return Mi?(t.seedFile=function(f,u){Mi.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},t.seedFileSync=function(f){return Mi.randomBytes(f).toString()}):(t.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},t.seedFileSync=c),t.collect=function(f){for(var u=f.length,l=0;l<u;++l)t.pools[t.pool].update(f.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(f,u){for(var l="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);t.collect(l)},t.registerWorker=function(f){if(f===self)t.seedFile=function(l,d){function g(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(g,h){f.postMessage({forge:{prng:{err:g,bytes:h}}})})};f.addEventListener("message",u)}},t}});var Un=pt((Ub,Ss)=>{var kt=ht();ws();of();af();_t();(function(){if(kt.random&&kt.random.getBytes){Ss.exports=kt.random;return}(function(e){var t={},r=new Array(4),n=kt.util.createBuffer();t.formatKey=function(l){var d=kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),kt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=kt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return kt.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=kt.md.sha256;function i(){var l=kt.prng.create(t);return l.getBytes=function(d,g){return l.generate(d,g)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),kt.options.usePureJavaScript||!kt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!kt.random)kt.random=o;else for(var u in o)kt.random[u]=o[u];kt.random.createInstance=i,Ss.exports=kt.random})(typeof jQuery<"u"?jQuery:null)})()});var lf=pt((kb,uf)=>{var Qt=ht();_t();var Bs=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],cf=[1,2,3,5],up=function(e,t){return e<<t&65535|(e&65535)>>16-t},lp=function(e,t){return(e&65535)>>t|e<<16-t&65535};uf.exports=Qt.rc2=Qt.rc2||{};Qt.rc2.expandKey=function(e,t){typeof e=="string"&&(e=Qt.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(Bs[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Bs[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Bs[r.at(a+1)^r.at(a+o)]);return r};var ff=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(e=Qt.rc2.expandKey(e,t),f=0;f<64;f++)l.push(e.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=up(h[f],cf[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=lp(h[f],cf[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}u=r?0:63;for(var x=0;x<h.length;x++)for(var v=0;v<h[x][0];v++)h[x][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},g=null;return g={start:function(h,p){h&&typeof h=="string"&&(h=Qt.util.createBuffer(h)),n=!1,i=Qt.util.createBuffer(),o=p||new Qt.util.createBuffer,s=h,g.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var x=o.length(),v=o.at(x-1);v>x?p=!1:o.truncate(v)}return p}},g};Qt.rc2.startEncrypting=function(e,t,r){var n=Qt.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};Qt.rc2.createEncryptionCipher=function(e,t){return ff(e,t,!0)};Qt.rc2.startDecrypting=function(e,t,r){var n=Qt.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};Qt.rc2.createDecryptionCipher=function(e,t){return ff(e,t,!1)}});var qi=pt((Kb,bf)=>{var As=ht();bf.exports=As.jsbn=As.jsbn||{};var $e,hp=0xdeadbeefcafe,hf=(hp&16777215)==15715070;function P(e,t,r){this.data=[],e!=null&&(typeof e=="number"?this.fromNumber(e,t,r):t==null&&typeof e!="string"?this.fromString(e,256):this.fromString(e,t))}As.jsbn.BigInteger=P;function ot(){return new P(null)}function dp(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function pp(e,t,r,n,i,o){for(var s=t&32767,a=t>>15;--o>=0;){var c=this.data[e]&32767,f=this.data[e++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function df(e,t,r,n,i,o){for(var s=t&16383,a=t>>14;--o>=0;){var c=this.data[e]&16383,f=this.data[e++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(P.prototype.am=df,$e=28):hf&&navigator.appName=="Microsoft Internet Explorer"?(P.prototype.am=pp,$e=30):hf&&navigator.appName!="Netscape"?(P.prototype.am=dp,$e=26):(P.prototype.am=df,$e=28);P.prototype.DB=$e;P.prototype.DM=(1<<$e)-1;P.prototype.DV=1<<$e;var Is=52;P.prototype.FV=Math.pow(2,Is);P.prototype.F1=Is-$e;P.prototype.F2=2*$e-Is;var yp="0123456789abcdefghijklmnopqrstuvwxyz",Vi=new Array,jr,ie;jr=48;for(ie=0;ie<=9;++ie)Vi[jr++]=ie;jr=97;for(ie=10;ie<36;++ie)Vi[jr++]=ie;jr=65;for(ie=10;ie<36;++ie)Vi[jr++]=ie;function pf(e){return yp.charAt(e)}function yf(e,t){var r=Vi[e.charCodeAt(t)];return r??-1}function gp(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function xp(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0}function cr(e){var t=ot();return t.fromInt(e),t}function mp(e,t){var r;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(e,t);return}this.t=0,this.s=0;for(var n=e.length,i=!1,o=0;--n>=0;){var s=r==8?e[n]&255:yf(e,n);if(s<0){e.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&e[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&P.ZERO.subTo(this,this)}function bp(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function vp(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<<t)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=pf(n));s>=0;)a<t?(n=(this.data[s]&(1<<a)-1)<<t-a,n|=this.data[--s]>>(a+=this.DB-t)):(n=this.data[s]>>(a-=t)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=pf(n));return i?o:"0"}function wp(){var e=ot();return P.ZERO.subTo(this,e),e}function Ep(){return this.s<0?this.negate():this}function Sp(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this.data[r]-e.data[r])!=0)return t;return 0}function Fi(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function Bp(){return this.t<=0?0:this.DB*(this.t-1)+Fi(this.data[this.t-1]^this.s&this.DM)}function Ap(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s}function Ip(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function Cp(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function Tp(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function _p(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function Lp(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&P.ZERO.subTo(t,t)}function Rp(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e.data[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t.data[r],e,2*r,0,1);(e.data[r+t.t]+=t.am(r+1,2*t.data[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()}function Np(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=ot());var o=ot(),s=this.s,a=e.s,c=this.DB-Fi(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,g=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-f,x=t??ot();for(o.dlShiftTo(y,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),P.ONE.dlShiftTo(f,x),x.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--y>=0;){var v=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*g);if((r.data[p]+=o.am(0,v,r,y,0,f))<v)for(o.dlShiftTo(y,x),r.subTo(x,r);r.data[p]<--v;)r.subTo(x,r)}t!=null&&(r.drShiftTo(f,t),s!=a&&P.ZERO.subTo(t,t)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&P.ZERO.subTo(r,r)}}}function Pp(e){var t=ot();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(P.ZERO)>0&&e.subTo(t,t),t}function Br(e){this.m=e}function Dp(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function Up(e){return e}function kp(e){e.divRemTo(this.m,null,e)}function Kp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function Op(e,t){e.squareTo(t),this.reduce(t)}Br.prototype.convert=Dp;Br.prototype.revert=Up;Br.prototype.reduce=kp;Br.prototype.mulTo=Kp;Br.prototype.sqrTo=Op;function Mp(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function Ar(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function Vp(e){var t=ot();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(P.ZERO)>0&&this.m.subTo(t,t),t}function Fp(e){var t=ot();return e.copyTo(t),this.reduce(t),t}function qp(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=e.data[t]&32767,n=r*this.mpl+((r*this.mph+(e.data[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function Hp(e,t){e.squareTo(t),this.reduce(t)}function zp(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Ar.prototype.convert=Vp;Ar.prototype.revert=Fp;Ar.prototype.reduce=qp;Ar.prototype.mulTo=zp;Ar.prototype.sqrTo=Hp;function Gp(){return(this.t>0?this.data[0]&1:this.s)==0}function $p(e,t){if(e>4294967295||e<1)return P.ONE;var r=ot(),n=ot(),i=t.convert(this),o=Fi(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function Wp(e,t){var r;return e<256||t.isEven()?r=new Br(t):r=new Ar(t),this.exp(e,r)}P.prototype.copyTo=gp;P.prototype.fromInt=xp;P.prototype.fromString=mp;P.prototype.clamp=bp;P.prototype.dlShiftTo=Ap;P.prototype.drShiftTo=Ip;P.prototype.lShiftTo=Cp;P.prototype.rShiftTo=Tp;P.prototype.subTo=_p;P.prototype.multiplyTo=Lp;P.prototype.squareTo=Rp;P.prototype.divRemTo=Np;P.prototype.invDigit=Mp;P.prototype.isEven=Gp;P.prototype.exp=$p;P.prototype.toString=vp;P.prototype.negate=wp;P.prototype.abs=Ep;P.prototype.compareTo=Sp;P.prototype.bitLength=Bp;P.prototype.mod=Pp;P.prototype.modPowInt=Wp;P.ZERO=cr(0);P.ONE=cr(1);function Yp(){var e=ot();return this.copyTo(e),e}function Zp(){if(this.s<0){if(this.t==1)return this.data[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this.data[0];if(this.t==0)return 0}return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]}function Xp(){return this.t==0?this.s:this.data[0]<<24>>24}function Qp(){return this.t==0?this.s:this.data[0]<<16>>16}function Jp(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function jp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function ty(e){if(e==null&&(e=10),this.signum()==0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=cr(r),i=ot(),o=ot(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function ey(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,o=0,s=0,a=0;a<e.length;++a){var c=yf(e,a);if(c<0){e.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=t*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(t,o)),this.dAddOffset(s,0)),i&&P.ZERO.subTo(this,this)}function ry(e,t,r){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(P.ONE.shiftLeft(e-1),Cs,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(P.ONE.shiftLeft(e-1),this);else{var n=new Array,i=e&7;n.length=(e>>3)+1,t.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function ny(){var e=this.t,t=new Array;t[0]=this.s;var r=this.DB-e*this.DB%8,n,i=0;if(e-- >0)for(r<this.DB&&(n=this.data[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<<this.DB-r);e>=0;)r<8?(n=(this.data[e]&(1<<r)-1)<<8-r,n|=this.data[--e]>>(r+=this.DB-8)):(n=this.data[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function iy(e){return this.compareTo(e)==0}function oy(e){return this.compareTo(e)<0?this:e}function sy(e){return this.compareTo(e)>0?this:e}function ay(e,t,r){var n,i,o=Math.min(e.t,this.t);for(n=0;n<o;++n)r.data[n]=t(this.data[n],e.data[n]);if(e.t<this.t){for(i=e.s&this.DM,n=o;n<this.t;++n)r.data[n]=t(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<e.t;++n)r.data[n]=t(i,e.data[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()}function cy(e,t){return e&t}function fy(e){var t=ot();return this.bitwiseTo(e,cy,t),t}function Cs(e,t){return e|t}function uy(e){var t=ot();return this.bitwiseTo(e,Cs,t),t}function gf(e,t){return e^t}function ly(e){var t=ot();return this.bitwiseTo(e,gf,t),t}function xf(e,t){return e&~t}function hy(e){var t=ot();return this.bitwiseTo(e,xf,t),t}function dy(){for(var e=ot(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function py(e){var t=ot();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function yy(e){var t=ot();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function gy(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function xy(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+gy(this.data[e]);return this.s<0?this.t*this.DB:-1}function my(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function by(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=my(this.data[r]^t);return e}function vy(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function wy(e,t){var r=P.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function Ey(e){return this.changeBit(e,Cs)}function Sy(e){return this.changeBit(e,xf)}function By(e){return this.changeBit(e,gf)}function Ay(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]+e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()}function Iy(e){var t=ot();return this.addTo(e,t),t}function Cy(e){var t=ot();return this.subTo(e,t),t}function Ty(e){var t=ot();return this.multiplyTo(e,t),t}function _y(e){var t=ot();return this.divRemTo(e,t,null),t}function Ly(e){var t=ot();return this.divRemTo(e,null,t),t}function Ry(e){var t=ot(),r=ot();return this.divRemTo(e,t,r),new Array(t,r)}function Ny(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function Py(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function kn(){}function mf(e){return e}function Dy(e,t,r){e.multiplyTo(t,r)}function Uy(e,t){e.squareTo(t)}kn.prototype.convert=mf;kn.prototype.revert=mf;kn.prototype.mulTo=Dy;kn.prototype.sqrTo=Uy;function ky(e){return this.exp(e,new kn)}function Ky(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,e.data[n],r,n,0,this.t);for(i=Math.min(e.t,t);n<i;++n)this.am(0,e.data[n],r,n,0,t-n);r.clamp()}function Oy(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function tn(e){this.r2=ot(),this.q3=ot(),P.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function My(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=ot();return e.copyTo(t),this.reduce(t),t}function Vy(e){return e}function Fy(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function qy(e,t){e.squareTo(t),this.reduce(t)}function Hy(e,t,r){e.multiplyTo(t,r),this.reduce(r)}tn.prototype.convert=My;tn.prototype.revert=Vy;tn.prototype.reduce=Fy;tn.prototype.mulTo=Hy;tn.prototype.sqrTo=qy;function zy(e,t){var r=e.bitLength(),n,i=cr(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new Br(t):t.isEven()?o=new tn(t):o=new Ar(t);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=ot();for(o.sqrTo(s[1],u);a<=f;)s[a]=ot(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=e.t-1,d,g=!0,h=ot(),p;for(r=Fi(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&f:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[d].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function Gy(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function $y(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t==0)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r}function Wy(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return P.ZERO;for(var r=e.clone(),n=this.clone(),i=cr(1),o=cr(0),s=cr(0),a=cr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(P.ONE)!=0)return P.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var ge=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509],Yy=(1<<26)/ge[ge.length-1];function Zy(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=ge[ge.length-1]){for(t=0;t<ge.length;++t)if(r.data[0]==ge[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<ge.length;){for(var n=ge[t],i=t+1;i<ge.length&&n<Yy;)n*=ge[i++];for(n=r.modInt(n);t<i;)if(n%ge[t++]==0)return!1}return r.millerRabin(e)}function Xy(e){var t=this.subtract(P.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=Qy(),o,s=0;s<e;++s){do o=new P(this.bitLength(),i);while(o.compareTo(P.ONE)<=0||o.compareTo(t)>=0);var a=o.modPow(n,this);if(a.compareTo(P.ONE)!=0&&a.compareTo(t)!=0){for(var c=1;c++<r&&a.compareTo(t)!=0;)if(a=a.modPowInt(2,this),a.compareTo(P.ONE)==0)return!1;if(a.compareTo(t)!=0)return!1}}return!0}function Qy(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}P.prototype.chunkSize=Jp;P.prototype.toRadix=ty;P.prototype.fromRadix=ey;P.prototype.fromNumber=ry;P.prototype.bitwiseTo=ay;P.prototype.changeBit=wy;P.prototype.addTo=Ay;P.prototype.dMultiply=Ny;P.prototype.dAddOffset=Py;P.prototype.multiplyLowerTo=Ky;P.prototype.multiplyUpperTo=Oy;P.prototype.modInt=$y;P.prototype.millerRabin=Xy;P.prototype.clone=Yp;P.prototype.intValue=Zp;P.prototype.byteValue=Xp;P.prototype.shortValue=Qp;P.prototype.signum=jp;P.prototype.toByteArray=ny;P.prototype.equals=iy;P.prototype.min=oy;P.prototype.max=sy;P.prototype.and=fy;P.prototype.or=uy;P.prototype.xor=ly;P.prototype.andNot=hy;P.prototype.not=dy;P.prototype.shiftLeft=py;P.prototype.shiftRight=yy;P.prototype.getLowestSetBit=xy;P.prototype.bitCount=by;P.prototype.testBit=vy;P.prototype.setBit=Ey;P.prototype.clearBit=Sy;P.prototype.flipBit=By;P.prototype.add=Iy;P.prototype.subtract=Cy;P.prototype.multiply=Ty;P.prototype.divide=_y;P.prototype.remainder=Ly;P.prototype.divideAndRemainder=Ry;P.prototype.modPow=zy;P.prototype.modInverse=Wy;P.prototype.pow=ky;P.prototype.gcd=Gy;P.prototype.isProbablePrime=Zy});var Bf=pt((Ob,Sf)=>{var Ae=ht();Sr();_t();var wf=Sf.exports=Ae.sha1=Ae.sha1||{};Ae.md.sha1=Ae.md.algorithms.sha1=wf;wf.create=function(){Ef||Jy();var e=null,t=Ae.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Ae.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ae.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),vf(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ae.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Ts.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};vf(l,r,i);var d=Ae.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var Ts=null,Ef=!1;function Jy(){Ts="\x80",Ts+=Ae.util.fillString("\0",64),Ef=!0}function vf(e,t,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,u=0;u<16;++u)n=r.getInt32(),t[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=t[u-3]^t[u-8]^t[u-14]^t[u-16],n=n<<1|n>>>31,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=t[u-6]^t[u-16]^t[u-28]^t[u-32],n=n<<2|n>>>30,t[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,l-=64}}});var Cf=pt((Mb,If)=>{var Ie=ht();_t();Un();Bf();var Af=If.exports=Ie.pkcs1=Ie.pkcs1||{};Af.encode_rsa_oaep=function(e,t,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Ie.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=t.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",d=c-t.length,g=0;g<d;g++)l+="\0";var h=u.getBytes()+l+""+t;if(!i)i=Ie.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=i.length,f.digestLength=o.digestLength,f}var p=Hi(i,a-o.digestLength-1,s),y=Ie.util.xorBytes(h,p,h.length),x=Hi(y,o.digestLength,s),v=Ie.util.xorBytes(i,x,i.length);return"\0"+v+y};Af.decode_rsa_oaep=function(e,t,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(e.n.bitLength()/8);if(t.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}if(i===void 0?i=Ie.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=t.charAt(0),f=t.substring(1,i.digestLength+1),u=t.substring(1+i.digestLength),l=Hi(u,i.digestLength,o),d=Ie.util.xorBytes(f,l,f.length),g=Hi(d,s-i.digestLength-1,o),h=Ie.util.xorBytes(u,g,u.length),p=h.substring(0,i.digestLength),y=c!=="\0",x=0;x<i.digestLength;++x)y|=a.charAt(x)!==p.charAt(x);for(var v=1,m=i.digestLength,C=i.digestLength;C<h.length;C++){var S=h.charCodeAt(C),B=S&1^1,R=v?65534:0;y|=S&R,v=v&B,m+=v}if(y||h.charCodeAt(m)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(m+1)};function Hi(e,t,r){r||(r=Ie.md.sha1.create());for(var n="",i=Math.ceil(t/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var Tf=pt((Vb,_s)=>{var fr=ht();_t();qi();Un();(function(){if(fr.prime){_s.exports=fr.prime;return}var e=_s.exports=fr.prime=fr.prime||{},t=fr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,g){typeof d=="function"&&(g=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||fr.random,y={nextBytes:function(x){for(var v=p.getBytesSync(x.length),m=0;m<x.length;++m)x[m]=v.charCodeAt(m)}};if(h.name==="PRIMEINC")return o(l,y,h.options,g);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,g,h){return"workers"in g?c(l,d,g,h):s(l,d,g,h)}function s(l,d,g,h){var p=f(l,d),y=0,x=u(p.bitLength());"millerRabinTests"in g&&(x=g.millerRabinTests);var v=10;"maxBlockTime"in g&&(v=g.maxBlockTime),a(p,l,d,y,x,v,h)}function a(l,d,g,h,p,y,x){var v=+new Date;do{if(l.bitLength()>d&&(l=f(d,g)),l.isProbablePrime(p))return x(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-v<y);fr.util.setImmediate(function(){a(l,d,g,h,p,y,x)})}function c(l,d,g,h){if(typeof Worker>"u")return s(l,d,g,h);var p=f(l,d),y=g.workers,x=g.workLoad||100,v=x*30/8,m=g.workerScript||"forge/prime.worker.js";if(y===-1)return fr.util.estimateCores(function(S,B){S&&(B=2),y=B-1,C()});C();function C(){y=Math.max(1,y);for(var S=[],B=0;B<y;++B)S[B]=new Worker(m);for(var R=y,B=0;B<y;++B)S[B].addEventListener("message",O);var L=!1;function O(M){if(!L){--R;var k=M.data;if(k.found){for(var H=0;H<S.length;++H)S[H].terminate();return L=!0,h(null,new t(k.prime,16))}p.bitLength()>l&&(p=f(l,d));var z=p.toString(16);M.target.postMessage({hex:z,workLoad:x}),p.dAddOffset(v,0)}}}}function f(l,d){var g=new t(l,d),h=l-1;return g.testBit(h)||g.bitwiseTo(t.ONE.shiftLeft(h),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var Gi=pt((Fb,Uf)=>{var $=ht();Dn();qi();_i();Cf();Tf();Un();_t();typeof it>"u"&&(it=$.jsbn.BigInteger);var it,Ls=$.util.isNodejs?ki():null,E=$.asn1,oe=$.util;$.pki=$.pki||{};Uf.exports=$.pki.rsa=$.rsa=$.rsa||{};var Q=$.pki,jy=[6,4,2,4,2,4,6,2],t1={name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},e1={name:"RSAPrivateKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},r1={name:"RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:E.Class.UNIVERSAL,type:E.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},n1=$.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},i1={name:"DigestInfo",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:E.Class.UNIVERSAL,type:E.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:E.Class.UNIVERSAL,type:E.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:E.Class.UNIVERSAL,type:E.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:E.Class.UNIVERSAL,type:E.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},o1=function(e){var t;if(e.algorithm in Q.oids)t=Q.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=E.oidToDer(t).getBytes(),i=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]),o=E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[]);o.value.push(E.create(E.Class.UNIVERSAL,E.Type.OID,!1,n)),o.value.push(E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,""));var s=E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),E.toDer(i).getBytes()},Pf=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(it.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(it.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new it($.util.bytesToHex($.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(it.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};Q.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=Df(e,t,r)):(i=$.util.createBuffer(),i.putBytes(e));for(var s=new it(i.toHex(),16),a=Pf(s,t,n),c=a.toString(16),f=$.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),f.getBytes()};Q.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new it($.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Pf(s,t,r),c=a.toString(16),f=$.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes($.util.hexToBytes(c)),n!==!1?zi(f.getBytes(),t,r):f.getBytes()};Q.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||$.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new it(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};Q.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new it(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,f=c-1;e.pqState===0?(e.num=new it(c,e.rng),e.num.testBit(f)||e.num.bitwiseTo(it.ONE.shiftLeft(f),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(a1(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(jy[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(it.ONE).gcd(e.e).compareTo(it.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(it.ONE),e.q1=e.q.subtract(it.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(it.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};Q.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!$.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(_f("generateKeyPair"))return Ls.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:Q.privateKeyFromPem(f),publicKey:Q.publicKeyFromPem(c)})});if(Lf("generateKey")&&Lf("exportKey"))return oe.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Nf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return oe.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(a)));n(null,{privateKey:c,publicKey:Q.setRsaPublicKey(c.n,c.e)})}});if(Rf("generateKey")&&Rf("exportKey")){var i=oe.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:Nf(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=oe.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=Q.privateKeyFromAsn1(E.fromDer($.util.createBuffer(l)));n(null,{privateKey:d,publicKey:Q.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(_f("generateKeyPairSync")){var o=Ls.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:Q.privateKeyFromPem(o.privateKey),publicKey:Q.publicKeyFromPem(o.publicKey)}}}var s=Q.rsa.createKeyPairGenerationState(e,t,r);if(!n)return Q.rsa.stepKeyPairGenerationState(s,0),s.keys;s1(s,r,n)};Q.setRsaPublicKey=Q.rsa.setPublicKey=function(e,t){var r={n:e,e:t};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return Df(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return $.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return Q.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=zi(f,r,!0);var u=E.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!E.validate(u,i1,l,d)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=d,g}var h=E.derToOid(l.algorithmIdentifier);if(!(h===$.oids.md2||h===$.oids.md5||h===$.oids.sha1||h===$.oids.sha224||h===$.oids.sha256||h===$.oids.sha384||h===$.oids.sha512||h===$.oids["sha512-224"]||h===$.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=h,g}if((h===$.oids.md2||h===$.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=zi(f,r,!0),c===f}});var a=Q.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};Q.setRsaPrivateKey=Q.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var d=Q.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:zi};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(g,h){return $.pkcs1.decode_rsa_oaep(h,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:o1},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return Q.rsa.encrypt(d,c,l)},c};Q.wrapRsaPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.OCTETSTRING,!1,E.toDer(e).getBytes())])};Q.privateKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,t1,t,r)&&(e=E.fromDer($.util.createBuffer(t.privateKey))),t={},r=[],!E.validate(e,e1,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,f,u,l;return i=$.util.createBuffer(t.privateKeyModulus).toHex(),o=$.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=$.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=$.util.createBuffer(t.privateKeyPrime1).toHex(),c=$.util.createBuffer(t.privateKeyPrime2).toHex(),f=$.util.createBuffer(t.privateKeyExponent1).toHex(),u=$.util.createBuffer(t.privateKeyExponent2).toHex(),l=$.util.createBuffer(t.privateKeyCoefficient).toHex(),Q.setRsaPrivateKey(new it(i,16),new it(o,16),new it(s,16),new it(a,16),new it(c,16),new it(f,16),new it(u,16),new it(l,16))};Q.privateKeyToAsn1=Q.privateKeyToRSAPrivateKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,E.integerToDer(0).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.e)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.d)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.p)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.q)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.dP)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.dQ)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.qInv))])};Q.publicKeyFromAsn1=function(e){var t={},r=[];if(E.validate(e,n1,t,r)){var n=E.derToOid(t.publicKeyOid);if(n!==Q.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}e=t.rsaPublicKey}if(r=[],!E.validate(e,r1,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=$.util.createBuffer(t.publicKeyModulus).toHex(),s=$.util.createBuffer(t.publicKeyExponent).toHex();return Q.setRsaPublicKey(new it(o,16),new it(s,16))};Q.publicKeyToAsn1=Q.publicKeyToSubjectPublicKeyInfo=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.OID,!1,E.oidToDer(Q.oids.rsaEncryption).getBytes()),E.create(E.Class.UNIVERSAL,E.Type.NULL,!1,"")]),E.create(E.Class.UNIVERSAL,E.Type.BITSTRING,!1,[Q.publicKeyToRSAPublicKey(e)])])};Q.publicKeyToRSAPublicKey=function(e){return E.create(E.Class.UNIVERSAL,E.Type.SEQUENCE,!0,[E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.n)),E.create(E.Class.UNIVERSAL,E.Type.INTEGER,!1,Ce(e.e))])};function Df(e,t,r){var n=$.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=$.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(e),n}function zi(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=$.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function s1(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){$.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var f=e.p;e.p=e.q,e.q=f}if(e.p.subtract(it.ONE).gcd(e.e).compareTo(it.ONE)!==0){e.p=null,i();return}if(e.q.subtract(it.ONE).gcd(e.e).compareTo(it.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(it.ONE),e.q1=e.q.subtract(it.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(it.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var u=e.e.modInverse(e.phi);e.keys={privateKey:Q.rsa.setPrivateKey(e.n,e.e,u,e.p,e.q,u.mod(e.p1),u.mod(e.q1),e.q.modInverse(e.p)),publicKey:Q.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function Ce(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=$.util.hexToBytes(t);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function a1(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function _f(e){return $.util.isNodejs&&typeof Ls[e]=="function"}function Lf(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.crypto=="object"&&typeof oe.globalScope.crypto.subtle=="object"&&typeof oe.globalScope.crypto.subtle[e]=="function"}function Rf(e){return typeof oe.globalScope<"u"&&typeof oe.globalScope.msCrypto=="object"&&typeof oe.globalScope.msCrypto.subtle=="object"&&typeof oe.globalScope.msCrypto.subtle[e]=="function"}function Nf(e){for(var t=$.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var Ff=pt((qb,Vf)=>{var q=ht();ws();Dn();zc();Sr();_i();Zc();Jc();Un();lf();Gi();_t();typeof kf>"u"&&(kf=q.jsbn.BigInteger);var kf,I=q.asn1,tt=q.pki=q.pki||{};Vf.exports=tt.pbe=q.pbe=q.pbe||{};var Ir=tt.oids,c1={name:"EncryptedPrivateKeyInfo",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},f1={name:"PBES2Algorithms",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},u1={name:"pkcs-12PbeParams",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"iterations"}]};tt.encryptPrivateKeyInfo=function(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=q.random.getBytesSync(r.saltSize),i=r.count,o=I.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=Ir["aes128-CBC"],l=q.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=Ir["aes192-CBC"],l=q.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=Ir["aes256-CBC"],l=q.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=Ir.desCBC,l=q.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),h=Mf(g),p=q.pkcs5.pbkdf2(t,n,i,s,h),y=q.random.getBytesSync(f),x=l(p);x.start(y),x.update(I.toDer(e)),x.finish(),c=x.output.getBytes();var v=l1(n,o,s,g);a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Ir.pkcs5PBES2).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Ir.pkcs5PBKDF2).getBytes()),v]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(u).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var m=new q.util.ByteBuffer(n),p=tt.pbe.generatePkcs12Key(t,m,1,i,s),y=tt.pbe.generatePkcs12Key(t,m,2,i,s),x=q.des.createEncryptionCipher(p);x.start(y),x.update(I.toDer(e)),x.finish(),c=x.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(Ir["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,n),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var C=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return C};tt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!I.validate(e,c1,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=I.derToOid(n.encryptionOid),a=tt.pbe.getCipher(s,n.encryptionParams,t),c=q.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};tt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(e).getBytes()};return q.pem.encode(r,{maxline:t})};tt.encryptedPrivateKeyFromPem=function(e){var t=q.pem.decode(e)[0];if(t.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return I.fromDer(t.body)};tt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=tt.wrapRsaPrivateKey(tt.privateKeyToAsn1(e));return n=tt.encryptPrivateKeyInfo(n,t,r),tt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=q.random.getBytesSync(16),a=q.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=q.random.getBytesSync(8),a=q.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=q.pbe.opensslDeriveBytes(t,o.substr(0,8),s),u=a(f);u.start(o),u.update(I.toDer(tt.privateKeyToAsn1(e))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:q.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return q.pem.encode(l)};tt.decryptRsaPrivateKey=function(e,t){var r=null,n=q.pem.decode(e)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=q.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=q.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=q.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=q.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=q.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return q.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return q.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return q.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=q.util.hexToBytes(n.dekInfo.parameters),c=q.pbe.opensslDeriveBytes(t,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(q.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=tt.decryptPrivateKeyInfo(I.fromDer(r),t):r=I.fromDer(r),r!==null&&(r=tt.privateKeyFromAsn1(r)),r};tt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in q.md))throw new Error('"sha1" hash algorithm unavailable.');o=q.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new q.util.ByteBuffer,l=new q.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),g=t.length(),h=new q.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(g/f),y=new q.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%g));var x=f*Math.ceil(d/f),v=new q.util.ByteBuffer;for(a=0;a<x;a++)v.putByte(l.at(a%d));var m=y;m.putBuffer(v);for(var C=Math.ceil(i/c),S=1;S<=C;S++){var B=new q.util.ByteBuffer;B.putBytes(h.bytes()),B.putBytes(m.bytes());for(var R=0;R<n;R++)o.start(),o.update(B.getBytes()),B=o.digest();var L=new q.util.ByteBuffer;for(a=0;a<f;a++)L.putByte(B.at(a%c));var O=Math.ceil(g/f)+Math.ceil(d/f),M=new q.util.ByteBuffer;for(s=0;s<O;s++){var k=new q.util.ByteBuffer(m.getBytes(f)),H=511;for(a=L.length()-1;a>=0;a--)H=H>>8,H+=L.at(a)+k.at(a),k.setAt(a,H&255);M.putBuffer(k)}m=M,u.putBuffer(B)}return u.truncate(u.length()-i),u};tt.pbe.getCipher=function(e,t,r){switch(e){case tt.oids.pkcs5PBES2:return tt.pbe.getCipherForPBES2(e,t,r);case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:return tt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};tt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!I.validate(t,f1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(e=I.derToOid(n.kdfOid),e!==tt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=I.derToOid(n.encOid),e!==tt.oids["aes128-CBC"]&&e!==tt.oids["aes192-CBC"]&&e!==tt.oids["aes256-CBC"]&&e!==tt.oids["des-EDE3-CBC"]&&e!==tt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=q.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(tt.oids[e]){case"aes128-CBC":c=16,f=q.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=q.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=q.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=q.des.createDecryptionCipher;break;case"desCBC":c=8,f=q.des.createDecryptionCipher;break}var u=Of(n.prfOid),l=q.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,g=f(l);return g.start(d),g};tt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!I.validate(t,u1,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=q.util.createBuffer(n.salt),a=q.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(e){case tt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=q.des.startDecrypting;break;case tt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,y){var x=q.rc2.createDecryptionCipher(p,40);return x.start(y,null),x};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=Of(n.prfOid),d=tt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=tt.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,g)};tt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in q.md))throw new Error('"md5" hash algorithm unavailable.');n=q.md.md5.create()}t===null&&(t="");for(var i=[Kf(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(Kf(n,i[s-1]+e+t));return i.join("").substr(0,r)};function Kf(e,t){return e.start().update(t).digest().getBytes()}function Of(e){var t;if(!e)t="hmacWithSHA1";else if(t=tt.oids[I.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Mf(t)}function Mf(e){var t=q.md;switch(e){case"hmacWithSHA224":t=q.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function l1(e,t,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,e),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,q.util.hexToBytes(r.toString(16))),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(tt.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var ku=pt((j8,Uu)=>{var bt=ht();Sr();_t();var zn=Uu.exports=bt.sha512=bt.sha512||{};bt.md.sha512=bt.md.algorithms.sha512=zn;var Pu=bt.sha384=bt.sha512.sha384=bt.sha512.sha384||{};Pu.create=function(){return zn.create("SHA-384")};bt.md.sha384=bt.md.algorithms.sha384=Pu;bt.sha512.sha256=bt.sha512.sha256||{create:function(){return zn.create("SHA-512/256")}};bt.md["sha512/256"]=bt.md.algorithms["sha512/256"]=bt.sha512.sha256;bt.sha512.sha224=bt.sha512.sha224||{create:function(){return zn.create("SHA-512/224")}};bt.md["sha512/224"]=bt.md.algorithms["sha512/224"]=bt.sha512.sha224;zn.create=function(e){if(Du||Ng(),typeof e>"u"&&(e="SHA-512"),!(e in Ur))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=Ur[e],r=null,n=bt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=bt.util.createBuffer(),r=new Array(t.length);for(var f=0;f<t.length;++f)r[f]=t[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=bt.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),Nu(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=bt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(ma.substr(0,a.blockLength-u));for(var l,d,g=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,g+=d,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);Nu(p,i,c);var y=bt.util.createBuffer(),x;e==="SHA-512"?x=p.length:e==="SHA-384"?x=p.length-2:x=p.length-4;for(var h=0;h<x;++h)y.putInt32(p[h][0]),(h!==x-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var ma=null,Du=!1,ba=null,Ur=null;function Ng(){ma="\x80",ma+=bt.util.fillString("\0",128),ba=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458],[4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350,1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044],[2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],Ur={},Ur["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Ur["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Ur["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Ur["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Du=!0}function Nu(e,t,r){for(var n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v,m,C,S,B,R,L,O,M,k,H,z,Z,A,N,T,_,w,U,K,F=r.length();F>=128;){for(A=0;A<16;++A)t[A][0]=r.getInt32()>>>0,t[A][1]=r.getInt32()>>>0;for(;A<80;++A)_=t[A-2],N=_[0],T=_[1],n=((N>>>19|T<<13)^(T>>>29|N<<3)^N>>>6)>>>0,i=((N<<13|T>>>19)^(T<<3|N>>>29)^(N<<26|T>>>6))>>>0,U=t[A-15],N=U[0],T=U[1],o=((N>>>1|T<<31)^(N>>>8|T<<24)^N>>>7)>>>0,s=((N<<31|T>>>1)^(N<<24|T>>>8)^(N<<25|T>>>7))>>>0,w=t[A-7],K=t[A-16],T=i+w[1]+s+K[1],t[A][0]=n+w[0]+o+K[0]+(T/4294967296>>>0)>>>0,t[A][1]=T>>>0;for(p=e[0][0],y=e[0][1],x=e[1][0],v=e[1][1],m=e[2][0],C=e[2][1],S=e[3][0],B=e[3][1],R=e[4][0],L=e[4][1],O=e[5][0],M=e[5][1],k=e[6][0],H=e[6][1],z=e[7][0],Z=e[7][1],A=0;A<80;++A)f=((R>>>14|L<<18)^(R>>>18|L<<14)^(L>>>9|R<<23))>>>0,u=((R<<18|L>>>14)^(R<<14|L>>>18)^(L<<23|R>>>9))>>>0,l=(k^R&(O^k))>>>0,d=(H^L&(M^H))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,g=(p&x|m&(p^x))>>>0,h=(y&v|C&(y^v))>>>0,T=Z+u+d+ba[A][1]+t[A][1],n=z+f+l+ba[A][0]+t[A][0]+(T/4294967296>>>0)>>>0,i=T>>>0,T=c+h,o=a+g+(T/4294967296>>>0)>>>0,s=T>>>0,z=k,Z=H,k=O,H=M,O=R,M=L,T=B+i,R=S+n+(T/4294967296>>>0)>>>0,L=T>>>0,S=m,B=C,m=x,C=v,x=p,v=y,T=i+s,p=n+o+(T/4294967296>>>0)>>>0,y=T>>>0;T=e[0][1]+y,e[0][0]=e[0][0]+p+(T/4294967296>>>0)>>>0,e[0][1]=T>>>0,T=e[1][1]+v,e[1][0]=e[1][0]+x+(T/4294967296>>>0)>>>0,e[1][1]=T>>>0,T=e[2][1]+C,e[2][0]=e[2][0]+m+(T/4294967296>>>0)>>>0,e[2][1]=T>>>0,T=e[3][1]+B,e[3][0]=e[3][0]+S+(T/4294967296>>>0)>>>0,e[3][1]=T>>>0,T=e[4][1]+L,e[4][0]=e[4][0]+R+(T/4294967296>>>0)>>>0,e[4][1]=T>>>0,T=e[5][1]+M,e[5][0]=e[5][0]+O+(T/4294967296>>>0)>>>0,e[5][1]=T>>>0,T=e[6][1]+H,e[6][0]=e[6][0]+k+(T/4294967296>>>0)>>>0,e[6][1]=T>>>0,T=e[7][1]+Z,e[7][0]=e[7][0]+z+(T/4294967296>>>0)>>>0,e[7][1]=T>>>0,F-=128}}});var Mx={};Rt(Mx,{webTransport:()=>Ox});function p0(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function y0(e=0){return globalThis.Buffer?.allocUnsafe!=null?p0(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var sh=Math.pow(2,7),ah=Math.pow(2,14),ch=Math.pow(2,21),So=Math.pow(2,28),Bo=Math.pow(2,35),Ao=Math.pow(2,42),Io=Math.pow(2,49),at=128,zt=127;function Gt(e){if(e<sh)return 1;if(e<ah)return 2;if(e<ch)return 3;if(e<So)return 4;if(e<Bo)return 5;if(e<Ao)return 6;if(e<Io)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function fh(e,t,r=0){switch(Gt(e)){case 8:t[r++]=e&255|at,e/=128;case 7:t[r++]=e&255|at,e/=128;case 6:t[r++]=e&255|at,e/=128;case 5:t[r++]=e&255|at,e/=128;case 4:t[r++]=e&255|at,e>>>=7;case 3:t[r++]=e&255|at,e>>>=7;case 2:t[r++]=e&255|at,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function uh(e,t,r=0){switch(Gt(e)){case 8:t.set(r++,e&255|at),e/=128;case 7:t.set(r++,e&255|at),e/=128;case 6:t.set(r++,e&255|at),e/=128;case 5:t.set(r++,e&255|at),e/=128;case 4:t.set(r++,e&255|at),e>>>=7;case 3:t.set(r++,e&255|at),e>>>=7;case 2:t.set(r++,e&255|at),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function lh(e,t){let r=e[t],n=0;if(n+=r&zt,r<at||(r=e[t+1],n+=(r&zt)<<7,r<at)||(r=e[t+2],n+=(r&zt)<<14,r<at)||(r=e[t+3],n+=(r&zt)<<21,r<at)||(r=e[t+4],n+=(r&zt)*So,r<at)||(r=e[t+5],n+=(r&zt)*Bo,r<at)||(r=e[t+6],n+=(r&zt)*Ao,r<at)||(r=e[t+7],n+=(r&zt)*Io,r<at))return n;throw new RangeError("Could not decode varint")}function hh(e,t){let r=e.get(t),n=0;if(n+=r&zt,r<at||(r=e.get(t+1),n+=(r&zt)<<7,r<at)||(r=e.get(t+2),n+=(r&zt)<<14,r<at)||(r=e.get(t+3),n+=(r&zt)<<21,r<at)||(r=e.get(t+4),n+=(r&zt)*So,r<at)||(r=e.get(t+5),n+=(r&zt)*Bo,r<at)||(r=e.get(t+6),n+=(r&zt)*Ao,r<at)||(r=e.get(t+7),n+=(r&zt)*Io,r<at))return n;throw new RangeError("Could not decode varint")}function je(e,t,r=0){return t==null&&(t=y0(Gt(e))),t instanceof Uint8Array?fh(e,t,r):uh(e,t,r)}function fe(e,t=0){return e instanceof Uint8Array?lh(e,t):hh(e,t)}function mn(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Ue(e=0){return globalThis.Buffer?.alloc!=null?mn(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function bn(e=0){return globalThis.Buffer?.allocUnsafe!=null?mn(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Co(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=bn(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return mn(r)}function g0(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var m0=Symbol.for("@achingbrain/uint8arraylist");function x0(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function Mr(e){return!!e?.[m0]}var Bt=class e{bufs;length;[m0]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Mr(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Mr(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=x0(this.bufs,t);return r.buf[r.index]}set(t,r){let n=x0(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(Mr(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return Co(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:Co(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=[...n],o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let f=t>=a&&t<c,u=r>a&&r<=c;if(f&&u){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!Mr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let d=f;d>=0;d--){let g=this.get(l+d);if(n[d]!==g){u=Math.max(1,d-a[g]);break}}if(u===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=bn(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=Ue(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=Ue(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=Ue(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=bn(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=Ue(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=Ue(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=Ue(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=Ue(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=Ue(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!g0(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function b0(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function v0(e=0){return globalThis.Buffer?.allocUnsafe!=null?b0(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function ni(e){return e[Symbol.asyncIterator]!=null}var ii=e=>{let t=Gt(e),r=v0(t);return je(e,r),ii.bytes=t,r};ii.bytes=0;function vn(e,t){t=t??{};let r=t.lengthEncoder??ii;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return ni(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}vn.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??ii;return new Bt(r(e.byteLength),e)};var Vr=Xt(S0(),1);var ph=8,yh=1024*1024*4,yr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(yr||(yr={}));var To=e=>{let t=fe(e);return To.bytes=Gt(t),t};To.bytes=0;function wn(e,t){let r=new Bt,n=yr.LENGTH,i=-1,o=t?.lengthDecoder??To,s=t?.maxLengthLength??ph,a=t?.maxDataLength??yh;function*c(){for(;r.byteLength>0;){if(n===yr.LENGTH)try{if(i=o(r),i<0)throw(0,Vr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Vr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),t?.onLength!=null&&t.onLength(i),n=yr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Vr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===yr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(f),yield f,n=yr.LENGTH}}}return ni(e)?async function*(){for await(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Vr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of e)r.append(f),yield*c();if(r.byteLength>0)throw(0,Vr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}wn.fromReader=(e,t)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await e.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return wn(n,{...t??{},onLength:o=>{r=o}})};function ue(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var oi=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function B0(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new oi(r?.errorMessage,r?.errorCode));let n,i=new oi(r?.errorMessage,r?.errorCode);try{return await Promise.race([e,new Promise((o,s)=>{n=()=>{s(i)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var _o=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=ue(),this.haveNext=ue()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let t=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=ue(),t}async throw(t){return this.ended=!0,t!=null&&this.haveNext.reject(t),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,r){await this._push(t,r)}async end(t,r){t!=null?await this.throw(t):await this._push(void 0,r)}async _push(t,r){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=ue(),await B0(this.needNext.promise,r?.signal,r)}};function A0(){return new _o}var si=class extends Error{code;constructor(t,r){super(t),this.code=r}},Lo=class extends si{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function I0(e,t){let r=A0();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new Bt;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new Lo("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new Bt:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new si("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let u=i.sublist(0,s);return i.consume(s),u}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=e.source;e.source=async function*(){t?.yieldBytes===!1?yield i:yield*i,yield*s}()}return e}}}var ai=class extends Error{code;constructor(t,r){super(t),this.code=r}},C0=e=>fe(e);C0.bytes=0;function Ro(e,t={}){let r=I0(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=Gt(t.maxDataLength)),{read:async i=>{let o=-1,s=new Bt,a=t?.lengthDecoder??C0;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new ai("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new ai("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(vn.single(i,t),o)},writeV:async(i,o)=>{let s=new Bt(...i.map(a=>vn.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function No(){let e=ue(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function T0(){let e=No(),t=No();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}var ci=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},Fr=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new ci(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let r=this.head;this.head=r.next=new ci(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var Po=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function fi(e={}){return xh(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},e)}function xh(e,t){t=t??{};let r=t.onEnd,n=new Fr,i,o,s,a=ue(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,x)=>{o=v=>{o=null,n.push(v);try{y(e(n))}catch(m){x(m)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ue()})}},f=y=>o!=null?o(y):(n.push(y),i),u=y=>(n=new Fr,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?u(y):f({done:!0})),g=()=>(n=new Fr,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let x=y?.signal;if(x?.throwIfAborted(),n.isEmpty())return;let v,m;x!=null&&(v=new Promise((C,S)=>{m=()=>{S(new Po)},x.addEventListener("abort",m)}));try{await Promise.race([a.promise,v])}finally{m!=null&&x!=null&&x?.removeEventListener("abort",m)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:y=>p.onEmpty(y)},i}function mh(e){return e[Symbol.asyncIterator]!=null}function bh(...e){let t=[];for(let r of e)mh(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=fi({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var _0=bh;function L0(e,...t){if(e==null)throw new Error("Empty pipeline");if(Do(e)){let n=e;e=()=>n.source}else if(N0(e)||R0(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Do(r[r.length-1])&&(r[r.length-1]=r[r.length-1].sink),r.length>2)for(let n=1;n<r.length-1;n++)Do(r[n])&&(r[n]=wh(r[n]));return vh(...r)}var vh=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},R0=e=>e?.[Symbol.asyncIterator]!=null,N0=e=>e?.[Symbol.iterator]!=null,Do=e=>e==null?!1:e.sink!=null&&e.source!=null,wh=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=fi({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(R0(o))i=async function*(){yield*o,n.end()};else if(N0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return _0(n,i())}return e.source};function ke(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function ct(e=0){return globalThis.Buffer?.alloc!=null?ke(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function gr(e=0){return globalThis.Buffer?.allocUnsafe!=null?ke(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var qr=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Ke=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));function P0(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var D0=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Eh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Eh)throw new Error("Non little-endian hardware is not supported");function ui(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function li(e){if(typeof e=="string")e=ui(e);else if(P0(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var Sh=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function U0(e,t){if(t!==void 0&&(typeof t!="object"||!Sh(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function xr(e,t){if(!P0(e))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function k0(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n<e.length;n++)r|=e[n]^t[n];return r===0}var Uo=(e,t)=>(Object.assign(t,e),t);function ko(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}function hi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`wrong positive integer: ${e}`)}function Ko(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function Bh(e){return e!=null&&typeof e=="object"&&(e instanceof Uint8Array||e.constructor.name==="Uint8Array")}function Hr(e,...t){if(!Bh(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function Oo(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function K0(e,t){Hr(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Ft=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Mo=class{constructor(t){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,t=li(t),xr(t,32);let r=Ft(t,0),n=Ft(t,2),i=Ft(t,4),o=Ft(t,6),s=Ft(t,8),a=Ft(t,10),c=Ft(t,12),f=Ft(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Ft(t,16+2*u)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],g=s[6],h=s[7],p=s[8],y=s[9],x=Ft(t,r+0),v=Ft(t,r+2),m=Ft(t,r+4),C=Ft(t,r+6),S=Ft(t,r+8),B=Ft(t,r+10),R=Ft(t,r+12),L=Ft(t,r+14),O=o[0]+(x&8191),M=o[1]+((x>>>13|v<<3)&8191),k=o[2]+((v>>>10|m<<6)&8191),H=o[3]+((m>>>7|C<<9)&8191),z=o[4]+((C>>>4|S<<12)&8191),Z=o[5]+(S>>>1&8191),A=o[6]+((S>>>14|B<<2)&8191),N=o[7]+((B>>>11|R<<5)&8191),T=o[8]+((R>>>8|L<<8)&8191),_=o[9]+(L>>>5|i),w=0,U=w+O*a+M*(5*y)+k*(5*p)+H*(5*h)+z*(5*g);w=U>>>13,U&=8191,U+=Z*(5*d)+A*(5*l)+N*(5*u)+T*(5*f)+_*(5*c),w+=U>>>13,U&=8191;let K=w+O*c+M*a+k*(5*y)+H*(5*p)+z*(5*h);w=K>>>13,K&=8191,K+=Z*(5*g)+A*(5*d)+N*(5*l)+T*(5*u)+_*(5*f),w+=K>>>13,K&=8191;let F=w+O*f+M*c+k*a+H*(5*y)+z*(5*p);w=F>>>13,F&=8191,F+=Z*(5*h)+A*(5*g)+N*(5*d)+T*(5*l)+_*(5*u),w+=F>>>13,F&=8191;let W=w+O*u+M*f+k*c+H*a+z*(5*y);w=W>>>13,W&=8191,W+=Z*(5*p)+A*(5*h)+N*(5*g)+T*(5*d)+_*(5*l),w+=W>>>13,W&=8191;let Y=w+O*l+M*u+k*f+H*c+z*a;w=Y>>>13,Y&=8191,Y+=Z*(5*y)+A*(5*p)+N*(5*h)+T*(5*g)+_*(5*d),w+=Y>>>13,Y&=8191;let rt=w+O*d+M*l+k*u+H*f+z*c;w=rt>>>13,rt&=8191,rt+=Z*a+A*(5*y)+N*(5*p)+T*(5*h)+_*(5*g),w+=rt>>>13,rt&=8191;let X=w+O*g+M*d+k*l+H*u+z*f;w=X>>>13,X&=8191,X+=Z*c+A*a+N*(5*y)+T*(5*p)+_*(5*h),w+=X>>>13,X&=8191;let J=w+O*h+M*g+k*d+H*l+z*u;w=J>>>13,J&=8191,J+=Z*f+A*c+N*a+T*(5*y)+_*(5*p),w+=J>>>13,J&=8191;let dt=w+O*p+M*h+k*g+H*d+z*l;w=dt>>>13,dt&=8191,dt+=Z*u+A*f+N*c+T*a+_*(5*y),w+=dt>>>13,dt&=8191;let lt=w+O*y+M*p+k*h+H*g+z*d;w=lt>>>13,lt&=8191,lt+=Z*l+A*u+N*f+T*c+_*a,w+=lt>>>13,lt&=8191,w=(w<<2)+w|0,w=w+U|0,U=w&8191,w=w>>>13,K+=w,o[0]=U,o[1]=K,o[2]=F,o[3]=W,o[4]=Y,o[5]=rt,o[6]=X,o[7]=J,o[8]=dt,o[9]=lt}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){Oo(this);let{buffer:r,blockLen:n}=this;t=li(t);let i=t.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(t,o);continue}r.set(t.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(t){Oo(this),K0(t,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)t[o++]=n[s]>>>0,t[o++]=n[s]>>>8;return t}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}};function Ah(e){let t=(n,i)=>e(i).update(li(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var O0=Ah(e=>new Mo(e));var Ih=ui("expand 16-byte k"),Ch=ui("expand 32-byte k"),Th=Ke(Ih),_h=Ke(Ch);function G(e,t){return e<<t|e>>>32-t}function Vo(e){return e.byteOffset%4===0}var di=64,Lh=16,V0=2**32-1,M0=new Uint32Array;function Rh(e,t,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(di),u=Ke(f),l=Vo(i)&&Vo(o),d=l?Ke(i):M0,g=l?Ke(o):M0;for(let h=0;h<c;s++){if(e(t,r,n,u,s,a),s>=V0)throw new Error("arx: counter overflow");let p=Math.min(di,c-h);if(l&&p===di){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let x=0,v;x<Lh;x++)v=y+x,g[v]=d[v]^u[x];h+=di;continue}for(let y=0,x;y<p;y++)x=h+y,o[x]=i[x]^f[y];h+=p}}function Fo(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=U0({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return hi(i),hi(s),Ko(o),Ko(r),(a,c,f,u,l=0)=>{Hr(a),Hr(c),Hr(f);let d=f.length;if(u||(u=new Uint8Array(d)),Hr(u),hi(l),l<0||l>=V0)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let g=[],h=a.length,p,y;if(h===32)p=a.slice(),g.push(p),y=_h;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=Th,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);Vo(c)||(c=c.slice(),g.push(c));let x=Ke(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,x,Ke(c.subarray(0,16)),x),c=c.subarray(16)}let v=16-i;if(v!==c.length)throw new Error(`arx: nonce must be ${v} or 16 bytes`);if(v!==12){let C=new Uint8Array(12);C.set(c,o?0:12-c.length),c=C,g.push(c)}let m=Ke(c);for(Rh(e,y,x,m,f,u,l,s);g.length>0;)g.pop().fill(0);return u}}function H0(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],f=e[3],u=t[0],l=t[1],d=t[2],g=t[3],h=t[4],p=t[5],y=t[6],x=t[7],v=i,m=r[0],C=r[1],S=r[2],B=s,R=a,L=c,O=f,M=u,k=l,H=d,z=g,Z=h,A=p,N=y,T=x,_=v,w=m,U=C,K=S;for(let W=0;W<o;W+=2)B=B+M|0,_=G(_^B,16),Z=Z+_|0,M=G(M^Z,12),B=B+M|0,_=G(_^B,8),Z=Z+_|0,M=G(M^Z,7),R=R+k|0,w=G(w^R,16),A=A+w|0,k=G(k^A,12),R=R+k|0,w=G(w^R,8),A=A+w|0,k=G(k^A,7),L=L+H|0,U=G(U^L,16),N=N+U|0,H=G(H^N,12),L=L+H|0,U=G(U^L,8),N=N+U|0,H=G(H^N,7),O=O+z|0,K=G(K^O,16),T=T+K|0,z=G(z^T,12),O=O+z|0,K=G(K^O,8),T=T+K|0,z=G(z^T,7),B=B+k|0,K=G(K^B,16),N=N+K|0,k=G(k^N,12),B=B+k|0,K=G(K^B,8),N=N+K|0,k=G(k^N,7),R=R+H|0,_=G(_^R,16),T=T+_|0,H=G(H^T,12),R=R+H|0,_=G(_^R,8),T=T+_|0,H=G(H^T,7),L=L+z|0,w=G(w^L,16),Z=Z+w|0,z=G(z^Z,12),L=L+z|0,w=G(w^L,8),Z=Z+w|0,z=G(z^Z,7),O=O+M|0,U=G(U^O,16),A=A+U|0,M=G(M^A,12),O=O+M|0,U=G(U^O,8),A=A+U|0,M=G(M^A,7);let F=0;n[F++]=s+B|0,n[F++]=a+R|0,n[F++]=c+L|0,n[F++]=f+O|0,n[F++]=u+M|0,n[F++]=l+k|0,n[F++]=d+H|0,n[F++]=g+z|0,n[F++]=h+Z|0,n[F++]=p+A|0,n[F++]=y+N|0,n[F++]=x+T|0,n[F++]=v+_|0,n[F++]=m+w|0,n[F++]=C+U|0,n[F++]=S+K|0}function Nh(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],f=t[1],u=t[2],l=t[3],d=t[4],g=t[5],h=t[6],p=t[7],y=r[0],x=r[1],v=r[2],m=r[3];for(let S=0;S<20;S+=2)i=i+c|0,y=G(y^i,16),d=d+y|0,c=G(c^d,12),i=i+c|0,y=G(y^i,8),d=d+y|0,c=G(c^d,7),o=o+f|0,x=G(x^o,16),g=g+x|0,f=G(f^g,12),o=o+f|0,x=G(x^o,8),g=g+x|0,f=G(f^g,7),s=s+u|0,v=G(v^s,16),h=h+v|0,u=G(u^h,12),s=s+u|0,v=G(v^s,8),h=h+v|0,u=G(u^h,7),a=a+l|0,m=G(m^a,16),p=p+m|0,l=G(l^p,12),a=a+l|0,m=G(m^a,8),p=p+m|0,l=G(l^p,7),i=i+f|0,m=G(m^i,16),h=h+m|0,f=G(f^h,12),i=i+f|0,m=G(m^i,8),h=h+m|0,f=G(f^h,7),o=o+u|0,y=G(y^o,16),p=p+y|0,u=G(u^p,12),o=o+u|0,y=G(y^o,8),p=p+y|0,u=G(u^p,7),s=s+l|0,x=G(x^s,16),d=d+x|0,l=G(l^d,12),s=s+l|0,x=G(x^s,8),d=d+x|0,l=G(l^d,7),a=a+c|0,v=G(v^a,16),g=g+v|0,c=G(c^g,12),a=a+c|0,v=G(v^a,8),g=g+v|0,c=G(c^g,7);let C=0;n[C++]=i,n[C++]=o,n[C++]=s,n[C++]=a,n[C++]=y,n[C++]=x,n[C++]=v,n[C++]=m}var Ph=Fo(H0,{counterRight:!1,counterLength:4,allowShortKeys:!1}),Dh=Fo(H0,{counterRight:!1,counterLength:8,extendNonceFn:Nh,allowShortKeys:!1});var Uh=new Uint8Array(16),F0=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(Uh.subarray(r))},kh=new Uint8Array(32);function q0(e,t,r,n,i){let o=e(t,r,kh),s=O0.create(o);i&&F0(s,i),F0(s,n);let a=new Uint8Array(16),c=D0(a);ko(c,0,BigInt(i?i.length:0),!0),ko(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var z0=e=>(t,r,n)=>(xr(t,32),xr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?xr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let f=q0(e,t,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?xr(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=q0(e,t,r,f,n);if(!k0(u,l))throw new Error("invalid tag");return e(t,r,f,s,1),s}}),qo=Uo({blockSize:64,nonceLength:12,tagLength:16},z0(Ph)),r2=Uo({blockSize:64,nonceLength:24,tagLength:16},z0(Dh));function pi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function Kh(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Ho(e,...t){if(!Kh(e))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function En(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");pi(e.outputLen),pi(e.blockLen)}function zr(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function G0(e,t){Ho(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var yi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function $0(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var gi=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),le=(e,t)=>e<<32-t|e>>>t,Oh=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Oh)throw new Error("Non little-endian hardware is not supported");function zo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function tr(e){if(typeof e=="string"&&(e=zo(e)),!$0(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function xi(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];if(!$0(i))throw new Error("Uint8Array expected");t+=i.length}let r=new Uint8Array(t);for(let n=0,i=0;n<e.length;n++){let o=e[n];r.set(o,i),i+=o.length}return r}var Gr=class{clone(){return this._cloneInto()}},a2={}.toString;function mi(e){let t=n=>e().update(tr(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function mr(e=32){if(yi&&typeof yi.getRandomValues=="function")return yi.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function Mh(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+f,a,n)}var $r=class extends Gr{constructor(t,r,n,i){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=gi(this.buffer)}update(t){zr(this);let{view:r,buffer:n,blockLen:i}=this;t=tr(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=gi(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){zr(this),G0(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;Mh(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=gi(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var bi=BigInt(4294967295),Go=BigInt(32);function W0(e,t=!1){return t?{h:Number(e&bi),l:Number(e>>Go&bi)}:{h:Number(e>>Go&bi)|0,l:Number(e&bi)|0}}function Vh(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=W0(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var Fh=(e,t)=>BigInt(e>>>0)<<Go|BigInt(t>>>0),qh=(e,t,r)=>e>>>r,Hh=(e,t,r)=>e<<32-r|t>>>r,zh=(e,t,r)=>e>>>r|t<<32-r,Gh=(e,t,r)=>e<<32-r|t>>>r,$h=(e,t,r)=>e<<64-r|t>>>r-32,Wh=(e,t,r)=>e>>>r-32|t<<64-r,Yh=(e,t)=>t,Zh=(e,t)=>e,Xh=(e,t,r)=>e<<r|t>>>32-r,Qh=(e,t,r)=>t<<r|e>>>32-r,Jh=(e,t,r)=>t<<r-32|e>>>64-r,jh=(e,t,r)=>e<<r-32|t>>>64-r;function td(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var ed=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),rd=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,nd=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),id=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,od=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),sd=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var ad={fromBig:W0,split:Vh,toBig:Fh,shrSH:qh,shrSL:Hh,rotrSH:zh,rotrSL:Gh,rotrBH:$h,rotrBL:Wh,rotr32H:Yh,rotr32L:Zh,rotlSH:Xh,rotlSL:Qh,rotlBH:Jh,rotlBL:jh,add:td,add3L:ed,add3H:rd,add4L:nd,add4H:id,add5H:sd,add5L:od},j=ad;var[cd,fd]=j.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),er=new Uint32Array(80),rr=new Uint32Array(80),$o=class extends $r{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:d,Gh:g,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y]}set(t,r,n,i,o,s,a,c,f,u,l,d,g,h,p,y){this.Ah=t|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=d|0,this.Gh=g|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let m=0;m<16;m++,r+=4)er[m]=t.getUint32(r),rr[m]=t.getUint32(r+=4);for(let m=16;m<80;m++){let C=er[m-15]|0,S=rr[m-15]|0,B=j.rotrSH(C,S,1)^j.rotrSH(C,S,8)^j.shrSH(C,S,7),R=j.rotrSL(C,S,1)^j.rotrSL(C,S,8)^j.shrSL(C,S,7),L=er[m-2]|0,O=rr[m-2]|0,M=j.rotrSH(L,O,19)^j.rotrBH(L,O,61)^j.shrSH(L,O,6),k=j.rotrSL(L,O,19)^j.rotrBL(L,O,61)^j.shrSL(L,O,6),H=j.add4L(R,k,rr[m-7],rr[m-16]),z=j.add4H(H,B,M,er[m-7],er[m-16]);er[m]=z|0,rr[m]=H|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:g,Fl:h,Gh:p,Gl:y,Hh:x,Hl:v}=this;for(let m=0;m<80;m++){let C=j.rotrSH(l,d,14)^j.rotrSH(l,d,18)^j.rotrBH(l,d,41),S=j.rotrSL(l,d,14)^j.rotrSL(l,d,18)^j.rotrBL(l,d,41),B=l&g^~l&p,R=d&h^~d&y,L=j.add5L(v,S,R,fd[m],rr[m]),O=j.add5H(L,x,C,B,cd[m],er[m]),M=L|0,k=j.rotrSH(n,i,28)^j.rotrBH(n,i,34)^j.rotrBH(n,i,39),H=j.rotrSL(n,i,28)^j.rotrBL(n,i,34)^j.rotrBL(n,i,39),z=n&o^n&a^o&a,Z=i&s^i&c^s&c;x=p|0,v=y|0,p=g|0,y=h|0,g=l|0,h=d|0,{h:l,l:d}=j.add(f|0,u|0,O|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let A=j.add3L(M,H,Z);n=j.add3H(A,O,k,z),i=A|0}({h:n,l:i}=j.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=j.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=j.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=j.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=j.add(this.Eh|0,this.El|0,l|0,d|0),{h:g,l:h}=j.add(this.Fh|0,this.Fl|0,g|0,h|0),{h:p,l:y}=j.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:x,l:v}=j.add(this.Hh|0,this.Hl|0,x|0,v|0),this.set(n,i,o,s,a,c,f,u,l,d,g,h,p,y,x,v)}roundClean(){er.fill(0),rr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Wo=mi(()=>new $o);var wi={};Rt(wi,{bitGet:()=>gd,bitLen:()=>yd,bitMask:()=>Sn,bitSet:()=>xd,bytesToHex:()=>Me,bytesToNumberBE:()=>Ve,bytesToNumberLE:()=>de,concatBytes:()=>qe,createHmacDrbg:()=>Xo,ensureBytes:()=>gt,equalBytes:()=>dd,hexToBytes:()=>br,hexToNumber:()=>Zo,isBytes:()=>he,numberToBytesBE:()=>nr,numberToBytesLE:()=>Fe,numberToHexUnpadded:()=>Q0,numberToVarBytesBE:()=>hd,utf8ToBytes:()=>pd,validateObject:()=>ne});var X0=BigInt(0),vi=BigInt(1),ud=BigInt(2);function he(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var ld=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Me(e){if(!he(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=ld[e[r]];return t}function Q0(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Zo(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}var Oe={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function Y0(e){if(e>=Oe._0&&e<=Oe._9)return e-Oe._0;if(e>=Oe._A&&e<=Oe._F)return e-(Oe._A-10);if(e>=Oe._a&&e<=Oe._f)return e-(Oe._a-10)}function br(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length,r=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=Y0(e.charCodeAt(o)),a=Y0(e.charCodeAt(o+1));if(s===void 0||a===void 0){let c=e[o]+e[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}n[i]=s*16+a}return n}function Ve(e){return Zo(Me(e))}function de(e){if(!he(e))throw new Error("Uint8Array expected");return Zo(Me(Uint8Array.from(e).reverse()))}function nr(e,t){return br(e.toString(16).padStart(t*2,"0"))}function Fe(e,t){return nr(e,t).reverse()}function hd(e){return br(Q0(e))}function gt(e,t,r){let n;if(typeof t=="string")try{n=br(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(he(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function qe(...e){let t=0;for(let i=0;i<e.length;i++){let o=e[i];if(!he(o))throw new Error("Uint8Array expected");t+=o.length}let r=new Uint8Array(t),n=0;for(let i=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function dd(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n<e.length;n++)r|=e[n]^t[n];return r===0}function pd(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function yd(e){let t;for(t=0;e>X0;e>>=vi,t+=1);return t}function gd(e,t){return e>>BigInt(t)&vi}var xd=(e,t,r)=>e|(r?vi:X0)<<BigInt(t),Sn=e=>(ud<<BigInt(e-1))-vi,Yo=e=>new Uint8Array(e),Z0=e=>Uint8Array.from(e);function Xo(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=Yo(e),i=Yo(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Yo())=>{i=a(Z0([0]),l),n=a(),l.length!==0&&(i=a(Z0([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let g=n.slice();d.push(g),l+=n.length}return qe(...d)};return(l,d)=>{s(),c(l);let g;for(;!(g=d(f()));)c();return s(),g}}var md={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||he(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function ne(e,t,r={}){let n=(i,o,s)=>{let a=md[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Nt=BigInt(0),vt=BigInt(1),vr=BigInt(2),bd=BigInt(3),Qo=BigInt(4),J0=BigInt(5),j0=BigInt(8),vd=BigInt(9),wd=BigInt(16);function st(e,t){let r=e%t;return r>=Nt?r:t+r}function Jo(e,t,r){if(r<=Nt||t<Nt)throw new Error("Expected power/modulo > 0");if(r===vt)return Nt;let n=vt;for(;t>Nt;)t&vt&&(n=n*e%r),e=e*e%r,t>>=vt;return n}function xt(e,t,r){let n=e;for(;t-- >Nt;)n*=n,n%=r;return n}function Ei(e,t){if(e===Nt||t<=Nt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=st(e,t),n=t,i=Nt,o=vt,s=vt,a=Nt;for(;r!==Nt;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==vt)throw new Error("invert: does not exist");return st(i,t)}function Ed(e){let t=(e-vt)/vr,r,n,i;for(r=e-vt,n=0;r%vr===Nt;r/=vr,n++);for(i=vr;i<e&&Jo(i,t,e)!==e-vt;i++);if(n===1){let s=(e+vt)/Qo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+vt)/vr;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(d);g<f&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let h=a.pow(u,vt<<BigInt(f-g-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=g}return l}}function Sd(e){if(e%Qo===bd){let t=(e+vt)/Qo;return function(n,i){let o=n.pow(i,t);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(e%j0===J0){let t=(e-J0)/j0;return function(n,i){let o=n.mul(i,vr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,vr),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return e%wd,Ed(e)}var tc=(e,t)=>(st(e,t)&vt)===vt,Bd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function jo(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Bd.reduce((n,i)=>(n[i]="function",n),t);return ne(e,r)}function Ad(e,t,r){if(r<Nt)throw new Error("Expected power > 0");if(r===Nt)return e.ONE;if(r===vt)return t;let n=e.ONE,i=t;for(;r>Nt;)r&vt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=vt;return n}function Id(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function ts(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Si(e,t,r=!1,n={}){if(e<=Nt)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=ts(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Sd(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:Sn(i),ZERO:Nt,ONE:vt,create:c=>st(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Nt<=c&&c<e},is0:c=>c===Nt,isOdd:c=>(c&vt)===vt,neg:c=>st(-c,e),eql:(c,f)=>c===f,sqr:c=>st(c*c,e),add:(c,f)=>st(c+f,e),sub:(c,f)=>st(c-f,e),mul:(c,f)=>st(c*f,e),pow:(c,f)=>Ad(a,c,f),div:(c,f)=>st(c*Ei(f,e),e),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>Ei(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Id(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?Fe(c,o):nr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?de(c):Ve(c)}});return Object.freeze(a)}function ec(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");let r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function rc(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function es(e){let t=rc(e);return t+Math.ceil(t/2)}function nc(e,t,r=!1){let n=e.length,i=rc(t),o=es(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Ve(e):de(e),a=st(s,t-vt)+vt;return r?Fe(a,i):nr(a,i)}var Td=BigInt(0),rs=BigInt(1);function Bi(e,t){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(t/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=e.ZERO,a=i;for(;o>Td;)o&rs&&(s=s.add(a)),a=a.double(),o>>=rs;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=e.ZERO,u=e.BASE,l=BigInt(2**i-1),d=2**i,g=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=g,y>c&&(y-=d,s+=rs);let x=p,v=p+Math.abs(y)-1,m=h%2!==0,C=y<0;y===0?u=u.add(r(m,o[x])):f=f.add(r(C,o[v]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function Bn(e){return jo(e.Fp),ne(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...ts(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var pe=BigInt(0),ee=BigInt(1),Ai=BigInt(2),_d=BigInt(8),Ld={zip215:!0};function Rd(e){let t=Bn(e);return ne(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function Ii(e){let t=Rd(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,f=Ai<<BigInt(a*8)-ee,u=r.create,l=t.uvRatio||((_,w)=>{try{return{isValid:!0,value:r.sqrt(_*r.inv(w))}}catch{return{isValid:!1,value:pe}}}),d=t.adjustScalarBytes||(_=>_),g=t.domain||((_,w,U)=>{if(w.length||U)throw new Error("Contexts/pre-hash are not supported");return _}),h=_=>typeof _=="bigint"&&pe<_,p=(_,w)=>h(_)&&h(w)&&_<w,y=_=>_===pe||p(_,f);function x(_,w){if(p(_,w))return _;throw new Error(`Expected valid scalar < ${w}, got ${typeof _} ${_}`)}function v(_){return _===pe?_:x(_,n)}let m=new Map;function C(_){if(!(_ instanceof S))throw new Error("ExtendedPoint expected")}class S{constructor(w,U,K,F){if(this.ex=w,this.ey=U,this.ez=K,this.et=F,!y(w))throw new Error("x required");if(!y(U))throw new Error("y required");if(!y(K))throw new Error("z required");if(!y(F))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof S)throw new Error("extended point not allowed");let{x:U,y:K}=w||{};if(!y(U)||!y(K))throw new Error("invalid affine point");return new S(U,K,ee,u(U*K))}static normalizeZ(w){let U=r.invertBatch(w.map(K=>K.ez));return w.map((K,F)=>K.toAffine(U[F])).map(S.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,m.delete(this)}assertValidity(){let{a:w,d:U}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:F,ez:W,et:Y}=this,rt=u(K*K),X=u(F*F),J=u(W*W),dt=u(J*J),lt=u(rt*w),Mt=u(J*u(lt+X)),Vt=u(dt+u(U*u(rt*X)));if(Mt!==Vt)throw new Error("bad point: equation left != right (1)");let Lt=u(K*F),Ht=u(W*Y);if(Lt!==Ht)throw new Error("bad point: equation left != right (2)")}equals(w){C(w);let{ex:U,ey:K,ez:F}=this,{ex:W,ey:Y,ez:rt}=w,X=u(U*rt),J=u(W*F),dt=u(K*rt),lt=u(Y*F);return X===J&&dt===lt}is0(){return this.equals(S.ZERO)}negate(){return new S(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=t,{ex:U,ey:K,ez:F}=this,W=u(U*U),Y=u(K*K),rt=u(Ai*u(F*F)),X=u(w*W),J=U+K,dt=u(u(J*J)-W-Y),lt=X+Y,Mt=lt-rt,Vt=X-Y,Lt=u(dt*Mt),Ht=u(lt*Vt),De=u(dt*Vt),pr=u(Mt*lt);return new S(Lt,Ht,pr,De)}add(w){C(w);let{a:U,d:K}=t,{ex:F,ey:W,ez:Y,et:rt}=this,{ex:X,ey:J,ez:dt,et:lt}=w;if(U===BigInt(-1)){let s0=u((W-F)*(J+X)),a0=u((W+F)*(J-X)),Eo=u(a0-s0);if(Eo===pe)return this.double();let c0=u(Y*Ai*lt),f0=u(rt*Ai*dt),u0=f0+c0,l0=a0+s0,h0=f0-c0,Xl=u(u0*Eo),Ql=u(l0*h0),Jl=u(u0*h0),jl=u(Eo*l0);return new S(Xl,Ql,jl,Jl)}let Mt=u(F*X),Vt=u(W*J),Lt=u(rt*K*lt),Ht=u(Y*dt),De=u((F+W)*(X+J)-Mt-Vt),pr=Ht-Lt,gn=Ht+Lt,o0=u(Vt-U*Mt),$l=u(De*pr),Wl=u(gn*o0),Yl=u(De*o0),Zl=u(pr*gn);return new S($l,Wl,Zl,Yl)}subtract(w){return this.add(w.negate())}wNAF(w){return L.wNAFCached(this,m,w,S.normalizeZ)}multiply(w){let{p:U,f:K}=this.wNAF(x(w,n));return S.normalizeZ([U,K])[0]}multiplyUnsafe(w){let U=v(w);return U===pe?R:this.equals(R)||U===ee?this:this.equals(B)?this.wNAF(U).p:L.unsafeLadder(this,U)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return L.unsafeLadder(this,n).is0()}toAffine(w){let{ex:U,ey:K,ez:F}=this,W=this.is0();w==null&&(w=W?_d:r.inv(F));let Y=u(U*w),rt=u(K*w),X=u(F*w);if(W)return{x:pe,y:ee};if(X!==ee)throw new Error("invZ was invalid");return{x:Y,y:rt}}clearCofactor(){let{h:w}=t;return w===ee?this:this.multiplyUnsafe(w)}static fromHex(w,U=!1){let{d:K,a:F}=t,W=r.BYTES;w=gt("pointHex",w,W);let Y=w.slice(),rt=w[W-1];Y[W-1]=rt&-129;let X=de(Y);X===pe||(U?x(X,f):x(X,r.ORDER));let J=u(X*X),dt=u(J-ee),lt=u(K*J-F),{isValid:Mt,value:Vt}=l(dt,lt);if(!Mt)throw new Error("Point.fromHex: invalid y coordinate");let Lt=(Vt&ee)===ee,Ht=(rt&128)!==0;if(!U&&Vt===pe&&Ht)throw new Error("Point.fromHex: x=0 and x_0=1");return Ht!==Lt&&(Vt=u(-Vt)),S.fromAffine({x:Vt,y:X})}static fromPrivateKey(w){return k(w).point}toRawBytes(){let{x:w,y:U}=this.toAffine(),K=Fe(U,r.BYTES);return K[K.length-1]|=w&ee?128:0,K}toHex(){return Me(this.toRawBytes())}}S.BASE=new S(t.Gx,t.Gy,ee,u(t.Gx*t.Gy)),S.ZERO=new S(pe,ee,ee,pe);let{BASE:B,ZERO:R}=S,L=Bi(S,a*8);function O(_){return st(_,n)}function M(_){return O(de(_))}function k(_){let w=a;_=gt("private key",_,w);let U=gt("hashed private key",o(_),2*w),K=d(U.slice(0,w)),F=U.slice(w,2*w),W=M(K),Y=B.multiply(W),rt=Y.toRawBytes();return{head:K,prefix:F,scalar:W,point:Y,pointBytes:rt}}function H(_){return k(_).pointBytes}function z(_=new Uint8Array,...w){let U=qe(...w);return M(o(g(U,gt("context",_),!!i)))}function Z(_,w,U={}){_=gt("message",_),i&&(_=i(_));let{prefix:K,scalar:F,pointBytes:W}=k(w),Y=z(U.context,K,_),rt=B.multiply(Y).toRawBytes(),X=z(U.context,rt,W,_),J=O(Y+X*F);v(J);let dt=qe(rt,Fe(J,r.BYTES));return gt("result",dt,a*2)}let A=Ld;function N(_,w,U,K=A){let{context:F,zip215:W}=K,Y=r.BYTES;_=gt("signature",_,2*Y),w=gt("message",w),i&&(w=i(w));let rt=de(_.slice(Y,2*Y)),X,J,dt;try{X=S.fromHex(U,W),J=S.fromHex(_.slice(0,Y),W),dt=B.multiplyUnsafe(rt)}catch{return!1}if(!W&&X.isSmallOrder())return!1;let lt=z(F,J.toRawBytes(),X.toRawBytes(),w);return J.add(X.multiplyUnsafe(lt)).subtract(dt).clearCofactor().equals(S.ZERO)}return B._setWindowSize(8),{CURVE:t,getPublicKey:H,sign:Z,verify:N,ExtendedPoint:S,utils:{getExtendedPublicKey:k,randomPrivateKey:()=>s(r.BYTES),precompute(_=8,w=S.BASE){return w._setWindowSize(_),w.multiply(BigInt(3)),w}}}}var An=BigInt(0),ns=BigInt(1);function Nd(e){return ne(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function ic(e){let t=Nd(e),{P:r}=t,n=m=>st(m,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(m=>m),c=t.powPminus2||(m=>Jo(m,r-BigInt(2),r));function f(m,C,S){let B=n(m*(C-S));return C=n(C-B),S=n(S+B),[C,S]}function u(m){if(typeof m=="bigint"&&An<=m&&m<r)return m;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(m,C){let S=u(m),B=u(C),R=S,L=ns,O=An,M=S,k=ns,H=An,z;for(let A=BigInt(i-1);A>=An;A--){let N=B>>A&ns;H^=N,z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,k),O=z[0],k=z[1],H=N;let T=L+O,_=n(T*T),w=L-O,U=n(w*w),K=_-U,F=M+k,W=M-k,Y=n(W*T),rt=n(F*w),X=Y+rt,J=Y-rt;M=n(X*X),k=n(R*n(J*J)),L=n(_*U),O=n(K*(_+n(l*K)))}z=f(H,L,M),L=z[0],M=z[1],z=f(H,O,k),O=z[0],k=z[1];let Z=c(O);return n(L*Z)}function g(m){return Fe(n(m),o)}function h(m){let C=gt("u coordinate",m,o);return s===32&&(C[31]&=127),de(C)}function p(m){let C=gt("scalar",m),S=C.length;if(S!==o&&S!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${S}`);return de(a(C))}function y(m,C){let S=h(C),B=p(m),R=d(S,B);if(R===An)throw new Error("Invalid private or public key received");return g(R)}let x=g(t.Gu);function v(m){return y(m,x)}return{scalarMult:y,scalarMultBase:v,getSharedSecret:(m,C)=>y(m,C),getPublicKey:m=>v(m),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:x}}var In=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),oc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),P2=BigInt(0),Pd=BigInt(1),is=BigInt(2),Dd=BigInt(5),sc=BigInt(10),Ud=BigInt(20),kd=BigInt(40),ac=BigInt(80);function cc(e){let t=In,n=e*e%t*e%t,i=xt(n,is,t)*n%t,o=xt(i,Pd,t)*e%t,s=xt(o,Dd,t)*o%t,a=xt(s,sc,t)*s%t,c=xt(a,Ud,t)*a%t,f=xt(c,kd,t)*c%t,u=xt(f,ac,t)*f%t,l=xt(u,ac,t)*f%t,d=xt(l,sc,t)*s%t;return{pow_p_5_8:xt(d,is,t)*e%t,b2:n}}function fc(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function Kd(e,t){let r=In,n=st(t*t*t,r),i=st(n*n*t,r),o=cc(e*i).pow_p_5_8,s=st(e*n*o,r),a=st(t*s*s,r),c=s,f=st(s*oc,r),u=a===e,l=a===st(-e,r),d=a===st(-e*oc,r);return u&&(s=c),(l||d)&&(s=f),tc(s,r)&&(s=st(-s,r)),{isValid:u||l,value:s}}var He=Si(In,void 0,!0),os={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:He,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Wo,randomBytes:mr,adjustScalarBytes:fc,uvRatio:Kd},Wr=Ii(os);function uc(e,t,r){if(t.length>255)throw new Error("Context is too big");return xi(zo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var D2=Ii({...os,domain:uc}),U2=Ii({...os,domain:uc,prehash:Wo}),Cn=ic({P:In,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=In,{pow_p_5_8:r,b2:n}=cc(e);return st(xt(r,BigInt(3),t)*n,t)},adjustScalarBytes:fc,randomBytes:mr});var Od=(He.ORDER+BigInt(3))/BigInt(8),k2=He.pow(is,Od),K2=He.sqrt(He.neg(He.ONE)),O2=(He.ORDER-BigInt(5))/BigInt(8),M2=BigInt(486662);var V2=ec(He,He.neg(BigInt(486664)));var F2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),q2=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),H2=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),z2=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var G2=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ci=class extends Gr{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,En(t);let n=tr(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return zr(this),this.iHash.update(t),this}digestInto(t){zr(this),Ho(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Yr=(e,t,r)=>new Ci(e,t).update(r).digest();Yr.create=(e,t)=>new Ci(e,t);function hc(e,t,r){return En(e),r===void 0&&(r=new Uint8Array(e.outputLen)),Yr(e,tr(r),tr(t))}var ss=new Uint8Array([0]),lc=new Uint8Array;function dc(e,t,r,n=32){if(En(e),pi(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=lc);let o=new Uint8Array(i*e.outputLen),s=Yr.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)ss[0]=f+1,a.update(f===0?lc:c).update(r).update(ss).digestInto(c),o.set(c,e.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),ss.fill(0),o.slice(0,n)}var Md=(e,t,r)=>e&t^~e&r,Vd=(e,t,r)=>e&t^e&r^t&r,Fd=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ir=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),or=new Uint32Array(64),as=class extends $r{constructor(){super(64,32,8,!1),this.A=ir[0]|0,this.B=ir[1]|0,this.C=ir[2]|0,this.D=ir[3]|0,this.E=ir[4]|0,this.F=ir[5]|0,this.G=ir[6]|0,this.H=ir[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,r){for(let l=0;l<16;l++,r+=4)or[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=or[l-15],g=or[l-2],h=le(d,7)^le(d,18)^d>>>3,p=le(g,17)^le(g,19)^g>>>10;or[l]=p+or[l-7]+h+or[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let d=le(a,6)^le(a,11)^le(a,25),g=u+d+Md(a,c,f)+Fd[l]+or[l]|0,p=(le(n,2)^le(n,13)^le(n,22))+Vd(n,i,o)|0;u=f,f=c,c=a,a=s+g|0,s=o,o=i,i=n,n=g+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,i,o,s,a,c,f,u)}roundClean(){or.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Zr=mi(()=>new as);var cs={hashSHA256(e){return Zr(e.subarray())},getHKDF(e,t){let r=hc(Zr,t,e),i=dc(Zr,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let e=Cn.utils.randomPrivateKey();return{publicKey:Cn.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:Cn.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return Cn.getSharedSecret(e.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return qo(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return qo(n,t,r).decrypt(e.subarray(),i)}};var pc=cs;var Xr=e=>{let t=gr(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Xr.bytes=2;var Tn=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};Tn.bytes=2;function yc(e){return new Bt(e.ne,e.ciphertext)}function gc(e){return new Bt(e.ne,e.ns,e.ciphertext)}function xc(e){return new Bt(e.ns,e.ciphertext)}function mc(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:ct(0)}}function bc(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.subarray(0,32),ns:e.subarray(32,80),ciphertext:e.subarray(80,e.length)}}function vc(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:ct(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var Ec=16;function Sc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new Bt(Xr(s.byteLength),s)}}}function Bc(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-Ec<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-Ec),{plaintext:c,valid:f}=e.decrypt(s,e.session,a);if(!f)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var Ln=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},wr=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var tE=Xt(Dn(),1),eE=Xt(Ff(),1);var Hb=Symbol.for("@libp2p/connection");var Gb=Symbol.for("@libp2p/content-routing");var Yb=Symbol.for("@libp2p/peer-discovery");var qf=Symbol.for("@libp2p/peer-id");var Qb=Symbol.for("@libp2p/peer-routing");var Hf;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(Hf||(Hf={}));var Gf=Symbol.for("@libp2p/transport");var zf;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(zf||(zf={}));var et=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var Rs=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},nv=globalThis.CustomEvent??Rs;var ex=Xt(ht(),1);var ks={};Rt(ks,{base10:()=>x1});function h1(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,x=0,v=h.length;x!==v&&h[x]===0;)x++,p++;for(var m=(v-x)*u+1>>>0,C=new Uint8Array(m);x!==v;){for(var S=h[x],B=0,R=m-1;(S!==0||B<y)&&R!==-1;R--,B++)S+=256*C[R]>>>0,C[R]=S%a>>>0,S=S/a>>>0;if(S!==0)throw new Error("Non-zero carry");y=B,x++}for(var L=m-y;L!==m&&C[L]===0;)L++;for(var O=c.repeat(p);L<m;++L)O+=e.charAt(C[L]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,x=0;h[p]===c;)y++,p++;for(var v=(h.length-p)*f+1>>>0,m=new Uint8Array(v);h[p];){var C=r[h.charCodeAt(p)];if(C===255)return;for(var S=0,B=v-1;(C!==0||S<x)&&B!==-1;B--,S++)C+=a*m[B]>>>0,m[B]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");x=S,p++}if(h[p]!==" "){for(var R=v-x;R!==v&&m[R]===0;)R++;for(var L=new Uint8Array(y+(v-R)),O=y;R!==v;)L[O++]=m[R++];return L}}}function g(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:g}}var d1=h1,p1=d1,$f=p1;var Dv=new Uint8Array(0);var Wf=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},We=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var Yf=e=>new TextEncoder().encode(e),Zf=e=>new TextDecoder().decode(e);var Ns=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Ps=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return Qf(this,t)}},Ds=class{constructor(t){this.decoders=t}or(t){return Qf(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Qf=(e,t)=>new Ds({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),Us=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Ns(t,r,n),this.decoder=new Ps(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},en=({name:e,prefix:t,encode:r,decode:n})=>new Us(e,t,r,n),ur=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=$f(r,t);return en({prefix:e,name:t,encode:n,decode:o=>We(i(o))})},y1=(e,t,r,n)=>{let i={};for(let u=0;u<t.length;++u)i[t[u]]=u;let o=e.length;for(;e[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[e[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},g1=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},At=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>en({prefix:t,name:e,encode(i){return g1(i,n,r)},decode(i){return y1(i,n,r,e)}});var x1=ur({prefix:"9",name:"base10",alphabet:"0123456789"});var Ks={};Rt(Ks,{base16:()=>m1,base16upper:()=>b1});var m1=At({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),b1=At({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Os={};Rt(Os,{base2:()=>v1});var v1=At({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ms={};Rt(Ms,{base256emoji:()=>A1});var Jf=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),w1=Jf.reduce((e,t,r)=>(e[r]=t,e),[]),E1=Jf.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function S1(e){return e.reduce((t,r)=>(t+=w1[r],t),"")}function B1(e){let t=[];for(let r of e){let n=E1[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var A1=en({prefix:"\u{1F680}",name:"base256emoji",encode:S1,decode:B1});var Vs={};Rt(Vs,{base32:()=>Ye,base32hex:()=>_1,base32hexpad:()=>R1,base32hexpadupper:()=>N1,base32hexupper:()=>L1,base32pad:()=>C1,base32padupper:()=>T1,base32upper:()=>I1,base32z:()=>P1});var Ye=At({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),I1=At({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),C1=At({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),T1=At({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),_1=At({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),L1=At({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),R1=At({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),N1=At({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),P1=At({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Fs={};Rt(Fs,{base36:()=>D1,base36upper:()=>U1});var D1=ur({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),U1=ur({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var qs={};Rt(qs,{base58btc:()=>It,base58flickr:()=>k1});var It=ur({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),k1=ur({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var zs={};Rt(zs,{base64:()=>$i,base64pad:()=>K1,base64url:()=>Hs,base64urlpad:()=>O1});var $i=At({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),K1=At({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Hs=At({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),O1=At({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Gs={};Rt(Gs,{base8:()=>M1});var M1=At({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var $s={};Rt($s,{identity:()=>V1});var V1=en({prefix:"\0",name:"identity",encode:e=>Zf(e),decode:e=>Yf(e)});var Zv=new TextEncoder,Xv=new TextDecoder;var Zs={};Rt(Zs,{identity:()=>hr});var Te={};Rt(Te,{Digest:()=>Cr,create:()=>xe,decode:()=>lr,equals:()=>Ys});var H1=eu,jf=128,z1=127,G1=~z1,$1=Math.pow(2,31);function eu(e,t,r){t=t||[],r=r||0;for(var n=r;e>=$1;)t[r++]=e&255|jf,e/=128;for(;e&G1;)t[r++]=e&255|jf,e>>>=7;return t[r]=e|0,eu.bytes=r-n+1,t}var W1=Ws,Y1=128,tu=127;function Ws(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Ws.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&tu)<<i:(s&tu)*Math.pow(2,i),i+=7}while(s>=Y1);return Ws.bytes=o-n,r}var Z1=Math.pow(2,7),X1=Math.pow(2,14),Q1=Math.pow(2,21),J1=Math.pow(2,28),j1=Math.pow(2,35),tg=Math.pow(2,42),eg=Math.pow(2,49),rg=Math.pow(2,56),ng=Math.pow(2,63),ig=function(e){return e<Z1?1:e<X1?2:e<Q1?3:e<J1?4:e<j1?5:e<tg?6:e<eg?7:e<rg?8:e<ng?9:10},og={encode:H1,decode:W1,encodingLength:ig},sg=og,Kn=sg;var On=(e,t=0)=>[Kn.decode(e,t),Kn.decode.bytes],rn=(e,t,r=0)=>(Kn.encode(e,t,r),t),nn=e=>Kn.encodingLength(e);var xe=(e,t)=>{let r=t.byteLength,n=nn(e),i=n+nn(r),o=new Uint8Array(i+r);return rn(e,o,0),rn(r,o,n),o.set(t,i),new Cr(e,r,t,o)},lr=e=>{let t=We(e),[r,n]=On(t),[i,o]=On(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Cr(r,i,s,t)},Ys=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Wf(e.bytes,r.bytes)}},Cr=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var ru=0,ag="identity",nu=We,cg=e=>xe(ru,nu(e)),hr={code:ru,name:ag,encode:nu,digest:cg};var Js={};Rt(Js,{sha256:()=>qt,sha512:()=>fg});var Qs=({name:e,code:t,encode:r})=>new Xs(e,t,r),Xs=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?xe(this.code,r):r.then(n=>xe(this.code,n))}else throw Error("Unknown type, must be binary type")}};var ou=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),qt=Qs({name:"sha2-256",code:18,encode:ou("SHA-256")}),fg=Qs({name:"sha2-512",code:19,encode:ou("SHA-512")});var su=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return lg(r,js(e),t||It.encoder);default:return hg(r,js(e),t||Ye.encoder)}};var au=new WeakMap,js=e=>{let t=au.get(e);if(t==null){let r=new Map;return au.set(e,r),r}return t},me=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==Mn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==dg)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=xe(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&Ys(t.multihash,n.multihash)}toString(t){return su(this,t)}toJSON(){return{"/":su(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s||cu(n,i,o.bytes))}else if(r[pg]===!0){let{version:n,multihash:i,code:o}=r,s=lr(i);return e.create(n,o,s)}else return null}static create(t,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(r!==Mn)throw new Error(`Version 0 CID must use dag-pb (code: ${Mn}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=cu(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,Mn,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=We(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Cr(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=On(t.subarray(r));return r+=d,l},i=n(),o=Mn;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(t,r){let[n,i]=ug(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return js(o).set(n,t),o}},ug=(e,t)=>{switch(e[0]){case"Q":{let r=t||It;return[It.prefix,r.decode(`${It.prefix}${e}`)]}case It.prefix:{let r=t||It;return[It.prefix,r.decode(e)]}case Ye.prefix:{let r=t||Ye;return[Ye.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},lg=(e,t,r)=>{let{prefix:n}=r;if(n!==It.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},hg=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},Mn=112,dg=18,cu=(e,t,r)=>{let n=nn(e),i=n+nn(t),o=new Uint8Array(i+r.byteLength);return rn(e,o,0),rn(t,o,n),o.set(r,i),o},pg=Symbol.for("@ipld/js-cid/CID");var $t={...$s,...Os,...Gs,...ks,...Ks,...Vs,...Fs,...qs,...zs,...Ms},hw={...Js,...Zs};function uu(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var fu=uu("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ta=uu("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=gr(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),yg={utf8:fu,"utf-8":fu,hex:$t.base16,latin1:ta,ascii:ta,binary:ta,...$t},Yi=yg;function Kt(e,t="utf8"){let r=Yi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ke(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var xa={};Rt(xa,{Ed25519PrivateKey:()=>Dr,Ed25519PublicKey:()=>Hn,generateKeyPair:()=>Tg,generateKeyPairFromSeed:()=>Ru,unmarshalEd25519PrivateKey:()=>Ig,unmarshalEd25519PublicKey:()=>Cg});function Ot(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var Iw=Xt(_t(),1),Cw=Xt(qi(),1),lu=Xt(ht(),1);function _e(e,t){if(globalThis.Buffer!=null)return ke(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=gr(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return ke(r)}function St(e,t="utf8"){let r=Yi[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function be(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=_e([new Uint8Array(t-r.length),r])}return St(r,"base64url")}function re(e){let t=hu(e);return new lu.default.jsbn.BigInteger(St(t,"base16"),16)}function hu(e,t){let r=Kt(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=_e([new Uint8Array(t-r.length),r])}return r}function se(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var on=32,Ze=64,Zi=32;function du(){let e=Wr.utils.randomPrivateKey(),t=Wr.getPublicKey(e);return{privateKey:xu(e,t),publicKey:t}}function pu(e){if(e.length!==Zi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=Wr.getPublicKey(t);return{privateKey:xu(t,r),publicKey:r}}function yu(e,t){let r=e.subarray(0,Zi);return Wr.sign(t instanceof Uint8Array?t:t.subarray(),r)}function gu(e,t,r){return Wr.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function xu(e,t){let r=new Uint8Array(Ze);for(let n=0;n<Zi;n++)r[n]=e[n],r[Zi+n]=t[n];return r}var Jt={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var ea={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function ra(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=Jt.get();r*=8;async function c(l,d){let g=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=Kt(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},m=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(v,m,{name:t,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(p,y,l);return _e([g,p.iv,new Uint8Array(x)])}async function f(l,d){let g=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=Kt(d));let x;if(d.length===0)try{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},C=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,C,{name:t,length:r},!0,["decrypt"])}catch{x=await a.subtle.importKey("jwk",ea,{name:"AES-GCM"},!0,["decrypt"])}else{let m={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},C=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(m,C,{name:t,length:r},!0,["decrypt"])}let v=await a.subtle.decrypt(y,x,p);return new Uint8Array(v)}return{encrypt:c,decrypt:f}}async function sn(e,t){let n=await ra().encrypt(e,t);return $i.encode(n)}var na=new Float32Array([-0]),dr=new Uint8Array(na.buffer);function bu(e,t,r){na[0]=e,t[r]=dr[0],t[r+1]=dr[1],t[r+2]=dr[2],t[r+3]=dr[3]}function vu(e,t){return dr[0]=e[t],dr[1]=e[t+1],dr[2]=e[t+2],dr[3]=e[t+3],na[0]}var ia=new Float64Array([-0]),Wt=new Uint8Array(ia.buffer);function wu(e,t,r){ia[0]=e,t[r]=Wt[0],t[r+1]=Wt[1],t[r+2]=Wt[2],t[r+3]=Wt[3],t[r+4]=Wt[4],t[r+5]=Wt[5],t[r+6]=Wt[6],t[r+7]=Wt[7]}function Eu(e,t){return Wt[0]=e[t],Wt[1]=e[t+1],Wt[2]=e[t+2],Wt[3]=e[t+3],Wt[4]=e[t+4],Wt[5]=e[t+5],Wt[6]=e[t+6],Wt[7]=e[t+7],ia[0]}var xg=BigInt(Number.MAX_SAFE_INTEGER),mg=BigInt(Number.MIN_SAFE_INTEGER),jt=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return Tr;if(t<xg&&t>mg)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,i=t-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>Su&&(i=0n,++n>Su&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return Tr;let r=t<0;r&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new e(n,i)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):Tr}},Tr=new jt(0,0);Tr.toBigInt=function(){return 0n};Tr.zzEncode=Tr.zzDecode=function(){return this};Tr.length=function(){return 1};var Su=4294967296n;function Bu(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function Au(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function oa(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function ve(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Xi(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var sa=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,ve(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ve(this,4);return Xi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ve(this,4);return Xi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ve(this,4);let t=vu(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw ve(this,4);let t=Eu(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw ve(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return Au(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw ve(this,t);this.pos+=t}else do if(this.pos>=this.len)throw ve(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new jt(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw ve(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw ve(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ve(this,8);let t=Xi(this.buf,this.pos+=4),r=Xi(this.buf,this.pos+=4);return new jt(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function aa(e){return new sa(e instanceof Uint8Array?e:e.subarray())}function _r(e,t){let r=aa(e);return t.decode(r)}function Qi(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Lr(e=0){return globalThis.Buffer?.allocUnsafe!=null?Qi(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Tu(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Cu=Tu("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ca=Tu("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Lr(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),bg={utf8:Cu,"utf-8":Cu,hex:$t.base16,latin1:ca,ascii:ca,binary:ca,...$t},_u=bg;function Lu(e,t="utf8"){let r=_u[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Qi(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function fa(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Lr(s);i+s>t&&(n=Lr(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Rr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function ua(){}var ha=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},vg=fa();function wg(e){return globalThis.Buffer!=null?Lr(e):vg(e)}var qn=class{len;head;tail;states;constructor(){this.len=0,this.head=new Rr(ua,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Rr(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new da((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Vn,10,jt.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=jt.fromBigInt(t);return this._push(Vn,r.length(),r)}uint64Number(t){let r=jt.fromNumber(t);return this._push(Vn,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=jt.fromBigInt(t).zzEncode();return this._push(Vn,r.length(),r)}sint64Number(t){let r=jt.fromNumber(t).zzEncode();return this._push(Vn,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(la,1,t?1:0)}fixed32(t){return this._push(Fn,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=jt.fromBigInt(t);return this._push(Fn,4,r.lo)._push(Fn,4,r.hi)}fixed64Number(t){let r=jt.fromNumber(t);return this._push(Fn,4,r.lo)._push(Fn,4,r.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(bu,4,t)}double(t){return this._push(wu,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(la,1,0):this.uint32(r)._push(Sg,r,t)}string(t){let r=Bu(t);return r!==0?this.uint32(r)._push(oa,r,t):this._push(la,1,0)}fork(){return this.states=new ha(this),this.head=this.tail=new Rr(ua,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Rr(ua,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=wg(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function la(e,t,r){t[r]=e&255}function Eg(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var da=class extends Rr{next;constructor(t,r){super(Eg,t,r),this.next=void 0}};function Vn(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function Fn(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function Sg(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(qn.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(Bg,t,e),this},qn.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(Ag,t,e),this});function Bg(e,t,r){t.set(e,r)}function Ag(e,t,r){e.length<40?oa(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(Lu(e),r)}function pa(){return new qn}function Nr(e,t){let r=pa();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var an;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(an||(an={}));function Ji(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function ya(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Ji("enum",an.VARINT,r,n)}function Pr(e,t){return Ji("message",an.LENGTH_DELIMITED,e,t)}var Et;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(Et||(Et={}));var ga;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(ga||(ga={}));(function(e){e.codec=()=>ya(ga)})(Et||(Et={}));var Le;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Et.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=Et.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(Le||(Le={}));var Re;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Et.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=Et.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(Re||(Re={}));var Hn=class{_key;constructor(t){this._key=cn(t,on)}verify(t,r){return gu(this._key,r,t)}marshal(){return this._key}get bytes(){return Le.encode({Type:Et.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}hash(){let t=qt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},Dr=class{_key;_publicKey;constructor(t,r){this._key=cn(t,Ze),this._publicKey=cn(r,on)}sign(t){return yu(this._key,t)}get public(){return new Hn(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:Et.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}async hash(){let t=qt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=hr.digest(this.public.bytes);return It.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Ig(e){if(e.length>Ze){e=cn(e,Ze+on);let n=e.subarray(0,Ze),i=e.subarray(Ze,e.length);return new Dr(n,i)}e=cn(e,Ze);let t=e.subarray(0,Ze),r=e.subarray(on);return new Dr(t,r)}function Cg(e){return e=cn(e,on),new Hn(e)}async function Tg(){let{privateKey:e,publicKey:t}=du();return new Dr(e,t)}async function Ru(e){let{privateKey:t,publicKey:r}=pu(e);return new Dr(t,r)}function cn(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new et(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var _g={"P-256":256,"P-384":384,"P-521":521},Lg=Object.keys(_g),K8=Lg.join(" / ");var Ea={};Rt(Ea,{MAX_KEY_SIZE:()=>Wn,RsaPrivateKey:()=>fn,RsaPublicKey:()=>$n,fromJwk:()=>Fg,generateKeyPair:()=>qg,unmarshalRsaPrivateKey:()=>Mg,unmarshalRsaPublicKey:()=>Vg});var Gn=Xt(ht(),1);var w4=Xt(ku(),1);function to(e){if(isNaN(e)||e<=0)throw new et("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return mr(e)}var n4=Xt(Gi(),1),va=Xt(ht(),1);function Ku(e,t){return t.map(r=>re(e[r]))}function Ou(e){return va.default.pki.setRsaPrivateKey(...Ku(e,["n","e","d","p","q","dp","dq","qi"]))}function Mu(e){return va.default.pki.setRsaPublicKey(...Ku(e,["n","e"]))}var kr={};Rt(kr,{jwkToPkcs1:()=>Dg,jwkToPkix:()=>kg,pkcs1ToJwk:()=>Pg,pkixToJwk:()=>Ug});var s4=Xt(Dn(),1),a4=Xt(Gi(),1);var Xe=Xt(ht(),1);function Pg(e){let t=Xe.default.asn1.fromDer(St(e,"ascii")),r=Xe.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:be(r.n),e:be(r.e),d:be(r.d),p:be(r.p),q:be(r.q),dp:be(r.dP),dq:be(r.dQ),qi:be(r.qInv),alg:"RS256"}}function Dg(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Xe.default.pki.privateKeyToAsn1({n:re(e.n),e:re(e.e),d:re(e.d),p:re(e.p),q:re(e.q),dP:re(e.dp),dQ:re(e.dq),qInv:re(e.qi)});return Kt(Xe.default.asn1.toDer(t).getBytes(),"ascii")}function Ug(e){let t=Xe.default.asn1.fromDer(St(e,"ascii")),r=Xe.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:be(r.n),e:be(r.e)}}function kg(e){if(e.n==null||e.e==null)throw new et("JWK was missing components","ERR_INVALID_PARAMETERS");let t=Xe.default.pki.publicKeyToAsn1({n:re(e.n),e:re(e.e)});return Kt(Xe.default.asn1.toDer(t).getBytes(),"ascii")}async function Vu(e){let t=await Jt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await Hu(t);return{privateKey:r[0],publicKey:r[1]}}async function wa(e){let r=[await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Kg(e)],n=await Hu({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Fu(e,t){let r=await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Jt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function qu(e,t,r){let n=await Jt.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Jt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r instanceof Uint8Array?r:r.subarray())}async function Hu(e){if(e.privateKey==null||e.publicKey==null)throw new et("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Jt.get().subtle.exportKey("jwk",e.privateKey),Jt.get().subtle.exportKey("jwk",e.publicKey)])}async function Kg(e){return Jt.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function zu(e,t,r,n){let i=t?Mu(e):Ou(e),o=St(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return Kt(s,"ascii")}function Gu(e,t){return zu(e,!0,t,(r,n)=>n.encrypt(r))}function $u(e,t){return zu(e,!1,t,(r,n)=>n.decrypt(r))}function eo(e){if(e.kty!=="RSA")throw new et("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new et("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Kt(e.n,"base64url").length*8}var Wn=8192,$n=class{_key;constructor(t){this._key=t}verify(t,r){return qu(this._key,r,t)}marshal(){return kr.jwkToPkix(this._key)}get bytes(){return Le.encode({Type:Et.RSA,Data:this.marshal()}).subarray()}encrypt(t){return Gu(this._key,t)}equals(t){return Ot(this.bytes,t.bytes)}hash(){let t=qt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}},fn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return to(16)}sign(t){return Fu(this._key,t)}get public(){if(this._publicKey==null)throw new et("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new $n(this._publicKey)}decrypt(t){return $u(this._key,t)}marshal(){return kr.jwkToPkcs1(this._key)}get bytes(){return Re.encode({Type:Et.RSA,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}hash(){let t=qt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return St(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Gn.default.util.ByteBuffer(this.marshal()),i=Gn.default.asn1.fromDer(n),o=Gn.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Gn.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Mg(e){let t=kr.pkcs1ToJwk(e);if(eo(t)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await wa(t);return new fn(r.privateKey,r.publicKey)}function Vg(e){let t=kr.pkixToJwk(e);if(eo(t)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new $n(t)}async function Fg(e){if(eo(e)>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await wa(e);return new fn(t.privateKey,t.publicKey)}async function qg(e){if(e>Wn)throw new et("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await Vu(e);return new fn(t.privateKey,t.publicKey)}var Ia={};Rt(Ia,{Secp256k1PrivateKey:()=>Zn,Secp256k1PublicKey:()=>Yn,generateKeyPair:()=>tx,unmarshalSecp256k1PrivateKey:()=>Jg,unmarshalSecp256k1PublicKey:()=>jg});function Hg(e){let t=Bn(e);ne(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:zg,hexToBytes:Gg}=wi,Kr={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=Kr;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:zg(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=Kr,r=typeof e=="string"?Gg(e):e;if(!he(r))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=Kr._parseInt(r.subarray(2)),{d:s,l:a}=Kr._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},Qe=BigInt(0),ae=BigInt(1),T4=BigInt(2),Wu=BigInt(3),_4=BigInt(4);function $g(e){let t=Hg(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let x=p.toAffine();return qe(Uint8Array.from([4]),r.toBytes(x.x),r.toBytes(x.y))}),i=t.fromBytes||(h=>{let p=h.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),x=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:x}});function o(h){let{a:p,b:y}=t,x=r.sqr(h),v=r.mul(x,h);return r.add(r.add(v,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Qe<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:x,n:v}=t;if(p&&typeof h!="bigint"){if(he(h)&&(h=Me(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let m;try{m=typeof h=="bigint"?h:Ve(gt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return x&&(m=st(m,v)),a(m),m}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,x){if(this.px=p,this.py=y,this.pz=x,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(p){let{x:y,y:x}=p||{};if(!p||!r.isValid(y)||!r.isValid(x))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let v=m=>r.eql(m,r.ZERO);return v(y)&&v(x)?l.ZERO:new l(y,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(x=>x.pz));return p.map((x,v)=>x.toAffine(y[v])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(gt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let x=r.sqr(y),v=o(p);if(!r.eql(x,v))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:C,pz:S}=p,B=r.eql(r.mul(y,S),r.mul(m,v)),R=r.eql(r.mul(x,S),r.mul(C,v));return B&&R}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,x=r.mul(y,Wu),{px:v,py:m,pz:C}=this,S=r.ZERO,B=r.ZERO,R=r.ZERO,L=r.mul(v,v),O=r.mul(m,m),M=r.mul(C,C),k=r.mul(v,m);return k=r.add(k,k),R=r.mul(v,C),R=r.add(R,R),S=r.mul(p,R),B=r.mul(x,M),B=r.add(S,B),S=r.sub(O,B),B=r.add(O,B),B=r.mul(S,B),S=r.mul(k,S),R=r.mul(x,R),M=r.mul(p,M),k=r.sub(L,M),k=r.mul(p,k),k=r.add(k,R),R=r.add(L,L),L=r.add(R,L),L=r.add(L,M),L=r.mul(L,k),B=r.add(B,L),M=r.mul(m,C),M=r.add(M,M),L=r.mul(M,k),S=r.sub(S,L),R=r.mul(M,O),R=r.add(R,R),R=r.add(R,R),new l(S,B,R)}add(p){u(p);let{px:y,py:x,pz:v}=this,{px:m,py:C,pz:S}=p,B=r.ZERO,R=r.ZERO,L=r.ZERO,O=t.a,M=r.mul(t.b,Wu),k=r.mul(y,m),H=r.mul(x,C),z=r.mul(v,S),Z=r.add(y,x),A=r.add(m,C);Z=r.mul(Z,A),A=r.add(k,H),Z=r.sub(Z,A),A=r.add(y,v);let N=r.add(m,S);return A=r.mul(A,N),N=r.add(k,z),A=r.sub(A,N),N=r.add(x,v),B=r.add(C,S),N=r.mul(N,B),B=r.add(H,z),N=r.sub(N,B),L=r.mul(O,A),B=r.mul(M,z),L=r.add(B,L),B=r.sub(H,L),L=r.add(H,L),R=r.mul(B,L),H=r.add(k,k),H=r.add(H,k),z=r.mul(O,z),A=r.mul(M,A),H=r.add(H,z),z=r.sub(k,z),z=r.mul(O,z),A=r.add(A,z),k=r.mul(H,A),R=r.add(R,k),k=r.mul(N,A),B=r.mul(Z,B),B=r.sub(B,k),k=r.mul(Z,H),L=r.mul(N,L),L=r.add(L,k),new l(B,R,L)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,f,p,y=>{let x=r.invertBatch(y.map(v=>v.pz));return y.map((v,m)=>v.toAffine(x[m])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===Qe)return y;if(a(p),p===ae)return this;let{endo:x}=t;if(!x)return g.unsafeLadder(this,p);let{k1neg:v,k1:m,k2neg:C,k2:S}=x.splitScalar(p),B=y,R=y,L=this;for(;m>Qe||S>Qe;)m&ae&&(B=B.add(L)),S&ae&&(R=R.add(L)),L=L.double(),m>>=ae,S>>=ae;return v&&(B=B.negate()),C&&(R=R.negate()),R=new l(r.mul(R.px,x.beta),R.py,R.pz),B.add(R)}multiply(p){a(p);let y=p,x,v,{endo:m}=t;if(m){let{k1neg:C,k1:S,k2neg:B,k2:R}=m.splitScalar(y),{p:L,f:O}=this.wNAF(S),{p:M,f:k}=this.wNAF(R);L=g.constTimeNegate(C,L),M=g.constTimeNegate(B,M),M=new l(r.mul(M.px,m.beta),M.py,M.pz),x=L.add(M),v=O.add(k)}else{let{p:C,f:S}=this.wNAF(y);x=C,v=S}return l.normalizeZ([x,v])[0]}multiplyAndAddUnsafe(p,y,x){let v=l.BASE,m=(S,B)=>B===Qe||B===ae||!S.equals(v)?S.multiplyUnsafe(B):S.multiply(B),C=m(this,y).add(m(p,x));return C.is0()?void 0:C}toAffine(p){let{px:y,py:x,pz:v}=this,m=this.is0();p==null&&(p=m?r.ONE:r.inv(v));let C=r.mul(y,p),S=r.mul(x,p),B=r.mul(v,p);if(m)return{x:r.ZERO,y:r.ZERO};if(!r.eql(B,r.ONE))throw new Error("invZ was invalid");return{x:C,y:S}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===ae)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=t;return p===ae?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Me(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,g=Bi(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Wg(e){let t=Bn(e);return ne(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Yu(e){let t=Wg(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(A){return Qe<A&&A<r.ORDER}function a(A){return st(A,n)}function c(A){return Ei(A,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=$g({...t,toBytes(A,N,T){let _=N.toAffine(),w=r.toBytes(_.x),U=qe;return T?U(Uint8Array.from([N.hasEvenY()?2:3]),w):U(Uint8Array.from([4]),w,r.toBytes(_.y))},fromBytes(A){let N=A.length,T=A[0],_=A.subarray(1);if(N===i&&(T===2||T===3)){let w=Ve(_);if(!s(w))throw new Error("Point is not on curve");let U=l(w),K=r.sqrt(U),F=(K&ae)===ae;return(T&1)===1!==F&&(K=r.neg(K)),{x:w,y:K}}else if(N===o&&T===4){let w=r.fromBytes(_.subarray(0,r.BYTES)),U=r.fromBytes(_.subarray(r.BYTES,2*r.BYTES));return{x:w,y:U}}else throw new Error(`Point of length ${N} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=A=>Me(nr(A,t.nByteLength));function h(A){let N=n>>ae;return A>N}function p(A){return h(A)?a(-A):A}let y=(A,N,T)=>Ve(A.slice(N,T));class x{constructor(N,T,_){this.r=N,this.s=T,this.recovery=_,this.assertValidity()}static fromCompact(N){let T=t.nByteLength;return N=gt("compactSignature",N,T*2),new x(y(N,0,T),y(N,T,2*T))}static fromDER(N){let{r:T,s:_}=Kr.toSig(gt("DER",N));return new x(T,_)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(N){return new x(this.r,this.s,N)}recoverPublicKey(N){let{r:T,s:_,recovery:w}=this,U=R(gt("msgHash",N));if(w==null||![0,1,2,3].includes(w))throw new Error("recovery id invalid");let K=w===2||w===3?T+t.n:T;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let F=w&1?"03":"02",W=f.fromHex(F+g(K)),Y=c(K),rt=a(-U*Y),X=a(_*Y),J=f.BASE.multiplyAndAddUnsafe(W,rt,X);if(!J)throw new Error("point at infinify");return J.assertValidity(),J}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new x(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return br(this.toDERHex())}toDERHex(){return Kr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return br(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let v={isValidPrivateKey(A){try{return u(A),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let A=es(t.n);return nc(t.randomBytes(A),t.n)},precompute(A=8,N=f.BASE){return N._setWindowSize(A),N.multiply(BigInt(3)),N}};function m(A,N=!0){return f.fromPrivateKey(A).toRawBytes(N)}function C(A){let N=he(A),T=typeof A=="string",_=(N||T)&&A.length;return N?_===i||_===o:T?_===2*i||_===2*o:A instanceof f}function S(A,N,T=!0){if(C(A))throw new Error("first arg must be private key");if(!C(N))throw new Error("second arg must be public key");return f.fromHex(N).multiply(u(A)).toRawBytes(T)}let B=t.bits2int||function(A){let N=Ve(A),T=A.length*8-t.nBitLength;return T>0?N>>BigInt(T):N},R=t.bits2int_modN||function(A){return a(B(A))},L=Sn(t.nBitLength);function O(A){if(typeof A!="bigint")throw new Error("bigint expected");if(!(Qe<=A&&A<L))throw new Error(`bigint expected < 2^${t.nBitLength}`);return nr(A,t.nByteLength)}function M(A,N,T=k){if(["recovered","canonical"].some(lt=>lt in T))throw new Error("sign() legacy options not supported");let{hash:_,randomBytes:w}=t,{lowS:U,prehash:K,extraEntropy:F}=T;U==null&&(U=!0),A=gt("msgHash",A),K&&(A=gt("prehashed msgHash",_(A)));let W=R(A),Y=u(N),rt=[O(Y),O(W)];if(F!=null){let lt=F===!0?w(r.BYTES):F;rt.push(gt("extraEntropy",lt))}let X=qe(...rt),J=W;function dt(lt){let Mt=B(lt);if(!d(Mt))return;let Vt=c(Mt),Lt=f.BASE.multiply(Mt).toAffine(),Ht=a(Lt.x);if(Ht===Qe)return;let De=a(Vt*a(J+Ht*Y));if(De===Qe)return;let pr=(Lt.x===Ht?0:2)|Number(Lt.y&ae),gn=De;return U&&h(De)&&(gn=p(De),pr^=1),new x(Ht,gn,pr)}return{seed:X,k2sig:dt}}let k={lowS:t.lowS,prehash:!1},H={lowS:t.lowS,prehash:!1};function z(A,N,T=k){let{seed:_,k2sig:w}=M(A,N,T),U=t;return Xo(U.hash.outputLen,U.nByteLength,U.hmac)(_,w)}f.BASE._setWindowSize(8);function Z(A,N,T,_=H){let w=A;if(N=gt("msgHash",N),T=gt("publicKey",T),"strict"in _)throw new Error("options.strict was renamed to lowS");let{lowS:U,prehash:K}=_,F,W;try{if(typeof w=="string"||he(w))try{F=x.fromDER(w)}catch(Lt){if(!(Lt instanceof Kr.Err))throw Lt;F=x.fromCompact(w)}else if(typeof w=="object"&&typeof w.r=="bigint"&&typeof w.s=="bigint"){let{r:Lt,s:Ht}=w;F=new x(Lt,Ht)}else throw new Error("PARSE");W=f.fromHex(T)}catch(Lt){if(Lt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(U&&F.hasHighS())return!1;K&&(N=t.hash(N));let{r:Y,s:rt}=F,X=R(N),J=c(rt),dt=a(X*J),lt=a(Y*J),Mt=f.BASE.multiplyAndAddUnsafe(W,dt,lt)?.toAffine();return Mt?a(Mt.x)===Y:!1}return{CURVE:t,getPublicKey:m,getSharedSecret:S,sign:z,verify:Z,ProjectivePoint:f,Signature:x,utils:v}}function Yg(e){return{hash:e,hmac:(t,...r)=>Yr(e,t,xi(...r)),randomBytes:mr}}function Zu(e,t){let r=n=>Yu({...e,...Yg(n)});return Object.freeze({...r(t),create:r})}var Ju=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Xu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Zg=BigInt(1),Sa=BigInt(2),Qu=(e,t)=>(e+t/Sa)/t;function Xg(e){let t=Ju,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=e*e*e%t,u=f*f*e%t,l=xt(u,r,t)*u%t,d=xt(l,r,t)*u%t,g=xt(d,Sa,t)*f%t,h=xt(g,i,t)*g%t,p=xt(h,o,t)*h%t,y=xt(p,a,t)*p%t,x=xt(y,c,t)*y%t,v=xt(x,a,t)*p%t,m=xt(v,r,t)*u%t,C=xt(m,s,t)*h%t,S=xt(C,n,t)*f%t,B=xt(S,Sa,t);if(!Ba.eql(Ba.sqr(B),e))throw new Error("Cannot find square root");return B}var Ba=Si(Ju,void 0,void 0,{sqrt:Xg}),we=Zu({a:BigInt(0),b:BigInt(7),Fp:Ba,n:Xu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=Xu,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Zg*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Qu(o*e,t),c=Qu(-n*e,t),f=st(e-a*r-c*i,t),u=st(-a*n-c*o,t),l=f>s,d=u>s;if(l&&(f=t-f),d&&(u=t-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},Zr),O4=BigInt(0);var M4=we.ProjectivePoint;function ju(){return we.utils.randomPrivateKey()}function tl(e,t){let r=qt.digest(t instanceof Uint8Array?t:t.subarray());if(se(r))return r.then(({digest:n})=>we.sign(n,e).toDERRawBytes()).catch(n=>{throw new et(String(n),"ERR_INVALID_INPUT")});try{return we.sign(r.digest,e).toDERRawBytes()}catch(n){throw new et(String(n),"ERR_INVALID_INPUT")}}function el(e,t,r){let n=qt.digest(r instanceof Uint8Array?r:r.subarray());if(se(n))return n.then(({digest:i})=>we.verify(t,i,e)).catch(i=>{throw new et(String(i),"ERR_INVALID_INPUT")});try{return we.verify(t,n.digest,e)}catch(i){throw new et(String(i),"ERR_INVALID_INPUT")}}function rl(e){return we.ProjectivePoint.fromHex(e).toRawBytes(!0)}function nl(e){try{we.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}function Aa(e){try{we.ProjectivePoint.fromHex(e)}catch(t){throw new et(String(t),"ERR_INVALID_PUBLIC_KEY")}}function il(e){try{return we.getPublicKey(e,!0)}catch(t){throw new et(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Yn=class{_key;constructor(t){Aa(t),this._key=t}verify(t,r){return el(this._key,r,t)}marshal(){return rl(this._key)}get bytes(){return Le.encode({Type:Et.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}async hash(){let t=qt.digest(this.bytes),r;return se(t)?{bytes:r}=await t:r=t.bytes,r}},Zn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??il(t),nl(this._key),Aa(this._publicKey)}sign(t){return tl(this._key,t)}get public(){return new Yn(this._publicKey)}marshal(){return this._key}get bytes(){return Re.encode({Type:Et.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ot(this.bytes,t.bytes)}hash(){let t=qt.digest(this.bytes);return se(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return St(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return sn(this.bytes,t);throw new et(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Jg(e){return new Zn(e)}function jg(e){return new Yn(e)}async function tx(){let e=ju();return new Zn(e)}var Or={rsa:Ea,ed25519:xa,secp256k1:Ia};function ol(e){let t=Object.keys(Or).join(" / ");return new et(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function sl(e){let t=Le.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Et.RSA:return Or.rsa.unmarshalRsaPublicKey(r);case Et.Ed25519:return Or.ed25519.unmarshalEd25519PublicKey(r);case Et.Secp256k1:return Or.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw ol(t.Type??"unknown")}}async function al(e){let t=Re.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Et.RSA:return Or.rsa.unmarshalRsaPrivateKey(r);case Et.Ed25519:return Or.ed25519.unmarshalEd25519PrivateKey(r);case Et.Secp256k1:return Or.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw ol(t.Type??"RSA")}}var rx=Symbol.for("nodejs.util.inspect.custom"),cl=Object.values($t).map(e=>e.decoder).reduce((e,t)=>e.or(t),$t.identity.decoder),fl=114,Ca=36,Ta=37,Xn=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[qf]=!0;toString(){return this.string==null&&(this.string=It.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return me.createV1(fl,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Ot(this.multihash.bytes,t);if(typeof t=="string")return _a(t).equals(this);if(t?.multihash?.bytes!=null)return Ot(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[rx](){return`PeerId(${this.toString()})`}},un=class extends Xn{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},ln=class extends Xn{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},hn=class extends Xn{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function _a(e,t){if(t=t??cl,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=lr(It.decode(`z${e}`));return e.startsWith("12D")?new ln({multihash:r}):e.startsWith("16U")?new hn({multihash:r}):new un({multihash:r})}return nx(cl.decode(e))}function nx(e){try{let t=lr(e);if(t.code===hr.code){if(t.digest.length===Ca)return new ln({multihash:t});if(t.digest.length===Ta)return new hn({multihash:t})}if(t.code===qt.code)return new un({multihash:t})}catch{return ix(me.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function ix(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==fl)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===qt.code)return new un({multihash:e.multihash});if(t.code===hr.code){if(t.digest.length===Ca)return new ln({multihash:e.multihash});if(t.digest.length===Ta)return new hn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function La(e,t){return e.length===Ca?new ln({multihash:xe(hr.code,e),privateKey:t}):e.length===Ta?new hn({multihash:xe(hr.code,e),privateKey:t}):new un({multihash:await qt.digest(e),publicKey:e,privateKey:t})}var ro;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(ro||(ro={}));var Qn;(function(e){let t;e.codec=()=>(t==null&&(t=Pr((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.identityKey!=null&&r.identityKey.byteLength>0&&(n.uint32(10),n.bytes(r.identityKey)),r.identitySig!=null&&r.identitySig.byteLength>0&&(n.uint32(18),n.bytes(r.identitySig)),r.extensions!=null&&(n.uint32(34),ro.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:ct(0),identitySig:ct(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.identityKey=r.bytes();break}case 2:{i.identitySig=r.bytes();break}case 4:{i.extensions=ro.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Nr(r,e.codec()),e.decode=r=>_r(r,e.codec())})(Qn||(Qn={}));async function ul(e,t,r){let n=await sx(e,ll(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return ox(e.publicKey,n,r)}function ox(e,t,r){return Qn.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function sx(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await al(e.privateKey)).sign(t)}async function Ra(e){return La(e.identityKey)}function Na(e){return Qn.decode(e)}function ll(e){let t=Kt("noise-libp2p-static-key:");return e instanceof Uint8Array?_e([t,e],t.length+e.length):(e.prepend(t),e)}async function Pa(e,t,r){let n=await La(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=ll(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await sl(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Jn(e){return!(!(e instanceof Uint8Array)&&!Mr(e)||e.byteLength!==32)}var ax=0,cx=4294967295,fx="Cipherstate has reached maximum n, a new handshake must be performed",no=class{n;bytes;view;constructor(t=ax){this.n=t,this.bytes=ct(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>cx)throw new Error(fx)}};var io=class{crypto;log;constructor(t,r){this.log=t.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return ct(32)}isEmptyKey(t){let r=this.createEmptyKey();return Ot(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:ct(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),ct(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new Bt(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new no}}initializeSymmetric(t){let r=Kt(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=ct(32);return r.set(t),r}else return this.getHash(t,ct(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,ct(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,ct(0),r),i=this.createEmptyKey(),o=ct(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,ct(0),r.ciphertext)}};var oo=class extends io{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=ct(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=ct(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=ct(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(t,r){return Jn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Jn(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);i&&Jn(n)&&(t.rs=n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(t,r){let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);if(i&&Jn(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=ct(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=ct(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=f}return t.mc++,{plaintext:n,valid:i}}};function hl(e,t){!t.enabled||!qr||(t(`LOCAL_STATIC_PUBLIC_KEY ${St(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${St(e.privateKey,"hex")}`))}function Da(e,t){!t.enabled||!qr||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${St(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${St(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function dl(e,t){!t.enabled||!qr||t(`REMOTE_STATIC_PUBLIC_KEY ${St(e.subarray(),"hex")}`)}function Ua(e,t){!t.enabled||!qr||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${St(e.subarray(),"hex")}`)}function pl(e,t){!t.enabled||!qr||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${St(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${St(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var so=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;log;constructor(t,r,n,i,o,s,a,c,f){this.log=t.logger.forComponent("libp2p:noise:xxhandshake"),this.isInitiator=r,this.payload=n,this.prologue=i,this.staticKeypair=s,this.connection=a,c&&(this.remotePeer=c),this.xx=f??new oo(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(hl(this.session.hs.s,this.log),this.isInitiator){this.log.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,ct(0));await this.connection.write(yc(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),Da(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=mc((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new wr("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),Ua(this.session.hs.re,this.log)}}async exchange(){if(this.isInitiator){this.log.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=bc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new wr("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),Ua(this.session.hs.re,this.log),dl(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=Na(r);this.remotePeer=this.remotePeer||await Ra(i),await Pa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ln(`Error occurred while verifying signed payload: ${o.message}`)}this.log.trace("All good with the signature!")}else{this.log.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(gc(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Da(this.session.hs.e,this.log)}}async finish(){if(this.isInitiator){this.log.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(xc(t)),this.log.trace("Stage 2 - Initiator sent message with signed payload.")}else{this.log.trace("Stage 2 - Responder waiting for third handshake message...");let t=vc((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new wr("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Na(r);this.remotePeer=this.remotePeer||await Ra(i),await Pa(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ln(`Error occurred while verifying signed payload: ${o.message}`)}}pl(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,ct(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,ct(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new wr("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function yl(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var ao=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(t,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=t;this.components=t,this.crypto=o??pc,this.extensions=i,this.metrics=a?yl(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??ct(0)}async secureOutbound(t,r,n){let i=Ro(r,{lengthEncoder:Xr,lengthDecoder:Tn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=Ro(r,{lengthEncoder:Xr,lengthDecoder:Tn,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await ul(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new so(this.components,n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=T0(),o=t.unwrap();return await L0(n,Sc(r,this.metrics),o,s=>wn(s,{lengthDecoder:Tn}),Bc(r,this.metrics),n),i}};function gl(e={}){return t=>new ao(t,e)}function xl(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function dn(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function co(e=0){return globalThis.Buffer?.allocUnsafe!=null?dn(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function bl(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var ml=bl("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ka=bl("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=co(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),ux={utf8:ml,"utf-8":ml,hex:$t.base16,latin1:ka,ascii:ka,binary:ka,...$t},fo=ux;function te(e,t="utf8"){let r=fo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function Je(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=co(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return dn(r)}var uo=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(u===void 0)break;if(o*=t,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=t(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var vl=45,lx=15,pn=new uo;function Ka(e){if(!(e.length>lx))return pn.new(e).parseWith(()=>pn.readIPv4Addr())}function Oa(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>vl))return pn.new(e).parseWith(()=>pn.readIPv6Addr())}function lo(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>vl))return pn.new(e).parseWith(()=>pn.readIPAddr())}var $S=parseInt("0xFFFF",16),WS=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Ma(e,t="utf8"){let r=fo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?dn(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function ho(e){return!!Ka(e)}function po(e){return!!Oa(e)}function yo(e){return!!lo(e)}var Sl=ho,gx=po,Va=function(e){let t=0;if(e=e.toString().trim(),Sl(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(gx(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Sl(r[n]),s;o&&(s=Va(r[n]),r[n]=te(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,te(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},Bl=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var yn={},Fa={},mx=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,-1,"memory"]];mx.forEach(e=>{let t=bx(...e);Fa[t.code]=t,yn[t.name]=t});function bx(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function ut(e){if(typeof e=="number"){if(Fa[e]!=null)return Fa[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(yn[e]!=null)return yn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var P3=ut("ip4"),D3=ut("ip6"),U3=ut("ipcidr");function Ha(e,t){switch(ut(e).code){case 4:case 41:return wx(t);case 42:return Cl(t);case 6:case 273:case 33:case 132:return _l(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Cl(t);case 421:return Ax(t);case 444:return Tl(t);case 445:return Tl(t);case 466:return Bx(t);default:return te(t,"base16")}}function za(e,t){switch(ut(e).code){case 4:return Al(t);case 41:return Al(t);case 42:return Il(t);case 6:case 273:case 33:case 132:return Ga(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Il(t);case 421:return Ex(t);case 444:return Ix(t);case 445:return Cx(t);case 466:return Sx(t);default:return Ma(t,"base16")}}var qa=Object.values($t).map(e=>e.decoder),vx=function(){let e=qa[0].or(qa[1]);return qa.slice(2).forEach(t=>e=e.or(t)),e}();function Al(e){if(!yo(e))throw new Error("invalid ip address");return Va(e)}function wx(e){let t=Bl(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!yo(t))throw new Error("invalid ip address");return t}function Ga(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function _l(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function Il(e){let t=Ma(e),r=Uint8Array.from(je(t.length));return Je([r,t],r.length+t.length)}function Cl(e){let t=fe(e);if(e=e.slice(Gt(t)),e.length!==t)throw new Error("inconsistent lengths");return te(e)}function Ex(e){let t;e[0]==="Q"||e[0]==="1"?t=lr(It.decode(`z${e}`)).bytes:t=me.parse(e).multihash.bytes;let r=Uint8Array.from(je(t.length));return Je([r,t],r.length+t.length)}function Sx(e){let t=vx.decode(e),r=Uint8Array.from(je(t.length));return Je([r,t],r.length+t.length)}function Bx(e){let t=fe(e),r=e.slice(Gt(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+te(r,"base64url")}function Ax(e){let t=fe(e),r=e.slice(Gt(t));if(r.length!==t)throw new Error("inconsistent lengths");return te(r,"base58btc")}function Ix(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=Ye.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ga(n);return Je([r,i],r.length+i.length)}function Cx(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=Ye.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ga(n);return Je([r,i],r.length+i.length)}function Tl(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=te(t,"base32"),i=_l(r);return`${n}:${i}`}function Ll(e){e=$a(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ut(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Nl("invalid address: "+e);if(a.path===!0){n=$a(i.slice(o).join("/")),t.push([a.code,za(a.code,n)]),r.push([a.code,n]);break}let c=za(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ha(a.code,c)])}return{string:Rl(r),bytes:Ya(t),tuples:t,stringTuples:r,path:n}}function Wa(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=fe(e,i),s=Gt(o),a=ut(o),c=Tx(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let f=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw Nl("Invalid address Uint8Array: "+te(e,"base16"));t.push([o,f]);let u=Ha(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(e),string:Rl(r),tuples:t,stringTuples:r,path:n}}function Rl(e){let t=[];return e.map(r=>{let n=ut(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),$a(t.join("/"))}function Ya(e){return Je(e.map(t=>{let r=ut(t[0]),n=Uint8Array.from(je(r.code));return t.length>1&&t[1]!=null&&(n=Je([n,t[1]])),n}))}function Tx(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=fe(t instanceof Uint8Array?t:Uint8Array.from(t));return r+Gt(r)}}function $a(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function Nl(e){return new Error("Error parsing address: "+e)}var _x=Symbol.for("nodejs.util.inspect.custom"),Xa=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Lx=[ut("dns").code,ut("dns4").code,ut("dns6").code,ut("dnsaddr").code],Za=class e{bytes;#e;#t;#r;#n;[Xa]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Wa(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=Ll(t)}else if(Dl(t))r=Wa(t.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let t,r,n,i,o="",s=ut("tcp"),a=ut("udp"),c=ut("ip4"),f=ut("ip6"),u=ut("dns6"),l=ut("ip6zone");for(let[g,h]of this.stringTuples())g===l.code&&(o=`%${h??""}`),Lx.includes(g)&&(r=s.name,i=443,n=`${h??""}${o}`,t=g===u.code?6:4),(g===s.code||g===a.code)&&(r=ut(g).name,i=parseInt(h??"")),(g===c.code||g===f.code)&&(r=ut(g).name,n=`${h??""}${o}`,t=g===f.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#t.map(([t])=>Object.assign({},ut(t)))}protoCodes(){return this.#t.map(([t])=>t)}protoNames(){return this.#t.map(([t])=>ut(t).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(Ya(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===yn.p2p.code&&t.push([n,i]),n===yn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?te(It.decode(`z${n}`),"base58btc"):te(me.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return xl(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=Pl.get(r.name);if(n==null)throw new et(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[_x](){return`Multiaddr(${this.#e})`}};var Pl=new Map;function Dl(e){return!!e?.[Xa]}var Rx=e=>e.toString().split("/").slice(1),jn=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Ct=e=>({match:t=>jn(r=>r===e).match(t),pattern:e}),mo=()=>({match:e=>jn(t=>typeof t=="string").match(e),pattern:"{string}"}),Ul=()=>({match:e=>jn(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),ce=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{It.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),go=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{Hs.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Ne=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),Pe=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),Tt=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Pt(...e){function t(i){let o=Rx(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Ja=Tt(Ct("dns4"),mo()),ja=Tt(Ct("dns6"),mo()),t0=Tt(Ct("dnsaddr"),mo()),kl=Tt(Ct("dns"),mo()),lB=Pt(Ja),hB=Pt(ja),dB=Pt(t0),pB=Pt(Pe(kl,t0,Ja,ja)),Kl=Tt(Ct("ip4"),jn(ho)),Ol=Tt(Ct("ip6"),jn(po)),Ml=Pe(Kl,Ol),ti=Pe(Ml,kl,Ja,ja,t0),yB=Pt(ti),gB=Pt(Kl),xB=Pt(Ol),mB=Pt(Ml),bo=Tt(ti,Ct("tcp"),Ul()),ei=Tt(ti,Ct("udp"),Ul()),Nx=Pe(bo,ei),bB=Pt(bo),vB=Pt(ei),e0=Tt(ei,Ct("quic")),vo=Tt(ei,Ct("quic-v1")),Px=Pe(e0,vo),wB=Pt(e0),EB=Pt(vo),Qa=Pe(ti,bo,ei,e0,vo),Vl=Pe(Tt(Qa,Ct("ws"),Ne(ce()))),SB=Pt(Vl),Fl=Pe(Tt(Qa,Ct("wss"),Ne(ce())),Tt(Qa,Ct("tls"),Ct("ws"),Ne(ce()))),BB=Pt(Fl),ql=Tt(Nx,Ct("webrtc-direct"),go(),Ne(go()),Ne(ce())),AB=Pt(ql),Hl=Tt(vo,Ct("webtransport"),go(),go(),Ne(ce())),wo=Pt(Hl),xo=Pe(Vl,Fl,Tt(bo,Ne(ce())),Tt(Px,Ne(ce())),Tt(ti,Ne(ce())),ql,Hl,ce()),IB=Pt(xo),Dx=Tt(xo,Ct("p2p-circuit"),ce()),CB=Pt(Dx),Ux=Pe(Tt(xo,Ct("p2p-circuit"),Ct("webrtc"),ce()),Tt(xo,Ct("webrtc"),Ne(ce())),Ct("webrtc")),TB=Pt(Ux);async function r0(e,t,r,n,i,o){let s=o.forComponent(`libp2p:webtransport:stream:${r}:${t}`),a=e.writable.getWriter(),c=e.readable.getReader();await a.ready;function f(){let h=n.findIndex(p=>p===g);h!==-1&&(n.splice(h,1),g.timeline.close=Date.now(),i?.(g))}let u=!1,l=!1;(async function(){let h=await a.closed.catch(p=>p);if(h!=null){let p=h.message;p.includes("aborted by the remote server")||p.includes("STOP_SENDING")||s.error(`WebTransport writer closed unexpectedly: streamId=${t} err=${h.message}`)}u=!0,u&&l&&f()})().catch(()=>{s.error("WebTransport failed to cleanup closed stream")}),async function(){let h=await c.closed.catch(p=>p);h!=null&&s.error(`WebTransport reader closed unexpectedly: streamId=${t} err=${h.message}`),l=!0,u&&l&&f()}().catch(()=>{s.error("WebTransport failed to cleanup closed stream")});let d=!1,g={id:t,status:"open",writeStatus:"ready",readStatus:"ready",abort(h){u||(a.abort(h).catch(p=>{s.error("could not abort stream",p)}),u=!0),l=!0,this.status="aborted",this.writeStatus="closed",this.readStatus="closed",this.timeline.reset=this.timeline.close=this.timeline.closeRead=this.timeline.closeWrite=Date.now(),f()},async close(h){this.status="closing",await Promise.all([g.closeRead(h),g.closeWrite(h)]),f(),this.status="closed",this.timeline.close=Date.now()},async closeRead(h){if(!l){this.readStatus="closing";try{await c.cancel()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(u=!0)}this.timeline.closeRead=Date.now(),this.readStatus="closed",l=!0}u&&f()},async closeWrite(h){if(!u){u=!0,this.writeStatus="closing";try{await a.close()}catch(p){p.toString().includes("RESET_STREAM")===!0&&(l=!0)}this.timeline.closeWrite=Date.now(),this.writeStatus="closed"}l&&f()},direction:r,timeline:{open:Date.now()},metadata:{},source:async function*(){for(;;){let h=await c.read();if(h.done){l=!0,u&&f();return}yield new Bt(h.value)}}(),sink:async function(h){if(d)throw new Error("sink already called on stream");d=!0;try{this.writeStatus="writing";for await(let p of h)if(p instanceof Uint8Array)await a.write(p);else for(let y of p)await a.write(y);this.writeStatus="done"}finally{this.timeline.closeWrite=Date.now(),this.writeStatus="closed",await g.closeWrite()}},log:s};return g}function n0(){return{source:{[Symbol.asyncIterator](){return{async next(){return new Promise(()=>{})}}}},sink:async e=>new Promise(()=>{})}}function zl(e,t){return t.filter(n=>!!e.find(i=>Ot(n,i))).length===t.length}var kx=Object.values($t).map(e=>e.decoder).reduce((e,t)=>e.or(t));function Kx(e){return Te.decode(kx.decode(e))}function Gl(e){if(!wo.matches(e))throw new et("Invalid multiaddr, was not a WebTransport address","ERR_INVALID_MULTIADDR");let t=e.stringTuples(),r=t.filter(([s,a])=>s===ut("certhash").code).map(([s,a])=>Kx(a??"")),n=t.filter(([s,a])=>s===ut("p2p").code).map(([s,a])=>_a(a??""))[0],i=e.toOptions(),o=i.host;return i.family===6&&o?.includes(":")&&(o=`[${o}]`),{url:`https://${o}:${i.port}`,certhashes:r,remotePeer:n}}var i0=class{log;components;config;metrics;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webtransport"),this.components=t,this.config={maxInboundStreams:r.maxInboundStreams??1e3},t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webtransport_dialer_events_total",{label:"event",help:"Total count of WebTransport dialer events by type"})})}[Symbol.toStringTag]="@libp2p/webtransport";[Gf]=!0;async dial(t,r){r?.signal?.throwIfAborted(),this.log("dialing %s",t);let n=this.components.peerId;if(n===void 0)throw new Error("Need a local peerid");r=r??{};let{url:i,certhashes:o,remotePeer:s}=Gl(t);if(s==null)throw new Error("Need a target peerid");if(o.length===0)throw new Error("Expected multiaddr to contain certhashes");let a,c,f=()=>{},u=!1,l=!1,d=!1;try{this.metrics?.dialerEvents.increment({pending:!0});let g=new WebTransport(`${i}/.well-known/libp2p-webtransport?type=noise`,{serverCertificateHashes:o.map(h=>({algorithm:"sha-256",value:h.digest}))});if(f=h=>{if(!u)try{this.metrics?.dialerEvents.increment({[h]:!0}),g.close()}catch(p){this.log.error("error closing wt session",p)}finally{c!=null&&(c.timeline.close=Date.now()),u=!0}},a=()=>{f(l?"noise_timeout":"ready_timeout")},r.signal?.addEventListener("abort",a,{once:!0}),await Promise.race([g.closed,g.ready]),l=!0,this.metrics?.dialerEvents.increment({ready:!0}),g.closed.catch(h=>{this.log.error("error on remote wt session close",h)}).finally(()=>{f("remote_close")}),!await this.authenticateWebTransport(g,n,s,o))throw new Error("Failed to authenticate webtransport");return this.metrics?.dialerEvents.increment({open:!0}),c={close:async()=>{this.log("Closing webtransport"),f("close")},abort:h=>{this.log("aborting webtransport due to passed err",h),f("abort")},remoteAddr:t,timeline:{open:Date.now()},log:this.components.logger.forComponent("libp2p:webtransport:maconn"),...n0()},d=!0,await r.upgrader.upgradeOutbound(c,{skipEncryption:!0,muxerFactory:this.webtransportMuxer(g),skipProtection:!0})}catch(g){throw this.log.error("caught wt session err",g),f(d?"upgrade_error":l?"noise_error":"ready_error"),g}finally{a!=null&&r.signal?.removeEventListener("abort",a)}}async authenticateWebTransport(t,r,n,i){let o=await t.createBidirectionalStream(),s=o.writable.getWriter(),a=o.readable.getReader();await s.ready;let c={source:async function*(){for(;;){let l=await a.read();if(l.value!=null&&(yield l.value),l.done)break}}(),sink:async function(l){for await(let d of l)d instanceof Uint8Array?await s.write(d):await s.write(d.subarray())}},f=gl()(this.components),{remoteExtensions:u}=await f.secureOutbound(r,c,n);if(s.close().catch(l=>{this.log.error(`Failed to close authentication stream writer: ${l.message}`)}),a.cancel().catch(l=>{this.log.error(`Failed to close authentication stream reader: ${l.message}`)}),!zl(u?.webtransportCerthashes??[],i.map(l=>l.bytes)))throw new Error("Our certhashes are not a subset of the remote's reported certhashes");return!0}webtransportMuxer(t){let r=0,n=this.config,i=this;return{protocol:"webtransport",createStreamMuxer:o=>{typeof o=="function"&&(o={onIncomingStream:o});let s=[];return async function(){let c=t.incomingBidirectionalStreams.getReader();for(;;){let{done:f,value:u}=await c.read();if(f)break;if(s.length>=n.maxInboundStreams)u.writable.close().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)}),u.readable.cancel().catch(l=>{i.log.error(`Failed to close inbound stream that crossed our maxInboundStream limit: ${l.message}`)});else{let l=await r0(u,String(r++),"inbound",s,o?.onStreamEnd,i.components.logger);s.push(l),o?.onIncomingStream?.(l)}}}().catch(()=>{this.log.error("WebTransport failed to receive incoming stream")}),{protocol:"webtransport",streams:s,newStream:async c=>{let f=await t.createBidirectionalStream(),u=await r0(f,String(r++),o?.direction??"outbound",s,o?.onStreamEnd,i.components.logger);return s.push(u),u},close:async c=>{this.log("Closing webtransport muxer"),await Promise.all(s.map(async f=>f.close(c)))},abort:c=>{this.log("Aborting webtransport muxer with err:",c);for(let f of s)f.abort(c)},...n0()}}}}createListener(t){throw new Error("Webtransport servers are not supported in Node or the browser")}filter(t){return t.filter(wo.exactMatch)}};function Ox(e={}){return t=>new i0(t,e)}return oh(Mx);})();
16
16
  //! TODO unclear how to add backpressure here?
17
17
  /*! Bundled license information:
18
18