@libp2p/pubsub 9.0.2 → 9.0.3-6fd681d09
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.min.js +9 -9
- package/package.json +10 -10
- package/dist/typedoc-urls.json +0 -32
package/dist/index.min.js
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PPubsub = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
2
|
-
"use strict";var Libp2PPubsub=(()=>{var
|
3
|
-
`)}return n};Hs.decode=function(t,e){if(typeof t!="string")throw new TypeError('"input" must be a string.');if(typeof e!="string")throw new TypeError('"alphabet" must be a string.');var r=g0[e];if(!r){r=g0[e]=[];for(var n=0;n<e.length;++n)r[e.charCodeAt(n)]=n}t=t.replace(/\s/g,"");for(var i=e.length,s=e.charAt(0),o=[0],n=0;n<t.length;n++){var a=r[t.charCodeAt(n)];if(a===void 0)return;for(var u=0,c=a;u<o.length;++u)c+=o[u]*i,o[u]=c&255,c>>=8;for(;c>0;)o.push(c&255),c>>=8}for(var f=0;t[f]===s&&f<t.length-1;++f)o.push(0);return typeof Buffer<"u"?Buffer.from(o.reverse()):new Uint8Array(o.reverse())};function Qh(t,e){var r=0,n=e.length,i=e.charAt(0),s=[0];for(r=0;r<t.length();++r){for(var o=0,a=t.at(r);o<s.length;++o)a+=s[o]<<8,s[o]=a%n,a=a/n|0;for(;a>0;)s.push(a%n),a=a/n|0}var u="";for(r=0;t.at(r)===0&&r<t.length()-1;++r)u+=i;for(r=s.length-1;r>=0;--r)u+=e[s[r]];return u}});var Et=ct((Zx,E0)=>{var b0=ot(),v0=x0(),x=E0.exports=b0.util=b0.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){x.nextTick=process.nextTick,typeof setImmediate=="function"?x.setImmediate=setImmediate:x.setImmediate=x.nextTick;return}if(typeof setImmediate=="function"){x.setImmediate=function(){return setImmediate.apply(void 0,arguments)},x.nextTick=function(a){return setImmediate(a)};return}if(x.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(u){if(u.source===window&&u.data===t){u.stopPropagation();var c=e.slice();e.length=0,c.forEach(function(f){f()})}};var o=a,t="forge.setImmediate",e=[];x.setImmediate=function(u){e.push(u),e.length===1&&window.postMessage(t,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),e=[];new MutationObserver(function(){var u=e.slice();e.length=0,u.forEach(function(c){c()})}).observe(i,{attributes:!0});var s=x.setImmediate;x.setImmediate=function(u){Date.now()-r>15?(r=Date.now(),s(u)):(e.push(u),e.length===1&&i.setAttribute("a",n=!n))}}x.nextTick=x.setImmediate})();x.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;x.globalScope=function(){return x.isNodejs?globalThis:typeof self>"u"?window:self}();x.isArray=Array.isArray||function(t){return Object.prototype.toString.call(t)==="[object Array]"};x.isArrayBuffer=function(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer};x.isArrayBufferView=function(t){return t&&x.isArrayBuffer(t.buffer)&&t.byteLength!==void 0};function Sn(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}x.ByteBuffer=zs;function zs(t){if(this.data="",this.read=0,typeof t=="string")this.data=t;else if(x.isArrayBuffer(t)||x.isArrayBufferView(t))if(typeof Buffer<"u"&&t instanceof Buffer)this.data=t.toString("binary");else{var e=new Uint8Array(t);try{this.data=String.fromCharCode.apply(null,e)}catch{for(var r=0;r<e.length;++r)this.putByte(e[r])}}else(t instanceof zs||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}x.ByteStringBuffer=zs;var $h=4096;x.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>$h&&(this.data.substr(0,1),this._constructedStringLength=0)};x.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};x.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};x.ByteStringBuffer.prototype.putByte=function(t){return this.putBytes(String.fromCharCode(t))};x.ByteStringBuffer.prototype.fillWithByte=function(t,e){t=String.fromCharCode(t);for(var r=this.data;e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return this.data=r,this._optimizeConstructedString(e),this};x.ByteStringBuffer.prototype.putBytes=function(t){return this.data+=t,this._optimizeConstructedString(t.length),this};x.ByteStringBuffer.prototype.putString=function(t){return this.putBytes(x.encodeUtf8(t))};x.ByteStringBuffer.prototype.putInt16=function(t){return this.putBytes(String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};x.ByteStringBuffer.prototype.putInt24=function(t){return this.putBytes(String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};x.ByteStringBuffer.prototype.putInt32=function(t){return this.putBytes(String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};x.ByteStringBuffer.prototype.putInt16Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255))};x.ByteStringBuffer.prototype.putInt24Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255))};x.ByteStringBuffer.prototype.putInt32Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>24&255))};x.ByteStringBuffer.prototype.putInt=function(t,e){Sn(e);var r="";do e-=8,r+=String.fromCharCode(t>>e&255);while(e>0);return this.putBytes(r)};x.ByteStringBuffer.prototype.putSignedInt=function(t,e){return t<0&&(t+=2<<e-1),this.putInt(t,e)};x.ByteStringBuffer.prototype.putBuffer=function(t){return this.putBytes(t.getBytes())};x.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};x.ByteStringBuffer.prototype.getInt16=function(){var t=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,t};x.ByteStringBuffer.prototype.getInt24=function(){var t=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,t};x.ByteStringBuffer.prototype.getInt32=function(){var t=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,t};x.ByteStringBuffer.prototype.getInt16Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,t};x.ByteStringBuffer.prototype.getInt24Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,t};x.ByteStringBuffer.prototype.getInt32Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,t};x.ByteStringBuffer.prototype.getInt=function(t){Sn(t);var e=0;do e=(e<<8)+this.data.charCodeAt(this.read++),t-=8;while(t>0);return e};x.ByteStringBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};x.ByteStringBuffer.prototype.getBytes=function(t){var e;return t?(t=Math.min(this.length(),t),e=this.data.slice(this.read,this.read+t),this.read+=t):t===0?e="":(e=this.read===0?this.data:this.data.slice(this.read),this.clear()),e};x.ByteStringBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};x.ByteStringBuffer.prototype.at=function(t){return this.data.charCodeAt(this.read+t)};x.ByteStringBuffer.prototype.setAt=function(t,e){return this.data=this.data.substr(0,this.read+t)+String.fromCharCode(e)+this.data.substr(this.read+t+1),this};x.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};x.ByteStringBuffer.prototype.copy=function(){var t=x.createBuffer(this.data);return t.read=this.read,t};x.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};x.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};x.ByteStringBuffer.prototype.truncate=function(t){var e=Math.max(0,this.length()-t);return this.data=this.data.substr(this.read,e),this.read=0,this};x.ByteStringBuffer.prototype.toHex=function(){for(var t="",e=this.read;e<this.data.length;++e){var r=this.data.charCodeAt(e);r<16&&(t+="0"),t+=r.toString(16)}return t};x.ByteStringBuffer.prototype.toString=function(){return x.decodeUtf8(this.bytes())};function Zh(t,e){e=e||{},this.read=e.readOffset||0,this.growSize=e.growSize||1024;var r=x.isArrayBuffer(t),n=x.isArrayBufferView(t);if(r||n){r?this.data=new DataView(t):this.data=new DataView(t.buffer,t.byteOffset,t.byteLength),this.write="writeOffset"in e?e.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,t!=null&&this.putBytes(t),"writeOffset"in e&&(this.write=e.writeOffset)}x.DataBuffer=Zh;x.DataBuffer.prototype.length=function(){return this.write-this.read};x.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};x.DataBuffer.prototype.accommodate=function(t,e){if(this.length()>=t)return this;e=Math.max(e||this.growSize,t);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+e);return n.set(r),this.data=new DataView(n.buffer),this};x.DataBuffer.prototype.putByte=function(t){return this.accommodate(1),this.data.setUint8(this.write++,t),this};x.DataBuffer.prototype.fillWithByte=function(t,e){this.accommodate(e);for(var r=0;r<e;++r)this.data.setUint8(t);return this};x.DataBuffer.prototype.putBytes=function(t,e){if(x.isArrayBufferView(t)){var r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(x.isArrayBuffer(t)){var r=new Uint8Array(t);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(t instanceof x.DataBuffer||typeof t=="object"&&typeof t.read=="number"&&typeof t.write=="number"&&x.isArrayBufferView(t.data)){var r=new Uint8Array(t.data.byteLength,t.read,t.length());this.accommodate(r.byteLength);var i=new Uint8Array(t.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(t instanceof x.ByteStringBuffer&&(t=t.data,e="binary"),e=e||"binary",typeof t=="string"){var s;if(e==="hex")return this.accommodate(Math.ceil(t.length/2)),s=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.hex.decode(t,s,this.write),this;if(e==="base64")return this.accommodate(Math.ceil(t.length/4)*3),s=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.base64.decode(t,s,this.write),this;if(e==="utf8"&&(t=x.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),s=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.raw.decode(s),this;if(e==="utf16")return this.accommodate(t.length*2),s=new Uint16Array(this.data.buffer,this.write),this.write+=x.text.utf16.encode(s),this;throw new Error("Invalid encoding: "+e)}throw Error("Invalid parameter: "+t)};x.DataBuffer.prototype.putBuffer=function(t){return this.putBytes(t),t.clear(),this};x.DataBuffer.prototype.putString=function(t){return this.putBytes(t,"utf16")};x.DataBuffer.prototype.putInt16=function(t){return this.accommodate(2),this.data.setInt16(this.write,t),this.write+=2,this};x.DataBuffer.prototype.putInt24=function(t){return this.accommodate(3),this.data.setInt16(this.write,t>>8&65535),this.data.setInt8(this.write,t>>16&255),this.write+=3,this};x.DataBuffer.prototype.putInt32=function(t){return this.accommodate(4),this.data.setInt32(this.write,t),this.write+=4,this};x.DataBuffer.prototype.putInt16Le=function(t){return this.accommodate(2),this.data.setInt16(this.write,t,!0),this.write+=2,this};x.DataBuffer.prototype.putInt24Le=function(t){return this.accommodate(3),this.data.setInt8(this.write,t>>16&255),this.data.setInt16(this.write,t>>8&65535,!0),this.write+=3,this};x.DataBuffer.prototype.putInt32Le=function(t){return this.accommodate(4),this.data.setInt32(this.write,t,!0),this.write+=4,this};x.DataBuffer.prototype.putInt=function(t,e){Sn(e),this.accommodate(e/8);do e-=8,this.data.setInt8(this.write++,t>>e&255);while(e>0);return this};x.DataBuffer.prototype.putSignedInt=function(t,e){return Sn(e),this.accommodate(e/8),t<0&&(t+=2<<e-1),this.putInt(t,e)};x.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};x.DataBuffer.prototype.getInt16=function(){var t=this.data.getInt16(this.read);return this.read+=2,t};x.DataBuffer.prototype.getInt24=function(){var t=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,t};x.DataBuffer.prototype.getInt32=function(){var t=this.data.getInt32(this.read);return this.read+=4,t};x.DataBuffer.prototype.getInt16Le=function(){var t=this.data.getInt16(this.read,!0);return this.read+=2,t};x.DataBuffer.prototype.getInt24Le=function(){var t=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,t};x.DataBuffer.prototype.getInt32Le=function(){var t=this.data.getInt32(this.read,!0);return this.read+=4,t};x.DataBuffer.prototype.getInt=function(t){Sn(t);var e=0;do e=(e<<8)+this.data.getInt8(this.read++),t-=8;while(t>0);return e};x.DataBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};x.DataBuffer.prototype.getBytes=function(t){var e;return t?(t=Math.min(this.length(),t),e=this.data.slice(this.read,this.read+t),this.read+=t):t===0?e="":(e=this.read===0?this.data:this.data.slice(this.read),this.clear()),e};x.DataBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};x.DataBuffer.prototype.at=function(t){return this.data.getUint8(this.read+t)};x.DataBuffer.prototype.setAt=function(t,e){return this.data.setUint8(t,e),this};x.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};x.DataBuffer.prototype.copy=function(){return new x.DataBuffer(this)};x.DataBuffer.prototype.compact=function(){if(this.read>0){var t=new Uint8Array(this.data.buffer,this.read),e=new Uint8Array(t.byteLength);e.set(t),this.data=new DataView(e),this.write-=this.read,this.read=0}return this};x.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};x.DataBuffer.prototype.truncate=function(t){return this.write=Math.max(0,this.length()-t),this.read=Math.min(this.read,this.write),this};x.DataBuffer.prototype.toHex=function(){for(var t="",e=this.read;e<this.data.byteLength;++e){var r=this.data.getUint8(e);r<16&&(t+="0"),t+=r.toString(16)}return t};x.DataBuffer.prototype.toString=function(t){var e=new Uint8Array(this.data,this.read,this.length());if(t=t||"utf8",t==="binary"||t==="raw")return x.binary.raw.encode(e);if(t==="hex")return x.binary.hex.encode(e);if(t==="base64")return x.binary.base64.encode(e);if(t==="utf8")return x.text.utf8.decode(e);if(t==="utf16")return x.text.utf16.decode(e);throw new Error("Invalid encoding: "+t)};x.createBuffer=function(t,e){return e=e||"raw",t!==void 0&&e==="utf8"&&(t=x.encodeUtf8(t)),new x.ByteBuffer(t)};x.fillString=function(t,e){for(var r="";e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return r};x.xorBytes=function(t,e,r){for(var n="",i="",s="",o=0,a=0;r>0;--r,++o)i=t.charCodeAt(o)^e.charCodeAt(o),a>=10&&(n+=s,s="",a=0),s+=String.fromCharCode(i),++a;return n+=s,n};x.hexToBytes=function(t){var e="",r=0;for(t.length&!0&&(r=1,e+=String.fromCharCode(parseInt(t[0],16)));r<t.length;r+=2)e+=String.fromCharCode(parseInt(t.substr(r,2),16));return e};x.bytesToHex=function(t){return x.createBuffer(t).toHex()};x.int32ToBytes=function(t){return String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255)};var We="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Qe=[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],w0="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";x.encode64=function(t,e){for(var r="",n="",i,s,o,a=0;a<t.length;)i=t.charCodeAt(a++),s=t.charCodeAt(a++),o=t.charCodeAt(a++),r+=We.charAt(i>>2),r+=We.charAt((i&3)<<4|s>>4),isNaN(s)?r+="==":(r+=We.charAt((s&15)<<2|o>>6),r+=isNaN(o)?"=":We.charAt(o&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
4
|
-
`,r=r.substr(e));return n+=r,n};x.decode64=function(t){t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var e="",r,n,i,s,o=0;o<t.length;)r=
|
5
|
-
`,r=r.substr(e));return n+=r,n};x.binary.base64.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(Math.ceil(t.length/4)*3)),t=t.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,s,o,a,u=0,c=r;u<t.length;)i=Qe[t.charCodeAt(u++)-43],s=Qe[t.charCodeAt(u++)-43],o=Qe[t.charCodeAt(u++)-43],a=Qe[t.charCodeAt(u++)-43],n[c++]=i<<2|s>>4,o!==64&&(n[c++]=(s&15)<<4|o>>2,a!==64&&(n[c++]=(o&3)<<6|a));return e?c-r:n.subarray(0,c)};x.binary.base58.encode=function(t,e){return x.binary.baseN.encode(t,w0,e)};x.binary.base58.decode=function(t,e){return x.binary.baseN.decode(t,w0,e)};x.text={utf8:{},utf16:{}};x.text.utf8.encode=function(t,e,r){t=x.encodeUtf8(t);var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,s=0;s<t.length;++s)n[i++]=t.charCodeAt(s);return e?i-r:n};x.text.utf8.decode=function(t){return x.decodeUtf8(String.fromCharCode.apply(null,t))};x.text.utf16.encode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var s=r,o=r,a=0;a<t.length;++a)i[o++]=t.charCodeAt(a),s+=2;return e?s-r:n};x.text.utf16.decode=function(t){return String.fromCharCode.apply(null,new Uint16Array(t.buffer))};x.deflate=function(t,e,r){if(e=x.decode64(t.deflate(x.encode64(e)).rval),r){var n=2,i=e.charCodeAt(1);i&32&&(n=6),e=e.substring(n,e.length-4)}return e};x.inflate=function(t,e,r){var n=t.inflate(x.encode64(e)).rval;return n===null?null:x.decode64(n)};var Gs=function(t,e,r){if(!t)throw new Error("WebStorage not available.");var n;if(r===null?n=t.removeItem(e):(r=x.encode64(JSON.stringify(r)),n=t.setItem(e,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},Ys=function(t,e){if(!t)throw new Error("WebStorage not available.");var r=t.getItem(e);if(t.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(x.decode64(r))),r},Xh=function(t,e,r,n){var i=Ys(t,e);i===null&&(i={}),i[r]=n,Gs(t,e,i)},Jh=function(t,e,r){var n=Ys(t,e);return n!==null&&(n=r in n?n[r]:null),n},jh=function(t,e,r){var n=Ys(t,e);if(n!==null&&r in n){delete n[r];var i=!0;for(var s in n){i=!1;break}i&&(n=null),Gs(t,e,n)}},tl=function(t,e){Gs(t,e,null)},fi=function(t,e,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,s=!1,o=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(e[0]===null)throw new Error("Flash local storage not available.");n=t.apply(this,e),s=i==="flash"}(i==="web"||i==="both")&&(e[0]=localStorage,n=t.apply(this,e),s=!0)}catch(u){o=u}if(s)break}if(!s)throw o;return n};x.setItem=function(t,e,r,n,i){fi(Xh,arguments,i)};x.getItem=function(t,e,r,n){return fi(Jh,arguments,n)};x.removeItem=function(t,e,r,n){fi(jh,arguments,n)};x.clearItems=function(t,e,r){fi(tl,arguments,r)};x.isEmpty=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0};x.format=function(t){for(var e=/%./g,r,n,i=0,s=[],o=0;r=e.exec(t);){n=t.substring(o,e.lastIndex-2),n.length>0&&s.push(n),o=e.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?s.push(arguments[i+++1]):s.push("<?>");break;case"%":s.push("%");break;default:s.push("<%"+a+"?>")}}return s.push(t.substring(o)),s.join("")};x.formatNumber=function(t,e,r,n){var i=t,s=isNaN(e=Math.abs(e))?2:e,o=r===void 0?",":r,a=n===void 0?".":n,u=i<0?"-":"",c=parseInt(i=Math.abs(+i||0).toFixed(s),10)+"",f=c.length>3?c.length%3:0;return u+(f?c.substr(0,f)+a:"")+c.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+a)+(s?o+Math.abs(i-c).toFixed(s).slice(2):"")};x.formatSize=function(t){return t>=1073741824?t=x.formatNumber(t/1073741824,2,".","")+" GiB":t>=1048576?t=x.formatNumber(t/1048576,2,".","")+" MiB":t>=1024?t=x.formatNumber(t/1024,0)+" KiB":t=x.formatNumber(t,0)+" bytes",t};x.bytesFromIP=function(t){return t.indexOf(".")!==-1?x.bytesFromIPv4(t):t.indexOf(":")!==-1?x.bytesFromIPv6(t):null};x.bytesFromIPv4=function(t){if(t=t.split("."),t.length!==4)return null;for(var e=x.createBuffer(),r=0;r<t.length;++r){var n=parseInt(t[r],10);if(isNaN(n))return null;e.putByte(n)}return e.getBytes()};x.bytesFromIPv6=function(t){var e=0;t=t.split(":").filter(function(o){return o.length===0&&++e,!0});for(var r=(8-t.length+e)*2,n=x.createBuffer(),i=0;i<8;++i){if(!t[i]||t[i].length===0){n.fillWithByte(0,r),r=0;continue}var s=x.hexToBytes(t[i]);s.length<2&&n.putByte(0),n.putBytes(s)}return n.getBytes()};x.bytesToIP=function(t){return t.length===4?x.bytesToIPv4(t):t.length===16?x.bytesToIPv6(t):null};x.bytesToIPv4=function(t){if(t.length!==4)return null;for(var e=[],r=0;r<t.length;++r)e.push(t.charCodeAt(r));return e.join(".")};x.bytesToIPv6=function(t){if(t.length!==16)return null;for(var e=[],r=[],n=0,i=0;i<t.length;i+=2){for(var s=x.bytesToHex(t[i]+t[i+1]);s[0]==="0"&&s!=="0";)s=s.substr(1);if(s==="0"){var o=r[r.length-1],a=e.length;!o||a!==o.end+1?r.push({start:a,end:a}):(o.end=a,o.end-o.start>r[n].end-r[n].start&&(n=r.length-1))}e.push(s)}if(r.length>0){var u=r[n];u.end-u.start>0&&(e.splice(u.start,u.end-u.start+1,""),u.start===0&&e.unshift(""),u.end===7&&e.push(""))}return e.join(":")};x.estimateCores=function(t,e){if(typeof t=="function"&&(e=t,t={}),t=t||{},"cores"in x&&!t.update)return e(null,x.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return x.cores=navigator.hardwareConcurrency,e(null,x.cores);if(typeof Worker>"u")return x.cores=1,e(null,x.cores);if(typeof Blob>"u")return x.cores=2,e(null,x.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(o){for(var a=Date.now(),u=a+4;Date.now()<u;);self.postMessage({st:a,et:u})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(o,a,u){if(a===0){var c=Math.floor(o.reduce(function(f,h){return f+h},0)/o.length);return x.cores=Math.max(1,c),URL.revokeObjectURL(r),e(null,x.cores)}i(u,function(f,h){o.push(s(u,h)),n(o,a-1,u)})}function i(o,a){for(var u=[],c=[],f=0;f<o;++f){var h=new Worker(r);h.addEventListener("message",function(l){if(c.push(l.data),c.length===o){for(var g=0;g<o;++g)u[g].terminate();a(null,c)}}),u.push(h)}for(var f=0;f<o;++f)u[f].postMessage(f)}function s(o,a){for(var u=[],c=0;c<o;++c)for(var f=a[c],h=u[c]=[],l=0;l<o;++l)if(c!==l){var g=a[l];(f.st>g.st&&f.st<g.et||g.st>f.st&&g.st<f.et)&&h.push(l)}return u.reduce(function(p,d){return Math.max(p,d.length)},0)}}});var Qs=ct((Xx,S0)=>{var Dt=ot();Et();S0.exports=Dt.cipher=Dt.cipher||{};Dt.cipher.algorithms=Dt.cipher.algorithms||{};Dt.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Dt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Dt.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Dt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Dt.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Dt.cipher.algorithms[t]=e};Dt.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Dt.cipher.algorithms?Dt.cipher.algorithms[t]:null};var Ws=Dt.cipher.BlockCipher=function(t){this.algorithm=t.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=t.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=t.decrypt,this.algorithm.initialize(t)};Ws.prototype.start=function(t){t=t||{};var e={};for(var r in t)e[r]=t[r];e.decrypt=this._decrypt,this._finish=!1,this._input=Dt.util.createBuffer(),this.output=t.output||Dt.util.createBuffer(),this.mode.start(e)};Ws.prototype.update=function(t){for(t&&this._input.putBuffer(t);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};Ws.prototype.finish=function(t){t&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return t(this.blockSize,r,!1)},this.mode.unpad=function(r){return t(this.blockSize,r,!0)});var e={};return e.decrypt=this._decrypt,e.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,e)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,e))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,e))}});var Zs=ct((Jx,B0)=>{var kt=ot();Et();kt.cipher=kt.cipher||{};var Z=B0.exports=kt.cipher.modes=kt.cipher.modes||{};Z.ecb=function(t){t=t||{},this.name="ECB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};Z.ecb.prototype.start=function(t){};Z.ecb.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};Z.ecb.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};Z.ecb.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};Z.ecb.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};Z.cbc=function(t){t=t||{},this.name="CBC",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};Z.cbc.prototype.start=function(t){if(t.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in t)this._iv=hi(t.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};Z.cbc.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n]);this._prev=this._outBlock};Z.cbc.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};Z.cbc.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};Z.cbc.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};Z.cfb=function(t){t=t||{},this.name="CFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=kt.util.createBuffer(),this._partialBytes=0};Z.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=hi(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};Z.cfb.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32()^this._outBlock[i],e.putInt32(this._inBlock[i]);return}var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(s>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),s>0&&!r)return e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};Z.cfb.prototype.decrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32(),e.putInt32(this._inBlock[i]^this._outBlock[i]);return}var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(s>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),s>0&&!r)return e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};Z.ofb=function(t){t=t||{},this.name="OFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=kt.util.createBuffer(),this._partialBytes=0};Z.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=hi(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};Z.ofb.prototype.encrypt=function(t,e,r){var n=t.length();if(t.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(s>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),s>0&&!r)return e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};Z.ofb.prototype.decrypt=Z.ofb.prototype.encrypt;Z.ctr=function(t){t=t||{},this.name="CTR",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=kt.util.createBuffer(),this._partialBytes=0};Z.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=hi(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};Z.ctr.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]);else{var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(s>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),s>0&&!r)return e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}li(this._inBlock)};Z.ctr.prototype.decrypt=Z.ctr.prototype.encrypt;Z.gcm=function(t){t=t||{},this.name="GCM",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=kt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};Z.gcm.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");var e=kt.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=kt.util.createBuffer(t.additionalData):r=kt.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=kt.util.createBuffer(t.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=e.length();if(n===12)this._j0=[e.getInt32(),e.getInt32(),e.getInt32(),1];else{for(this._j0=[0,0,0,0];e.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[e.getInt32(),e.getInt32(),e.getInt32(),e.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat($s(n*8)))}this._inBlock=this._j0.slice(0),li(this._inBlock),this._partialBytes=0,r=kt.util.createBuffer(r),this._aDataLength=$s(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()])};Z.gcm.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^=t.getInt32());this._cipherLength+=this.blockSize}else{var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(s<=0||r){if(r){var o=n%this.blockSize;this._cipherLength+=o,this._partialOutput.truncate(this.blockSize-o)}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),s>0&&!r)return t.read-=this.blockSize,e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),li(this._inBlock)};Z.gcm.prototype.decrypt=function(t,e,r){var n=t.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),li(this._inBlock),this._hashBlock[0]=t.getInt32(),this._hashBlock[1]=t.getInt32(),this._hashBlock[2]=t.getInt32(),this._hashBlock[3]=t.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};Z.gcm.prototype.afterFinish=function(t,e){var r=!0;e.decrypt&&e.overflow&&t.truncate(this.blockSize-e.overflow),this.tag=kt.util.createBuffer();var n=this._aDataLength.concat($s(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var s=0;s<this._ints;++s)this.tag.putInt32(this._s[s]^i[s]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),e.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};Z.gcm.prototype.multiply=function(t,e){for(var r=[0,0,0,0],n=e.slice(0),i=0;i<128;++i){var s=t[i/32|0]&1<<31-i%32;s&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};Z.gcm.prototype.pow=function(t,e){for(var r=t[3]&1,n=3;n>0;--n)e[n]=t[n]>>>1|(t[n-1]&1)<<31;e[0]=t[0]>>>1,r&&(e[0]^=this._R)};Z.gcm.prototype.tableMultiply=function(t){for(var e=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=t[n]>>>(7-r%8)*4&15,s=this._m[r][i];e[0]^=s[0],e[1]^=s[1],e[2]^=s[2],e[3]^=s[3]}return e};Z.gcm.prototype.ghash=function(t,e,r){return e[0]^=r[0],e[1]^=r[1],e[2]^=r[2],e[3]^=r[3],this.tableMultiply(e)};Z.gcm.prototype.generateHashTable=function(t,e){for(var r=8/e,n=4*r,i=16*r,s=new Array(i),o=0;o<i;++o){var a=[0,0,0,0],u=o/n|0,c=(n-1-o%n)*e;a[u]=1<<e-1<<c,s[o]=this.generateSubHashTable(this.multiply(a,t),e)}return s};Z.gcm.prototype.generateSubHashTable=function(t,e){var r=1<<e,n=r>>>1,i=new Array(r);i[n]=t.slice(0);for(var s=n>>>1;s>0;)this.pow(i[2*s],i[s]=[]),s>>=1;for(s=2;s<n;){for(var o=1;o<s;++o){var a=i[s],u=i[o];i[s+o]=[a[0]^u[0],a[1]^u[1],a[2]^u[2],a[3]^u[3]]}s*=2}for(i[0]=[0,0,0,0],s=n+1;s<r;++s){var c=i[s^n];i[s]=[t[0]^c[0],t[1]^c[1],t[2]^c[2],t[3]^c[3]]}return i};function hi(t,e){if(typeof t=="string"&&(t=kt.util.createBuffer(t)),kt.util.isArray(t)&&t.length>4){var r=t;t=kt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(t.length()<e)throw new Error("Invalid IV length; got "+t.length()+" bytes and expected "+e+" bytes.");if(!kt.util.isArray(t)){for(var i=[],s=e/4,n=0;n<s;++n)i.push(t.getInt32());t=i}return t}function li(t){t[t.length-1]=t[t.length-1]+1&4294967295}function $s(t){return[t/4294967296|0,t&4294967295]}});var di=ct((jx,T0)=>{var ft=ot();Qs();Zs();Et();T0.exports=ft.aes=ft.aes||{};ft.aes.startEncrypting=function(t,e,r,n){var i=pi({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};ft.aes.createEncryptionCipher=function(t,e){return pi({key:t,output:null,decrypt:!1,mode:e})};ft.aes.startDecrypting=function(t,e,r,n){var i=pi({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};ft.aes.createDecryptionCipher=function(t,e){return pi({key:t,output:null,decrypt:!0,mode:e})};ft.aes.Algorithm=function(t,e){js||I0();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return Js(r._w,n,i,!1)},decrypt:function(n,i){return Js(r._w,n,i,!0)}}}),r._init=!1};ft.aes.Algorithm.prototype.initialize=function(t){if(!this._init){var e=t.key,r;if(typeof e=="string"&&(e.length===16||e.length===24||e.length===32))e=ft.util.createBuffer(e);else if(ft.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=ft.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!ft.util.isArray(e)){r=e,e=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)e.push(r.getInt32())}}if(!ft.util.isArray(e)||!(e.length===4||e.length===6||e.length===8))throw new Error("Invalid key parameter.");var s=this.mode.name,o=["CFB","OFB","CTR","GCM"].indexOf(s)!==-1;this._w=C0(e,t.decrypt&&!o),this._init=!0}};ft.aes._expandKey=function(t,e){return js||I0(),C0(t,e)};ft.aes._updateBlock=Js;qr("AES-ECB",ft.cipher.modes.ecb);qr("AES-CBC",ft.cipher.modes.cbc);qr("AES-CFB",ft.cipher.modes.cfb);qr("AES-OFB",ft.cipher.modes.ofb);qr("AES-CTR",ft.cipher.modes.ctr);qr("AES-GCM",ft.cipher.modes.gcm);function qr(t,e){var r=function(){return new ft.aes.Algorithm(t,e)};ft.cipher.registerAlgorithm(t,r)}var js=!1,Vr=4,Yt,Xs,A0,cr,ae;function I0(){js=!0,A0=[0,1,2,4,8,16,32,64,128,27,54];for(var t=new Array(256),e=0;e<128;++e)t[e]=e<<1,t[e+128]=e+128<<1^283;Yt=new Array(256),Xs=new Array(256),cr=new Array(4),ae=new Array(4);for(var e=0;e<4;++e)cr[e]=new Array(256),ae[e]=new Array(256);for(var r=0,n=0,i,s,o,a,u,c,f,e=0;e<256;++e){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Yt[r]=a,Xs[a]=r,u=t[a],i=t[r],s=t[i],o=t[s],c=u<<24^a<<16^a<<8^(a^u),f=(i^s^o)<<24^(r^o)<<16^(r^s^o)<<8^(r^i^o);for(var h=0;h<4;++h)cr[h][r]=c,ae[h][a]=f,c=c<<24|c>>>8,f=f<<24|f>>>8;r===0?r=n=1:(r=i^t[t[t[i^o]]],n^=t[t[n]])}}function C0(t,e){for(var r=t.slice(0),n,i=1,s=r.length,o=s+6+1,a=Vr*o,u=s;u<a;++u)n=r[u-1],u%s===0?(n=Yt[n>>>16&255]<<24^Yt[n>>>8&255]<<16^Yt[n&255]<<8^Yt[n>>>24]^A0[i]<<24,i++):s>6&&u%s===4&&(n=Yt[n>>>24]<<24^Yt[n>>>16&255]<<16^Yt[n>>>8&255]<<8^Yt[n&255]),r[u]=r[u-s]^n;if(e){var c,f=ae[0],h=ae[1],l=ae[2],g=ae[3],p=r.slice(0);a=r.length;for(var u=0,d=a-Vr;u<a;u+=Vr,d-=Vr)if(u===0||u===a-Vr)p[u]=r[d],p[u+1]=r[d+3],p[u+2]=r[d+2],p[u+3]=r[d+1];else for(var y=0;y<Vr;++y)c=r[d+y],p[u+(3&-y)]=f[Yt[c>>>24]]^h[Yt[c>>>16&255]]^l[Yt[c>>>8&255]]^g[Yt[c&255]];r=p}return r}function Js(t,e,r,n){var i=t.length/4-1,s,o,a,u,c;n?(s=ae[0],o=ae[1],a=ae[2],u=ae[3],c=Xs):(s=cr[0],o=cr[1],a=cr[2],u=cr[3],c=Yt);var f,h,l,g,p,d,y;f=e[0]^t[0],h=e[n?3:1]^t[1],l=e[2]^t[2],g=e[n?1:3]^t[3];for(var m=3,w=1;w<i;++w)p=s[f>>>24]^o[h>>>16&255]^a[l>>>8&255]^u[g&255]^t[++m],d=s[h>>>24]^o[l>>>16&255]^a[g>>>8&255]^u[f&255]^t[++m],y=s[l>>>24]^o[g>>>16&255]^a[f>>>8&255]^u[h&255]^t[++m],g=s[g>>>24]^o[f>>>16&255]^a[h>>>8&255]^u[l&255]^t[++m],f=p,h=d,l=y;r[0]=c[f>>>24]<<24^c[h>>>16&255]<<16^c[l>>>8&255]<<8^c[g&255]^t[++m],r[n?3:1]=c[h>>>24]<<24^c[l>>>16&255]<<16^c[g>>>8&255]<<8^c[f&255]^t[++m],r[2]=c[l>>>24]<<24^c[g>>>16&255]<<16^c[f>>>8&255]<<8^c[h&255]^t[++m],r[n?1:3]=c[g>>>24]<<24^c[f>>>16&255]<<16^c[h>>>8&255]<<8^c[l&255]^t[++m]}function pi(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=ft.cipher.createDecipher(r,t.key):n=ft.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(s,o){var a=null;o instanceof ft.util.ByteBuffer&&(a=o,o={}),o=o||{},o.output=a,o.iv=s,i.call(n,o)},n}});var mi=ct((E2,D0)=>{var Bn=ot();Bn.pki=Bn.pki||{};var eo=D0.exports=Bn.pki.oids=Bn.oids=Bn.oids||{};function T(t,e){eo[t]=e,eo[e]=t}function it(t,e){eo[t]=e}T("1.2.840.113549.1.1.1","rsaEncryption");T("1.2.840.113549.1.1.4","md5WithRSAEncryption");T("1.2.840.113549.1.1.5","sha1WithRSAEncryption");T("1.2.840.113549.1.1.7","RSAES-OAEP");T("1.2.840.113549.1.1.8","mgf1");T("1.2.840.113549.1.1.9","pSpecified");T("1.2.840.113549.1.1.10","RSASSA-PSS");T("1.2.840.113549.1.1.11","sha256WithRSAEncryption");T("1.2.840.113549.1.1.12","sha384WithRSAEncryption");T("1.2.840.113549.1.1.13","sha512WithRSAEncryption");T("1.3.101.112","EdDSA25519");T("1.2.840.10040.4.3","dsa-with-sha1");T("1.3.14.3.2.7","desCBC");T("1.3.14.3.2.26","sha1");T("1.3.14.3.2.29","sha1WithRSASignature");T("2.16.840.1.101.3.4.2.1","sha256");T("2.16.840.1.101.3.4.2.2","sha384");T("2.16.840.1.101.3.4.2.3","sha512");T("2.16.840.1.101.3.4.2.4","sha224");T("2.16.840.1.101.3.4.2.5","sha512-224");T("2.16.840.1.101.3.4.2.6","sha512-256");T("1.2.840.113549.2.2","md2");T("1.2.840.113549.2.5","md5");T("1.2.840.113549.1.7.1","data");T("1.2.840.113549.1.7.2","signedData");T("1.2.840.113549.1.7.3","envelopedData");T("1.2.840.113549.1.7.4","signedAndEnvelopedData");T("1.2.840.113549.1.7.5","digestedData");T("1.2.840.113549.1.7.6","encryptedData");T("1.2.840.113549.1.9.1","emailAddress");T("1.2.840.113549.1.9.2","unstructuredName");T("1.2.840.113549.1.9.3","contentType");T("1.2.840.113549.1.9.4","messageDigest");T("1.2.840.113549.1.9.5","signingTime");T("1.2.840.113549.1.9.6","counterSignature");T("1.2.840.113549.1.9.7","challengePassword");T("1.2.840.113549.1.9.8","unstructuredAddress");T("1.2.840.113549.1.9.14","extensionRequest");T("1.2.840.113549.1.9.20","friendlyName");T("1.2.840.113549.1.9.21","localKeyId");T("1.2.840.113549.1.9.22.1","x509Certificate");T("1.2.840.113549.1.12.10.1.1","keyBag");T("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");T("1.2.840.113549.1.12.10.1.3","certBag");T("1.2.840.113549.1.12.10.1.4","crlBag");T("1.2.840.113549.1.12.10.1.5","secretBag");T("1.2.840.113549.1.12.10.1.6","safeContentsBag");T("1.2.840.113549.1.5.13","pkcs5PBES2");T("1.2.840.113549.1.5.12","pkcs5PBKDF2");T("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");T("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");T("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");T("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");T("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");T("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");T("1.2.840.113549.2.7","hmacWithSHA1");T("1.2.840.113549.2.8","hmacWithSHA224");T("1.2.840.113549.2.9","hmacWithSHA256");T("1.2.840.113549.2.10","hmacWithSHA384");T("1.2.840.113549.2.11","hmacWithSHA512");T("1.2.840.113549.3.7","des-EDE3-CBC");T("2.16.840.1.101.3.4.1.2","aes128-CBC");T("2.16.840.1.101.3.4.1.22","aes192-CBC");T("2.16.840.1.101.3.4.1.42","aes256-CBC");T("2.5.4.3","commonName");T("2.5.4.4","surname");T("2.5.4.5","serialNumber");T("2.5.4.6","countryName");T("2.5.4.7","localityName");T("2.5.4.8","stateOrProvinceName");T("2.5.4.9","streetAddress");T("2.5.4.10","organizationName");T("2.5.4.11","organizationalUnitName");T("2.5.4.12","title");T("2.5.4.13","description");T("2.5.4.15","businessCategory");T("2.5.4.17","postalCode");T("2.5.4.42","givenName");T("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");T("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");T("2.16.840.1.113730.1.1","nsCertType");T("2.16.840.1.113730.1.13","nsComment");it("2.5.29.1","authorityKeyIdentifier");it("2.5.29.2","keyAttributes");it("2.5.29.3","certificatePolicies");it("2.5.29.4","keyUsageRestriction");it("2.5.29.5","policyMapping");it("2.5.29.6","subtreesConstraint");it("2.5.29.7","subjectAltName");it("2.5.29.8","issuerAltName");it("2.5.29.9","subjectDirectoryAttributes");it("2.5.29.10","basicConstraints");it("2.5.29.11","nameConstraints");it("2.5.29.12","policyConstraints");it("2.5.29.13","basicConstraints");T("2.5.29.14","subjectKeyIdentifier");T("2.5.29.15","keyUsage");it("2.5.29.16","privateKeyUsagePeriod");T("2.5.29.17","subjectAltName");T("2.5.29.18","issuerAltName");T("2.5.29.19","basicConstraints");it("2.5.29.20","cRLNumber");it("2.5.29.21","cRLReason");it("2.5.29.22","expirationDate");it("2.5.29.23","instructionCode");it("2.5.29.24","invalidityDate");it("2.5.29.25","cRLDistributionPoints");it("2.5.29.26","issuingDistributionPoint");it("2.5.29.27","deltaCRLIndicator");it("2.5.29.28","issuingDistributionPoint");it("2.5.29.29","certificateIssuer");it("2.5.29.30","nameConstraints");T("2.5.29.31","cRLDistributionPoints");T("2.5.29.32","certificatePolicies");it("2.5.29.33","policyMappings");it("2.5.29.34","policyConstraints");T("2.5.29.35","authorityKeyIdentifier");it("2.5.29.36","policyConstraints");T("2.5.29.37","extKeyUsage");it("2.5.29.46","freshestCRL");it("2.5.29.54","inhibitAnyPolicy");T("1.3.6.1.4.1.11129.2.4.2","timestampList");T("1.3.6.1.5.5.7.1.1","authorityInfoAccess");T("1.3.6.1.5.5.7.3.1","serverAuth");T("1.3.6.1.5.5.7.3.2","clientAuth");T("1.3.6.1.5.5.7.3.3","codeSigning");T("1.3.6.1.5.5.7.3.4","emailProtection");T("1.3.6.1.5.5.7.3.8","timeStamping")});var In=ct((S2,U0)=>{var ht=ot();Et();mi();var k=U0.exports=ht.asn1=ht.asn1||{};k.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};k.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};k.create=function(t,e,r,n,i){if(ht.util.isArray(n)){for(var s=[],o=0;o<n.length;++o)n[o]!==void 0&&s.push(n[o]);n=s}var a={tagClass:t,type:e,constructed:r,composed:r||ht.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=k.copy(a)),a};k.copy=function(t,e){var r;if(ht.util.isArray(t)){r=[];for(var n=0;n<t.length;++n)r.push(k.copy(t[n],e));return r}return typeof t=="string"?t:(r={tagClass:t.tagClass,type:t.type,constructed:t.constructed,composed:t.composed,value:k.copy(t.value,e)},e&&!e.excludeBitStringContents&&(r.bitStringContents=t.bitStringContents),r)};k.equals=function(t,e,r){if(ht.util.isArray(t)){if(!ht.util.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;++n)if(!k.equals(t[n],e[n]))return!1;return!0}if(typeof t!=typeof e)return!1;if(typeof t=="string")return t===e;var i=t.tagClass===e.tagClass&&t.type===e.type&&t.constructed===e.constructed&&t.composed===e.composed&&k.equals(t.value,e.value);return r&&r.includeBitStringContents&&(i=i&&t.bitStringContents===e.bitStringContents),i};k.getBerValueLength=function(t){var e=t.getByte();if(e!==128){var r,n=e&128;return n?r=t.getInt((e&127)<<3):r=e,r}};function An(t,e,r){if(r>e){var n=new Error("Too few bytes to parse DER.");throw n.available=t.length(),n.remaining=e,n.requested=r,n}}var al=function(t,e){var r=t.getByte();if(e--,r!==128){var n,i=r&128;if(!i)n=r;else{var s=r&127;An(t,e,s),n=t.getInt(s<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};k.fromDer=function(t,e){e===void 0&&(e={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof e=="boolean"&&(e={strict:e,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in e||(e.strict=!0),"parseAllBytes"in e||(e.parseAllBytes=!0),"decodeBitStrings"in e||(e.decodeBitStrings=!0),typeof t=="string"&&(t=ht.util.createBuffer(t));var r=t.length(),n=xi(t,t.length(),0,e);if(e.parseAllBytes&&t.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=t.length(),i}return n};function xi(t,e,r,n){var i;An(t,e,2);var s=t.getByte();e--;var o=s&192,a=s&31;i=t.length();var u=al(t,e);if(e-=i-t.length(),u!==void 0&&u>e){if(n.strict){var c=new Error("Too few bytes to read ASN.1 value.");throw c.available=t.length(),c.remaining=e,c.requested=u,c}u=e}var f,h,l=(s&32)===32;if(l)if(f=[],u===void 0)for(;;){if(An(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),f.push(xi(t,e,r+1,n)),e-=i-t.length()}else for(;u>0;)i=t.length(),f.push(xi(t,u,r+1,n)),e-=i-t.length(),u-=i-t.length();if(f===void 0&&o===k.Class.UNIVERSAL&&a===k.Type.BITSTRING&&(h=t.bytes(u)),f===void 0&&n.decodeBitStrings&&o===k.Class.UNIVERSAL&&a===k.Type.BITSTRING&&u>1){var g=t.read,p=e,d=0;if(a===k.Type.BITSTRING&&(An(t,e,1),d=t.getByte(),e--),d===0)try{i=t.length();var y={strict:!0,decodeBitStrings:!0},m=xi(t,e,r+1,y),w=i-t.length();e-=w,a==k.Type.BITSTRING&&w++;var b=m.tagClass;w===u&&(b===k.Class.UNIVERSAL||b===k.Class.CONTEXT_SPECIFIC)&&(f=[m])}catch{}f===void 0&&(t.read=g,e=p)}if(f===void 0){if(u===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");u=e}if(a===k.Type.BMPSTRING)for(f="";u>0;u-=2)An(t,e,2),f+=String.fromCharCode(t.getInt16()),e-=2;else f=t.getBytes(u),e-=u}var _=h===void 0?null:{bitStringContents:h};return k.create(o,a,l,f,_)}k.toDer=function(t){var e=ht.util.createBuffer(),r=t.tagClass|t.type,n=ht.util.createBuffer(),i=!1;if("bitStringContents"in t&&(i=!0,t.original&&(i=k.equals(t,t.original))),i)n.putBytes(t.bitStringContents);else if(t.composed){t.constructed?r|=32:n.putByte(0);for(var s=0;s<t.value.length;++s)t.value[s]!==void 0&&n.putBuffer(k.toDer(t.value[s]))}else if(t.type===k.Type.BMPSTRING)for(var s=0;s<t.value.length;++s)n.putInt16(t.value.charCodeAt(s));else t.type===k.Type.INTEGER&&t.value.length>1&&(t.value.charCodeAt(0)===0&&!(t.value.charCodeAt(1)&128)||t.value.charCodeAt(0)===255&&(t.value.charCodeAt(1)&128)===128)?n.putBytes(t.value.substr(1)):n.putBytes(t.value);if(e.putByte(r),n.length()<=127)e.putByte(n.length()&127);else{var o=n.length(),a="";do a+=String.fromCharCode(o&255),o=o>>>8;while(o>0);e.putByte(a.length|128);for(var s=a.length-1;s>=0;--s)e.putByte(a.charCodeAt(s))}return e.putBuffer(n),e};k.oidToDer=function(t){var e=t.split("."),r=ht.util.createBuffer();r.putByte(40*parseInt(e[0],10)+parseInt(e[1],10));for(var n,i,s,o,a=2;a<e.length;++a){n=!0,i=[],s=parseInt(e[a],10);do o=s&127,s=s>>>7,n||(o|=128),i.push(o),n=!1;while(s>0);for(var u=i.length-1;u>=0;--u)r.putByte(i[u])}return r};k.derToOid=function(t){var e;typeof t=="string"&&(t=ht.util.createBuffer(t));var r=t.getByte();e=Math.floor(r/40)+"."+r%40;for(var n=0;t.length()>0;)r=t.getByte(),n=n<<7,r&128?n+=r&127:(e+="."+(n+r),n=0);return e};k.utcTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(t.substr(2,2),10)-1,i=parseInt(t.substr(4,2),10),s=parseInt(t.substr(6,2),10),o=parseInt(t.substr(8,2),10),a=0;if(t.length>11){var u=t.charAt(10),c=10;u!=="+"&&u!=="-"&&(a=parseInt(t.substr(10,2),10),c+=2)}if(e.setUTCFullYear(r,n,i),e.setUTCHours(s,o,a,0),c&&(u=t.charAt(c),u==="+"||u==="-")){var f=parseInt(t.substr(c+1,2),10),h=parseInt(t.substr(c+4,2),10),l=f*60+h;l*=6e4,u==="+"?e.setTime(+e-l):e.setTime(+e+l)}return e};k.generalizedTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,4),10),n=parseInt(t.substr(4,2),10)-1,i=parseInt(t.substr(6,2),10),s=parseInt(t.substr(8,2),10),o=parseInt(t.substr(10,2),10),a=parseInt(t.substr(12,2),10),u=0,c=0,f=!1;t.charAt(t.length-1)==="Z"&&(f=!0);var h=t.length-5,l=t.charAt(h);if(l==="+"||l==="-"){var g=parseInt(t.substr(h+1,2),10),p=parseInt(t.substr(h+4,2),10);c=g*60+p,c*=6e4,l==="+"&&(c*=-1),f=!0}return t.charAt(14)==="."&&(u=parseFloat(t.substr(14),10)*1e3),f?(e.setUTCFullYear(r,n,i),e.setUTCHours(s,o,a,u),e.setTime(+e+c)):(e.setFullYear(r,n,i),e.setHours(s,o,a,u)),e};k.dateToUtcTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push((""+t.getUTCFullYear()).substr(2)),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};k.dateToGeneralizedTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push(""+t.getUTCFullYear()),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};k.integerToDer=function(t){var e=ht.util.createBuffer();if(t>=-128&&t<128)return e.putSignedInt(t,8);if(t>=-32768&&t<32768)return e.putSignedInt(t,16);if(t>=-8388608&&t<8388608)return e.putSignedInt(t,24);if(t>=-2147483648&&t<2147483648)return e.putSignedInt(t,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=t,r};k.derToInteger=function(t){typeof t=="string"&&(t=ht.util.createBuffer(t));var e=t.length()*8;if(e>32)throw new Error("Integer too large; max is 32-bits.");return t.getSignedInt(e)};k.validate=function(t,e,r,n){var i=!1;if((t.tagClass===e.tagClass||typeof e.tagClass>"u")&&(t.type===e.type||typeof e.type>"u"))if(t.constructed===e.constructed||typeof e.constructed>"u"){if(i=!0,e.value&&ht.util.isArray(e.value))for(var s=0,o=0;i&&o<e.value.length;++o)i=e.value[o].optional||!1,t.value[s]&&(i=k.validate(t.value[s],e.value[o],r,n),i?++s:e.value[o].optional&&(i=!0)),!i&&n&&n.push("["+e.name+'] Tag class "'+e.tagClass+'", type "'+e.type+'" expected value length "'+e.value.length+'", got "'+t.value.length+'"');if(i&&r&&(e.capture&&(r[e.capture]=t.value),e.captureAsn1&&(r[e.captureAsn1]=t),e.captureBitStringContents&&"bitStringContents"in t&&(r[e.captureBitStringContents]=t.bitStringContents),e.captureBitStringValue&&"bitStringContents"in t)){var a;if(t.bitStringContents.length<2)r[e.captureBitStringValue]="";else{var u=t.bitStringContents.charCodeAt(0);if(u!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[e.captureBitStringValue]=t.bitStringContents.slice(1)}}}else n&&n.push("["+e.name+'] Expected constructed "'+e.constructed+'", got "'+t.constructed+'"');else n&&(t.tagClass!==e.tagClass&&n.push("["+e.name+'] Expected tag class "'+e.tagClass+'", got "'+t.tagClass+'"'),t.type!==e.type&&n.push("["+e.name+'] Expected type "'+e.type+'", got "'+t.type+'"'));return i};var k0=/[^\\u0000-\\u00ff]/;k.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
|
2
|
+
"use strict";var Libp2PPubsub=(()=>{var zc=Object.create;var Pn=Object.defineProperty;var Gc=Object.getOwnPropertyDescriptor;var Yc=Object.getOwnPropertyNames;var Wc=Object.getPrototypeOf,$c=Object.prototype.hasOwnProperty;var ut=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Et=(t,e)=>{for(var r in e)Pn(t,r,{get:e[r],enumerable:!0})},Xo=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Yc(e))!$c.call(t,i)&&i!==r&&Pn(t,i,{get:()=>e[i],enumerable:!(n=Gc(e,i))||n.enumerable});return t};var At=(t,e,r)=>(r=t!=null?zc(Wc(t)):{},Xo(e||!t||!t.__esModule?Pn(r,"default",{value:t,enumerable:!0}):r,t)),Zc=t=>Xo(Pn({},"__esModule",{value:!0}),t);var Ba=ut((Bm,hs)=>{"use strict";var uh=Object.prototype.hasOwnProperty,Ht="~";function an(){}Object.create&&(an.prototype=Object.create(null),new an().__proto__||(Ht=!1));function ch(t,e,r){this.fn=t,this.context=e,this.once=r||!1}function Sa(t,e,r,n,i){if(typeof r!="function")throw new TypeError("The listener must be a function");var s=new ch(r,n||t,i),o=Ht?Ht+e:e;return t._events[o]?t._events[o].fn?t._events[o]=[t._events[o],s]:t._events[o].push(s):(t._events[o]=s,t._eventsCount++),t}function Fn(t,e){--t._eventsCount===0?t._events=new an:delete t._events[e]}function Kt(){this._events=new an,this._eventsCount=0}Kt.prototype.eventNames=function(){var e=[],r,n;if(this._eventsCount===0)return e;for(n in r=this._events)uh.call(r,n)&&e.push(Ht?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e};Kt.prototype.listeners=function(e){var r=Ht?Ht+e:e,n=this._events[r];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,s=n.length,o=new Array(s);i<s;i++)o[i]=n[i].fn;return o};Kt.prototype.listenerCount=function(e){var r=Ht?Ht+e:e,n=this._events[r];return n?n.fn?1:n.length:0};Kt.prototype.emit=function(e,r,n,i,s,o){var a=Ht?Ht+e:e;if(!this._events[a])return!1;var u=this._events[a],c=arguments.length,f,h;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),c){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,r),!0;case 3:return u.fn.call(u.context,r,n),!0;case 4:return u.fn.call(u.context,r,n,i),!0;case 5:return u.fn.call(u.context,r,n,i,s),!0;case 6:return u.fn.call(u.context,r,n,i,s,o),!0}for(h=1,f=new Array(c-1);h<c;h++)f[h-1]=arguments[h];u.fn.apply(u.context,f)}else{var l=u.length,g;for(h=0;h<l;h++)switch(u[h].once&&this.removeListener(e,u[h].fn,void 0,!0),c){case 1:u[h].fn.call(u[h].context);break;case 2:u[h].fn.call(u[h].context,r);break;case 3:u[h].fn.call(u[h].context,r,n);break;case 4:u[h].fn.call(u[h].context,r,n,i);break;default:if(!f)for(g=1,f=new Array(c-1);g<c;g++)f[g-1]=arguments[g];u[h].fn.apply(u[h].context,f)}}return!0};Kt.prototype.on=function(e,r,n){return Sa(this,e,r,n,!1)};Kt.prototype.once=function(e,r,n){return Sa(this,e,r,n,!0)};Kt.prototype.removeListener=function(e,r,n,i){var s=Ht?Ht+e:e;if(!this._events[s])return this;if(!r)return Fn(this,s),this;var o=this._events[s];if(o.fn)o.fn===r&&(!i||o.once)&&(!n||o.context===n)&&Fn(this,s);else{for(var a=0,u=[],c=o.length;a<c;a++)(o[a].fn!==r||i&&!o[a].once||n&&o[a].context!==n)&&u.push(o[a]);u.length?this._events[s]=u.length===1?u[0]:u:Fn(this,s)}return this};Kt.prototype.removeAllListeners=function(e){var r;return e?(r=Ht?Ht+e:e,this._events[r]&&Fn(this,r)):(this._events=new an,this._eventsCount=0),this};Kt.prototype.off=Kt.prototype.removeListener;Kt.prototype.addListener=Kt.prototype.on;Kt.prefixed=Ht;Kt.EventEmitter=Kt;typeof hs<"u"&&(hs.exports=Kt)});var Oa=ut((nx,Ka)=>{"use strict";function Ua(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function mh(t,e,r){if(!t||typeof t=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof e=="object"&&(r=e,e=""),e&&(r.code=e);try{return Ua(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),Ua(new i,r)}}Ka.exports=mh});var st=ut((mx,Ma)=>{Ma.exports={options:{usePureJavaScript:!1}}});var qa=ut((xx,Va)=>{var Es={};Va.exports=Es;var Fa={};Es.encode=function(t,e,r){if(typeof e!="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(!(t instanceof Uint8Array))n=wh(t,e);else{var i=0,s=e.length,o=e.charAt(0),a=[0];for(i=0;i<t.length;++i){for(var u=0,c=t[i];u<a.length;++u)c+=a[u]<<8,a[u]=c%s,c=c/s|0;for(;c>0;)a.push(c%s),c=c/s|0}for(i=0;t[i]===0&&i<t.length-1;++i)n+=o;for(i=a.length-1;i>=0;--i)n+=e[a[i]]}if(r){var f=new RegExp(".{1,"+r+"}","g");n=n.match(f).join(`\r
|
3
|
+
`)}return n};Es.decode=function(t,e){if(typeof t!="string")throw new TypeError('"input" must be a string.');if(typeof e!="string")throw new TypeError('"alphabet" must be a string.');var r=Fa[e];if(!r){r=Fa[e]=[];for(var n=0;n<e.length;++n)r[e.charCodeAt(n)]=n}t=t.replace(/\s/g,"");for(var i=e.length,s=e.charAt(0),o=[0],n=0;n<t.length;n++){var a=r[t.charCodeAt(n)];if(a===void 0)return;for(var u=0,c=a;u<o.length;++u)c+=o[u]*i,o[u]=c&255,c>>=8;for(;c>0;)o.push(c&255),c>>=8}for(var f=0;t[f]===s&&f<t.length-1;++f)o.push(0);return typeof Buffer<"u"?Buffer.from(o.reverse()):new Uint8Array(o.reverse())};function wh(t,e){var r=0,n=e.length,i=e.charAt(0),s=[0];for(r=0;r<t.length();++r){for(var o=0,a=t.at(r);o<s.length;++o)a+=s[o]<<8,s[o]=a%n,a=a/n|0;for(;a>0;)s.push(a%n),a=a/n|0}var u="";for(r=0;t.at(r)===0&&r<t.length()-1;++r)u+=i;for(r=s.length-1;r>=0;--r)u+=e[s[r]];return u}});var bt=ut((bx,Ya)=>{var Ha=st(),za=qa(),x=Ya.exports=Ha.util=Ha.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){x.nextTick=process.nextTick,typeof setImmediate=="function"?x.setImmediate=setImmediate:x.setImmediate=x.nextTick;return}if(typeof setImmediate=="function"){x.setImmediate=function(){return setImmediate.apply(void 0,arguments)},x.nextTick=function(a){return setImmediate(a)};return}if(x.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(u){if(u.source===window&&u.data===t){u.stopPropagation();var c=e.slice();e.length=0,c.forEach(function(f){f()})}};var o=a,t="forge.setImmediate",e=[];x.setImmediate=function(u){e.push(u),e.length===1&&window.postMessage(t,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),e=[];new MutationObserver(function(){var u=e.slice();e.length=0,u.forEach(function(c){c()})}).observe(i,{attributes:!0});var s=x.setImmediate;x.setImmediate=function(u){Date.now()-r>15?(r=Date.now(),s(u)):(e.push(u),e.length===1&&i.setAttribute("a",n=!n))}}x.nextTick=x.setImmediate})();x.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;x.globalScope=function(){return x.isNodejs?globalThis:typeof self>"u"?window:self}();x.isArray=Array.isArray||function(t){return Object.prototype.toString.call(t)==="[object Array]"};x.isArrayBuffer=function(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer};x.isArrayBufferView=function(t){return t&&x.isArrayBuffer(t.buffer)&&t.byteLength!==void 0};function ln(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}x.ByteBuffer=Ss;function Ss(t){if(this.data="",this.read=0,typeof t=="string")this.data=t;else if(x.isArrayBuffer(t)||x.isArrayBufferView(t))if(typeof Buffer<"u"&&t instanceof Buffer)this.data=t.toString("binary");else{var e=new Uint8Array(t);try{this.data=String.fromCharCode.apply(null,e)}catch{for(var r=0;r<e.length;++r)this.putByte(e[r])}}else(t instanceof Ss||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}x.ByteStringBuffer=Ss;var Eh=4096;x.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>Eh&&(this.data.substr(0,1),this._constructedStringLength=0)};x.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};x.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};x.ByteStringBuffer.prototype.putByte=function(t){return this.putBytes(String.fromCharCode(t))};x.ByteStringBuffer.prototype.fillWithByte=function(t,e){t=String.fromCharCode(t);for(var r=this.data;e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return this.data=r,this._optimizeConstructedString(e),this};x.ByteStringBuffer.prototype.putBytes=function(t){return this.data+=t,this._optimizeConstructedString(t.length),this};x.ByteStringBuffer.prototype.putString=function(t){return this.putBytes(x.encodeUtf8(t))};x.ByteStringBuffer.prototype.putInt16=function(t){return this.putBytes(String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};x.ByteStringBuffer.prototype.putInt24=function(t){return this.putBytes(String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};x.ByteStringBuffer.prototype.putInt32=function(t){return this.putBytes(String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};x.ByteStringBuffer.prototype.putInt16Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255))};x.ByteStringBuffer.prototype.putInt24Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255))};x.ByteStringBuffer.prototype.putInt32Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>24&255))};x.ByteStringBuffer.prototype.putInt=function(t,e){ln(e);var r="";do e-=8,r+=String.fromCharCode(t>>e&255);while(e>0);return this.putBytes(r)};x.ByteStringBuffer.prototype.putSignedInt=function(t,e){return t<0&&(t+=2<<e-1),this.putInt(t,e)};x.ByteStringBuffer.prototype.putBuffer=function(t){return this.putBytes(t.getBytes())};x.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};x.ByteStringBuffer.prototype.getInt16=function(){var t=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,t};x.ByteStringBuffer.prototype.getInt24=function(){var t=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,t};x.ByteStringBuffer.prototype.getInt32=function(){var t=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,t};x.ByteStringBuffer.prototype.getInt16Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,t};x.ByteStringBuffer.prototype.getInt24Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,t};x.ByteStringBuffer.prototype.getInt32Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,t};x.ByteStringBuffer.prototype.getInt=function(t){ln(t);var e=0;do e=(e<<8)+this.data.charCodeAt(this.read++),t-=8;while(t>0);return e};x.ByteStringBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};x.ByteStringBuffer.prototype.getBytes=function(t){var e;return t?(t=Math.min(this.length(),t),e=this.data.slice(this.read,this.read+t),this.read+=t):t===0?e="":(e=this.read===0?this.data:this.data.slice(this.read),this.clear()),e};x.ByteStringBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};x.ByteStringBuffer.prototype.at=function(t){return this.data.charCodeAt(this.read+t)};x.ByteStringBuffer.prototype.setAt=function(t,e){return this.data=this.data.substr(0,this.read+t)+String.fromCharCode(e)+this.data.substr(this.read+t+1),this};x.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};x.ByteStringBuffer.prototype.copy=function(){var t=x.createBuffer(this.data);return t.read=this.read,t};x.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};x.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};x.ByteStringBuffer.prototype.truncate=function(t){var e=Math.max(0,this.length()-t);return this.data=this.data.substr(this.read,e),this.read=0,this};x.ByteStringBuffer.prototype.toHex=function(){for(var t="",e=this.read;e<this.data.length;++e){var r=this.data.charCodeAt(e);r<16&&(t+="0"),t+=r.toString(16)}return t};x.ByteStringBuffer.prototype.toString=function(){return x.decodeUtf8(this.bytes())};function Sh(t,e){e=e||{},this.read=e.readOffset||0,this.growSize=e.growSize||1024;var r=x.isArrayBuffer(t),n=x.isArrayBufferView(t);if(r||n){r?this.data=new DataView(t):this.data=new DataView(t.buffer,t.byteOffset,t.byteLength),this.write="writeOffset"in e?e.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,t!=null&&this.putBytes(t),"writeOffset"in e&&(this.write=e.writeOffset)}x.DataBuffer=Sh;x.DataBuffer.prototype.length=function(){return this.write-this.read};x.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};x.DataBuffer.prototype.accommodate=function(t,e){if(this.length()>=t)return this;e=Math.max(e||this.growSize,t);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+e);return n.set(r),this.data=new DataView(n.buffer),this};x.DataBuffer.prototype.putByte=function(t){return this.accommodate(1),this.data.setUint8(this.write++,t),this};x.DataBuffer.prototype.fillWithByte=function(t,e){this.accommodate(e);for(var r=0;r<e;++r)this.data.setUint8(t);return this};x.DataBuffer.prototype.putBytes=function(t,e){if(x.isArrayBufferView(t)){var r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(x.isArrayBuffer(t)){var r=new Uint8Array(t);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(t instanceof x.DataBuffer||typeof t=="object"&&typeof t.read=="number"&&typeof t.write=="number"&&x.isArrayBufferView(t.data)){var r=new Uint8Array(t.data.byteLength,t.read,t.length());this.accommodate(r.byteLength);var i=new Uint8Array(t.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(t instanceof x.ByteStringBuffer&&(t=t.data,e="binary"),e=e||"binary",typeof t=="string"){var s;if(e==="hex")return this.accommodate(Math.ceil(t.length/2)),s=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.hex.decode(t,s,this.write),this;if(e==="base64")return this.accommodate(Math.ceil(t.length/4)*3),s=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.base64.decode(t,s,this.write),this;if(e==="utf8"&&(t=x.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),s=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.raw.decode(s),this;if(e==="utf16")return this.accommodate(t.length*2),s=new Uint16Array(this.data.buffer,this.write),this.write+=x.text.utf16.encode(s),this;throw new Error("Invalid encoding: "+e)}throw Error("Invalid parameter: "+t)};x.DataBuffer.prototype.putBuffer=function(t){return this.putBytes(t),t.clear(),this};x.DataBuffer.prototype.putString=function(t){return this.putBytes(t,"utf16")};x.DataBuffer.prototype.putInt16=function(t){return this.accommodate(2),this.data.setInt16(this.write,t),this.write+=2,this};x.DataBuffer.prototype.putInt24=function(t){return this.accommodate(3),this.data.setInt16(this.write,t>>8&65535),this.data.setInt8(this.write,t>>16&255),this.write+=3,this};x.DataBuffer.prototype.putInt32=function(t){return this.accommodate(4),this.data.setInt32(this.write,t),this.write+=4,this};x.DataBuffer.prototype.putInt16Le=function(t){return this.accommodate(2),this.data.setInt16(this.write,t,!0),this.write+=2,this};x.DataBuffer.prototype.putInt24Le=function(t){return this.accommodate(3),this.data.setInt8(this.write,t>>16&255),this.data.setInt16(this.write,t>>8&65535,!0),this.write+=3,this};x.DataBuffer.prototype.putInt32Le=function(t){return this.accommodate(4),this.data.setInt32(this.write,t,!0),this.write+=4,this};x.DataBuffer.prototype.putInt=function(t,e){ln(e),this.accommodate(e/8);do e-=8,this.data.setInt8(this.write++,t>>e&255);while(e>0);return this};x.DataBuffer.prototype.putSignedInt=function(t,e){return ln(e),this.accommodate(e/8),t<0&&(t+=2<<e-1),this.putInt(t,e)};x.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};x.DataBuffer.prototype.getInt16=function(){var t=this.data.getInt16(this.read);return this.read+=2,t};x.DataBuffer.prototype.getInt24=function(){var t=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,t};x.DataBuffer.prototype.getInt32=function(){var t=this.data.getInt32(this.read);return this.read+=4,t};x.DataBuffer.prototype.getInt16Le=function(){var t=this.data.getInt16(this.read,!0);return this.read+=2,t};x.DataBuffer.prototype.getInt24Le=function(){var t=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,t};x.DataBuffer.prototype.getInt32Le=function(){var t=this.data.getInt32(this.read,!0);return this.read+=4,t};x.DataBuffer.prototype.getInt=function(t){ln(t);var e=0;do e=(e<<8)+this.data.getInt8(this.read++),t-=8;while(t>0);return e};x.DataBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};x.DataBuffer.prototype.getBytes=function(t){var e;return t?(t=Math.min(this.length(),t),e=this.data.slice(this.read,this.read+t),this.read+=t):t===0?e="":(e=this.read===0?this.data:this.data.slice(this.read),this.clear()),e};x.DataBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};x.DataBuffer.prototype.at=function(t){return this.data.getUint8(this.read+t)};x.DataBuffer.prototype.setAt=function(t,e){return this.data.setUint8(t,e),this};x.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};x.DataBuffer.prototype.copy=function(){return new x.DataBuffer(this)};x.DataBuffer.prototype.compact=function(){if(this.read>0){var t=new Uint8Array(this.data.buffer,this.read),e=new Uint8Array(t.byteLength);e.set(t),this.data=new DataView(e),this.write-=this.read,this.read=0}return this};x.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};x.DataBuffer.prototype.truncate=function(t){return this.write=Math.max(0,this.length()-t),this.read=Math.min(this.read,this.write),this};x.DataBuffer.prototype.toHex=function(){for(var t="",e=this.read;e<this.data.byteLength;++e){var r=this.data.getUint8(e);r<16&&(t+="0"),t+=r.toString(16)}return t};x.DataBuffer.prototype.toString=function(t){var e=new Uint8Array(this.data,this.read,this.length());if(t=t||"utf8",t==="binary"||t==="raw")return x.binary.raw.encode(e);if(t==="hex")return x.binary.hex.encode(e);if(t==="base64")return x.binary.base64.encode(e);if(t==="utf8")return x.text.utf8.decode(e);if(t==="utf16")return x.text.utf16.decode(e);throw new Error("Invalid encoding: "+t)};x.createBuffer=function(t,e){return e=e||"raw",t!==void 0&&e==="utf8"&&(t=x.encodeUtf8(t)),new x.ByteBuffer(t)};x.fillString=function(t,e){for(var r="";e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return r};x.xorBytes=function(t,e,r){for(var n="",i="",s="",o=0,a=0;r>0;--r,++o)i=t.charCodeAt(o)^e.charCodeAt(o),a>=10&&(n+=s,s="",a=0),s+=String.fromCharCode(i),++a;return n+=s,n};x.hexToBytes=function(t){var e="",r=0;for(t.length&!0&&(r=1,e+=String.fromCharCode(parseInt(t[0],16)));r<t.length;r+=2)e+=String.fromCharCode(parseInt(t.substr(r,2),16));return e};x.bytesToHex=function(t){return x.createBuffer(t).toHex()};x.int32ToBytes=function(t){return String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255)};var Ve="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",qe=[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],Ga="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";x.encode64=function(t,e){for(var r="",n="",i,s,o,a=0;a<t.length;)i=t.charCodeAt(a++),s=t.charCodeAt(a++),o=t.charCodeAt(a++),r+=Ve.charAt(i>>2),r+=Ve.charAt((i&3)<<4|s>>4),isNaN(s)?r+="==":(r+=Ve.charAt((s&15)<<2|o>>6),r+=isNaN(o)?"=":Ve.charAt(o&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
4
|
+
`,r=r.substr(e));return n+=r,n};x.decode64=function(t){t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var e="",r,n,i,s,o=0;o<t.length;)r=qe[t.charCodeAt(o++)-43],n=qe[t.charCodeAt(o++)-43],i=qe[t.charCodeAt(o++)-43],s=qe[t.charCodeAt(o++)-43],e+=String.fromCharCode(r<<2|n>>4),i!==64&&(e+=String.fromCharCode((n&15)<<4|i>>2),s!==64&&(e+=String.fromCharCode((i&3)<<6|s)));return e};x.encodeUtf8=function(t){return unescape(encodeURIComponent(t))};x.decodeUtf8=function(t){return decodeURIComponent(escape(t))};x.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:za.encode,decode:za.decode}};x.binary.raw.encode=function(t){return String.fromCharCode.apply(null,t)};x.binary.raw.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,s=0;s<t.length;++s)n[i++]=t.charCodeAt(s);return e?i-r:n};x.binary.hex.encode=x.bytesToHex;x.binary.hex.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(Math.ceil(t.length/2))),r=r||0;var i=0,s=r;for(t.length&1&&(i=1,n[s++]=parseInt(t[0],16));i<t.length;i+=2)n[s++]=parseInt(t.substr(i,2),16);return e?s-r:n};x.binary.base64.encode=function(t,e){for(var r="",n="",i,s,o,a=0;a<t.byteLength;)i=t[a++],s=t[a++],o=t[a++],r+=Ve.charAt(i>>2),r+=Ve.charAt((i&3)<<4|s>>4),isNaN(s)?r+="==":(r+=Ve.charAt((s&15)<<2|o>>6),r+=isNaN(o)?"=":Ve.charAt(o&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
5
|
+
`,r=r.substr(e));return n+=r,n};x.binary.base64.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(Math.ceil(t.length/4)*3)),t=t.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,s,o,a,u=0,c=r;u<t.length;)i=qe[t.charCodeAt(u++)-43],s=qe[t.charCodeAt(u++)-43],o=qe[t.charCodeAt(u++)-43],a=qe[t.charCodeAt(u++)-43],n[c++]=i<<2|s>>4,o!==64&&(n[c++]=(s&15)<<4|o>>2,a!==64&&(n[c++]=(o&3)<<6|a));return e?c-r:n.subarray(0,c)};x.binary.base58.encode=function(t,e){return x.binary.baseN.encode(t,Ga,e)};x.binary.base58.decode=function(t,e){return x.binary.baseN.decode(t,Ga,e)};x.text={utf8:{},utf16:{}};x.text.utf8.encode=function(t,e,r){t=x.encodeUtf8(t);var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,s=0;s<t.length;++s)n[i++]=t.charCodeAt(s);return e?i-r:n};x.text.utf8.decode=function(t){return x.decodeUtf8(String.fromCharCode.apply(null,t))};x.text.utf16.encode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var s=r,o=r,a=0;a<t.length;++a)i[o++]=t.charCodeAt(a),s+=2;return e?s-r:n};x.text.utf16.decode=function(t){return String.fromCharCode.apply(null,new Uint16Array(t.buffer))};x.deflate=function(t,e,r){if(e=x.decode64(t.deflate(x.encode64(e)).rval),r){var n=2,i=e.charCodeAt(1);i&32&&(n=6),e=e.substring(n,e.length-4)}return e};x.inflate=function(t,e,r){var n=t.inflate(x.encode64(e)).rval;return n===null?null:x.decode64(n)};var Bs=function(t,e,r){if(!t)throw new Error("WebStorage not available.");var n;if(r===null?n=t.removeItem(e):(r=x.encode64(JSON.stringify(r)),n=t.setItem(e,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},As=function(t,e){if(!t)throw new Error("WebStorage not available.");var r=t.getItem(e);if(t.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(x.decode64(r))),r},Bh=function(t,e,r,n){var i=As(t,e);i===null&&(i={}),i[r]=n,Bs(t,e,i)},Ah=function(t,e,r){var n=As(t,e);return n!==null&&(n=r in n?n[r]:null),n},Ih=function(t,e,r){var n=As(t,e);if(n!==null&&r in n){delete n[r];var i=!0;for(var s in n){i=!1;break}i&&(n=null),Bs(t,e,n)}},Ch=function(t,e){Bs(t,e,null)},Yn=function(t,e,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,s=!1,o=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(e[0]===null)throw new Error("Flash local storage not available.");n=t.apply(this,e),s=i==="flash"}(i==="web"||i==="both")&&(e[0]=localStorage,n=t.apply(this,e),s=!0)}catch(u){o=u}if(s)break}if(!s)throw o;return n};x.setItem=function(t,e,r,n,i){Yn(Bh,arguments,i)};x.getItem=function(t,e,r,n){return Yn(Ah,arguments,n)};x.removeItem=function(t,e,r,n){Yn(Ih,arguments,n)};x.clearItems=function(t,e,r){Yn(Ch,arguments,r)};x.isEmpty=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0};x.format=function(t){for(var e=/%./g,r,n,i=0,s=[],o=0;r=e.exec(t);){n=t.substring(o,e.lastIndex-2),n.length>0&&s.push(n),o=e.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?s.push(arguments[i+++1]):s.push("<?>");break;case"%":s.push("%");break;default:s.push("<%"+a+"?>")}}return s.push(t.substring(o)),s.join("")};x.formatNumber=function(t,e,r,n){var i=t,s=isNaN(e=Math.abs(e))?2:e,o=r===void 0?",":r,a=n===void 0?".":n,u=i<0?"-":"",c=parseInt(i=Math.abs(+i||0).toFixed(s),10)+"",f=c.length>3?c.length%3:0;return u+(f?c.substr(0,f)+a:"")+c.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+a)+(s?o+Math.abs(i-c).toFixed(s).slice(2):"")};x.formatSize=function(t){return t>=1073741824?t=x.formatNumber(t/1073741824,2,".","")+" GiB":t>=1048576?t=x.formatNumber(t/1048576,2,".","")+" MiB":t>=1024?t=x.formatNumber(t/1024,0)+" KiB":t=x.formatNumber(t,0)+" bytes",t};x.bytesFromIP=function(t){return t.indexOf(".")!==-1?x.bytesFromIPv4(t):t.indexOf(":")!==-1?x.bytesFromIPv6(t):null};x.bytesFromIPv4=function(t){if(t=t.split("."),t.length!==4)return null;for(var e=x.createBuffer(),r=0;r<t.length;++r){var n=parseInt(t[r],10);if(isNaN(n))return null;e.putByte(n)}return e.getBytes()};x.bytesFromIPv6=function(t){var e=0;t=t.split(":").filter(function(o){return o.length===0&&++e,!0});for(var r=(8-t.length+e)*2,n=x.createBuffer(),i=0;i<8;++i){if(!t[i]||t[i].length===0){n.fillWithByte(0,r),r=0;continue}var s=x.hexToBytes(t[i]);s.length<2&&n.putByte(0),n.putBytes(s)}return n.getBytes()};x.bytesToIP=function(t){return t.length===4?x.bytesToIPv4(t):t.length===16?x.bytesToIPv6(t):null};x.bytesToIPv4=function(t){if(t.length!==4)return null;for(var e=[],r=0;r<t.length;++r)e.push(t.charCodeAt(r));return e.join(".")};x.bytesToIPv6=function(t){if(t.length!==16)return null;for(var e=[],r=[],n=0,i=0;i<t.length;i+=2){for(var s=x.bytesToHex(t[i]+t[i+1]);s[0]==="0"&&s!=="0";)s=s.substr(1);if(s==="0"){var o=r[r.length-1],a=e.length;!o||a!==o.end+1?r.push({start:a,end:a}):(o.end=a,o.end-o.start>r[n].end-r[n].start&&(n=r.length-1))}e.push(s)}if(r.length>0){var u=r[n];u.end-u.start>0&&(e.splice(u.start,u.end-u.start+1,""),u.start===0&&e.unshift(""),u.end===7&&e.push(""))}return e.join(":")};x.estimateCores=function(t,e){if(typeof t=="function"&&(e=t,t={}),t=t||{},"cores"in x&&!t.update)return e(null,x.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return x.cores=navigator.hardwareConcurrency,e(null,x.cores);if(typeof Worker>"u")return x.cores=1,e(null,x.cores);if(typeof Blob>"u")return x.cores=2,e(null,x.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(o){for(var a=Date.now(),u=a+4;Date.now()<u;);self.postMessage({st:a,et:u})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(o,a,u){if(a===0){var c=Math.floor(o.reduce(function(f,h){return f+h},0)/o.length);return x.cores=Math.max(1,c),URL.revokeObjectURL(r),e(null,x.cores)}i(u,function(f,h){o.push(s(u,h)),n(o,a-1,u)})}function i(o,a){for(var u=[],c=[],f=0;f<o;++f){var h=new Worker(r);h.addEventListener("message",function(l){if(c.push(l.data),c.length===o){for(var g=0;g<o;++g)u[g].terminate();a(null,c)}}),u.push(h)}for(var f=0;f<o;++f)u[f].postMessage(f)}function s(o,a){for(var u=[],c=0;c<o;++c)for(var f=a[c],h=u[c]=[],l=0;l<o;++l)if(c!==l){var g=a[l];(f.st>g.st&&f.st<g.et||g.st>f.st&&g.st<f.et)&&h.push(l)}return u.reduce(function(p,d){return Math.max(p,d.length)},0)}}});var Cs=ut((vx,Wa)=>{var _t=st();bt();Wa.exports=_t.cipher=_t.cipher||{};_t.cipher.algorithms=_t.cipher.algorithms||{};_t.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=_t.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new _t.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};_t.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=_t.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new _t.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};_t.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),_t.cipher.algorithms[t]=e};_t.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in _t.cipher.algorithms?_t.cipher.algorithms[t]:null};var Is=_t.cipher.BlockCipher=function(t){this.algorithm=t.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=t.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=t.decrypt,this.algorithm.initialize(t)};Is.prototype.start=function(t){t=t||{};var e={};for(var r in t)e[r]=t[r];e.decrypt=this._decrypt,this._finish=!1,this._input=_t.util.createBuffer(),this.output=t.output||_t.util.createBuffer(),this.mode.start(e)};Is.prototype.update=function(t){for(t&&this._input.putBuffer(t);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};Is.prototype.finish=function(t){t&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return t(this.blockSize,r,!1)},this.mode.unpad=function(r){return t(this.blockSize,r,!0)});var e={};return e.decrypt=this._decrypt,e.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,e)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,e))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,e))}});var _s=ut((wx,$a)=>{var Rt=st();bt();Rt.cipher=Rt.cipher||{};var Z=$a.exports=Rt.cipher.modes=Rt.cipher.modes||{};Z.ecb=function(t){t=t||{},this.name="ECB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};Z.ecb.prototype.start=function(t){};Z.ecb.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};Z.ecb.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n])};Z.ecb.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};Z.ecb.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};Z.cbc=function(t){t=t||{},this.name="CBC",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};Z.cbc.prototype.start=function(t){if(t.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in t)this._iv=Wn(t.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};Z.cbc.prototype.encrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^t.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._outBlock[n]);this._prev=this._outBlock};Z.cbc.prototype.decrypt=function(t,e,r){if(t.length()<this.blockSize&&!(r&&t.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=t.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)e.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};Z.cbc.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};Z.cbc.prototype.unpad=function(t,e){if(e.overflow>0)return!1;var r=t.length(),n=t.at(r-1);return n>this.blockSize<<2?!1:(t.truncate(n),!0)};Z.cfb=function(t){t=t||{},this.name="CFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Rt.util.createBuffer(),this._partialBytes=0};Z.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Wn(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};Z.cfb.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32()^this._outBlock[i],e.putInt32(this._inBlock[i]);return}var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(s>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),s>0&&!r)return e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};Z.cfb.prototype.decrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32(),e.putInt32(this._inBlock[i]^this._outBlock[i]);return}var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(s>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),s>0&&!r)return e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};Z.ofb=function(t){t=t||{},this.name="OFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Rt.util.createBuffer(),this._partialBytes=0};Z.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Wn(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};Z.ofb.prototype.encrypt=function(t,e,r){var n=t.length();if(t.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(s>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),s>0&&!r)return e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};Z.ofb.prototype.decrypt=Z.ofb.prototype.encrypt;Z.ctr=function(t){t=t||{},this.name="CTR",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Rt.util.createBuffer(),this._partialBytes=0};Z.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Wn(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};Z.ctr.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]);else{var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(s>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),s>0&&!r)return e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}$n(this._inBlock)};Z.ctr.prototype.decrypt=Z.ctr.prototype.encrypt;Z.gcm=function(t){t=t||{},this.name="GCM",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Rt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};Z.gcm.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");var e=Rt.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=Rt.util.createBuffer(t.additionalData):r=Rt.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=Rt.util.createBuffer(t.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=e.length();if(n===12)this._j0=[e.getInt32(),e.getInt32(),e.getInt32(),1];else{for(this._j0=[0,0,0,0];e.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[e.getInt32(),e.getInt32(),e.getInt32(),e.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(Ts(n*8)))}this._inBlock=this._j0.slice(0),$n(this._inBlock),this._partialBytes=0,r=Rt.util.createBuffer(r),this._aDataLength=Ts(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()])};Z.gcm.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^=t.getInt32());this._cipherLength+=this.blockSize}else{var s=(this.blockSize-n)%this.blockSize;s>0&&(s=this.blockSize-s),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(s<=0||r){if(r){var o=n%this.blockSize;this._cipherLength+=o,this._partialOutput.truncate(this.blockSize-o)}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),s>0&&!r)return t.read-=this.blockSize,e.putBytes(this._partialOutput.getBytes(s-this._partialBytes)),this._partialBytes=s,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),$n(this._inBlock)};Z.gcm.prototype.decrypt=function(t,e,r){var n=t.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),$n(this._inBlock),this._hashBlock[0]=t.getInt32(),this._hashBlock[1]=t.getInt32(),this._hashBlock[2]=t.getInt32(),this._hashBlock[3]=t.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};Z.gcm.prototype.afterFinish=function(t,e){var r=!0;e.decrypt&&e.overflow&&t.truncate(this.blockSize-e.overflow),this.tag=Rt.util.createBuffer();var n=this._aDataLength.concat(Ts(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var s=0;s<this._ints;++s)this.tag.putInt32(this._s[s]^i[s]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),e.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};Z.gcm.prototype.multiply=function(t,e){for(var r=[0,0,0,0],n=e.slice(0),i=0;i<128;++i){var s=t[i/32|0]&1<<31-i%32;s&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};Z.gcm.prototype.pow=function(t,e){for(var r=t[3]&1,n=3;n>0;--n)e[n]=t[n]>>>1|(t[n-1]&1)<<31;e[0]=t[0]>>>1,r&&(e[0]^=this._R)};Z.gcm.prototype.tableMultiply=function(t){for(var e=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=t[n]>>>(7-r%8)*4&15,s=this._m[r][i];e[0]^=s[0],e[1]^=s[1],e[2]^=s[2],e[3]^=s[3]}return e};Z.gcm.prototype.ghash=function(t,e,r){return e[0]^=r[0],e[1]^=r[1],e[2]^=r[2],e[3]^=r[3],this.tableMultiply(e)};Z.gcm.prototype.generateHashTable=function(t,e){for(var r=8/e,n=4*r,i=16*r,s=new Array(i),o=0;o<i;++o){var a=[0,0,0,0],u=o/n|0,c=(n-1-o%n)*e;a[u]=1<<e-1<<c,s[o]=this.generateSubHashTable(this.multiply(a,t),e)}return s};Z.gcm.prototype.generateSubHashTable=function(t,e){var r=1<<e,n=r>>>1,i=new Array(r);i[n]=t.slice(0);for(var s=n>>>1;s>0;)this.pow(i[2*s],i[s]=[]),s>>=1;for(s=2;s<n;){for(var o=1;o<s;++o){var a=i[s],u=i[o];i[s+o]=[a[0]^u[0],a[1]^u[1],a[2]^u[2],a[3]^u[3]]}s*=2}for(i[0]=[0,0,0,0],s=n+1;s<r;++s){var c=i[s^n];i[s]=[t[0]^c[0],t[1]^c[1],t[2]^c[2],t[3]^c[3]]}return i};function Wn(t,e){if(typeof t=="string"&&(t=Rt.util.createBuffer(t)),Rt.util.isArray(t)&&t.length>4){var r=t;t=Rt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(t.length()<e)throw new Error("Invalid IV length; got "+t.length()+" bytes and expected "+e+" bytes.");if(!Rt.util.isArray(t)){for(var i=[],s=e/4,n=0;n<s;++n)i.push(t.getInt32());t=i}return t}function $n(t){t[t.length-1]=t[t.length-1]+1&4294967295}function Ts(t){return[t/4294967296|0,t&4294967295]}});var Qn=ut((Ex,Ja)=>{var ct=st();Cs();_s();bt();Ja.exports=ct.aes=ct.aes||{};ct.aes.startEncrypting=function(t,e,r,n){var i=Zn({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};ct.aes.createEncryptionCipher=function(t,e){return Zn({key:t,output:null,decrypt:!1,mode:e})};ct.aes.startDecrypting=function(t,e,r,n){var i=Zn({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};ct.aes.createDecryptionCipher=function(t,e){return Zn({key:t,output:null,decrypt:!0,mode:e})};ct.aes.Algorithm=function(t,e){Ns||Qa();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return Ls(r._w,n,i,!1)},decrypt:function(n,i){return Ls(r._w,n,i,!0)}}}),r._init=!1};ct.aes.Algorithm.prototype.initialize=function(t){if(!this._init){var e=t.key,r;if(typeof e=="string"&&(e.length===16||e.length===24||e.length===32))e=ct.util.createBuffer(e);else if(ct.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=ct.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!ct.util.isArray(e)){r=e,e=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)e.push(r.getInt32())}}if(!ct.util.isArray(e)||!(e.length===4||e.length===6||e.length===8))throw new Error("Invalid key parameter.");var s=this.mode.name,o=["CFB","OFB","CTR","GCM"].indexOf(s)!==-1;this._w=Xa(e,t.decrypt&&!o),this._init=!0}};ct.aes._expandKey=function(t,e){return Ns||Qa(),Xa(t,e)};ct.aes._updateBlock=Ls;Ur("AES-ECB",ct.cipher.modes.ecb);Ur("AES-CBC",ct.cipher.modes.cbc);Ur("AES-CFB",ct.cipher.modes.cfb);Ur("AES-OFB",ct.cipher.modes.ofb);Ur("AES-CTR",ct.cipher.modes.ctr);Ur("AES-GCM",ct.cipher.modes.gcm);function Ur(t,e){var r=function(){return new ct.aes.Algorithm(t,e)};ct.cipher.registerAlgorithm(t,r)}var Ns=!1,kr=4,zt,Rs,Za,nr,ee;function Qa(){Ns=!0,Za=[0,1,2,4,8,16,32,64,128,27,54];for(var t=new Array(256),e=0;e<128;++e)t[e]=e<<1,t[e+128]=e+128<<1^283;zt=new Array(256),Rs=new Array(256),nr=new Array(4),ee=new Array(4);for(var e=0;e<4;++e)nr[e]=new Array(256),ee[e]=new Array(256);for(var r=0,n=0,i,s,o,a,u,c,f,e=0;e<256;++e){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,zt[r]=a,Rs[a]=r,u=t[a],i=t[r],s=t[i],o=t[s],c=u<<24^a<<16^a<<8^(a^u),f=(i^s^o)<<24^(r^o)<<16^(r^s^o)<<8^(r^i^o);for(var h=0;h<4;++h)nr[h][r]=c,ee[h][a]=f,c=c<<24|c>>>8,f=f<<24|f>>>8;r===0?r=n=1:(r=i^t[t[t[i^o]]],n^=t[t[n]])}}function Xa(t,e){for(var r=t.slice(0),n,i=1,s=r.length,o=s+6+1,a=kr*o,u=s;u<a;++u)n=r[u-1],u%s===0?(n=zt[n>>>16&255]<<24^zt[n>>>8&255]<<16^zt[n&255]<<8^zt[n>>>24]^Za[i]<<24,i++):s>6&&u%s===4&&(n=zt[n>>>24]<<24^zt[n>>>16&255]<<16^zt[n>>>8&255]<<8^zt[n&255]),r[u]=r[u-s]^n;if(e){var c,f=ee[0],h=ee[1],l=ee[2],g=ee[3],p=r.slice(0);a=r.length;for(var u=0,d=a-kr;u<a;u+=kr,d-=kr)if(u===0||u===a-kr)p[u]=r[d],p[u+1]=r[d+3],p[u+2]=r[d+2],p[u+3]=r[d+1];else for(var y=0;y<kr;++y)c=r[d+y],p[u+(3&-y)]=f[zt[c>>>24]]^h[zt[c>>>16&255]]^l[zt[c>>>8&255]]^g[zt[c&255]];r=p}return r}function Ls(t,e,r,n){var i=t.length/4-1,s,o,a,u,c;n?(s=ee[0],o=ee[1],a=ee[2],u=ee[3],c=Rs):(s=nr[0],o=nr[1],a=nr[2],u=nr[3],c=zt);var f,h,l,g,p,d,y;f=e[0]^t[0],h=e[n?3:1]^t[1],l=e[2]^t[2],g=e[n?1:3]^t[3];for(var m=3,w=1;w<i;++w)p=s[f>>>24]^o[h>>>16&255]^a[l>>>8&255]^u[g&255]^t[++m],d=s[h>>>24]^o[l>>>16&255]^a[g>>>8&255]^u[f&255]^t[++m],y=s[l>>>24]^o[g>>>16&255]^a[f>>>8&255]^u[h&255]^t[++m],g=s[g>>>24]^o[f>>>16&255]^a[h>>>8&255]^u[l&255]^t[++m],f=p,h=d,l=y;r[0]=c[f>>>24]<<24^c[h>>>16&255]<<16^c[l>>>8&255]<<8^c[g&255]^t[++m],r[n?3:1]=c[h>>>24]<<24^c[l>>>16&255]<<16^c[g>>>8&255]<<8^c[f&255]^t[++m],r[2]=c[l>>>24]<<24^c[g>>>16&255]<<16^c[f>>>8&255]<<8^c[h&255]^t[++m],r[n?1:3]=c[g>>>24]<<24^c[f>>>16&255]<<16^c[h>>>8&255]<<8^c[l&255]^t[++m]}function Zn(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=ct.cipher.createDecipher(r,t.key):n=ct.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(s,o){var a=null;o instanceof ct.util.ByteBuffer&&(a=o,o={}),o=o||{},o.output=a,o.iv=s,i.call(n,o)},n}});var jn=ut((Gx,i0)=>{var pn=st();pn.pki=pn.pki||{};var Ps=i0.exports=pn.pki.oids=pn.oids=pn.oids||{};function T(t,e){Ps[t]=e,Ps[e]=t}function nt(t,e){Ps[t]=e}T("1.2.840.113549.1.1.1","rsaEncryption");T("1.2.840.113549.1.1.4","md5WithRSAEncryption");T("1.2.840.113549.1.1.5","sha1WithRSAEncryption");T("1.2.840.113549.1.1.7","RSAES-OAEP");T("1.2.840.113549.1.1.8","mgf1");T("1.2.840.113549.1.1.9","pSpecified");T("1.2.840.113549.1.1.10","RSASSA-PSS");T("1.2.840.113549.1.1.11","sha256WithRSAEncryption");T("1.2.840.113549.1.1.12","sha384WithRSAEncryption");T("1.2.840.113549.1.1.13","sha512WithRSAEncryption");T("1.3.101.112","EdDSA25519");T("1.2.840.10040.4.3","dsa-with-sha1");T("1.3.14.3.2.7","desCBC");T("1.3.14.3.2.26","sha1");T("1.3.14.3.2.29","sha1WithRSASignature");T("2.16.840.1.101.3.4.2.1","sha256");T("2.16.840.1.101.3.4.2.2","sha384");T("2.16.840.1.101.3.4.2.3","sha512");T("2.16.840.1.101.3.4.2.4","sha224");T("2.16.840.1.101.3.4.2.5","sha512-224");T("2.16.840.1.101.3.4.2.6","sha512-256");T("1.2.840.113549.2.2","md2");T("1.2.840.113549.2.5","md5");T("1.2.840.113549.1.7.1","data");T("1.2.840.113549.1.7.2","signedData");T("1.2.840.113549.1.7.3","envelopedData");T("1.2.840.113549.1.7.4","signedAndEnvelopedData");T("1.2.840.113549.1.7.5","digestedData");T("1.2.840.113549.1.7.6","encryptedData");T("1.2.840.113549.1.9.1","emailAddress");T("1.2.840.113549.1.9.2","unstructuredName");T("1.2.840.113549.1.9.3","contentType");T("1.2.840.113549.1.9.4","messageDigest");T("1.2.840.113549.1.9.5","signingTime");T("1.2.840.113549.1.9.6","counterSignature");T("1.2.840.113549.1.9.7","challengePassword");T("1.2.840.113549.1.9.8","unstructuredAddress");T("1.2.840.113549.1.9.14","extensionRequest");T("1.2.840.113549.1.9.20","friendlyName");T("1.2.840.113549.1.9.21","localKeyId");T("1.2.840.113549.1.9.22.1","x509Certificate");T("1.2.840.113549.1.12.10.1.1","keyBag");T("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");T("1.2.840.113549.1.12.10.1.3","certBag");T("1.2.840.113549.1.12.10.1.4","crlBag");T("1.2.840.113549.1.12.10.1.5","secretBag");T("1.2.840.113549.1.12.10.1.6","safeContentsBag");T("1.2.840.113549.1.5.13","pkcs5PBES2");T("1.2.840.113549.1.5.12","pkcs5PBKDF2");T("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");T("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");T("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");T("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");T("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");T("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");T("1.2.840.113549.2.7","hmacWithSHA1");T("1.2.840.113549.2.8","hmacWithSHA224");T("1.2.840.113549.2.9","hmacWithSHA256");T("1.2.840.113549.2.10","hmacWithSHA384");T("1.2.840.113549.2.11","hmacWithSHA512");T("1.2.840.113549.3.7","des-EDE3-CBC");T("2.16.840.1.101.3.4.1.2","aes128-CBC");T("2.16.840.1.101.3.4.1.22","aes192-CBC");T("2.16.840.1.101.3.4.1.42","aes256-CBC");T("2.5.4.3","commonName");T("2.5.4.4","surname");T("2.5.4.5","serialNumber");T("2.5.4.6","countryName");T("2.5.4.7","localityName");T("2.5.4.8","stateOrProvinceName");T("2.5.4.9","streetAddress");T("2.5.4.10","organizationName");T("2.5.4.11","organizationalUnitName");T("2.5.4.12","title");T("2.5.4.13","description");T("2.5.4.15","businessCategory");T("2.5.4.17","postalCode");T("2.5.4.42","givenName");T("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");T("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");T("2.16.840.1.113730.1.1","nsCertType");T("2.16.840.1.113730.1.13","nsComment");nt("2.5.29.1","authorityKeyIdentifier");nt("2.5.29.2","keyAttributes");nt("2.5.29.3","certificatePolicies");nt("2.5.29.4","keyUsageRestriction");nt("2.5.29.5","policyMapping");nt("2.5.29.6","subtreesConstraint");nt("2.5.29.7","subjectAltName");nt("2.5.29.8","issuerAltName");nt("2.5.29.9","subjectDirectoryAttributes");nt("2.5.29.10","basicConstraints");nt("2.5.29.11","nameConstraints");nt("2.5.29.12","policyConstraints");nt("2.5.29.13","basicConstraints");T("2.5.29.14","subjectKeyIdentifier");T("2.5.29.15","keyUsage");nt("2.5.29.16","privateKeyUsagePeriod");T("2.5.29.17","subjectAltName");T("2.5.29.18","issuerAltName");T("2.5.29.19","basicConstraints");nt("2.5.29.20","cRLNumber");nt("2.5.29.21","cRLReason");nt("2.5.29.22","expirationDate");nt("2.5.29.23","instructionCode");nt("2.5.29.24","invalidityDate");nt("2.5.29.25","cRLDistributionPoints");nt("2.5.29.26","issuingDistributionPoint");nt("2.5.29.27","deltaCRLIndicator");nt("2.5.29.28","issuingDistributionPoint");nt("2.5.29.29","certificateIssuer");nt("2.5.29.30","nameConstraints");T("2.5.29.31","cRLDistributionPoints");T("2.5.29.32","certificatePolicies");nt("2.5.29.33","policyMappings");nt("2.5.29.34","policyConstraints");T("2.5.29.35","authorityKeyIdentifier");nt("2.5.29.36","policyConstraints");T("2.5.29.37","extKeyUsage");nt("2.5.29.46","freshestCRL");nt("2.5.29.54","inhibitAnyPolicy");T("1.3.6.1.4.1.11129.2.4.2","timestampList");T("1.3.6.1.5.5.7.1.1","authorityInfoAccess");T("1.3.6.1.5.5.7.3.1","serverAuth");T("1.3.6.1.5.5.7.3.2","clientAuth");T("1.3.6.1.5.5.7.3.3","codeSigning");T("1.3.6.1.5.5.7.3.4","emailProtection");T("1.3.6.1.5.5.7.3.8","timeStamping")});var yn=ut((Yx,o0)=>{var ft=st();bt();jn();var k=o0.exports=ft.asn1=ft.asn1||{};k.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};k.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};k.create=function(t,e,r,n,i){if(ft.util.isArray(n)){for(var s=[],o=0;o<n.length;++o)n[o]!==void 0&&s.push(n[o]);n=s}var a={tagClass:t,type:e,constructed:r,composed:r||ft.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=k.copy(a)),a};k.copy=function(t,e){var r;if(ft.util.isArray(t)){r=[];for(var n=0;n<t.length;++n)r.push(k.copy(t[n],e));return r}return typeof t=="string"?t:(r={tagClass:t.tagClass,type:t.type,constructed:t.constructed,composed:t.composed,value:k.copy(t.value,e)},e&&!e.excludeBitStringContents&&(r.bitStringContents=t.bitStringContents),r)};k.equals=function(t,e,r){if(ft.util.isArray(t)){if(!ft.util.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;++n)if(!k.equals(t[n],e[n]))return!1;return!0}if(typeof t!=typeof e)return!1;if(typeof t=="string")return t===e;var i=t.tagClass===e.tagClass&&t.type===e.type&&t.constructed===e.constructed&&t.composed===e.composed&&k.equals(t.value,e.value);return r&&r.includeBitStringContents&&(i=i&&t.bitStringContents===e.bitStringContents),i};k.getBerValueLength=function(t){var e=t.getByte();if(e!==128){var r,n=e&128;return n?r=t.getInt((e&127)<<3):r=e,r}};function dn(t,e,r){if(r>e){var n=new Error("Too few bytes to parse DER.");throw n.available=t.length(),n.remaining=e,n.requested=r,n}}var Ph=function(t,e){var r=t.getByte();if(e--,r!==128){var n,i=r&128;if(!i)n=r;else{var s=r&127;dn(t,e,s),n=t.getInt(s<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};k.fromDer=function(t,e){e===void 0&&(e={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof e=="boolean"&&(e={strict:e,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in e||(e.strict=!0),"parseAllBytes"in e||(e.parseAllBytes=!0),"decodeBitStrings"in e||(e.decodeBitStrings=!0),typeof t=="string"&&(t=ft.util.createBuffer(t));var r=t.length(),n=ti(t,t.length(),0,e);if(e.parseAllBytes&&t.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=t.length(),i}return n};function ti(t,e,r,n){var i;dn(t,e,2);var s=t.getByte();e--;var o=s&192,a=s&31;i=t.length();var u=Ph(t,e);if(e-=i-t.length(),u!==void 0&&u>e){if(n.strict){var c=new Error("Too few bytes to read ASN.1 value.");throw c.available=t.length(),c.remaining=e,c.requested=u,c}u=e}var f,h,l=(s&32)===32;if(l)if(f=[],u===void 0)for(;;){if(dn(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),f.push(ti(t,e,r+1,n)),e-=i-t.length()}else for(;u>0;)i=t.length(),f.push(ti(t,u,r+1,n)),e-=i-t.length(),u-=i-t.length();if(f===void 0&&o===k.Class.UNIVERSAL&&a===k.Type.BITSTRING&&(h=t.bytes(u)),f===void 0&&n.decodeBitStrings&&o===k.Class.UNIVERSAL&&a===k.Type.BITSTRING&&u>1){var g=t.read,p=e,d=0;if(a===k.Type.BITSTRING&&(dn(t,e,1),d=t.getByte(),e--),d===0)try{i=t.length();var y={strict:!0,decodeBitStrings:!0},m=ti(t,e,r+1,y),w=i-t.length();e-=w,a==k.Type.BITSTRING&&w++;var b=m.tagClass;w===u&&(b===k.Class.UNIVERSAL||b===k.Class.CONTEXT_SPECIFIC)&&(f=[m])}catch{}f===void 0&&(t.read=g,e=p)}if(f===void 0){if(u===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");u=e}if(a===k.Type.BMPSTRING)for(f="";u>0;u-=2)dn(t,e,2),f+=String.fromCharCode(t.getInt16()),e-=2;else f=t.getBytes(u),e-=u}var _=h===void 0?null:{bitStringContents:h};return k.create(o,a,l,f,_)}k.toDer=function(t){var e=ft.util.createBuffer(),r=t.tagClass|t.type,n=ft.util.createBuffer(),i=!1;if("bitStringContents"in t&&(i=!0,t.original&&(i=k.equals(t,t.original))),i)n.putBytes(t.bitStringContents);else if(t.composed){t.constructed?r|=32:n.putByte(0);for(var s=0;s<t.value.length;++s)t.value[s]!==void 0&&n.putBuffer(k.toDer(t.value[s]))}else if(t.type===k.Type.BMPSTRING)for(var s=0;s<t.value.length;++s)n.putInt16(t.value.charCodeAt(s));else t.type===k.Type.INTEGER&&t.value.length>1&&(t.value.charCodeAt(0)===0&&!(t.value.charCodeAt(1)&128)||t.value.charCodeAt(0)===255&&(t.value.charCodeAt(1)&128)===128)?n.putBytes(t.value.substr(1)):n.putBytes(t.value);if(e.putByte(r),n.length()<=127)e.putByte(n.length()&127);else{var o=n.length(),a="";do a+=String.fromCharCode(o&255),o=o>>>8;while(o>0);e.putByte(a.length|128);for(var s=a.length-1;s>=0;--s)e.putByte(a.charCodeAt(s))}return e.putBuffer(n),e};k.oidToDer=function(t){var e=t.split("."),r=ft.util.createBuffer();r.putByte(40*parseInt(e[0],10)+parseInt(e[1],10));for(var n,i,s,o,a=2;a<e.length;++a){n=!0,i=[],s=parseInt(e[a],10);do o=s&127,s=s>>>7,n||(o|=128),i.push(o),n=!1;while(s>0);for(var u=i.length-1;u>=0;--u)r.putByte(i[u])}return r};k.derToOid=function(t){var e;typeof t=="string"&&(t=ft.util.createBuffer(t));var r=t.getByte();e=Math.floor(r/40)+"."+r%40;for(var n=0;t.length()>0;)r=t.getByte(),n=n<<7,r&128?n+=r&127:(e+="."+(n+r),n=0);return e};k.utcTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(t.substr(2,2),10)-1,i=parseInt(t.substr(4,2),10),s=parseInt(t.substr(6,2),10),o=parseInt(t.substr(8,2),10),a=0;if(t.length>11){var u=t.charAt(10),c=10;u!=="+"&&u!=="-"&&(a=parseInt(t.substr(10,2),10),c+=2)}if(e.setUTCFullYear(r,n,i),e.setUTCHours(s,o,a,0),c&&(u=t.charAt(c),u==="+"||u==="-")){var f=parseInt(t.substr(c+1,2),10),h=parseInt(t.substr(c+4,2),10),l=f*60+h;l*=6e4,u==="+"?e.setTime(+e-l):e.setTime(+e+l)}return e};k.generalizedTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,4),10),n=parseInt(t.substr(4,2),10)-1,i=parseInt(t.substr(6,2),10),s=parseInt(t.substr(8,2),10),o=parseInt(t.substr(10,2),10),a=parseInt(t.substr(12,2),10),u=0,c=0,f=!1;t.charAt(t.length-1)==="Z"&&(f=!0);var h=t.length-5,l=t.charAt(h);if(l==="+"||l==="-"){var g=parseInt(t.substr(h+1,2),10),p=parseInt(t.substr(h+4,2),10);c=g*60+p,c*=6e4,l==="+"&&(c*=-1),f=!0}return t.charAt(14)==="."&&(u=parseFloat(t.substr(14),10)*1e3),f?(e.setUTCFullYear(r,n,i),e.setUTCHours(s,o,a,u),e.setTime(+e+c)):(e.setFullYear(r,n,i),e.setHours(s,o,a,u)),e};k.dateToUtcTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push((""+t.getUTCFullYear()).substr(2)),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};k.dateToGeneralizedTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push(""+t.getUTCFullYear()),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};k.integerToDer=function(t){var e=ft.util.createBuffer();if(t>=-128&&t<128)return e.putSignedInt(t,8);if(t>=-32768&&t<32768)return e.putSignedInt(t,16);if(t>=-8388608&&t<8388608)return e.putSignedInt(t,24);if(t>=-2147483648&&t<2147483648)return e.putSignedInt(t,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=t,r};k.derToInteger=function(t){typeof t=="string"&&(t=ft.util.createBuffer(t));var e=t.length()*8;if(e>32)throw new Error("Integer too large; max is 32-bits.");return t.getSignedInt(e)};k.validate=function(t,e,r,n){var i=!1;if((t.tagClass===e.tagClass||typeof e.tagClass>"u")&&(t.type===e.type||typeof e.type>"u"))if(t.constructed===e.constructed||typeof e.constructed>"u"){if(i=!0,e.value&&ft.util.isArray(e.value))for(var s=0,o=0;i&&o<e.value.length;++o)i=e.value[o].optional||!1,t.value[s]&&(i=k.validate(t.value[s],e.value[o],r,n),i?++s:e.value[o].optional&&(i=!0)),!i&&n&&n.push("["+e.name+'] Tag class "'+e.tagClass+'", type "'+e.type+'" expected value length "'+e.value.length+'", got "'+t.value.length+'"');if(i&&r&&(e.capture&&(r[e.capture]=t.value),e.captureAsn1&&(r[e.captureAsn1]=t),e.captureBitStringContents&&"bitStringContents"in t&&(r[e.captureBitStringContents]=t.bitStringContents),e.captureBitStringValue&&"bitStringContents"in t)){var a;if(t.bitStringContents.length<2)r[e.captureBitStringValue]="";else{var u=t.bitStringContents.charCodeAt(0);if(u!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[e.captureBitStringValue]=t.bitStringContents.slice(1)}}}else n&&n.push("["+e.name+'] Expected constructed "'+e.constructed+'", got "'+t.constructed+'"');else n&&(t.tagClass!==e.tagClass&&n.push("["+e.name+'] Expected tag class "'+e.tagClass+'", got "'+t.tagClass+'"'),t.type!==e.type&&n.push("["+e.name+'] Expected type "'+e.type+'", got "'+t.type+'"'));return i};var s0=/[^\\u0000-\\u00ff]/;k.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
|
6
6
|
`);for(var i="",s=0;s<e*r;++s)i+=" ";switch(n+=i+"Tag: ",t.tagClass){case k.Class.UNIVERSAL:n+="Universal:";break;case k.Class.APPLICATION:n+="Application:";break;case k.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case k.Class.PRIVATE:n+="Private:";break}if(t.tagClass===k.Class.UNIVERSAL)switch(n+=t.type,t.type){case k.Type.NONE:n+=" (None)";break;case k.Type.BOOLEAN:n+=" (Boolean)";break;case k.Type.INTEGER:n+=" (Integer)";break;case k.Type.BITSTRING:n+=" (Bit string)";break;case k.Type.OCTETSTRING:n+=" (Octet string)";break;case k.Type.NULL:n+=" (Null)";break;case k.Type.OID:n+=" (Object Identifier)";break;case k.Type.ODESC:n+=" (Object Descriptor)";break;case k.Type.EXTERNAL:n+=" (External or Instance of)";break;case k.Type.REAL:n+=" (Real)";break;case k.Type.ENUMERATED:n+=" (Enumerated)";break;case k.Type.EMBEDDED:n+=" (Embedded PDV)";break;case k.Type.UTF8:n+=" (UTF8)";break;case k.Type.ROID:n+=" (Relative Object Identifier)";break;case k.Type.SEQUENCE:n+=" (Sequence)";break;case k.Type.SET:n+=" (Set)";break;case k.Type.PRINTABLESTRING:n+=" (Printable String)";break;case k.Type.IA5String:n+=" (IA5String (ASCII))";break;case k.Type.UTCTIME:n+=" (UTC time)";break;case k.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case k.Type.BMPSTRING:n+=" (BMP String)";break}else n+=t.type;if(n+=`
|
7
7
|
`,n+=i+"Constructed: "+t.constructed+`
|
8
|
-
`,t.composed){for(var o=0,a="",s=0;s<t.value.length;++s)t.value[s]!==void 0&&(o+=1,a+=k.prettyPrint(t.value[s],e+1,r),s+1<t.value.length&&(a+=","));n+=i+"Sub values: "+o+a}else{if(n+=i+"Value: ",t.type===k.Type.OID){var u=k.derToOid(t.value);n+=u,ht.pki&&ht.pki.oids&&u in ht.pki.oids&&(n+=" ("+ht.pki.oids[u]+") ")}if(t.type===k.Type.INTEGER)try{n+=k.derToInteger(t.value)}catch{n+="0x"+ht.util.bytesToHex(t.value)}else if(t.type===k.Type.BITSTRING){if(t.value.length>1?n+="0x"+ht.util.bytesToHex(t.value.slice(1)):n+="(none)",t.value.length>0){var c=t.value.charCodeAt(0);c==1?n+=" (1 unused bit shown)":c>1&&(n+=" ("+c+" unused bits shown)")}}else if(t.type===k.Type.OCTETSTRING)k0.test(t.value)||(n+="("+t.value+") "),n+="0x"+ht.util.bytesToHex(t.value);else if(t.type===k.Type.UTF8)try{n+=ht.util.decodeUtf8(t.value)}catch(f){if(f.message==="URI malformed")n+="0x"+ht.util.bytesToHex(t.value)+" (malformed UTF8)";else throw f}else t.type===k.Type.PRINTABLESTRING||t.type===k.Type.IA5String?n+=t.value:k0.test(t.value)?n+="0x"+ht.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var M0=ct((B2,O0)=>{var dt=ot();Qs();Zs();Et();O0.exports=dt.des=dt.des||{};dt.des.startEncrypting=function(t,e,r,n){var i=bi({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};dt.des.createEncryptionCipher=function(t,e){return bi({key:t,output:null,decrypt:!1,mode:e})};dt.des.startDecrypting=function(t,e,r,n){var i=bi({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};dt.des.createDecryptionCipher=function(t,e){return bi({key:t,output:null,decrypt:!0,mode:e})};dt.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return K0(r._keys,n,i,!1)},decrypt:function(n,i){return K0(r._keys,n,i,!0)}}}),r._init=!1};dt.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=dt.util.createBuffer(t.key);if(this.name.indexOf("3DES")===0&&e.length()!==24)throw new Error("Invalid Triple-DES key size: "+e.length()*8);this._keys=gl(e),this._init=!0}};xe("DES-ECB",dt.cipher.modes.ecb);xe("DES-CBC",dt.cipher.modes.cbc);xe("DES-CFB",dt.cipher.modes.cfb);xe("DES-OFB",dt.cipher.modes.ofb);xe("DES-CTR",dt.cipher.modes.ctr);xe("3DES-ECB",dt.cipher.modes.ecb);xe("3DES-CBC",dt.cipher.modes.cbc);xe("3DES-CFB",dt.cipher.modes.cfb);xe("3DES-OFB",dt.cipher.modes.ofb);xe("3DES-CTR",dt.cipher.modes.ctr);function xe(t,e){var r=function(){return new dt.des.Algorithm(t,e)};dt.cipher.registerAlgorithm(t,r)}var ul=[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],cl=[-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],fl=[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],hl=[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],ll=[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],pl=[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],dl=[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],yl=[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 gl(t){for(var e=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],s=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],o=[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],u=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],c=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],f=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],h=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],l=[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],p=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],d=t.length()>8?3:1,y=[],m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],w=0,b,_=0;_<d;_++){var E=t.getInt32(),S=t.getInt32();b=(E>>>4^S)&252645135,S^=b,E^=b<<4,b=(S>>>-16^E)&65535,E^=b,S^=b<<-16,b=(E>>>2^S)&858993459,S^=b,E^=b<<2,b=(S>>>-16^E)&65535,E^=b,S^=b<<-16,b=(E>>>1^S)&1431655765,S^=b,E^=b<<1,b=(S>>>8^E)&16711935,E^=b,S^=b<<8,b=(E>>>1^S)&1431655765,S^=b,E^=b<<1,b=E<<8|S>>>20&240,E=S<<24|S<<8&16711680|S>>>8&65280|S>>>24&240,S=b;for(var L=0;L<m.length;++L){m[L]?(E=E<<2|E>>>26,S=S<<2|S>>>26):(E=E<<1|E>>>27,S=S<<1|S>>>27),E&=-15,S&=-15;var N=e[E>>>28]|r[E>>>24&15]|n[E>>>20&15]|i[E>>>16&15]|s[E>>>12&15]|o[E>>>8&15]|a[E>>>4&15],G=u[S>>>28]|c[S>>>24&15]|f[S>>>20&15]|h[S>>>16&15]|l[S>>>12&15]|g[S>>>8&15]|p[S>>>4&15];b=(G>>>16^N)&65535,y[w++]=N^b,y[w++]=G^b<<16}}return y}function K0(t,e,r,n){var i=t.length===32?3:9,s;i===3?s=n?[30,-2,-2]:[0,32,2]:s=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var o,a=e[0],u=e[1];o=(a>>>4^u)&252645135,u^=o,a^=o<<4,o=(a>>>16^u)&65535,u^=o,a^=o<<16,o=(u>>>2^a)&858993459,a^=o,u^=o<<2,o=(u>>>8^a)&16711935,a^=o,u^=o<<8,o=(a>>>1^u)&1431655765,u^=o,a^=o<<1,a=a<<1|a>>>31,u=u<<1|u>>>31;for(var c=0;c<i;c+=3){for(var f=s[c+1],h=s[c+2],l=s[c];l!=f;l+=h){var g=u^t[l],p=(u>>>4|u<<28)^t[l+1];o=a,a=u,u=o^(cl[g>>>24&63]|hl[g>>>16&63]|pl[g>>>8&63]|yl[g&63]|ul[p>>>24&63]|fl[p>>>16&63]|ll[p>>>8&63]|dl[p&63])}o=a,a=u,u=o}a=a>>>1|a<<31,u=u>>>1|u<<31,o=(a>>>1^u)&1431655765,u^=o,a^=o<<1,o=(u>>>8^a)&16711935,a^=o,u^=o<<8,o=(u>>>2^a)&858993459,a^=o,u^=o<<2,o=(a>>>16^u)&65535,u^=o,a^=o<<16,o=(a>>>4^u)&252645135,u^=o,a^=o<<4,r[0]=a,r[1]=u}function bi(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=dt.cipher.createDecipher(r,t.key):n=dt.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(s,o){var a=null;o instanceof dt.util.ByteBuffer&&(a=o,o={}),o=o||{},o.output=a,o.iv=s,i.call(n,o)},n}});var hr=ct((A2,F0)=>{var vi=ot();F0.exports=vi.md=vi.md||{};vi.md.algorithms=vi.md.algorithms||{}});var q0=ct((I2,V0)=>{var Ne=ot();hr();Et();var ml=V0.exports=Ne.hmac=Ne.hmac||{};ml.create=function(){var t=null,e=null,r=null,n=null,i={};return i.start=function(s,o){if(s!==null)if(typeof s=="string")if(s=s.toLowerCase(),s in Ne.md.algorithms)e=Ne.md.algorithms[s].create();else throw new Error('Unknown hash algorithm "'+s+'"');else e=s;if(o===null)o=t;else{if(typeof o=="string")o=Ne.util.createBuffer(o);else if(Ne.util.isArray(o)){var a=o;o=Ne.util.createBuffer();for(var u=0;u<a.length;++u)o.putByte(a[u])}var c=o.length();c>e.blockLength&&(e.start(),e.update(o.bytes()),o=e.digest()),r=Ne.util.createBuffer(),n=Ne.util.createBuffer(),c=o.length();for(var u=0;u<c;++u){var a=o.at(u);r.putByte(54^a),n.putByte(92^a)}if(c<e.blockLength)for(var a=e.blockLength-c,u=0;u<a;++u)r.putByte(54),n.putByte(92);t=o,r=r.bytes(),n=n.bytes()}e.start(),e.update(r)},i.update=function(s){e.update(s)},i.getMac=function(){var s=e.digest().bytes();return e.start(),e.update(n),e.update(s),e.digest()},i.digest=i.getMac,i}});var wi=ct(()=>{});var ro=ct((_2,H0)=>{var Wt=ot();q0();hr();Et();var xl=Wt.pkcs5=Wt.pkcs5||{},Pe;Wt.util.isNodejs&&!Wt.options.usePureJavaScript&&(Pe=wi());H0.exports=Wt.pbkdf2=xl.pbkdf2=function(t,e,r,n,i,s){if(typeof i=="function"&&(s=i,i=null),Wt.util.isNodejs&&!Wt.options.usePureJavaScript&&Pe.pbkdf2&&(i===null||typeof i!="object")&&(Pe.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),s?Pe.pbkdf2Sync.length===4?Pe.pbkdf2(t,e,r,n,function(b,_){if(b)return s(b);s(null,_.toString("binary"))}):Pe.pbkdf2(t,e,r,n,i,function(b,_){if(b)return s(b);s(null,_.toString("binary"))}):Pe.pbkdf2Sync.length===4?Pe.pbkdf2Sync(t,e,r,n).toString("binary"):Pe.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Wt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Wt.md[i].create()}var o=i.digestLength;if(n>4294967295*o){var a=new Error("Derived key is too long.");if(s)return s(a);throw a}var u=Math.ceil(n/o),c=n-(u-1)*o,f=Wt.hmac.create();f.start(i,t);var h="",l,g,p;if(!s){for(var d=1;d<=u;++d){f.start(null,null),f.update(e),f.update(Wt.util.int32ToBytes(d)),l=p=f.digest().getBytes();for(var y=2;y<=r;++y)f.start(null,null),f.update(p),g=f.digest().getBytes(),l=Wt.util.xorBytes(l,g,o),p=g;h+=d<u?l:l.substr(0,c)}return h}var d=1,y;function m(){if(d>u)return s(null,h);f.start(null,null),f.update(e),f.update(Wt.util.int32ToBytes(d)),l=p=f.digest().getBytes(),y=2,w()}function w(){if(y<=r)return f.start(null,null),f.update(p),g=f.digest().getBytes(),l=Wt.util.xorBytes(l,g,o),p=g,++y,Wt.util.setImmediate(w);h+=d<u?l:l.substr(0,c),++d,m()}m()}});var Y0=ct((R2,G0)=>{var Si=ot();Et();var z0=G0.exports=Si.pem=Si.pem||{};z0.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
|
9
|
-
`,n;if(t.procType&&(n={name:"Proc-Type",values:[String(t.procType.version),t.procType.type]},r+=
|
10
|
-
`),r+=
|
8
|
+
`,t.composed){for(var o=0,a="",s=0;s<t.value.length;++s)t.value[s]!==void 0&&(o+=1,a+=k.prettyPrint(t.value[s],e+1,r),s+1<t.value.length&&(a+=","));n+=i+"Sub values: "+o+a}else{if(n+=i+"Value: ",t.type===k.Type.OID){var u=k.derToOid(t.value);n+=u,ft.pki&&ft.pki.oids&&u in ft.pki.oids&&(n+=" ("+ft.pki.oids[u]+") ")}if(t.type===k.Type.INTEGER)try{n+=k.derToInteger(t.value)}catch{n+="0x"+ft.util.bytesToHex(t.value)}else if(t.type===k.Type.BITSTRING){if(t.value.length>1?n+="0x"+ft.util.bytesToHex(t.value.slice(1)):n+="(none)",t.value.length>0){var c=t.value.charCodeAt(0);c==1?n+=" (1 unused bit shown)":c>1&&(n+=" ("+c+" unused bits shown)")}}else if(t.type===k.Type.OCTETSTRING)s0.test(t.value)||(n+="("+t.value+") "),n+="0x"+ft.util.bytesToHex(t.value);else if(t.type===k.Type.UTF8)try{n+=ft.util.decodeUtf8(t.value)}catch(f){if(f.message==="URI malformed")n+="0x"+ft.util.bytesToHex(t.value)+" (malformed UTF8)";else throw f}else t.type===k.Type.PRINTABLESTRING||t.type===k.Type.IA5String?n+=t.value:s0.test(t.value)?n+="0x"+ft.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var c0=ut((Wx,u0)=>{var pt=st();Cs();_s();bt();u0.exports=pt.des=pt.des||{};pt.des.startEncrypting=function(t,e,r,n){var i=ei({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};pt.des.createEncryptionCipher=function(t,e){return ei({key:t,output:null,decrypt:!1,mode:e})};pt.des.startDecrypting=function(t,e,r,n){var i=ei({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};pt.des.createDecryptionCipher=function(t,e){return ei({key:t,output:null,decrypt:!0,mode:e})};pt.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return a0(r._keys,n,i,!1)},decrypt:function(n,i){return a0(r._keys,n,i,!0)}}}),r._init=!1};pt.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=pt.util.createBuffer(t.key);if(this.name.indexOf("3DES")===0&&e.length()!==24)throw new Error("Invalid Triple-DES key size: "+e.length()*8);this._keys=Hh(e),this._init=!0}};de("DES-ECB",pt.cipher.modes.ecb);de("DES-CBC",pt.cipher.modes.cbc);de("DES-CFB",pt.cipher.modes.cfb);de("DES-OFB",pt.cipher.modes.ofb);de("DES-CTR",pt.cipher.modes.ctr);de("3DES-ECB",pt.cipher.modes.ecb);de("3DES-CBC",pt.cipher.modes.cbc);de("3DES-CFB",pt.cipher.modes.cfb);de("3DES-OFB",pt.cipher.modes.ofb);de("3DES-CTR",pt.cipher.modes.ctr);function de(t,e){var r=function(){return new pt.des.Algorithm(t,e)};pt.cipher.registerAlgorithm(t,r)}var kh=[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],Uh=[-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],Kh=[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],Oh=[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],Mh=[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],Fh=[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],Vh=[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],qh=[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 Hh(t){for(var e=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],s=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],o=[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],u=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],c=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],f=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],h=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],l=[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],p=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],d=t.length()>8?3:1,y=[],m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],w=0,b,_=0;_<d;_++){var E=t.getInt32(),S=t.getInt32();b=(E>>>4^S)&252645135,S^=b,E^=b<<4,b=(S>>>-16^E)&65535,E^=b,S^=b<<-16,b=(E>>>2^S)&858993459,S^=b,E^=b<<2,b=(S>>>-16^E)&65535,E^=b,S^=b<<-16,b=(E>>>1^S)&1431655765,S^=b,E^=b<<1,b=(S>>>8^E)&16711935,E^=b,S^=b<<8,b=(E>>>1^S)&1431655765,S^=b,E^=b<<1,b=E<<8|S>>>20&240,E=S<<24|S<<8&16711680|S>>>8&65280|S>>>24&240,S=b;for(var L=0;L<m.length;++L){m[L]?(E=E<<2|E>>>26,S=S<<2|S>>>26):(E=E<<1|E>>>27,S=S<<1|S>>>27),E&=-15,S&=-15;var N=e[E>>>28]|r[E>>>24&15]|n[E>>>20&15]|i[E>>>16&15]|s[E>>>12&15]|o[E>>>8&15]|a[E>>>4&15],z=u[S>>>28]|c[S>>>24&15]|f[S>>>20&15]|h[S>>>16&15]|l[S>>>12&15]|g[S>>>8&15]|p[S>>>4&15];b=(z>>>16^N)&65535,y[w++]=N^b,y[w++]=z^b<<16}}return y}function a0(t,e,r,n){var i=t.length===32?3:9,s;i===3?s=n?[30,-2,-2]:[0,32,2]:s=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var o,a=e[0],u=e[1];o=(a>>>4^u)&252645135,u^=o,a^=o<<4,o=(a>>>16^u)&65535,u^=o,a^=o<<16,o=(u>>>2^a)&858993459,a^=o,u^=o<<2,o=(u>>>8^a)&16711935,a^=o,u^=o<<8,o=(a>>>1^u)&1431655765,u^=o,a^=o<<1,a=a<<1|a>>>31,u=u<<1|u>>>31;for(var c=0;c<i;c+=3){for(var f=s[c+1],h=s[c+2],l=s[c];l!=f;l+=h){var g=u^t[l],p=(u>>>4|u<<28)^t[l+1];o=a,a=u,u=o^(Uh[g>>>24&63]|Oh[g>>>16&63]|Fh[g>>>8&63]|qh[g&63]|kh[p>>>24&63]|Kh[p>>>16&63]|Mh[p>>>8&63]|Vh[p&63])}o=a,a=u,u=o}a=a>>>1|a<<31,u=u>>>1|u<<31,o=(a>>>1^u)&1431655765,u^=o,a^=o<<1,o=(u>>>8^a)&16711935,a^=o,u^=o<<8,o=(u>>>2^a)&858993459,a^=o,u^=o<<2,o=(a>>>16^u)&65535,u^=o,a^=o<<16,o=(a>>>4^u)&252645135,u^=o,a^=o<<4,r[0]=a,r[1]=u}function ei(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=pt.cipher.createDecipher(r,t.key):n=pt.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(s,o){var a=null;o instanceof pt.util.ByteBuffer&&(a=o,o={}),o=o||{},o.output=a,o.iv=s,i.call(n,o)},n}});var sr=ut(($x,f0)=>{var ri=st();f0.exports=ri.md=ri.md||{};ri.md.algorithms=ri.md.algorithms||{}});var l0=ut((Zx,h0)=>{var Ce=st();sr();bt();var zh=h0.exports=Ce.hmac=Ce.hmac||{};zh.create=function(){var t=null,e=null,r=null,n=null,i={};return i.start=function(s,o){if(s!==null)if(typeof s=="string")if(s=s.toLowerCase(),s in Ce.md.algorithms)e=Ce.md.algorithms[s].create();else throw new Error('Unknown hash algorithm "'+s+'"');else e=s;if(o===null)o=t;else{if(typeof o=="string")o=Ce.util.createBuffer(o);else if(Ce.util.isArray(o)){var a=o;o=Ce.util.createBuffer();for(var u=0;u<a.length;++u)o.putByte(a[u])}var c=o.length();c>e.blockLength&&(e.start(),e.update(o.bytes()),o=e.digest()),r=Ce.util.createBuffer(),n=Ce.util.createBuffer(),c=o.length();for(var u=0;u<c;++u){var a=o.at(u);r.putByte(54^a),n.putByte(92^a)}if(c<e.blockLength)for(var a=e.blockLength-c,u=0;u<a;++u)r.putByte(54),n.putByte(92);t=o,r=r.bytes(),n=n.bytes()}e.start(),e.update(r)},i.update=function(s){e.update(s)},i.getMac=function(){var s=e.digest().bytes();return e.start(),e.update(n),e.update(s),e.digest()},i.digest=i.getMac,i}});var ni=ut(()=>{});var ks=ut((Jx,p0)=>{var Gt=st();l0();sr();bt();var Gh=Gt.pkcs5=Gt.pkcs5||{},Te;Gt.util.isNodejs&&!Gt.options.usePureJavaScript&&(Te=ni());p0.exports=Gt.pbkdf2=Gh.pbkdf2=function(t,e,r,n,i,s){if(typeof i=="function"&&(s=i,i=null),Gt.util.isNodejs&&!Gt.options.usePureJavaScript&&Te.pbkdf2&&(i===null||typeof i!="object")&&(Te.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),s?Te.pbkdf2Sync.length===4?Te.pbkdf2(t,e,r,n,function(b,_){if(b)return s(b);s(null,_.toString("binary"))}):Te.pbkdf2(t,e,r,n,i,function(b,_){if(b)return s(b);s(null,_.toString("binary"))}):Te.pbkdf2Sync.length===4?Te.pbkdf2Sync(t,e,r,n).toString("binary"):Te.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Gt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Gt.md[i].create()}var o=i.digestLength;if(n>4294967295*o){var a=new Error("Derived key is too long.");if(s)return s(a);throw a}var u=Math.ceil(n/o),c=n-(u-1)*o,f=Gt.hmac.create();f.start(i,t);var h="",l,g,p;if(!s){for(var d=1;d<=u;++d){f.start(null,null),f.update(e),f.update(Gt.util.int32ToBytes(d)),l=p=f.digest().getBytes();for(var y=2;y<=r;++y)f.start(null,null),f.update(p),g=f.digest().getBytes(),l=Gt.util.xorBytes(l,g,o),p=g;h+=d<u?l:l.substr(0,c)}return h}var d=1,y;function m(){if(d>u)return s(null,h);f.start(null,null),f.update(e),f.update(Gt.util.int32ToBytes(d)),l=p=f.digest().getBytes(),y=2,w()}function w(){if(y<=r)return f.start(null,null),f.update(p),g=f.digest().getBytes(),l=Gt.util.xorBytes(l,g,o),p=g,++y,Gt.util.setImmediate(w);h+=d<u?l:l.substr(0,c),++d,m()}m()}});var g0=ut((jx,y0)=>{var si=st();bt();var d0=y0.exports=si.pem=si.pem||{};d0.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
|
9
|
+
`,n;if(t.procType&&(n={name:"Proc-Type",values:[String(t.procType.version),t.procType.type]},r+=ii(n)),t.contentDomain&&(n={name:"Content-Domain",values:[t.contentDomain]},r+=ii(n)),t.dekInfo&&(n={name:"DEK-Info",values:[t.dekInfo.algorithm]},t.dekInfo.parameters&&n.values.push(t.dekInfo.parameters),r+=ii(n)),t.headers)for(var i=0;i<t.headers.length;++i)r+=ii(t.headers[i]);return t.procType&&(r+=`\r
|
10
|
+
`),r+=si.util.encode64(t.body,e.maxline||64)+`\r
|
11
11
|
`,r+="-----END "+t.type+`-----\r
|
12
|
-
`,r};
|
12
|
+
`,r};d0.decode=function(t){for(var e=[],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/,s;s=r.exec(t),!!s;){var o=s[1];o==="NEW CERTIFICATE REQUEST"&&(o="CERTIFICATE REQUEST");var a={type:o,procType:null,contentDomain:null,dekInfo:null,headers:[],body:si.util.decode64(s[3])};if(e.push(a),!!s[2]){for(var u=s[2].split(i),c=0;s&&c<u.length;){for(var f=u[c].replace(/\s+$/,""),h=c+1;h<u.length;++h){var l=u[h];if(!/\s/.test(l[0]))break;f+=l,c=h}if(s=f.match(n),s){for(var g={name:s[1],values:[]},p=s[2].split(","),d=0;d<p.length;++d)g.values.push(Yh(p[d]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=p[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:p[0],parameters:p[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:p[0],type:p[1]}}}++c}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(e.length===0)throw new Error("Invalid PEM formatted message.");return e};function ii(t){for(var e=t.name+": ",r=[],n=function(u,c){return" "+c},i=0;i<t.values.length;++i)r.push(t.values[i].replace(/^(\S+\r\n)/,n));e+=r.join(",")+`\r
|
13
13
|
`;for(var s=0,o=-1,i=0;i<e.length;++i,++s)if(s>65&&o!==-1){var a=e[o];a===","?(++o,e=e.substr(0,o)+`\r
|
14
14
|
`+e.substr(o)):e=e.substr(0,o)+`\r
|
15
|
-
`+a+e.substr(o+1),s=i-o-1,o=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(o=i);return e}function bl(t){return t.replace(/^\s+/,"")}});var J0=ct((L2,X0)=>{var be=ot();hr();Et();var Q0=X0.exports=be.sha256=be.sha256||{};be.md.sha256=be.md.algorithms.sha256=Q0;Q0.create=function(){$0||vl();var t=null,e=be.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,s=0;s<i;++s)n.fullMessageLength.push(0);return e=be.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,s){s==="utf8"&&(i=be.util.encodeUtf8(i));var o=i.length;n.messageLength+=o,o=[o/4294967296>>>0,o>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=o[1],o[1]=o[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,o[0]=o[1]/4294967296>>>0;return e.putBytes(i),W0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=be.util.createBuffer();i.putBytes(e.bytes());var s=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,o=s&n.blockLength-1;i.putBytes(no.substr(0,n.blockLength-o));for(var a,u,c=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,u=a/4294967296>>>0,c+=u,i.putInt32(c>>>0),c=a>>>0;i.putInt32(c);var h={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};W0(h,r,i);var l=be.util.createBuffer();return l.putInt32(h.h0),l.putInt32(h.h1),l.putInt32(h.h2),l.putInt32(h.h3),l.putInt32(h.h4),l.putInt32(h.h5),l.putInt32(h.h6),l.putInt32(h.h7),l},n};var no=null,$0=!1,Z0=null;function vl(){no="\x80",no+=be.util.fillString("\0",64),Z0=[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],$0=!0}function W0(t,e,r){for(var n,i,s,o,a,u,c,f,h,l,g,p,d,y,m,w=r.length();w>=64;){for(c=0;c<16;++c)e[c]=r.getInt32();for(;c<64;++c)n=e[c-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[c-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[c]=n+e[c-7]+i+e[c-16]|0;for(f=t.h0,h=t.h1,l=t.h2,g=t.h3,p=t.h4,d=t.h5,y=t.h6,m=t.h7,c=0;c<64;++c)o=(p>>>6|p<<26)^(p>>>11|p<<21)^(p>>>25|p<<7),a=y^p&(d^y),s=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),u=f&h|l&(f^h),n=m+o+a+Z0[c]+e[c],i=s+u,m=y,y=d,d=p,p=g+n>>>0,g=l,l=h,h=f,f=n+i>>>0;t.h0=t.h0+f|0,t.h1=t.h1+h|0,t.h2=t.h2+l|0,t.h3=t.h3+g|0,t.h4=t.h4+p|0,t.h5=t.h5+d|0,t.h6=t.h6+y|0,t.h7=t.h7+m|0,w-=64}}});var tu=ct((N2,j0)=>{var ve=ot();Et();var Bi=null;ve.util.isNodejs&&!ve.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Bi=wi());var wl=j0.exports=ve.prng=ve.prng||{};wl.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(c,f){if(!f)return e.generateSync(c);var h=e.plugin.cipher,l=e.plugin.increment,g=e.plugin.formatKey,p=e.plugin.formatSeed,d=ve.util.createBuffer();e.key=null,y();function y(m){if(m)return f(m);if(d.length()>=c)return f(null,d.getBytes(c));if(e.generated>1048575&&(e.key=null),e.key===null)return ve.util.nextTick(function(){s(y)});var w=h(e.key,e.seed);e.generated+=w.length,d.putBytes(w),e.key=g(h(e.key,l(e.seed))),e.seed=p(h(e.key,e.seed)),ve.util.setImmediate(y)}},e.generateSync=function(c){var f=e.plugin.cipher,h=e.plugin.increment,l=e.plugin.formatKey,g=e.plugin.formatSeed;e.key=null;for(var p=ve.util.createBuffer();p.length()<c;){e.generated>1048575&&(e.key=null),e.key===null&&o();var d=f(e.key,e.seed);e.generated+=d.length,p.putBytes(d),e.key=l(f(e.key,h(e.seed))),e.seed=g(f(e.key,e.seed))}return p.getBytes(c)};function s(c){if(e.pools[0].messageLength>=32)return a(),c();var f=32-e.pools[0].messageLength<<5;e.seedFile(f,function(h,l){if(h)return c(h);e.collect(l),a(),c()})}function o(){if(e.pools[0].messageLength>=32)return a();var c=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(c)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var c=e.plugin.md.create();c.update(e.keyBytes);for(var f=1,h=0;h<32;++h)e.reseeds%f===0&&(c.update(e.pools[h].digest().getBytes()),e.pools[h].start()),f=f<<1;e.keyBytes=c.digest().getBytes(),c.start(),c.update(e.keyBytes);var l=c.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(l),e.generated=0}function u(c){var f=null,h=ve.util.globalScope,l=h.crypto||h.msCrypto;l&&l.getRandomValues&&(f=function(E){return l.getRandomValues(E)});var g=ve.util.createBuffer();if(f)for(;g.length()<c;){var p=Math.max(1,Math.min(c-g.length(),65536)/4),d=new Uint32Array(Math.floor(p));try{f(d);for(var y=0;y<d.length;++y)g.putInt32(d[y])}catch(E){if(!(typeof QuotaExceededError<"u"&&E instanceof QuotaExceededError))throw E}}if(g.length()<c)for(var m,w,b,_=Math.floor(Math.random()*65536);g.length()<c;){w=16807*(_&65535),m=16807*(_>>16),w+=(m&32767)<<16,w+=m>>15,w=(w&2147483647)+(w>>31),_=w&4294967295;for(var y=0;y<3;++y)b=_>>>(y<<3),b^=Math.floor(Math.random()*256),g.putByte(b&255)}return g.getBytes(c)}return Bi?(e.seedFile=function(c,f){Bi.randomBytes(c,function(h,l){if(h)return f(h);f(null,l.toString())})},e.seedFileSync=function(c){return Bi.randomBytes(c).toString()}):(e.seedFile=function(c,f){try{f(null,u(c))}catch(h){f(h)}},e.seedFileSync=u),e.collect=function(c){for(var f=c.length,h=0;h<f;++h)e.pools[e.pool].update(c.substr(h,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(c,f){for(var h="",l=0;l<f;l+=8)h+=String.fromCharCode(c>>l&255);e.collect(h)},e.registerWorker=function(c){if(c===self)e.seedFile=function(h,l){function g(p){var d=p.data;d.forge&&d.forge.prng&&(self.removeEventListener("message",g),l(d.forge.prng.err,d.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:h}}})};else{var f=function(h){var l=h.data;l.forge&&l.forge.prng&&e.seedFile(l.forge.prng.needed,function(g,p){c.postMessage({forge:{prng:{err:g,bytes:p}}})})};c.addEventListener("message",f)}},e}});var Cn=ct((P2,io)=>{var Ut=ot();di();J0();tu();Et();(function(){if(Ut.random&&Ut.random.getBytes){io.exports=Ut.random;return}(function(t){var e={},r=new Array(4),n=Ut.util.createBuffer();e.formatKey=function(h){var l=Ut.util.createBuffer(h);return h=new Array(4),h[0]=l.getInt32(),h[1]=l.getInt32(),h[2]=l.getInt32(),h[3]=l.getInt32(),Ut.aes._expandKey(h,!1)},e.formatSeed=function(h){var l=Ut.util.createBuffer(h);return h=new Array(4),h[0]=l.getInt32(),h[1]=l.getInt32(),h[2]=l.getInt32(),h[3]=l.getInt32(),h},e.cipher=function(h,l){return Ut.aes._updateBlock(h,l,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(h){return++h[3],h},e.md=Ut.md.sha256;function i(){var h=Ut.prng.create(e);return h.getBytes=function(l,g){return h.generate(l,g)},h.getBytesSync=function(l){return h.generate(l)},h}var s=i(),o=null,a=Ut.util.globalScope,u=a.crypto||a.msCrypto;if(u&&u.getRandomValues&&(o=function(h){return u.getRandomValues(h)}),Ut.options.usePureJavaScript||!Ut.util.isNodejs&&!o){if(typeof window>"u"||window.document,s.collectInt(+new Date,32),typeof navigator<"u"){var c="";for(var f in navigator)try{typeof navigator[f]=="string"&&(c+=navigator[f])}catch{}s.collect(c),c=null}t&&(t().mousemove(function(h){s.collectInt(h.clientX,16),s.collectInt(h.clientY,16)}),t().keypress(function(h){s.collectInt(h.charCode,8)}))}if(!Ut.random)Ut.random=s;else for(var f in s)Ut.random[f]=s[f];Ut.random.createInstance=i,io.exports=Ut.random})(typeof jQuery<"u"?jQuery:null)})()});var iu=ct((D2,nu)=>{var $t=ot();Et();var so=[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],eu=[1,2,3,5],El=function(t,e){return t<<e&65535|(t&65535)>>16-e},Sl=function(t,e){return(t&65535)>>e|t<<16-e&65535};nu.exports=$t.rc2=$t.rc2||{};$t.rc2.expandKey=function(t,e){typeof t=="string"&&(t=$t.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,s=Math.ceil(i/8),o=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(so[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-s,so[r.at(128-s)&o]),a=127-s;a>=0;a--)r.setAt(a,so[r.at(a+1)^r.at(a+s)]);return r};var ru=function(t,e,r){var n=!1,i=null,s=null,o=null,a,u,c,f,h=[];for(t=$t.rc2.expandKey(t,e),c=0;c<64;c++)h.push(t.getInt16Le());r?(a=function(p){for(c=0;c<4;c++)p[c]+=h[f]+(p[(c+3)%4]&p[(c+2)%4])+(~p[(c+3)%4]&p[(c+1)%4]),p[c]=El(p[c],eu[c]),f++},u=function(p){for(c=0;c<4;c++)p[c]+=h[p[(c+3)%4]&63]}):(a=function(p){for(c=3;c>=0;c--)p[c]=Sl(p[c],eu[c]),p[c]-=h[f]+(p[(c+3)%4]&p[(c+2)%4])+(~p[(c+3)%4]&p[(c+1)%4]),f--},u=function(p){for(c=3;c>=0;c--)p[c]-=h[p[(c+3)%4]&63]});var l=function(p){var d=[];for(c=0;c<4;c++){var y=i.getInt16Le();o!==null&&(r?y^=o.getInt16Le():o.putInt16Le(y)),d.push(y&65535)}f=r?0:63;for(var m=0;m<p.length;m++)for(var w=0;w<p[m][0];w++)p[m][1](d);for(c=0;c<4;c++)o!==null&&(r?o.putInt16Le(d[c]):d[c]^=o.getInt16Le()),s.putInt16Le(d[c])},g=null;return g={start:function(p,d){p&&typeof p=="string"&&(p=$t.util.createBuffer(p)),n=!1,i=$t.util.createBuffer(),s=d||new $t.util.createBuffer,o=p,g.output=s},update:function(p){for(n||i.putBuffer(p);i.length()>=8;)l([[5,a],[1,u],[6,a],[1,u],[5,a]])},finish:function(p){var d=!0;if(r)if(p)d=p(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(d&&(n=!0,g.update()),!r&&(d=i.length()===0,d))if(p)d=p(8,s,!r);else{var m=s.length(),w=s.at(m-1);w>m?d=!1:s.truncate(w)}return d}},g};$t.rc2.startEncrypting=function(t,e,r){var n=$t.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};$t.rc2.createEncryptionCipher=function(t,e){return ru(t,e,!0)};$t.rc2.startDecrypting=function(t,e,r){var n=$t.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};$t.rc2.createDecryptionCipher=function(t,e){return ru(t,e,!1)}});var Ci=ct((k2,lu)=>{var oo=ot();lu.exports=oo.jsbn=oo.jsbn||{};var De,Bl=0xdeadbeefcafe,su=(Bl&16777215)==15715070;function I(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}oo.jsbn.BigInteger=I;function et(){return new I(null)}function Al(t,e,r,n,i,s){for(;--s>=0;){var o=e*this.data[t++]+r.data[n]+i;i=Math.floor(o/67108864),r.data[n++]=o&67108863}return i}function Il(t,e,r,n,i,s){for(var o=e&32767,a=e>>15;--s>=0;){var u=this.data[t]&32767,c=this.data[t++]>>15,f=a*u+c*o;u=o*u+((f&32767)<<15)+r.data[n]+(i&1073741823),i=(u>>>30)+(f>>>15)+a*c+(i>>>30),r.data[n++]=u&1073741823}return i}function ou(t,e,r,n,i,s){for(var o=e&16383,a=e>>14;--s>=0;){var u=this.data[t]&16383,c=this.data[t++]>>14,f=a*u+c*o;u=o*u+((f&16383)<<14)+r.data[n]+i,i=(u>>28)+(f>>14)+a*c,r.data[n++]=u&268435455}return i}typeof navigator>"u"?(I.prototype.am=ou,De=28):su&&navigator.appName=="Microsoft Internet Explorer"?(I.prototype.am=Il,De=30):su&&navigator.appName!="Netscape"?(I.prototype.am=Al,De=26):(I.prototype.am=ou,De=28);I.prototype.DB=De;I.prototype.DM=(1<<De)-1;I.prototype.DV=1<<De;var ao=52;I.prototype.FV=Math.pow(2,ao);I.prototype.F1=ao-De;I.prototype.F2=2*De-ao;var Cl="0123456789abcdefghijklmnopqrstuvwxyz",Ai=new Array,Hr,re;Hr=48;for(re=0;re<=9;++re)Ai[Hr++]=re;Hr=97;for(re=10;re<36;++re)Ai[Hr++]=re;Hr=65;for(re=10;re<36;++re)Ai[Hr++]=re;function au(t){return Cl.charAt(t)}function uu(t,e){var r=Ai[t.charCodeAt(e)];return r??-1}function Tl(t){for(var e=this.t-1;e>=0;--e)t.data[e]=this.data[e];t.t=this.t,t.s=this.s}function _l(t){this.t=1,this.s=t<0?-1:0,t>0?this.data[0]=t:t<-1?this.data[0]=t+this.DV:this.t=0}function $e(t){var e=et();return e.fromInt(t),e}function Rl(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,s=0;--n>=0;){var o=r==8?t[n]&255:uu(t,n);if(o<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,s==0?this.data[this.t++]=o:s+r>this.DB?(this.data[this.t-1]|=(o&(1<<this.DB-s)-1)<<s,this.data[this.t++]=o>>this.DB-s):this.data[this.t-1]|=o<<s,s+=r,s>=this.DB&&(s-=this.DB)}r==8&&t[0]&128&&(this.s=-1,s>0&&(this.data[this.t-1]|=(1<<this.DB-s)-1<<s)),this.clamp(),i&&I.ZERO.subTo(this,this)}function Ll(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function Nl(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,s="",o=this.t,a=this.DB-o*this.DB%e;if(o-- >0)for(a<this.DB&&(n=this.data[o]>>a)>0&&(i=!0,s=au(n));o>=0;)a<e?(n=(this.data[o]&(1<<a)-1)<<e-a,n|=this.data[--o]>>(a+=this.DB-e)):(n=this.data[o]>>(a-=e)&r,a<=0&&(a+=this.DB,--o)),n>0&&(i=!0),i&&(s+=au(n));return i?s:"0"}function Pl(){var t=et();return I.ZERO.subTo(this,t),t}function Dl(){return this.s<0?this.negate():this}function kl(t){var e=this.s-t.s;if(e!=0)return e;var r=this.t;if(e=r-t.t,e!=0)return this.s<0?-e:e;for(;--r>=0;)if((e=this.data[r]-t.data[r])!=0)return e;return 0}function Ii(t){var e=1,r;return(r=t>>>16)!=0&&(t=r,e+=16),(r=t>>8)!=0&&(t=r,e+=8),(r=t>>4)!=0&&(t=r,e+=4),(r=t>>2)!=0&&(t=r,e+=2),(r=t>>1)!=0&&(t=r,e+=1),e}function Ul(){return this.t<=0?0:this.DB*(this.t-1)+Ii(this.data[this.t-1]^this.s&this.DM)}function Kl(t,e){var r;for(r=this.t-1;r>=0;--r)e.data[r+t]=this.data[r];for(r=t-1;r>=0;--r)e.data[r]=0;e.t=this.t+t,e.s=this.s}function Ol(t,e){for(var r=t;r<this.t;++r)e.data[r-t]=this.data[r];e.t=Math.max(this.t-t,0),e.s=this.s}function Ml(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,s=Math.floor(t/this.DB),o=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+s+1]=this.data[a]>>n|o,o=(this.data[a]&i)<<r;for(a=s-1;a>=0;--a)e.data[a]=0;e.data[s]=o,e.t=this.t+s+1,e.s=this.s,e.clamp()}function Fl(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,s=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var o=r+1;o<this.t;++o)e.data[o-r-1]|=(this.data[o]&s)<<i,e.data[o-r]=this.data[o]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&s)<<i),e.t=this.t-r,e.clamp()}function Vl(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function ql(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&I.ZERO.subTo(e,e)}function Hl(t){for(var e=this.abs(),r=t.t=2*e.t;--r>=0;)t.data[r]=0;for(r=0;r<e.t-1;++r){var n=e.am(r,e.data[r],t,2*r,0,1);(t.data[r+e.t]+=e.am(r+1,2*e.data[r],t,2*r+1,n,e.t-r-1))>=e.DV&&(t.data[r+e.t]-=e.DV,t.data[r+e.t+1]=1)}t.t>0&&(t.data[t.t-1]+=e.am(r,e.data[r],t,2*r,0,1)),t.s=0,t.clamp()}function zl(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=et());var s=et(),o=this.s,a=t.s,u=this.DB-Ii(n.data[n.t-1]);u>0?(n.lShiftTo(u,s),i.lShiftTo(u,r)):(n.copyTo(s),i.copyTo(r));var c=s.t,f=s.data[c-1];if(f!=0){var h=f*(1<<this.F1)+(c>1?s.data[c-2]>>this.F2:0),l=this.FV/h,g=(1<<this.F1)/h,p=1<<this.F2,d=r.t,y=d-c,m=e??et();for(s.dlShiftTo(y,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),I.ONE.dlShiftTo(c,m),m.subTo(s,s);s.t<c;)s.data[s.t++]=0;for(;--y>=0;){var w=r.data[--d]==f?this.DM:Math.floor(r.data[d]*l+(r.data[d-1]+p)*g);if((r.data[d]+=s.am(0,w,r,y,0,c))<w)for(s.dlShiftTo(y,m),r.subTo(m,r);r.data[d]<--w;)r.subTo(m,r)}e!=null&&(r.drShiftTo(c,e),o!=a&&I.ZERO.subTo(e,e)),r.t=c,r.clamp(),u>0&&r.rShiftTo(u,r),o<0&&I.ZERO.subTo(r,r)}}}function Gl(t){var e=et();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(I.ZERO)>0&&t.subTo(e,e),e}function lr(t){this.m=t}function Yl(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function Wl(t){return t}function Ql(t){t.divRemTo(this.m,null,t)}function $l(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function Zl(t,e){t.squareTo(e),this.reduce(e)}lr.prototype.convert=Yl;lr.prototype.revert=Wl;lr.prototype.reduce=Ql;lr.prototype.mulTo=$l;lr.prototype.sqrTo=Zl;function Xl(){if(this.t<1)return 0;var t=this.data[0];if(!(t&1))return 0;var e=t&3;return e=e*(2-(t&15)*e)&15,e=e*(2-(t&255)*e)&255,e=e*(2-((t&65535)*e&65535))&65535,e=e*(2-t*e%this.DV)%this.DV,e>0?this.DV-e:-e}function pr(t){this.m=t,this.mp=t.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}function Jl(t){var e=et();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(I.ZERO)>0&&this.m.subTo(e,e),e}function jl(t){var e=et();return t.copyTo(e),this.reduce(e),e}function tp(t){for(;t.t<=this.mt2;)t.data[t.t++]=0;for(var e=0;e<this.m.t;++e){var r=t.data[e]&32767,n=r*this.mpl+((r*this.mph+(t.data[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(r=e+this.m.t,t.data[r]+=this.m.am(0,n,t,e,0,this.m.t);t.data[r]>=t.DV;)t.data[r]-=t.DV,t.data[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)}function ep(t,e){t.squareTo(e),this.reduce(e)}function rp(t,e,r){t.multiplyTo(e,r),this.reduce(r)}pr.prototype.convert=Jl;pr.prototype.revert=jl;pr.prototype.reduce=tp;pr.prototype.mulTo=rp;pr.prototype.sqrTo=ep;function np(){return(this.t>0?this.data[0]&1:this.s)==0}function ip(t,e){if(t>4294967295||t<1)return I.ONE;var r=et(),n=et(),i=e.convert(this),s=Ii(t)-1;for(i.copyTo(r);--s>=0;)if(e.sqrTo(r,n),(t&1<<s)>0)e.mulTo(n,i,r);else{var o=r;r=n,n=o}return e.revert(r)}function sp(t,e){var r;return t<256||e.isEven()?r=new lr(e):r=new pr(e),this.exp(t,r)}I.prototype.copyTo=Tl;I.prototype.fromInt=_l;I.prototype.fromString=Rl;I.prototype.clamp=Ll;I.prototype.dlShiftTo=Kl;I.prototype.drShiftTo=Ol;I.prototype.lShiftTo=Ml;I.prototype.rShiftTo=Fl;I.prototype.subTo=Vl;I.prototype.multiplyTo=ql;I.prototype.squareTo=Hl;I.prototype.divRemTo=zl;I.prototype.invDigit=Xl;I.prototype.isEven=np;I.prototype.exp=ip;I.prototype.toString=Nl;I.prototype.negate=Pl;I.prototype.abs=Dl;I.prototype.compareTo=kl;I.prototype.bitLength=Ul;I.prototype.mod=Gl;I.prototype.modPowInt=sp;I.ZERO=$e(0);I.ONE=$e(1);function op(){var t=et();return this.copyTo(t),t}function ap(){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 up(){return this.t==0?this.s:this.data[0]<<24>>24}function cp(){return this.t==0?this.s:this.data[0]<<16>>16}function fp(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function hp(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function lp(t){if(t==null&&(t=10),this.signum()==0||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=$e(r),i=et(),s=et(),o="";for(this.divRemTo(n,i,s);i.signum()>0;)o=(r+s.intValue()).toString(t).substr(1)+o,i.divRemTo(n,i,s);return s.intValue().toString(t)+o}function pp(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,s=0,o=0,a=0;a<t.length;++a){var u=uu(t,a);if(u<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}o=e*o+u,++s>=r&&(this.dMultiply(n),this.dAddOffset(o,0),s=0,o=0)}s>0&&(this.dMultiply(Math.pow(e,s)),this.dAddOffset(o,0)),i&&I.ZERO.subTo(this,this)}function dp(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(I.ONE.shiftLeft(t-1),uo,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(I.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function yp(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function gp(t){return this.compareTo(t)==0}function mp(t){return this.compareTo(t)<0?this:t}function xp(t){return this.compareTo(t)>0?this:t}function bp(t,e,r){var n,i,s=Math.min(t.t,this.t);for(n=0;n<s;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=s;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=s;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function vp(t,e){return t&e}function wp(t){var e=et();return this.bitwiseTo(t,vp,e),e}function uo(t,e){return t|e}function Ep(t){var e=et();return this.bitwiseTo(t,uo,e),e}function cu(t,e){return t^e}function Sp(t){var e=et();return this.bitwiseTo(t,cu,e),e}function fu(t,e){return t&~e}function Bp(t){var e=et();return this.bitwiseTo(t,fu,e),e}function Ap(){for(var t=et(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function Ip(t){var e=et();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function Cp(t){var e=et();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function Tp(t){if(t==0)return-1;var e=0;return t&65535||(t>>=16,e+=16),t&255||(t>>=8,e+=8),t&15||(t>>=4,e+=4),t&3||(t>>=2,e+=2),t&1||++e,e}function _p(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+Tp(this.data[t]);return this.s<0?this.t*this.DB:-1}function Rp(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function Lp(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=Rp(this.data[r]^e);return t}function Np(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function Pp(t,e){var r=I.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function Dp(t){return this.changeBit(t,uo)}function kp(t){return this.changeBit(t,fu)}function Up(t){return this.changeBit(t,cu)}function Kp(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function Op(t){var e=et();return this.addTo(t,e),e}function Mp(t){var e=et();return this.subTo(t,e),e}function Fp(t){var e=et();return this.multiplyTo(t,e),e}function Vp(t){var e=et();return this.divRemTo(t,e,null),e}function qp(t){var e=et();return this.divRemTo(t,null,e),e}function Hp(t){var e=et(),r=et();return this.divRemTo(t,e,r),new Array(e,r)}function zp(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function Gp(t,e){if(t!=0){for(;this.t<=e;)this.data[this.t++]=0;for(this.data[e]+=t;this.data[e]>=this.DV;)this.data[e]-=this.DV,++e>=this.t&&(this.data[this.t++]=0),++this.data[e]}}function Tn(){}function hu(t){return t}function Yp(t,e,r){t.multiplyTo(e,r)}function Wp(t,e){t.squareTo(e)}Tn.prototype.convert=hu;Tn.prototype.revert=hu;Tn.prototype.mulTo=Yp;Tn.prototype.sqrTo=Wp;function Qp(t){return this.exp(t,new Tn)}function $p(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function Zp(t,e,r){--e;var n=r.t=this.t+t.t-e;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(e-this.t,0);n<t.t;++n)r.data[this.t+n-e]=this.am(e-n,t.data[n],r,0,0,this.t+n-e);r.clamp(),r.drShiftTo(1,r)}function zr(t){this.r2=et(),this.q3=et(),I.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function Xp(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=et();return t.copyTo(e),this.reduce(e),e}function Jp(t){return t}function jp(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)}function td(t,e){t.squareTo(e),this.reduce(e)}function ed(t,e,r){t.multiplyTo(e,r),this.reduce(r)}zr.prototype.convert=Xp;zr.prototype.revert=Jp;zr.prototype.reduce=jp;zr.prototype.mulTo=ed;zr.prototype.sqrTo=td;function rd(t,e){var r=t.bitLength(),n,i=$e(1),s;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?s=new lr(e):e.isEven()?s=new zr(e):s=new pr(e);var o=new Array,a=3,u=n-1,c=(1<<n)-1;if(o[1]=s.convert(this),n>1){var f=et();for(s.sqrTo(o[1],f);a<=c;)o[a]=et(),s.mulTo(f,o[a-2],o[a]),a+=2}var h=t.t-1,l,g=!0,p=et(),d;for(r=Ii(t.data[h])-1;h>=0;){for(r>=u?l=t.data[h]>>r-u&c:(l=(t.data[h]&(1<<r+1)-1)<<u-r,h>0&&(l|=t.data[h-1]>>this.DB+r-u)),a=n;!(l&1);)l>>=1,--a;if((r-=a)<0&&(r+=this.DB,--h),g)o[l].copyTo(i),g=!1;else{for(;a>1;)s.sqrTo(i,p),s.sqrTo(p,i),a-=2;a>0?s.sqrTo(i,p):(d=i,i=p,p=d),s.mulTo(p,o[l],i)}for(;h>=0&&!(t.data[h]&1<<r);)s.sqrTo(i,p),d=i,i=p,p=d,--r<0&&(r=this.DB-1,--h)}return s.revert(i)}function nd(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),s=r.getLowestSetBit();if(s<0)return e;for(i<s&&(s=i),s>0&&(e.rShiftTo(s,e),r.rShiftTo(s,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return s>0&&r.lShiftTo(s,r),r}function id(t){if(t<=0)return 0;var e=this.DV%t,r=this.s<0?t-1:0;if(this.t>0)if(e==0)r=this.data[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this.data[n])%t;return r}function sd(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return I.ZERO;for(var r=t.clone(),n=this.clone(),i=$e(1),s=$e(0),o=$e(0),a=$e(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!s.isEven())&&(i.addTo(this,i),s.subTo(t,s)),i.rShiftTo(1,i)):s.isEven()||s.subTo(t,s),s.rShiftTo(1,s);for(;n.isEven();)n.rShiftTo(1,n),e?((!o.isEven()||!a.isEven())&&(o.addTo(this,o),a.subTo(t,a)),o.rShiftTo(1,o)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(o,i),s.subTo(a,s)):(n.subTo(r,n),e&&o.subTo(i,o),a.subTo(s,a))}if(n.compareTo(I.ONE)!=0)return I.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var ue=[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],od=(1<<26)/ue[ue.length-1];function ad(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=ue[ue.length-1]){for(e=0;e<ue.length;++e)if(r.data[0]==ue[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<ue.length;){for(var n=ue[e],i=e+1;i<ue.length&&n<od;)n*=ue[i++];for(n=r.modInt(n);e<i;)if(n%ue[e++]==0)return!1}return r.millerRabin(t)}function ud(t){var e=this.subtract(I.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=cd(),s,o=0;o<t;++o){do s=new I(this.bitLength(),i);while(s.compareTo(I.ONE)<=0||s.compareTo(e)>=0);var a=s.modPow(n,this);if(a.compareTo(I.ONE)!=0&&a.compareTo(e)!=0){for(var u=1;u++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(I.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function cd(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}I.prototype.chunkSize=fp;I.prototype.toRadix=lp;I.prototype.fromRadix=pp;I.prototype.fromNumber=dp;I.prototype.bitwiseTo=bp;I.prototype.changeBit=Pp;I.prototype.addTo=Kp;I.prototype.dMultiply=zp;I.prototype.dAddOffset=Gp;I.prototype.multiplyLowerTo=$p;I.prototype.multiplyUpperTo=Zp;I.prototype.modInt=id;I.prototype.millerRabin=ud;I.prototype.clone=op;I.prototype.intValue=ap;I.prototype.byteValue=up;I.prototype.shortValue=cp;I.prototype.signum=hp;I.prototype.toByteArray=yp;I.prototype.equals=gp;I.prototype.min=mp;I.prototype.max=xp;I.prototype.and=wp;I.prototype.or=Ep;I.prototype.xor=Sp;I.prototype.andNot=Bp;I.prototype.not=Ap;I.prototype.shiftLeft=Ip;I.prototype.shiftRight=Cp;I.prototype.getLowestSetBit=_p;I.prototype.bitCount=Lp;I.prototype.testBit=Np;I.prototype.setBit=Dp;I.prototype.clearBit=kp;I.prototype.flipBit=Up;I.prototype.add=Op;I.prototype.subtract=Mp;I.prototype.multiply=Fp;I.prototype.divide=Vp;I.prototype.remainder=qp;I.prototype.divideAndRemainder=Hp;I.prototype.modPow=rd;I.prototype.modInverse=sd;I.prototype.pow=Qp;I.prototype.gcd=nd;I.prototype.isProbablePrime=ad});var mu=ct((U2,gu)=>{var we=ot();hr();Et();var du=gu.exports=we.sha1=we.sha1||{};we.md.sha1=we.md.algorithms.sha1=du;du.create=function(){yu||fd();var t=null,e=we.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,s=0;s<i;++s)n.fullMessageLength.push(0);return e=we.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,s){s==="utf8"&&(i=we.util.encodeUtf8(i));var o=i.length;n.messageLength+=o,o=[o/4294967296>>>0,o>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=o[1],o[1]=o[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,o[0]=o[1]/4294967296>>>0;return e.putBytes(i),pu(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=we.util.createBuffer();i.putBytes(e.bytes());var s=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,o=s&n.blockLength-1;i.putBytes(co.substr(0,n.blockLength-o));for(var a,u,c=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,u=a/4294967296>>>0,c+=u,i.putInt32(c>>>0),c=a>>>0;i.putInt32(c);var h={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};pu(h,r,i);var l=we.util.createBuffer();return l.putInt32(h.h0),l.putInt32(h.h1),l.putInt32(h.h2),l.putInt32(h.h3),l.putInt32(h.h4),l},n};var co=null,yu=!1;function fd(){co="\x80",co+=we.util.fillString("\0",64),yu=!0}function pu(t,e,r){for(var n,i,s,o,a,u,c,f,h=r.length();h>=64;){for(i=t.h0,s=t.h1,o=t.h2,a=t.h3,u=t.h4,f=0;f<16;++f)n=r.getInt32(),e[f]=n,c=a^s&(o^a),n=(i<<5|i>>>27)+c+u+1518500249+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<20;++f)n=e[f-3]^e[f-8]^e[f-14]^e[f-16],n=n<<1|n>>>31,e[f]=n,c=a^s&(o^a),n=(i<<5|i>>>27)+c+u+1518500249+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<32;++f)n=e[f-3]^e[f-8]^e[f-14]^e[f-16],n=n<<1|n>>>31,e[f]=n,c=s^o^a,n=(i<<5|i>>>27)+c+u+1859775393+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<40;++f)n=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[f]=n,c=s^o^a,n=(i<<5|i>>>27)+c+u+1859775393+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<60;++f)n=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[f]=n,c=s&o|a&(s^o),n=(i<<5|i>>>27)+c+u+2400959708+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<80;++f)n=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[f]=n,c=s^o^a,n=(i<<5|i>>>27)+c+u+3395469782+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+s|0,t.h2=t.h2+o|0,t.h3=t.h3+a|0,t.h4=t.h4+u|0,h-=64}}});var vu=ct((K2,bu)=>{var Ee=ot();Et();Cn();mu();var xu=bu.exports=Ee.pkcs1=Ee.pkcs1||{};xu.encode_rsa_oaep=function(t,e,r){var n,i,s,o;typeof r=="string"?(n=r,i=arguments[3]||void 0,s=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,s=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md)),s?s.start():s=Ee.md.sha1.create(),o||(o=s);var a=Math.ceil(t.n.bitLength()/8),u=a-2*s.digestLength-2;if(e.length>u){var c=new Error("RSAES-OAEP input message length is too long.");throw c.length=e.length,c.maxLength=u,c}n||(n=""),s.update(n,"raw");for(var f=s.digest(),h="",l=u-e.length,g=0;g<l;g++)h+="\0";var p=f.getBytes()+h+""+e;if(!i)i=Ee.random.getBytes(s.digestLength);else if(i.length!==s.digestLength){var c=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw c.seedLength=i.length,c.digestLength=s.digestLength,c}var d=Ti(i,a-s.digestLength-1,o),y=Ee.util.xorBytes(p,d,p.length),m=Ti(y,s.digestLength,o),w=Ee.util.xorBytes(i,m,i.length);return"\0"+w+y};xu.decode_rsa_oaep=function(t,e,r){var n,i,s;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&&(s=r.mgf1.md));var o=Math.ceil(t.n.bitLength()/8);if(e.length!==o){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=e.length,y.expectedLength=o,y}if(i===void 0?i=Ee.md.sha1.create():i.start(),s||(s=i),o<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(),u=e.charAt(0),c=e.substring(1,i.digestLength+1),f=e.substring(1+i.digestLength),h=Ti(f,i.digestLength,s),l=Ee.util.xorBytes(c,h,c.length),g=Ti(l,o-i.digestLength-1,s),p=Ee.util.xorBytes(f,g,f.length),d=p.substring(0,i.digestLength),y=u!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==d.charAt(m);for(var w=1,b=i.digestLength,_=i.digestLength;_<p.length;_++){var E=p.charCodeAt(_),S=E&1^1,L=w?65534:0;y|=E&L,w=w&S,b+=w}if(y||p.charCodeAt(b)!==1)throw new Error("Invalid RSAES-OAEP padding.");return p.substring(b+1)};function Ti(t,e,r){r||(r=Ee.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),s=0;s<i;++s){var o=String.fromCharCode(s>>24&255,s>>16&255,s>>8&255,s&255);r.start(),r.update(t+o),n+=r.digest().getBytes()}return n.substring(0,e)}});var wu=ct((O2,fo)=>{var Ze=ot();Et();Ci();Cn();(function(){if(Ze.prime){fo.exports=Ze.prime;return}var t=fo.exports=Ze.prime=Ze.prime||{},e=Ze.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(h,l){return h|l};t.generateProbablePrime=function(h,l,g){typeof l=="function"&&(g=l,l={}),l=l||{};var p=l.algorithm||"PRIMEINC";typeof p=="string"&&(p={name:p}),p.options=p.options||{};var d=l.prng||Ze.random,y={nextBytes:function(m){for(var w=d.getBytesSync(m.length),b=0;b<m.length;++b)m[b]=w.charCodeAt(b)}};if(p.name==="PRIMEINC")return s(h,y,p.options,g);throw new Error("Invalid prime generation algorithm: "+p.name)};function s(h,l,g,p){return"workers"in g?u(h,l,g,p):o(h,l,g,p)}function o(h,l,g,p){var d=c(h,l),y=0,m=f(d.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var w=10;"maxBlockTime"in g&&(w=g.maxBlockTime),a(d,h,l,y,m,w,p)}function a(h,l,g,p,d,y,m){var w=+new Date;do{if(h.bitLength()>l&&(h=c(l,g)),h.isProbablePrime(d))return m(null,h);h.dAddOffset(r[p++%8],0)}while(y<0||+new Date-w<y);Ze.util.setImmediate(function(){a(h,l,g,p,d,y,m)})}function u(h,l,g,p){if(typeof Worker>"u")return o(h,l,g,p);var d=c(h,l),y=g.workers,m=g.workLoad||100,w=m*30/8,b=g.workerScript||"forge/prime.worker.js";if(y===-1)return Ze.util.estimateCores(function(E,S){E&&(S=2),y=S-1,_()});_();function _(){y=Math.max(1,y);for(var E=[],S=0;S<y;++S)E[S]=new Worker(b);for(var L=y,S=0;S<y;++S)E[S].addEventListener("message",G);var N=!1;function G(z){if(!N){--L;var q=z.data;if(q.found){for(var X=0;X<E.length;++X)E[X].terminate();return N=!0,p(null,new e(q.prime,16))}d.bitLength()>h&&(d=c(h,l));var at=d.toString(16);z.target.postMessage({hex:at,workLoad:m}),d.dAddOffset(w,0)}}}}function c(h,l){var g=new e(h,l),p=h-1;return g.testBit(p)||g.bitwiseTo(e.ONE.shiftLeft(p),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function f(h){return h<=100?27:h<=150?18:h<=200?15:h<=250?12:h<=300?9:h<=350?8:h<=400?7:h<=500?6:h<=600?5:h<=800?4:h<=1250?3:2}})()});var Ri=ct((M2,Tu)=>{var V=ot();In();Ci();mi();vu();wu();Cn();Et();typeof tt>"u"&&(tt=V.jsbn.BigInteger);var tt,ho=V.util.isNodejs?wi():null,v=V.asn1,ne=V.util;V.pki=V.pki||{};Tu.exports=V.pki.rsa=V.rsa=V.rsa||{};var Y=V.pki,hd=[6,4,2,4,2,4,6,2],ld={name:"PrivateKeyInfo",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:v.Class.UNIVERSAL,type:v.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:v.Class.UNIVERSAL,type:v.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},pd={name:"RSAPrivateKey",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},dd={name:"RSAPublicKey",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},yd=V.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:v.Class.UNIVERSAL,type:v.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:v.Class.UNIVERSAL,type:v.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},gd={name:"DigestInfo",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:v.Class.UNIVERSAL,type:v.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:v.Class.UNIVERSAL,type:v.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:v.Class.UNIVERSAL,type:v.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},md=function(t){var e;if(t.algorithm in Y.oids)e=Y.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=v.oidToDer(e).getBytes(),i=v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[]),s=v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[]);s.value.push(v.create(v.Class.UNIVERSAL,v.Type.OID,!1,n)),s.value.push(v.create(v.Class.UNIVERSAL,v.Type.NULL,!1,""));var o=v.create(v.Class.UNIVERSAL,v.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(s),i.value.push(o),v.toDer(i).getBytes()},Iu=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(tt.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(tt.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new tt(V.util.bytesToHex(V.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(tt.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),s=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(s)<0;)i=i.add(e.p);var o=i.subtract(s).multiply(e.qInv).mod(e.p).multiply(e.q).add(s);return o=o.multiply(n.modInverse(e.n)).mod(e.n),o};Y.rsa.encrypt=function(t,e,r){var n=r,i,s=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=Cu(t,e,r)):(i=V.util.createBuffer(),i.putBytes(t));for(var o=new tt(i.toHex(),16),a=Iu(o,e,n),u=a.toString(16),c=V.util.createBuffer(),f=s-Math.ceil(u.length/2);f>0;)c.putByte(0),--f;return c.putBytes(V.util.hexToBytes(u)),c.getBytes()};Y.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var s=new Error("Encrypted message length is invalid.");throw s.length=t.length,s.expected=i,s}var o=new tt(V.util.createBuffer(t).toHex(),16);if(o.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Iu(o,e,r),u=a.toString(16),c=V.util.createBuffer(),f=i-Math.ceil(u.length/2);f>0;)c.putByte(0),--f;return c.putBytes(V.util.hexToBytes(u)),n!==!1?_i(c.getBytes(),e,r):c.getBytes()};Y.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||V.random,i={nextBytes:function(a){for(var u=n.getBytesSync(a.length),c=0;c<a.length;++c)a[c]=u.charCodeAt(c)}},s=r.algorithm||"PRIMEINC",o;if(s==="PRIMEINC")o={algorithm:s,state:0,bits:t,rng:i,eInt:e||65537,e:new tt(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},o.e.fromInt(o.eInt);else throw new Error("Invalid key generation algorithm: "+s);return o};Y.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new tt(null);r.fromInt(30);for(var n=0,i=function(h,l){return h|l},s=+new Date,o,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var u=t.p===null?t.pBits:t.qBits,c=u-1;t.pqState===0?(t.num=new tt(u,t.rng),t.num.testBit(c)||t.num.bitwiseTo(tt.ONE.shiftLeft(c),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>u?t.pqState=0:t.num.isProbablePrime(bd(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(hd[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(tt.ONE).gcd(t.e).compareTo(tt.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(tt.ONE),t.q1=t.q.subtract(tt.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(tt.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var f=t.e.modInverse(t.phi);t.keys={privateKey:Y.rsa.setPrivateKey(t.n,t.e,f,t.p,t.q,f.mod(t.p1),f.mod(t.q1),t.q.modInverse(t.p)),publicKey:Y.rsa.setPublicKey(t.n,t.e)}}o=+new Date,a+=o-s,s=o}return t.keys!==null};Y.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!V.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(Eu("generateKeyPair"))return ho.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,u,c){if(a)return n(a);n(null,{privateKey:Y.privateKeyFromPem(c),publicKey:Y.publicKeyFromPem(u)})});if(Su("generateKey")&&Su("exportKey"))return ne.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Au(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ne.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var u=Y.privateKeyFromAsn1(v.fromDer(V.util.createBuffer(a)));n(null,{privateKey:u,publicKey:Y.setRsaPublicKey(u.n,u.e)})}});if(Bu("generateKey")&&Bu("exportKey")){var i=ne.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Au(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var u=a.target.result,c=ne.globalScope.msCrypto.subtle.exportKey("pkcs8",u.privateKey);c.oncomplete=function(f){var h=f.target.result,l=Y.privateKeyFromAsn1(v.fromDer(V.util.createBuffer(h)));n(null,{privateKey:l,publicKey:Y.setRsaPublicKey(l.n,l.e)})},c.onerror=function(f){n(f)}},i.onerror=function(a){n(a)};return}}else if(Eu("generateKeyPairSync")){var s=ho.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:Y.privateKeyFromPem(s.privateKey),publicKey:Y.publicKeyFromPem(s.publicKey)}}}var o=Y.rsa.createKeyPairGenerationState(t,e,r);if(!n)return Y.rsa.stepKeyPairGenerationState(o,0),o.keys;xd(o,r,n)};Y.setRsaPublicKey=Y.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,s){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,u,c){return Cu(a,u,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,u){return V.pkcs1.encode_rsa_oaep(u,a,s)}};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 o=i.encode(n,r,!0);return Y.rsa.encrypt(o,r,!0)},r.verify=function(n,i,s,o){typeof s=="string"?s=s.toUpperCase():s===void 0&&(s="RSASSA-PKCS1-V1_5"),o===void 0&&(o={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in o||(o._parseAllDigestBytes=!0),s==="RSASSA-PKCS1-V1_5"?s={verify:function(u,c){c=_i(c,r,!0);var f=v.fromDer(c,{parseAllBytes:o._parseAllDigestBytes}),h={},l=[];if(!v.validate(f,gd,h,l)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=l,g}var p=v.derToOid(h.algorithmIdentifier);if(!(p===V.oids.md2||p===V.oids.md5||p===V.oids.sha1||p===V.oids.sha224||p===V.oids.sha256||p===V.oids.sha384||p===V.oids.sha512||p===V.oids["sha512-224"]||p===V.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=p,g}if((p===V.oids.md2||p===V.oids.md5)&&!("parameters"in h))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return u===h.digest}}:(s==="NONE"||s==="NULL"||s===null)&&(s={verify:function(u,c){return c=_i(c,r,!0),u===c}});var a=Y.rsa.decrypt(i,r,!0,!1);return s.verify(n,a,r.n.bitLength())},r};Y.setRsaPrivateKey=Y.rsa.setPrivateKey=function(t,e,r,n,i,s,o,a){var u={n:t,e,d:r,p:n,q:i,dP:s,dQ:o,qInv:a};return u.decrypt=function(c,f,h){typeof f=="string"?f=f.toUpperCase():f===void 0&&(f="RSAES-PKCS1-V1_5");var l=Y.rsa.decrypt(c,u,!1,!1);if(f==="RSAES-PKCS1-V1_5")f={decode:_i};else if(f==="RSA-OAEP"||f==="RSAES-OAEP")f={decode:function(g,p){return V.pkcs1.decode_rsa_oaep(p,g,h)}};else if(["RAW","NONE","NULL",null].indexOf(f)!==-1)f={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+f+'".');return f.decode(l,u,!1)},u.sign=function(c,f){var h=!1;typeof f=="string"&&(f=f.toUpperCase()),f===void 0||f==="RSASSA-PKCS1-V1_5"?(f={encode:md},h=1):(f==="NONE"||f==="NULL"||f===null)&&(f={encode:function(){return c}},h=1);var l=f.encode(c,u.n.bitLength());return Y.rsa.encrypt(l,u,h)},u};Y.wrapRsaPrivateKey=function(t){return v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,v.integerToDer(0).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.OID,!1,v.oidToDer(Y.oids.rsaEncryption).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.NULL,!1,"")]),v.create(v.Class.UNIVERSAL,v.Type.OCTETSTRING,!1,v.toDer(t).getBytes())])};Y.privateKeyFromAsn1=function(t){var e={},r=[];if(v.validate(t,ld,e,r)&&(t=v.fromDer(V.util.createBuffer(e.privateKey))),e={},r=[],!v.validate(t,pd,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,s,o,a,u,c,f,h;return i=V.util.createBuffer(e.privateKeyModulus).toHex(),s=V.util.createBuffer(e.privateKeyPublicExponent).toHex(),o=V.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=V.util.createBuffer(e.privateKeyPrime1).toHex(),u=V.util.createBuffer(e.privateKeyPrime2).toHex(),c=V.util.createBuffer(e.privateKeyExponent1).toHex(),f=V.util.createBuffer(e.privateKeyExponent2).toHex(),h=V.util.createBuffer(e.privateKeyCoefficient).toHex(),Y.setRsaPrivateKey(new tt(i,16),new tt(s,16),new tt(o,16),new tt(a,16),new tt(u,16),new tt(c,16),new tt(f,16),new tt(h,16))};Y.privateKeyToAsn1=Y.privateKeyToRSAPrivateKey=function(t){return v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,v.integerToDer(0).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.n)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.e)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.d)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.p)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.q)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.dP)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.dQ)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.qInv))])};Y.publicKeyFromAsn1=function(t){var e={},r=[];if(v.validate(t,yd,e,r)){var n=v.derToOid(e.publicKeyOid);if(n!==Y.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!v.validate(t,dd,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var s=V.util.createBuffer(e.publicKeyModulus).toHex(),o=V.util.createBuffer(e.publicKeyExponent).toHex();return Y.setRsaPublicKey(new tt(s,16),new tt(o,16))};Y.publicKeyToAsn1=Y.publicKeyToSubjectPublicKeyInfo=function(t){return v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.OID,!1,v.oidToDer(Y.oids.rsaEncryption).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.NULL,!1,"")]),v.create(v.Class.UNIVERSAL,v.Type.BITSTRING,!1,[Y.publicKeyToRSAPublicKey(t)])])};Y.publicKeyToRSAPublicKey=function(t){return v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.n)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Se(t.e))])};function Cu(t,e,r){var n=V.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var s=new Error("Message is too long for PKCS#1 v1.5 padding.");throw s.length=t.length,s.max=i-11,s}n.putByte(0),n.putByte(r);var o=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var u=0;u<o;++u)n.putByte(a)}else for(;o>0;){for(var c=0,f=V.random.getBytes(o),u=0;u<o;++u)a=f.charCodeAt(u),a===0?++c:n.putByte(a);o=c}return n.putByte(0),n.putBytes(t),n}function _i(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),s=V.util.createBuffer(t),o=s.getByte(),a=s.getByte();if(o!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var u=0;if(a===0){u=i-3-n;for(var c=0;c<u;++c)if(s.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(u=0;s.length()>1;){if(s.getByte()!==255){--s.read;break}++u}else if(a===2)for(u=0;s.length()>1;){if(s.getByte()===0){--s.read;break}++u}var f=s.getByte();if(f!==0||u!==i-3-s.length())throw new Error("Encryption block is invalid.");return s.getBytes()}function xd(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){s(t.pBits,function(a,u){if(a)return r(a);if(t.p=u,t.q!==null)return o(a,t.q);s(t.qBits,o)})}function s(a,u){V.prime.generateProbablePrime(a,n,u)}function o(a,u){if(a)return r(a);if(t.q=u,t.p.compareTo(t.q)<0){var c=t.p;t.p=t.q,t.q=c}if(t.p.subtract(tt.ONE).gcd(t.e).compareTo(tt.ONE)!==0){t.p=null,i();return}if(t.q.subtract(tt.ONE).gcd(t.e).compareTo(tt.ONE)!==0){t.q=null,s(t.qBits,o);return}if(t.p1=t.p.subtract(tt.ONE),t.q1=t.q.subtract(tt.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(tt.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,s(t.qBits,o);return}var f=t.e.modInverse(t.phi);t.keys={privateKey:Y.rsa.setPrivateKey(t.n,t.e,f,t.p,t.q,f.mod(t.p1),f.mod(t.q1),t.q.modInverse(t.p)),publicKey:Y.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Se(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=V.util.hexToBytes(e);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function bd(t){return t<=100?27:t<=150?18:t<=200?15:t<=250?12:t<=300?9:t<=350?8:t<=400?7:t<=500?6:t<=600?5:t<=800?4:t<=1250?3:2}function Eu(t){return V.util.isNodejs&&typeof ho[t]=="function"}function Su(t){return typeof ne.globalScope<"u"&&typeof ne.globalScope.crypto=="object"&&typeof ne.globalScope.crypto.subtle=="object"&&typeof ne.globalScope.crypto.subtle[t]=="function"}function Bu(t){return typeof ne.globalScope<"u"&&typeof ne.globalScope.msCrypto=="object"&&typeof ne.globalScope.msCrypto.subtle=="object"&&typeof ne.globalScope.msCrypto.subtle[t]=="function"}function Au(t){for(var e=V.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var Du=ct((F2,Pu)=>{var U=ot();di();In();M0();hr();mi();ro();Y0();Cn();iu();Ri();Et();typeof _u>"u"&&(_u=U.jsbn.BigInteger);var _u,B=U.asn1,W=U.pki=U.pki||{};Pu.exports=W.pbe=U.pbe=U.pbe||{};var dr=W.oids,vd={name:"EncryptedPrivateKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},wd={name:"PBES2Algorithms",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},Ed={name:"pkcs-12PbeParams",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"iterations"}]};W.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=U.random.getBytesSync(r.saltSize),i=r.count,s=B.integerToDer(i),o,a,u;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var c,f,h;switch(r.algorithm){case"aes128":o=16,c=16,f=dr["aes128-CBC"],h=U.aes.createEncryptionCipher;break;case"aes192":o=24,c=16,f=dr["aes192-CBC"],h=U.aes.createEncryptionCipher;break;case"aes256":o=32,c=16,f=dr["aes256-CBC"],h=U.aes.createEncryptionCipher;break;case"des":o=8,c=8,f=dr.desCBC,h=U.des.createEncryptionCipher;break;default:var l=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw l.algorithm=r.algorithm,l}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),p=Nu(g),d=U.pkcs5.pbkdf2(e,n,i,o,p),y=U.random.getBytesSync(c),m=h(d);m.start(y),m.update(B.toDer(t)),m.finish(),u=m.output.getBytes();var w=Sd(n,s,o,g);a=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(dr.pkcs5PBES2).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(dr.pkcs5PBKDF2).getBytes()),w]),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(f).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){o=24;var b=new U.util.ByteBuffer(n),d=W.pbe.generatePkcs12Key(e,b,1,i,o),y=W.pbe.generatePkcs12Key(e,b,2,i,o),m=U.des.createEncryptionCipher(d);m.start(y),m.update(B.toDer(t)),m.finish(),u=m.output.getBytes(),a=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(dr["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,n),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,s.getBytes())])])}else{var l=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw l.algorithm=r.algorithm,l}var _=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[a,B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,u)]);return _};W.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!B.validate(t,vd,n,i)){var s=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw s.errors=i,s}var o=B.derToOid(n.encryptionOid),a=W.pbe.getCipher(o,n.encryptionParams,e),u=U.util.createBuffer(n.encryptedData);return a.update(u),a.finish()&&(r=B.fromDer(a.output)),r};W.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:B.toDer(t).getBytes()};return U.pem.encode(r,{maxline:e})};W.encryptedPrivateKeyFromPem=function(t){var e=U.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return B.fromDer(e.body)};W.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=W.wrapRsaPrivateKey(W.privateKeyToAsn1(t));return n=W.encryptPrivateKeyInfo(n,e,r),W.encryptedPrivateKeyToPem(n)}var i,s,o,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",o=16,s=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",o=24,s=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",o=32,s=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",o=24,s=U.random.getBytesSync(8),a=U.des.createEncryptionCipher;break;case"des":i="DES-CBC",o=8,s=U.random.getBytesSync(8),a=U.des.createEncryptionCipher;break;default:var u=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw u.algorithm=r.algorithm,u}var c=U.pbe.opensslDeriveBytes(e,s.substr(0,8),o),f=a(c);f.start(s),f.update(B.toDer(W.privateKeyToAsn1(t))),f.finish();var h={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:U.util.bytesToHex(s).toUpperCase()},body:f.output.getBytes()};return U.pem.encode(h)};W.decryptRsaPrivateKey=function(t,e){var r=null,n=U.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var s,o;switch(n.dekInfo.algorithm){case"DES-CBC":s=8,o=U.des.createDecryptionCipher;break;case"DES-EDE3-CBC":s=24,o=U.des.createDecryptionCipher;break;case"AES-128-CBC":s=16,o=U.aes.createDecryptionCipher;break;case"AES-192-CBC":s=24,o=U.aes.createDecryptionCipher;break;case"AES-256-CBC":s=32,o=U.aes.createDecryptionCipher;break;case"RC2-40-CBC":s=5,o=function(h){return U.rc2.createDecryptionCipher(h,40)};break;case"RC2-64-CBC":s=8,o=function(h){return U.rc2.createDecryptionCipher(h,64)};break;case"RC2-128-CBC":s=16,o=function(h){return U.rc2.createDecryptionCipher(h,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=U.util.hexToBytes(n.dekInfo.parameters),u=U.pbe.opensslDeriveBytes(e,a.substr(0,8),s),c=o(u);if(c.start(a),c.update(U.util.createBuffer(n.body)),c.finish())r=c.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=W.decryptPrivateKeyInfo(B.fromDer(r),e):r=B.fromDer(r),r!==null&&(r=W.privateKeyFromAsn1(r)),r};W.pbe.generatePkcs12Key=function(t,e,r,n,i,s){var o,a;if(typeof s>"u"||s===null){if(!("sha1"in U.md))throw new Error('"sha1" hash algorithm unavailable.');s=U.md.sha1.create()}var u=s.digestLength,c=s.blockLength,f=new U.util.ByteBuffer,h=new U.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)h.putInt16(t.charCodeAt(a));h.putInt16(0)}var l=h.length(),g=e.length(),p=new U.util.ByteBuffer;p.fillWithByte(r,c);var d=c*Math.ceil(g/c),y=new U.util.ByteBuffer;for(a=0;a<d;a++)y.putByte(e.at(a%g));var m=c*Math.ceil(l/c),w=new U.util.ByteBuffer;for(a=0;a<m;a++)w.putByte(h.at(a%l));var b=y;b.putBuffer(w);for(var _=Math.ceil(i/u),E=1;E<=_;E++){var S=new U.util.ByteBuffer;S.putBytes(p.bytes()),S.putBytes(b.bytes());for(var L=0;L<n;L++)s.start(),s.update(S.getBytes()),S=s.digest();var N=new U.util.ByteBuffer;for(a=0;a<c;a++)N.putByte(S.at(a%u));var G=Math.ceil(g/c)+Math.ceil(l/c),z=new U.util.ByteBuffer;for(o=0;o<G;o++){var q=new U.util.ByteBuffer(b.getBytes(c)),X=511;for(a=N.length()-1;a>=0;a--)X=X>>8,X+=N.at(a)+q.at(a),q.setAt(a,X&255);z.putBuffer(q)}b=z,f.putBuffer(S)}return f.truncate(f.length()-i),f};W.pbe.getCipher=function(t,e,r){switch(t){case W.oids.pkcs5PBES2:return W.pbe.getCipherForPBES2(t,e,r);case W.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case W.oids["pbewithSHAAnd40BitRC2-CBC"]:return W.pbe.getCipherForPKCS12PBE(t,e,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=t,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};W.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!B.validate(e,wd,n,i)){var s=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw s.errors=i,s}if(t=B.derToOid(n.kdfOid),t!==W.oids.pkcs5PBKDF2){var s=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw s.oid=t,s.supportedOids=["pkcs5PBKDF2"],s}if(t=B.derToOid(n.encOid),t!==W.oids["aes128-CBC"]&&t!==W.oids["aes192-CBC"]&&t!==W.oids["aes256-CBC"]&&t!==W.oids["des-EDE3-CBC"]&&t!==W.oids.desCBC){var s=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw s.oid=t,s.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],s}var o=n.kdfSalt,a=U.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var u,c;switch(W.oids[t]){case"aes128-CBC":u=16,c=U.aes.createDecryptionCipher;break;case"aes192-CBC":u=24,c=U.aes.createDecryptionCipher;break;case"aes256-CBC":u=32,c=U.aes.createDecryptionCipher;break;case"des-EDE3-CBC":u=24,c=U.des.createDecryptionCipher;break;case"desCBC":u=8,c=U.des.createDecryptionCipher;break}var f=Lu(n.prfOid),h=U.pkcs5.pbkdf2(r,o,a,u,f),l=n.encIv,g=c(h);return g.start(l),g};W.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!B.validate(e,Ed,n,i)){var s=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw s.errors=i,s}var o=U.util.createBuffer(n.salt),a=U.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var u,c,f;switch(t){case W.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:u=24,c=8,f=U.des.startDecrypting;break;case W.oids["pbewithSHAAnd40BitRC2-CBC"]:u=5,c=8,f=function(d,y){var m=U.rc2.createDecryptionCipher(d,40);return m.start(y,null),m};break;default:var s=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw s.oid=t,s}var h=Lu(n.prfOid),l=W.pbe.generatePkcs12Key(r,o,1,a,u,h);h.start();var g=W.pbe.generatePkcs12Key(r,o,2,a,c,h);return f(l,g)};W.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in U.md))throw new Error('"md5" hash algorithm unavailable.');n=U.md.md5.create()}e===null&&(e="");for(var i=[Ru(n,t+e)],s=16,o=1;s<r;++o,s+=16)i.push(Ru(n,i[o-1]+t+e));return i.join("").substr(0,r)};function Ru(t,e){return t.start().update(e).digest().getBytes()}function Lu(t){var e;if(!t)e="hmacWithSHA1";else if(e=W.oids[B.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Nu(e)}function Nu(t){var e=U.md;switch(t){case"hmacWithSHA224":e=U.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function Sd(t,e,r,n){var i=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,t),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,U.util.hexToBytes(r.toString(16))),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(W.oids[n]).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,"")])),i}});var Rc=ct((Qv,_c)=>{var pt=ot();hr();Et();var Un=_c.exports=pt.sha512=pt.sha512||{};pt.md.sha512=pt.md.algorithms.sha512=Un;var Cc=pt.sha384=pt.sha512.sha384=pt.sha512.sha384||{};Cc.create=function(){return Un.create("SHA-384")};pt.md.sha384=pt.md.algorithms.sha384=Cc;pt.sha512.sha256=pt.sha512.sha256||{create:function(){return Un.create("SHA-512/256")}};pt.md["sha512/256"]=pt.md.algorithms["sha512/256"]=pt.sha512.sha256;pt.sha512.sha224=pt.sha512.sha224||{create:function(){return Un.create("SHA-512/224")}};pt.md["sha512/224"]=pt.md.algorithms["sha512/224"]=pt.sha512.sha224;Un.create=function(t){if(Tc||Hy(),typeof t>"u"&&(t="SHA-512"),!(t in Er))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Er[t],r=null,n=pt.util.createBuffer(),i=new Array(80),s=0;s<80;++s)i[s]=new Array(2);var o=64;switch(t){case"SHA-384":o=48;break;case"SHA-512/256":o=32;break;case"SHA-512/224":o=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:o,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var u=a.messageLengthSize/4,c=0;c<u;++c)a.fullMessageLength.push(0);n=pt.util.createBuffer(),r=new Array(e.length);for(var c=0;c<e.length;++c)r[c]=e[c].slice(0);return a},a.start(),a.update=function(u,c){c==="utf8"&&(u=pt.util.encodeUtf8(u));var f=u.length;a.messageLength+=f,f=[f/4294967296>>>0,f>>>0];for(var h=a.fullMessageLength.length-1;h>=0;--h)a.fullMessageLength[h]+=f[1],f[1]=f[0]+(a.fullMessageLength[h]/4294967296>>>0),a.fullMessageLength[h]=a.fullMessageLength[h]>>>0,f[0]=f[1]/4294967296>>>0;return n.putBytes(u),Ic(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var u=pt.util.createBuffer();u.putBytes(n.bytes());var c=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,f=c&a.blockLength-1;u.putBytes(Wo.substr(0,a.blockLength-f));for(var h,l,g=a.fullMessageLength[0]*8,p=0;p<a.fullMessageLength.length-1;++p)h=a.fullMessageLength[p+1]*8,l=h/4294967296>>>0,g+=l,u.putInt32(g>>>0),g=h>>>0;u.putInt32(g);for(var d=new Array(r.length),p=0;p<r.length;++p)d[p]=r[p].slice(0);Ic(d,i,u);var y=pt.util.createBuffer(),m;t==="SHA-512"?m=d.length:t==="SHA-384"?m=d.length-2:m=d.length-4;for(var p=0;p<m;++p)y.putInt32(d[p][0]),(p!==m-1||t!=="SHA-512/224")&&y.putInt32(d[p][1]);return y},a};var Wo=null,Tc=!1,Qo=null,Er=null;function Hy(){Wo="\x80",Wo+=pt.util.fillString("\0",128),Qo=[[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]],Er={},Er["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Er["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Er["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Er["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Tc=!0}function Ic(t,e,r){for(var n,i,s,o,a,u,c,f,h,l,g,p,d,y,m,w,b,_,E,S,L,N,G,z,q,X,at,Kt,C,D,R,P,A,K,F,H=r.length();H>=128;){for(C=0;C<16;++C)e[C][0]=r.getInt32()>>>0,e[C][1]=r.getInt32()>>>0;for(;C<80;++C)P=e[C-2],D=P[0],R=P[1],n=((D>>>19|R<<13)^(R>>>29|D<<3)^D>>>6)>>>0,i=((D<<13|R>>>19)^(R<<3|D>>>29)^(D<<26|R>>>6))>>>0,K=e[C-15],D=K[0],R=K[1],s=((D>>>1|R<<31)^(D>>>8|R<<24)^D>>>7)>>>0,o=((D<<31|R>>>1)^(D<<24|R>>>8)^(D<<25|R>>>7))>>>0,A=e[C-7],F=e[C-16],R=i+A[1]+o+F[1],e[C][0]=n+A[0]+s+F[0]+(R/4294967296>>>0)>>>0,e[C][1]=R>>>0;for(d=t[0][0],y=t[0][1],m=t[1][0],w=t[1][1],b=t[2][0],_=t[2][1],E=t[3][0],S=t[3][1],L=t[4][0],N=t[4][1],G=t[5][0],z=t[5][1],q=t[6][0],X=t[6][1],at=t[7][0],Kt=t[7][1],C=0;C<80;++C)c=((L>>>14|N<<18)^(L>>>18|N<<14)^(N>>>9|L<<23))>>>0,f=((L<<18|N>>>14)^(L<<14|N>>>18)^(N<<23|L>>>9))>>>0,h=(q^L&(G^q))>>>0,l=(X^N&(z^X))>>>0,a=((d>>>28|y<<4)^(y>>>2|d<<30)^(y>>>7|d<<25))>>>0,u=((d<<4|y>>>28)^(y<<30|d>>>2)^(y<<25|d>>>7))>>>0,g=(d&m|b&(d^m))>>>0,p=(y&w|_&(y^w))>>>0,R=Kt+f+l+Qo[C][1]+e[C][1],n=at+c+h+Qo[C][0]+e[C][0]+(R/4294967296>>>0)>>>0,i=R>>>0,R=u+p,s=a+g+(R/4294967296>>>0)>>>0,o=R>>>0,at=q,Kt=X,q=G,X=z,G=L,z=N,R=S+i,L=E+n+(R/4294967296>>>0)>>>0,N=R>>>0,E=b,S=_,b=m,_=w,m=d,w=y,R=i+o,d=n+s+(R/4294967296>>>0)>>>0,y=R>>>0;R=t[0][1]+y,t[0][0]=t[0][0]+d+(R/4294967296>>>0)>>>0,t[0][1]=R>>>0,R=t[1][1]+w,t[1][0]=t[1][0]+m+(R/4294967296>>>0)>>>0,t[1][1]=R>>>0,R=t[2][1]+_,t[2][0]=t[2][0]+b+(R/4294967296>>>0)>>>0,t[2][1]=R>>>0,R=t[3][1]+S,t[3][0]=t[3][0]+E+(R/4294967296>>>0)>>>0,t[3][1]=R>>>0,R=t[4][1]+N,t[4][0]=t[4][0]+L+(R/4294967296>>>0)>>>0,t[4][1]=R>>>0,R=t[5][1]+z,t[5][0]=t[5][0]+G+(R/4294967296>>>0)>>>0,t[5][1]=R>>>0,R=t[6][1]+X,t[6][0]=t[6][0]+q+(R/4294967296>>>0)>>>0,t[6][1]=R>>>0,R=t[7][1]+Kt,t[7][0]=t[7][0]+at+(R/4294967296>>>0)>>>0,t[7][1]=R>>>0,H-=128}}});var C1={};It(C1,{PubSubBaseProtocol:()=>oa});var _1=Symbol.for("@libp2p/connection");var L1=Symbol.for("@libp2p/content-routing");var D1=Symbol.for("@libp2p/peer-discovery");var ga=Symbol.for("@libp2p/peer-id");var K1=Symbol.for("@libp2p/peer-routing");var nn;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(nn||(nn={}));var V1=Symbol.for("@libp2p/transport");var ma;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(ma||(ma={}));var O=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var Ir=class extends EventTarget{#t=new Map;listenerCount(e){let r=this.#t.get(e);return r==null?0:r.length}addEventListener(e,r,n){super.addEventListener(e,r,n);let i=this.#t.get(e);i==null&&(i=[],this.#t.set(e,i)),i.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,r,n){super.removeEventListener(e.toString(),r??null,n);let i=this.#t.get(e);i!=null&&(i=i.filter(({callback:s})=>s!==r),this.#t.set(e,i))}dispatchEvent(e){let r=super.dispatchEvent(e),n=this.#t.get(e.type);return n==null||(n=n.filter(({once:i})=>!i),this.#t.set(e.type,n)),r}safeDispatchEvent(e,r){return this.dispatchEvent(new ge(e,r))}},ns=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},ge=globalThis.CustomEvent??ns;var us={};It(us,{base58btc:()=>zt,base58flickr:()=>_f});function Bf(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var s=t.charAt(i),o=s.charCodeAt(0);if(r[o]!==255)throw new TypeError(s+" is ambiguous");r[o]=i}var a=t.length,u=t.charAt(0),c=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function h(p){if(p instanceof Uint8Array||(ArrayBuffer.isView(p)?p=new Uint8Array(p.buffer,p.byteOffset,p.byteLength):Array.isArray(p)&&(p=Uint8Array.from(p))),!(p instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(p.length===0)return"";for(var d=0,y=0,m=0,w=p.length;m!==w&&p[m]===0;)m++,d++;for(var b=(w-m)*f+1>>>0,_=new Uint8Array(b);m!==w;){for(var E=p[m],S=0,L=b-1;(E!==0||S<y)&&L!==-1;L--,S++)E+=256*_[L]>>>0,_[L]=E%a>>>0,E=E/a>>>0;if(E!==0)throw new Error("Non-zero carry");y=S,m++}for(var N=b-y;N!==b&&_[N]===0;)N++;for(var G=u.repeat(d);N<b;++N)G+=t.charAt(_[N]);return G}function l(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return new Uint8Array;var d=0;if(p[d]!==" "){for(var y=0,m=0;p[d]===u;)y++,d++;for(var w=(p.length-d)*c+1>>>0,b=new Uint8Array(w);p[d];){var _=r[p.charCodeAt(d)];if(_===255)return;for(var E=0,S=w-1;(_!==0||E<m)&&S!==-1;S--,E++)_+=a*b[S]>>>0,b[S]=_%256>>>0,_=_/256>>>0;if(_!==0)throw new Error("Non-zero carry");m=E,d++}if(p[d]!==" "){for(var L=w-m;L!==w&&b[L]===0;)L++;for(var N=new Uint8Array(y+(w-L)),G=y;L!==w;)N[G++]=b[L++];return N}}}function g(p){var d=l(p);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:h,decodeUnsafe:l,decode:g}}var Af=Bf,If=Af,xa=If;var vg=new Uint8Array(0);var ba=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},Ce=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var va=t=>new TextEncoder().encode(t),wa=t=>new TextDecoder().decode(t);var is=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},ss=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Sa(this,e)}},os=class{constructor(e){this.decoders=e}or(e){return Sa(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Sa=(t,e)=>new os({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),as=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new is(e,r,n),this.decoder=new ss(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Cr=({name:t,prefix:e,encode:r,decode:n})=>new as(t,e,r,n),qe=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=xa(r,e);return Cr({prefix:t,name:e,encode:n,decode:s=>Ce(i(s))})},Cf=(t,e,r,n)=>{let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let s=t.length;for(;t[s-1]==="=";)--s;let o=new Uint8Array(s*r/8|0),a=0,u=0,c=0;for(let f=0;f<s;++f){let h=i[t[f]];if(h===void 0)throw new SyntaxError(`Non-${n} character`);u=u<<r|h,a+=r,a>=8&&(a-=8,o[c++]=255&u>>a)}if(a>=r||255&u<<8-a)throw new SyntaxError("Unexpected end of data");return o},Tf=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,s="",o=0,a=0;for(let u=0;u<t.length;++u)for(a=a<<8|t[u],o+=8;o>r;)o-=r,s+=e[i&a>>o];if(o&&(s+=e[i&a<<r-o]),n)for(;s.length*r&7;)s+="=";return s},bt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Cr({prefix:e,name:t,encode(i){return Tf(i,n,r)},decode(i){return Cf(i,n,r,t)}});var zt=qe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),_f=qe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var cs={};It(cs,{base10:()=>Rf});var Rf=qe({prefix:"9",name:"base10",alphabet:"0123456789"});var fs={};It(fs,{base16:()=>Lf,base16upper:()=>Nf});var Lf=bt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Nf=bt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var hs={};It(hs,{base2:()=>Pf});var Pf=bt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ls={};It(ls,{base256emoji:()=>Of});var Ba=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}"),Df=Ba.reduce((t,e,r)=>(t[r]=e,t),[]),kf=Ba.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Uf(t){return t.reduce((e,r)=>(e+=Df[r],e),"")}function Kf(t){let e=[];for(let r of t){let n=kf[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Of=Cr({prefix:"\u{1F680}",name:"base256emoji",encode:Uf,decode:Kf});var ps={};It(ps,{base32:()=>Tr,base32hex:()=>qf,base32hexpad:()=>zf,base32hexpadupper:()=>Gf,base32hexupper:()=>Hf,base32pad:()=>Ff,base32padupper:()=>Vf,base32upper:()=>Mf,base32z:()=>Yf});var Tr=bt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Mf=bt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Ff=bt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Vf=bt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),qf=bt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Hf=bt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),zf=bt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Gf=bt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Yf=bt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var ds={};It(ds,{base36:()=>Wf,base36upper:()=>Qf});var Wf=qe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Qf=qe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ys={};It(ys,{base64:()=>sn,base64pad:()=>$f,base64url:()=>Zf,base64urlpad:()=>Xf});var sn=bt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),$f=bt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Zf=bt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Xf=bt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var gs={};It(gs,{base8:()=>Jf});var Jf=bt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ms={};It(ms,{identity:()=>jf});var jf=Cr({prefix:"\0",name:"identity",encode:t=>wa(t),decode:t=>va(t)});var kg=new TextEncoder,Ug=new TextDecoder;var bs={};It(bs,{identity:()=>He});var rh=Ca,Aa=128,nh=127,ih=~nh,sh=Math.pow(2,31);function Ca(t,e,r){e=e||[],r=r||0;for(var n=r;t>=sh;)e[r++]=t&255|Aa,t/=128;for(;t&ih;)e[r++]=t&255|Aa,t>>>=7;return e[r]=t|0,Ca.bytes=r-n+1,e}var oh=xs,ah=128,Ia=127;function xs(t,n){var r=0,n=n||0,i=0,s=n,o,a=t.length;do{if(s>=a)throw xs.bytes=0,new RangeError("Could not decode varint");o=t[s++],r+=i<28?(o&Ia)<<i:(o&Ia)*Math.pow(2,i),i+=7}while(o>=ah);return xs.bytes=s-n,r}var uh=Math.pow(2,7),ch=Math.pow(2,14),fh=Math.pow(2,21),hh=Math.pow(2,28),lh=Math.pow(2,35),ph=Math.pow(2,42),dh=Math.pow(2,49),yh=Math.pow(2,56),gh=Math.pow(2,63),mh=function(t){return t<uh?1:t<ch?2:t<fh?3:t<hh?4:t<lh?5:t<ph?6:t<dh?7:t<yh?8:t<gh?9:10},xh={encode:rh,decode:oh,encodingLength:mh},bh=xh,on=bh;var an=(t,e=0)=>[on.decode(t,e),on.decode.bytes],_r=(t,e,r=0)=>(on.encode(t,e,r),e),Rr=t=>on.encodingLength(t);var me=(t,e)=>{let r=e.byteLength,n=Rr(t),i=n+Rr(r),s=new Uint8Array(i+r);return _r(t,s,0),_r(r,s,n),s.set(e,i),new Lr(t,r,e,s)},un=t=>{let e=Ce(t),[r,n]=an(e),[i,s]=an(e.subarray(n)),o=e.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new Lr(r,i,o,e)},Ta=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&ba(t.bytes,r.bytes)}},Lr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var _a=0,vh="identity",Ra=Ce,wh=t=>me(_a,Ra(t)),He={code:_a,name:vh,encode:Ra,digest:wh};var Es={};It(Es,{sha256:()=>Lt,sha512:()=>Eh});var ws=({name:t,code:e,encode:r})=>new vs(t,e,r),vs=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?me(this.code,r):r.then(n=>me(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Na=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Lt=ws({name:"sha2-256",code:18,encode:Na("SHA-256")}),Eh=ws({name:"sha2-512",code:19,encode:Na("SHA-512")});var Pa=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Bh(r,Ss(t),e||zt.encoder);default:return Ah(r,Ss(t),e||Tr.encoder)}};var Da=new WeakMap,Ss=t=>{let e=Da.get(t);if(e==null){let r=new Map;return Da.set(t,r),r}return e},sr=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==cn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Ih)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=me(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Ta(e.multihash,n.multihash)}toString(e){return Pa(this,e)}toJSON(){return{"/":Pa(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:s,bytes:o}=r;return new t(n,i,s,o||ka(n,i,s.bytes))}else if(r[Ch]===!0){let{version:n,multihash:i,code:s}=r,o=un(i);return t.create(n,s,o)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==cn)throw new Error(`Version 0 CID must use dag-pb (code: ${cn}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=ka(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,cn,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=Ce(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let s=i.subarray(r.multihashSize-r.digestSize),o=new Lr(r.multihashCode,r.digestSize,s,i);return[r.version===0?t.createV0(o):t.createV1(r.codec,o),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[h,l]=an(e.subarray(r));return r+=l,h},i=n(),s=cn;if(i===18?(i=0,r=0):s=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let o=r,a=n(),u=n(),c=r+u,f=c-o;return{version:i,codec:s,multihashCode:a,digestSize:u,multihashSize:f,size:c}}static parse(e,r){let[n,i]=Sh(e,r),s=t.decode(i);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ss(s).set(n,e),s}},Sh=(t,e)=>{switch(t[0]){case"Q":{let r=e||zt;return[zt.prefix,r.decode(`${zt.prefix}${t}`)]}case zt.prefix:{let r=e||zt;return[zt.prefix,r.decode(t)]}case Tr.prefix:{let r=e||Tr;return[Tr.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},Bh=(t,e,r)=>{let{prefix:n}=r;if(n!==zt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let s=r.encode(t).slice(1);return e.set(n,s),s}else return i},Ah=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let s=r.encode(t);return e.set(n,s),s}else return i},cn=112,Ih=18,ka=(t,e,r)=>{let n=Rr(t),i=n+Rr(e),s=new Uint8Array(i+r.byteLength);return _r(t,s,0),_r(e,s,n),s.set(r,i),s},Ch=Symbol.for("@ipld/js-cid/CID");var Te={...ms,...hs,...gs,...cs,...fs,...ps,...ds,...us,...ys,...ls},Jg={...Es,...bs};function Qt(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var Th=Symbol.for("nodejs.util.inspect.custom"),Ua=Object.values(Te).map(t=>t.decoder).reduce((t,e)=>t.or(e),Te.identity.decoder),Ka=114,Bs=36,As=37,fn=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[ga]=!0;toString(){return this.string==null&&(this.string=zt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return sr.createV1(Ka,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Qt(this.multihash.bytes,e);if(typeof e=="string")return Ct(e).equals(this);if(e?.multihash?.bytes!=null)return Qt(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Th](){return`PeerId(${this.toString()})`}},Pr=class extends fn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Dr=class extends fn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},kr=class extends fn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Ct(t,e){if(e=e??Ua,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=un(zt.decode(`z${t}`));return t.startsWith("12D")?new Dr({multihash:r}):t.startsWith("16U")?new kr({multihash:r}):new Pr({multihash:r})}return hn(Ua.decode(t))}function hn(t){try{let e=un(t);if(e.code===He.code){if(e.digest.length===Bs)return new Dr({multihash:e});if(e.digest.length===As)return new kr({multihash:e})}if(e.code===Lt.code)return new Pr({multihash:e})}catch{return _h(sr.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function _h(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Ka)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Lt.code)return new Pr({multihash:t.multihash});if(e.code===He.code){if(e.digest.length===Bs)return new Dr({multihash:t.multihash});if(e.digest.length===As)return new kr({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Yn(t,e){return t.length===Bs?new Dr({multihash:me(He.code,t),privateKey:e}):t.length===As?new kr({multihash:me(He.code,t),privateKey:e}):new Pr({multihash:await Lt.digest(t),publicKey:t,privateKey:e})}function _e(t,e){let r={[Symbol.iterator]:()=>r,next:()=>{let n=t.next(),i=n.value;return n.done===!0||i==null?{done:!0,value:void 0}:{done:!1,value:e(i)}}};return r}var Ur=class{map;constructor(e){if(this.map=new Map,e!=null)for(let[r,n]of e.entries())this.map.set(r.toString(),n)}[Symbol.iterator](){return this.entries()}clear(){this.map.clear()}delete(e){return this.map.delete(e.toString())}entries(){return _e(this.map.entries(),e=>[Ct(e[0]),e[1]])}forEach(e){this.map.forEach((r,n)=>{e(r,Ct(n),this)})}get(e){return this.map.get(e.toString())}has(e){return this.map.has(e.toString())}set(e,r){this.map.set(e.toString(),r)}keys(){return _e(this.map.keys(),e=>Ct(e))}values(){return this.map.values()}get size(){return this.map.size}};var Kr=class t{set;constructor(e){if(this.set=new Set,e!=null)for(let r of e)this.set.add(r.toString())}get size(){return this.set.size}[Symbol.iterator](){return this.values()}add(e){this.set.add(e.toString())}clear(){this.set.clear()}delete(e){this.set.delete(e.toString())}entries(){return _e(this.set.entries(),e=>{let r=Ct(e[0]);return[r,r]})}forEach(e){this.set.forEach(r=>{let n=Ct(r);e(n,n,this)})}has(e){return this.set.has(e.toString())}values(){return _e(this.set.values(),e=>Ct(e))}intersection(e){let r=new t;for(let n of e)this.has(n)&&r.add(n);return r}difference(e){let r=new t;for(let n of this)e.has(n)||r.add(n);return r}union(e){let r=new t;for(let n of e)r.add(n);for(let n of this)r.add(n);return r}};var Wn=class t{list;constructor(e){if(this.list=[],e!=null)for(let r of e)this.list.push(r.toString())}[Symbol.iterator](){return _e(this.list.entries(),e=>Ct(e[1]))}concat(e){let r=new t(this);for(let n of e)r.push(n);return r}entries(){return _e(this.list.entries(),e=>[e[0],Ct(e[1])])}every(e){return this.list.every((r,n)=>e(Ct(r),n,this))}filter(e){let r=new t;return this.list.forEach((n,i)=>{let s=Ct(n);e(s,i,this)&&r.push(s)}),r}find(e){let r=this.list.find((n,i)=>e(Ct(n),i,this));if(r!=null)return Ct(r)}findIndex(e){return this.list.findIndex((r,n)=>e(Ct(r),n,this))}forEach(e){this.list.forEach((r,n)=>{e(Ct(r),n,this)})}includes(e){return this.list.includes(e.toString())}indexOf(e){return this.list.indexOf(e.toString())}pop(){let e=this.list.pop();if(e!=null)return Ct(e)}push(...e){for(let r of e)this.list.push(r.toString())}shift(){let e=this.list.shift();if(e!=null)return Ct(e)}unshift(...e){let r=this.list.length;for(let n=e.length-1;n>-1;n--)r=this.list.unshift(e[n].toString());return r}clear(){this.list=[]}get length(){return this.list.length}};function Qn(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var $n=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Or=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new $n(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let r=this.head;this.head=r.next=new $n(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var Is=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Mr(t={}){return Rh(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},t)}function Rh(t,e){e=e??{};let r=e.onEnd,n=new Or,i,s,o,a=Qn(),u=async()=>{try{return n.isEmpty()?o?{done:!0}:await new Promise((y,m)=>{s=w=>{s=null,n.push(w);try{y(t(n))}catch(b){m(b)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Qn()})}},c=y=>s!=null?s(y):(n.push(y),i),f=y=>(n=new Or,s!=null?s({error:y}):(n.push({error:y}),i)),h=y=>{if(o)return i;if(e?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return c({done:!1,value:y})},l=y=>o?i:(o=!0,y!=null?f(y):c({done:!0})),g=()=>(n=new Or,l(),{done:!0}),p=y=>(l(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:g,throw:p,push:h,end:l,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let w,b;m!=null&&(w=new Promise((_,E)=>{b=()=>{E(new Is)},m.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&m!=null&&m?.removeEventListener("abort",b)}}},r==null)return i;let d=i;return i={[Symbol.asyncIterator](){return this},next(){return d.next()},throw(y){return d.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return d.return(),r!=null&&(r(),r=void 0),{done:!0}},push:h,end(y){return d.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return d.readableLength},onEmpty:y=>d.onEmpty(y)},i}function Lh(t){return t[Symbol.asyncIterator]!=null}function Nh(...t){let e=[];for(let r of t)Lh(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Mr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var Oa=Nh;function ln(t,...e){if(t==null)throw new Error("Empty pipeline");if(Cs(t)){let n=t;t=()=>n.source}else if(Fa(t)||Ma(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Cs(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++)Cs(r[n])&&(r[n]=Dh(r[n]));return Ph(...r)}var Ph=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},Ma=t=>t?.[Symbol.asyncIterator]!=null,Fa=t=>t?.[Symbol.iterator]!=null,Cs=t=>t==null?!1:t.sink!=null&&t.source!=null,Dh=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Mr({objectMode:!0});r.then(()=>{n.end()},o=>{n.end(o)});let i,s=t.source;if(Ma(s))i=async function*(){yield*s,n.end()};else if(Fa(s))i=function*(){yield*s,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Oa(n,i())}return t.source};var _s=Rt(qa(),1);var dn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Rs=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ha=t=>globalThis.DOMException===void 0?new Rs(t):new DOMException(t),za=t=>{let e=t.reason===void 0?Ha("This operation was aborted."):t.reason;return e instanceof Error?e:Ha(e)};function Ls(t,e,r,n){let i,s=new Promise((o,a)=>{if(typeof e!="number"||Math.sign(e)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${e}\``);if(e===Number.POSITIVE_INFINITY){o(t);return}if(n={customTimers:{setTimeout,clearTimeout},...n},n.signal){let{signal:u}=n;u.aborted&&a(za(u)),u.addEventListener("abort",()=>{a(za(u))})}i=n.customTimers.setTimeout.call(void 0,()=>{if(typeof r=="function"){try{o(r())}catch(f){a(f)}return}let u=typeof r=="string"?r:`Promise timed out after ${e} milliseconds`,c=r instanceof Error?r:new dn(u);typeof t.cancel=="function"&&t.cancel(),a(c)},e),(async()=>{try{o(await t)}catch(u){a(u)}finally{n.customTimers.clearTimeout.call(void 0,i)}})()});return s.clear=()=>{clearTimeout(i),i=void 0},s}function Ns(t,e,r){let n=0,i=t.length;for(;i>0;){let s=Math.trunc(i/2),o=n+s;r(t[o],e)<=0?(n=++o,i-=s+1):i=s}return n}var or=function(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)},Re,Ps=class{constructor(){Re.set(this,[])}enqueue(e,r){r={priority:0,...r};let n={priority:r.priority,run:e};if(this.size&&or(this,Re,"f")[this.size-1].priority>=r.priority){or(this,Re,"f").push(n);return}let i=Ns(or(this,Re,"f"),n,(s,o)=>o.priority-s.priority);or(this,Re,"f").splice(i,0,n)}dequeue(){let e=or(this,Re,"f").shift();return e?.run}filter(e){return or(this,Re,"f").filter(r=>r.priority===e.priority).map(r=>r.run)}get size(){return or(this,Re,"f").length}};Re=new WeakMap;var Ga=Ps;var mt=function(t,e,r,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(t,r):i?i.value=r:e.set(t,r),r},M=function(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)},wt,gn,mn,Ge,ri,xn,Xn,oe,yn,Xt,Jn,Jt,bn,ze,jn,Ya,Wa,Za,Qa,$a,ti,Ds,ks,ni,Xa,ei,ii=class extends Error{},Us=class extends _s.default{constructor(e){var r,n,i,s;if(super(),wt.add(this),gn.set(this,void 0),mn.set(this,void 0),Ge.set(this,0),ri.set(this,void 0),xn.set(this,void 0),Xn.set(this,0),oe.set(this,void 0),yn.set(this,void 0),Xt.set(this,void 0),Jn.set(this,void 0),Jt.set(this,0),bn.set(this,void 0),ze.set(this,void 0),jn.set(this,void 0),Object.defineProperty(this,"timeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Ga,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(n=(r=e.intervalCap)===null||r===void 0?void 0:r.toString())!==null&&n!==void 0?n:""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(s=(i=e.interval)===null||i===void 0?void 0:i.toString())!==null&&s!==void 0?s:""}\` (${typeof e.interval})`);mt(this,gn,e.carryoverConcurrencyCount,"f"),mt(this,mn,e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,"f"),mt(this,ri,e.intervalCap,"f"),mt(this,xn,e.interval,"f"),mt(this,Xt,new e.queueClass,"f"),mt(this,Jn,e.queueClass,"f"),this.concurrency=e.concurrency,this.timeout=e.timeout,mt(this,jn,e.throwOnTimeout===!0,"f"),mt(this,ze,e.autoStart===!1,"f")}get concurrency(){return M(this,bn,"f")}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);mt(this,bn,e,"f"),M(this,wt,"m",ni).call(this)}async add(e,r={}){return r={timeout:this.timeout,throwOnTimeout:M(this,jn,"f"),...r},new Promise((n,i)=>{M(this,Xt,"f").enqueue(async()=>{var s,o,a;mt(this,Jt,(o=M(this,Jt,"f"),o++,o),"f"),mt(this,Ge,(a=M(this,Ge,"f"),a++,a),"f");try{if(!((s=r.signal)===null||s===void 0)&&s.aborted)throw new ii("The task was aborted.");let u=e({signal:r.signal});r.timeout&&(u=Ls(Promise.resolve(u),r.timeout)),r.signal&&(u=Promise.race([u,M(this,wt,"m",Xa).call(this,r.signal)]));let c=await u;n(c),this.emit("completed",c)}catch(u){if(u instanceof dn&&!r.throwOnTimeout){n();return}i(u),this.emit("error",u)}finally{M(this,wt,"m",Za).call(this)}},r),this.emit("add"),M(this,wt,"m",ti).call(this)})}async addAll(e,r){return Promise.all(e.map(async n=>this.add(n,r)))}start(){return M(this,ze,"f")?(mt(this,ze,!1,"f"),M(this,wt,"m",ni).call(this),this):this}pause(){mt(this,ze,!0,"f")}clear(){mt(this,Xt,new(M(this,Jn,"f")),"f")}async onEmpty(){M(this,Xt,"f").size!==0&&await M(this,wt,"m",ei).call(this,"empty")}async onSizeLessThan(e){M(this,Xt,"f").size<e||await M(this,wt,"m",ei).call(this,"next",()=>M(this,Xt,"f").size<e)}async onIdle(){M(this,Jt,"f")===0&&M(this,Xt,"f").size===0||await M(this,wt,"m",ei).call(this,"idle")}get size(){return M(this,Xt,"f").size}sizeBy(e){return M(this,Xt,"f").filter(e).length}get pending(){return M(this,Jt,"f")}get isPaused(){return M(this,ze,"f")}};gn=new WeakMap,mn=new WeakMap,Ge=new WeakMap,ri=new WeakMap,xn=new WeakMap,Xn=new WeakMap,oe=new WeakMap,yn=new WeakMap,Xt=new WeakMap,Jn=new WeakMap,Jt=new WeakMap,bn=new WeakMap,ze=new WeakMap,jn=new WeakMap,wt=new WeakSet,Ya=function(){return M(this,mn,"f")||M(this,Ge,"f")<M(this,ri,"f")},Wa=function(){return M(this,Jt,"f")<M(this,bn,"f")},Za=function(){var e;mt(this,Jt,(e=M(this,Jt,"f"),e--,e),"f"),M(this,wt,"m",ti).call(this),this.emit("next")},Qa=function(){M(this,wt,"m",ks).call(this),M(this,wt,"m",Ds).call(this),mt(this,yn,void 0,"f")},$a=function(){let e=Date.now();if(M(this,oe,"f")===void 0){let r=M(this,Xn,"f")-e;if(r<0)mt(this,Ge,M(this,gn,"f")?M(this,Jt,"f"):0,"f");else return M(this,yn,"f")===void 0&&mt(this,yn,setTimeout(()=>{M(this,wt,"m",Qa).call(this)},r),"f"),!0}return!1},ti=function(){if(M(this,Xt,"f").size===0)return M(this,oe,"f")&&clearInterval(M(this,oe,"f")),mt(this,oe,void 0,"f"),this.emit("empty"),M(this,Jt,"f")===0&&this.emit("idle"),!1;if(!M(this,ze,"f")){let e=!M(this,wt,"a",$a);if(M(this,wt,"a",Ya)&&M(this,wt,"a",Wa)){let r=M(this,Xt,"f").dequeue();return r?(this.emit("active"),r(),e&&M(this,wt,"m",Ds).call(this),!0):!1}}return!1},Ds=function(){M(this,mn,"f")||M(this,oe,"f")!==void 0||(mt(this,oe,setInterval(()=>{M(this,wt,"m",ks).call(this)},M(this,xn,"f")),"f"),mt(this,Xn,Date.now()+M(this,xn,"f"),"f"))},ks=function(){M(this,Ge,"f")===0&&M(this,Jt,"f")===0&&M(this,oe,"f")&&(clearInterval(M(this,oe,"f")),mt(this,oe,void 0,"f")),mt(this,Ge,M(this,gn,"f")?M(this,Jt,"f"):0,"f"),M(this,wt,"m",ni).call(this)},ni=function(){for(;M(this,wt,"m",ti).call(this););},Xa=async function(e){return new Promise((r,n)=>{e.addEventListener("abort",()=>{n(new ii("The task was aborted."))},{once:!0})})},ei=async function(e,r){return new Promise(n=>{let i=()=>{r&&!r()||(this.off(e,i),n())};this.on(e,i)})};var Ja=Us;var Nt={ERR_INVALID_SIGNATURE_POLICY:"ERR_INVALID_SIGNATURE_POLICY",ERR_UNHANDLED_SIGNATURE_POLICY:"ERR_UNHANDLED_SIGNATURE_POLICY",ERR_MISSING_SIGNATURE:"ERR_MISSING_SIGNATURE",ERR_MISSING_SEQNO:"ERR_MISSING_SEQNO",ERR_MISSING_KEY:"ERR_MISSING_KEY",ERR_INVALID_SIGNATURE:"ERR_INVALID_SIGNATURE",ERR_MISSING_FROM:"ERR_MISSING_FROM",ERR_UNEXPECTED_FROM:"ERR_UNEXPECTED_FROM",ERR_UNEXPECTED_SIGNATURE:"ERR_UNEXPECTED_SIGNATURE",ERR_UNEXPECTED_KEY:"ERR_UNEXPECTED_KEY",ERR_UNEXPECTED_SEQNO:"ERR_UNEXPECTED_SEQNO",ERR_TOPIC_VALIDATOR_REJECT:"ERR_TOPIC_VALIDATOR_REJECT"};function ja(t){if(t!=null){if(typeof t[Symbol.iterator]=="function")return t[Symbol.iterator]();if(typeof t[Symbol.asyncIterator]=="function")return t[Symbol.asyncIterator]();if(typeof t.next=="function")return t}throw new Error("argument is not an iterator or iterable")}function t0(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function e0(t,e){let r=ja(t).return?.();t0(r)&&r.catch(n=>{e.error("could not cause iterator to return",n)})}function r0(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function n0(t=0){return globalThis.Buffer?.allocUnsafe!=null?r0(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var Kh=Math.pow(2,7),Oh=Math.pow(2,14),Mh=Math.pow(2,21),Ks=Math.pow(2,28),Os=Math.pow(2,35),Ms=Math.pow(2,42),Fs=Math.pow(2,49),nt=128,qt=127;function ar(t){if(t<Kh)return 1;if(t<Oh)return 2;if(t<Mh)return 3;if(t<Ks)return 4;if(t<Os)return 5;if(t<Ms)return 6;if(t<Fs)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Fh(t,e,r=0){switch(ar(t)){case 8:e[r++]=t&255|nt,t/=128;case 7:e[r++]=t&255|nt,t/=128;case 6:e[r++]=t&255|nt,t/=128;case 5:e[r++]=t&255|nt,t/=128;case 4:e[r++]=t&255|nt,t>>>=7;case 3:e[r++]=t&255|nt,t>>>=7;case 2:e[r++]=t&255|nt,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Vh(t,e,r=0){switch(ar(t)){case 8:e.set(r++,t&255|nt),t/=128;case 7:e.set(r++,t&255|nt),t/=128;case 6:e.set(r++,t&255|nt),t/=128;case 5:e.set(r++,t&255|nt),t/=128;case 4:e.set(r++,t&255|nt),t>>>=7;case 3:e.set(r++,t&255|nt),t>>>=7;case 2:e.set(r++,t&255|nt),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function qh(t,e){let r=t[e],n=0;if(n+=r&qt,r<nt||(r=t[e+1],n+=(r&qt)<<7,r<nt)||(r=t[e+2],n+=(r&qt)<<14,r<nt)||(r=t[e+3],n+=(r&qt)<<21,r<nt)||(r=t[e+4],n+=(r&qt)*Ks,r<nt)||(r=t[e+5],n+=(r&qt)*Os,r<nt)||(r=t[e+6],n+=(r&qt)*Ms,r<nt)||(r=t[e+7],n+=(r&qt)*Fs,r<nt))return n;throw new RangeError("Could not decode varint")}function Hh(t,e){let r=t.get(e),n=0;if(n+=r&qt,r<nt||(r=t.get(e+1),n+=(r&qt)<<7,r<nt)||(r=t.get(e+2),n+=(r&qt)<<14,r<nt)||(r=t.get(e+3),n+=(r&qt)<<21,r<nt)||(r=t.get(e+4),n+=(r&qt)*Ks,r<nt)||(r=t.get(e+5),n+=(r&qt)*Os,r<nt)||(r=t.get(e+6),n+=(r&qt)*Ms,r<nt)||(r=t.get(e+7),n+=(r&qt)*Fs,r<nt))return n;throw new RangeError("Could not decode varint")}function i0(t,e,r=0){return e==null&&(e=n0(ar(t))),e instanceof Uint8Array?Fh(t,e,r):Vh(t,e,r)}function s0(t,e=0){return t instanceof Uint8Array?qh(t,e):Hh(t,e)}function vn(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Le(t=0){return globalThis.Buffer?.alloc!=null?vn(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function wn(t=0){return globalThis.Buffer?.allocUnsafe!=null?vn(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function Vs(t,e){e==null&&(e=t.reduce((i,s)=>i+s.length,0));let r=wn(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return vn(r)}function a0(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var c0=Symbol.for("@achingbrain/uint8arraylist");function u0(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function si(t){return!!t?.[c0]}var Ye=class t{bufs;length;[c0]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(si(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(si(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=u0(this.bufs,e);return r.buf[r.index]}set(e,r){let n=u0(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(si(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return Vs(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:Vs(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),s=new t;return s.length=i,s.bufs=[...n],s}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let s=0;s<this.bufs.length;s++){let o=this.bufs[s],a=i,u=a+o.byteLength;if(i=u,e>=u)continue;let c=e>=a&&e<u,f=r>a&&r<=u;if(c&&f){if(e===a&&r===u){n.push(o);break}let h=e-a;n.push(o.subarray(h,h+(r-e)));break}if(c){if(e===0){n.push(o);continue}n.push(o.subarray(e-a));continue}if(f){if(r===u){n.push(o);break}n.push(o.subarray(0,r-a));break}n.push(o)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!si(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let s=256,o=new Int32Array(s);for(let h=0;h<s;h++)o[h]=-1;for(let h=0;h<i;h++)o[n[h]]=h;let a=o,u=this.byteLength-n.byteLength,c=n.byteLength-1,f;for(let h=r;h<=u;h+=f){f=0;for(let l=c;l>=0;l--){let g=this.get(h+l);if(n[l]!==g){f=Math.max(1,l-a[g]);break}}if(f===0)return h}return-1}getInt8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(e,r){let n=wn(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=Le(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=Le(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=Le(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=wn(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=Le(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=Le(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=Le(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=Le(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=Le(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!a0(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,s)=>i+s.byteLength,0)),n.length=r,n}};function f0(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function h0(t=0){return globalThis.Buffer?.allocUnsafe!=null?f0(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function oi(t){return t[Symbol.asyncIterator]!=null}var ai=t=>{let e=ar(t),r=h0(e);return i0(t,r),ai.bytes=e,r};ai.bytes=0;function ui(t,e){e=e??{};let r=e.lengthEncoder??ai;function*n(i){let s=r(i.byteLength);s instanceof Uint8Array?yield s:yield*s,i instanceof Uint8Array?yield i:yield*i}return oi(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}ui.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??ai;return new Ye(r(t.byteLength),t)};var Fr=Rt(d0(),1);var Gh=8,Yh=1024*1024*4,ur;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(ur||(ur={}));var qs=t=>{let e=s0(t);return qs.bytes=ar(e),e};qs.bytes=0;function En(t,e){let r=new Ye,n=ur.LENGTH,i=-1,s=e?.lengthDecoder??qs,o=e?.maxLengthLength??Gh,a=e?.maxDataLength??Yh;function*u(){for(;r.byteLength>0;){if(n===ur.LENGTH)try{if(i=s(r),i<0)throw(0,Fr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Fr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let c=s.bytes;r.consume(c),e?.onLength!=null&&e.onLength(i),n=ur.DATA}catch(c){if(c instanceof RangeError){if(r.byteLength>o)throw(0,Fr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw c}if(n===ur.DATA){if(r.byteLength<i)break;let c=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(c),yield c,n=ur.LENGTH}}}return oi(t)?async function*(){for await(let c of t)r.append(c),yield*u();if(r.byteLength>0)throw(0,Fr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let c of t)r.append(c),yield*u();if(r.byteLength>0)throw(0,Fr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}En.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:s,value:o}=await t.next(r);if(s===!0)return;o!=null&&(yield o)}catch(s){if(s.code==="ERR_UNDER_READ")return{done:!0,value:null};throw s}finally{r=1}}();return En(n,{...e??{},onLength:s=>{r=s}})};var ci=class extends Ir{id;protocol;outboundStream;inboundStream;_rawOutboundStream;_rawInboundStream;_inboundAbortController;closed;log;constructor(e,r){super(),this.log=e.logger.forComponent("libp2p-pubsub:peer-streams"),this.id=r.id,this.protocol=r.protocol,this._inboundAbortController=new AbortController,this.closed=!1}get isReadable(){return!!this.inboundStream}get isWritable(){return!!this.outboundStream}write(e){if(this.outboundStream==null){let r=this.id.toString();throw new Error("No writable connection to "+r)}this.outboundStream.push(e instanceof Uint8Array?new Ye(e):e)}attachInboundStream(e){let r=()=>{e0(e.source,this.log)};return this._inboundAbortController.signal.addEventListener("abort",r,{once:!0}),this._rawInboundStream=e,this.inboundStream=ln(this._rawInboundStream,n=>En(n)),this.dispatchEvent(new ge("stream:inbound")),this.inboundStream}async attachOutboundStream(e){let r=this.outboundStream;return this.outboundStream!=null&&this.outboundStream.end(),this._rawOutboundStream=e,this.outboundStream=Mr({onEnd:n=>{this._rawOutboundStream!=null&&this._rawOutboundStream.closeWrite().catch(i=>{this.log("error closing outbound stream",i)}),this._rawOutboundStream=void 0,this.outboundStream=void 0,n!=null&&this.dispatchEvent(new ge("close"))}}),ln(this.outboundStream,n=>ui(n),this._rawOutboundStream).catch(n=>{this.log.error(n)}),r==null&&this.dispatchEvent(new ge("stream:outbound")),this.outboundStream}close(){this.closed||(this.closed=!0,this.outboundStream!=null&&this.outboundStream.end(),this.inboundStream!=null&&this._inboundAbortController.abort(),this._rawOutboundStream=void 0,this.outboundStream=void 0,this._rawInboundStream=void 0,this.inboundStream=void 0,this.dispatchEvent(new ge("close")))}};var h2=Rt(di(),1),rl=Rt(ot(),1);function fr(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function yi(t=0){return globalThis.Buffer?.allocUnsafe!=null?fr(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function R0(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var _0=R0("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),to=R0("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=yi(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),el={utf8:_0,"utf-8":_0,hex:Te.base16,latin1:to,ascii:to,binary:to,...Te},gi=el;function St(t,e="utf8"){let r=gi[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?fr(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function Tt(t,e="utf8"){let r=gi[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var Bt={get(t=globalThis){let e=t.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var L0={SHA1:20,SHA256:32,SHA512:64};var sl={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"},ol=async(t,e)=>{let r=await Bt.get().subtle.sign({name:"HMAC"},t,e);return new Uint8Array(r,0,r.byteLength)};async function N0(t,e){let r=sl[t],n=await Bt.get().subtle.importKey("raw",e,{name:"HMAC",hash:{name:r}},!1,["sign"]);return{async digest(i){return ol(n,i)},length:L0[t]}}var qn={};It(qn,{generateEphemeralKeyPair:()=>Ec,generateKeyPair:()=>y1,generateKeyPairFromSeed:()=>g1,importKey:()=>v1,keyStretcher:()=>Ac,keysPBM:()=>jr,marshalPrivateKey:()=>b1,marshalPublicKey:()=>x1,supportedKeys:()=>Ae,unmarshalPrivateKey:()=>tf,unmarshalPublicKey:()=>m1});var Jw=Rt(In(),1),jw=Rt(Du(),1);var es=Rt(ot(),1);var Go={};It(Go,{Ed25519PrivateKey:()=>wr,Ed25519PublicKey:()=>kn,generateKeyPair:()=>My,generateKeyPairFromSeed:()=>zo,unmarshalEd25519PrivateKey:()=>Ky,unmarshalEd25519PublicKey:()=>Oy});var z2=Rt(Et(),1),G2=Rt(Ci(),1),ku=Rt(ot(),1);function jt(t,e){if(globalThis.Buffer!=null)return fr(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,s)=>i+s.length,0));let r=yi(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return fr(r)}function ce(t,e){let r=Uint8Array.from(t.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=jt([new Uint8Array(e-r.length),r])}return Tt(r,"base64url")}function te(t){let e=Li(t);return new ku.default.jsbn.BigInteger(Tt(e,"base16"),16)}function Li(t,e){let r=St(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=jt([new Uint8Array(e-r.length),r])}return r}function ie(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function Uu(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function lo(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Ku(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Uu(t.outputLen),Uu(t.blockLen)}function Gr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function Ou(t,e){lo(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Ni=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Mu=t=>t instanceof Uint8Array;var Pi=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),fe=(t,e)=>t<<32-e|t>>>e,Bd=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Bd)throw new Error("Non little-endian hardware is not supported");function po(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function _n(t){if(typeof t=="string"&&(t=po(t)),!Mu(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function Di(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!Mu(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Yr=class{clone(){return this._cloneInto()}},j2={}.toString;function ki(t){let e=n=>t().update(_n(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Wr(t=32){if(Ni&&typeof Ni.getRandomValues=="function")return Ni.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function Ad(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),s=BigInt(4294967295),o=Number(r>>i&s),a=Number(r&s),u=n?4:0,c=n?0:4;t.setUint32(e+u,o,n),t.setUint32(e+c,a,n)}var Qr=class extends Yr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Pi(this.buffer)}update(e){Gr(this);let{view:r,buffer:n,blockLen:i}=this;e=_n(e);let s=e.length;for(let o=0;o<s;){let a=Math.min(i-this.pos,s-o);if(a===i){let u=Pi(e);for(;i<=s-o;o+=i)this.process(u,o);continue}n.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Gr(this),Ou(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:s}=this,{pos:o}=this;r[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>i-o&&(this.process(n,0),o=0);for(let h=o;h<i;h++)r[h]=0;Ad(n,i-8,BigInt(this.length*8),s),this.process(n,0);let a=Pi(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let c=u/4,f=this.get();if(c>f.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<c;h++)a.setUint32(4*h,f[h],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:s,destroyed:o,pos:a}=this;return e.length=i,e.pos=a,e.finished=s,e.destroyed=o,i%r&&e.buffer.set(n),e}};var Ui=BigInt(4294967295),yo=BigInt(32);function Fu(t,e=!1){return e?{h:Number(t&Ui),l:Number(t>>yo&Ui)}:{h:Number(t>>yo&Ui)|0,l:Number(t&Ui)|0}}function Id(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:s,l:o}=Fu(t[i],e);[r[i],n[i]]=[s,o]}return[r,n]}var Cd=(t,e)=>BigInt(t>>>0)<<yo|BigInt(e>>>0),Td=(t,e,r)=>t>>>r,_d=(t,e,r)=>t<<32-r|e>>>r,Rd=(t,e,r)=>t>>>r|e<<32-r,Ld=(t,e,r)=>t<<32-r|e>>>r,Nd=(t,e,r)=>t<<64-r|e>>>r-32,Pd=(t,e,r)=>t>>>r-32|e<<64-r,Dd=(t,e)=>e,kd=(t,e)=>t,Ud=(t,e,r)=>t<<r|e>>>32-r,Kd=(t,e,r)=>e<<r|t>>>32-r,Od=(t,e,r)=>e<<r-32|t>>>64-r,Md=(t,e,r)=>t<<r-32|e>>>64-r;function Fd(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Vd=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),qd=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Hd=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),zd=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Gd=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Yd=(t,e,r,n,i,s)=>e+r+n+i+s+(t/2**32|0)|0;var Wd={fromBig:Fu,split:Id,toBig:Cd,shrSH:Td,shrSL:_d,rotrSH:Rd,rotrSL:Ld,rotrBH:Nd,rotrBL:Pd,rotr32H:Dd,rotr32L:kd,rotlSH:Ud,rotlSL:Kd,rotlBH:Od,rotlBL:Md,add:Fd,add3L:Vd,add3H:qd,add4L:Hd,add4H:zd,add5H:Yd,add5L:Gd},Q=Wd;var[Qd,$d]=Q.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),Xe=new Uint32Array(80),Je=new Uint32Array(80),go=class extends Qr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:s,Cl:o,Dh:a,Dl:u,Eh:c,El:f,Fh:h,Fl:l,Gh:g,Gl:p,Hh:d,Hl:y}=this;return[e,r,n,i,s,o,a,u,c,f,h,l,g,p,d,y]}set(e,r,n,i,s,o,a,u,c,f,h,l,g,p,d,y){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=s|0,this.Cl=o|0,this.Dh=a|0,this.Dl=u|0,this.Eh=c|0,this.El=f|0,this.Fh=h|0,this.Fl=l|0,this.Gh=g|0,this.Gl=p|0,this.Hh=d|0,this.Hl=y|0}process(e,r){for(let b=0;b<16;b++,r+=4)Xe[b]=e.getUint32(r),Je[b]=e.getUint32(r+=4);for(let b=16;b<80;b++){let _=Xe[b-15]|0,E=Je[b-15]|0,S=Q.rotrSH(_,E,1)^Q.rotrSH(_,E,8)^Q.shrSH(_,E,7),L=Q.rotrSL(_,E,1)^Q.rotrSL(_,E,8)^Q.shrSL(_,E,7),N=Xe[b-2]|0,G=Je[b-2]|0,z=Q.rotrSH(N,G,19)^Q.rotrBH(N,G,61)^Q.shrSH(N,G,6),q=Q.rotrSL(N,G,19)^Q.rotrBL(N,G,61)^Q.shrSL(N,G,6),X=Q.add4L(L,q,Je[b-7],Je[b-16]),at=Q.add4H(X,S,z,Xe[b-7],Xe[b-16]);Xe[b]=at|0,Je[b]=X|0}let{Ah:n,Al:i,Bh:s,Bl:o,Ch:a,Cl:u,Dh:c,Dl:f,Eh:h,El:l,Fh:g,Fl:p,Gh:d,Gl:y,Hh:m,Hl:w}=this;for(let b=0;b<80;b++){let _=Q.rotrSH(h,l,14)^Q.rotrSH(h,l,18)^Q.rotrBH(h,l,41),E=Q.rotrSL(h,l,14)^Q.rotrSL(h,l,18)^Q.rotrBL(h,l,41),S=h&g^~h&d,L=l&p^~l&y,N=Q.add5L(w,E,L,$d[b],Je[b]),G=Q.add5H(N,m,_,S,Qd[b],Xe[b]),z=N|0,q=Q.rotrSH(n,i,28)^Q.rotrBH(n,i,34)^Q.rotrBH(n,i,39),X=Q.rotrSL(n,i,28)^Q.rotrBL(n,i,34)^Q.rotrBL(n,i,39),at=n&s^n&a^s&a,Kt=i&o^i&u^o&u;m=d|0,w=y|0,d=g|0,y=p|0,g=h|0,p=l|0,{h,l}=Q.add(c|0,f|0,G|0,z|0),c=a|0,f=u|0,a=s|0,u=o|0,s=n|0,o=i|0;let C=Q.add3L(z,X,Kt);n=Q.add3H(C,G,q,at),i=C|0}({h:n,l:i}=Q.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:s,l:o}=Q.add(this.Bh|0,this.Bl|0,s|0,o|0),{h:a,l:u}=Q.add(this.Ch|0,this.Cl|0,a|0,u|0),{h:c,l:f}=Q.add(this.Dh|0,this.Dl|0,c|0,f|0),{h,l}=Q.add(this.Eh|0,this.El|0,h|0,l|0),{h:g,l:p}=Q.add(this.Fh|0,this.Fl|0,g|0,p|0),{h:d,l:y}=Q.add(this.Gh|0,this.Gl|0,d|0,y|0),{h:m,l:w}=Q.add(this.Hh|0,this.Hl|0,m|0,w|0),this.set(n,i,s,o,a,u,c,f,h,l,g,p,d,y,m,w)}roundClean(){Xe.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 mo=ki(()=>new go);var Mi={};It(Mi,{bitGet:()=>ry,bitLen:()=>ey,bitMask:()=>Rn,bitSet:()=>ny,bytesToHex:()=>ke,bytesToNumberBE:()=>Ue,bytesToNumberLE:()=>je,concatBytes:()=>Ke,createHmacDrbg:()=>vo,ensureBytes:()=>vt,equalBytes:()=>jd,hexToBytes:()=>yr,hexToNumber:()=>bo,numberToBytesBE:()=>tr,numberToBytesLE:()=>gr,numberToHexUnpadded:()=>Hu,numberToVarBytesBE:()=>Jd,utf8ToBytes:()=>ty,validateObject:()=>Be});var qu=BigInt(0),Ki=BigInt(1),Zd=BigInt(2),Oi=t=>t instanceof Uint8Array,Xd=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function ke(t){if(!Oi(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Xd[t[r]];return e}function Hu(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function bo(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function yr(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let r=new Uint8Array(e/2);for(let n=0;n<r.length;n++){let i=n*2,s=t.slice(i,i+2),o=Number.parseInt(s,16);if(Number.isNaN(o)||o<0)throw new Error("Invalid byte sequence");r[n]=o}return r}function Ue(t){return bo(ke(t))}function je(t){if(!Oi(t))throw new Error("Uint8Array expected");return bo(ke(Uint8Array.from(t).reverse()))}function tr(t,e){return yr(t.toString(16).padStart(e*2,"0"))}function gr(t,e){return tr(t,e).reverse()}function Jd(t){return yr(Hu(t))}function vt(t,e,r){let n;if(typeof e=="string")try{n=yr(e)}catch(s){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${s}`)}else if(Oi(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function Ke(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!Oi(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function jd(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function ty(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function ey(t){let e;for(e=0;t>qu;t>>=Ki,e+=1);return e}function ry(t,e){return t>>BigInt(e)&Ki}var ny=(t,e,r)=>t|(r?Ki:qu)<<BigInt(e),Rn=t=>(Zd<<BigInt(t-1))-Ki,xo=t=>new Uint8Array(t),Vu=t=>Uint8Array.from(t);function vo(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=xo(t),i=xo(t),s=0,o=()=>{n.fill(1),i.fill(0),s=0},a=(...h)=>r(i,n,...h),u=(h=xo())=>{i=a(Vu([0]),h),n=a(),h.length!==0&&(i=a(Vu([1]),h),n=a())},c=()=>{if(s++>=1e3)throw new Error("drbg: tried 1000 values");let h=0,l=[];for(;h<e;){n=a();let g=n.slice();l.push(g),h+=n.length}return Ke(...l)};return(h,l)=>{o(),u(h);let g;for(;!(g=l(c()));)u();return o(),g}}var iy={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function Be(t,e,r={}){let n=(i,s,o)=>{let a=iy[s];if(typeof a!="function")throw new Error(`Invalid validator "${s}", expected function`);let u=t[i];if(!(o&&u===void 0)&&!a(u,t))throw new Error(`Invalid param ${String(i)}=${u} (${typeof u}), expected ${s}`)};for(let[i,s]of Object.entries(e))n(i,s,!1);for(let[i,s]of Object.entries(r))n(i,s,!0);return t}var Pt=BigInt(0),yt=BigInt(1),mr=BigInt(2),sy=BigInt(3),wo=BigInt(4),zu=BigInt(5),Gu=BigInt(8),oy=BigInt(9),ay=BigInt(16);function ut(t,e){let r=t%e;return r>=Pt?r:e+r}function uy(t,e,r){if(r<=Pt||e<Pt)throw new Error("Expected power/modulo > 0");if(r===yt)return Pt;let n=yt;for(;e>Pt;)e&yt&&(n=n*t%r),t=t*t%r,e>>=yt;return n}function gt(t,e,r){let n=t;for(;e-- >Pt;)n*=n,n%=r;return n}function Fi(t,e){if(t===Pt||e<=Pt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ut(t,e),n=e,i=Pt,s=yt,o=yt,a=Pt;for(;r!==Pt;){let c=n/r,f=n%r,h=i-o*c,l=s-a*c;n=r,r=f,i=o,s=a,o=h,a=l}if(n!==yt)throw new Error("invert: does not exist");return ut(i,e)}function cy(t){let e=(t-yt)/mr,r,n,i;for(r=t-yt,n=0;r%mr===Pt;r/=mr,n++);for(i=mr;i<t&&uy(i,e,t)!==t-yt;i++);if(n===1){let o=(t+yt)/wo;return function(u,c){let f=u.pow(c,o);if(!u.eql(u.sqr(f),c))throw new Error("Cannot find square root");return f}}let s=(r+yt)/mr;return function(a,u){if(a.pow(u,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let c=n,f=a.pow(a.mul(a.ONE,i),r),h=a.pow(u,s),l=a.pow(u,r);for(;!a.eql(l,a.ONE);){if(a.eql(l,a.ZERO))return a.ZERO;let g=1;for(let d=a.sqr(l);g<c&&!a.eql(d,a.ONE);g++)d=a.sqr(d);let p=a.pow(f,yt<<BigInt(c-g-1));f=a.sqr(p),h=a.mul(h,p),l=a.mul(l,f),c=g}return h}}function fy(t){if(t%wo===sy){let e=(t+yt)/wo;return function(n,i){let s=n.pow(i,e);if(!n.eql(n.sqr(s),i))throw new Error("Cannot find square root");return s}}if(t%Gu===zu){let e=(t-zu)/Gu;return function(n,i){let s=n.mul(i,mr),o=n.pow(s,e),a=n.mul(i,o),u=n.mul(n.mul(a,mr),o),c=n.mul(a,n.sub(u,n.ONE));if(!n.eql(n.sqr(c),i))throw new Error("Cannot find square root");return c}}return t%ay,cy(t)}var Yu=(t,e)=>(ut(t,e)&yt)===yt,hy=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Eo(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=hy.reduce((n,i)=>(n[i]="function",n),e);return Be(t,r)}function ly(t,e,r){if(r<Pt)throw new Error("Expected power > 0");if(r===Pt)return t.ONE;if(r===yt)return e;let n=t.ONE,i=e;for(;r>Pt;)r&yt&&(n=t.mul(n,i)),i=t.sqr(i),r>>=yt;return n}function py(t,e){let r=new Array(e.length),n=e.reduce((s,o,a)=>t.is0(o)?s:(r[a]=s,t.mul(s,o)),t.ONE),i=t.inv(n);return e.reduceRight((s,o,a)=>t.is0(o)?s:(r[a]=t.mul(s,r[a]),t.mul(s,o)),i),r}function So(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Vi(t,e,r=!1,n={}){if(t<=Pt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:s}=So(t,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");let o=fy(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:s,MASK:Rn(i),ZERO:Pt,ONE:yt,create:u=>ut(u,t),isValid:u=>{if(typeof u!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof u}`);return Pt<=u&&u<t},is0:u=>u===Pt,isOdd:u=>(u&yt)===yt,neg:u=>ut(-u,t),eql:(u,c)=>u===c,sqr:u=>ut(u*u,t),add:(u,c)=>ut(u+c,t),sub:(u,c)=>ut(u-c,t),mul:(u,c)=>ut(u*c,t),pow:(u,c)=>ly(a,u,c),div:(u,c)=>ut(u*Fi(c,t),t),sqrN:u=>u*u,addN:(u,c)=>u+c,subN:(u,c)=>u-c,mulN:(u,c)=>u*c,inv:u=>Fi(u,t),sqrt:n.sqrt||(u=>o(a,u)),invertBatch:u=>py(a,u),cmov:(u,c,f)=>f?c:u,toBytes:u=>r?gr(u,s):tr(u,s),fromBytes:u=>{if(u.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${u.length}`);return r?je(u):Ue(u)}});return Object.freeze(a)}function Wu(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}function Qu(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function Bo(t){let e=Qu(t);return e+Math.ceil(e/2)}function $u(t,e,r=!1){let n=t.length,i=Qu(e),s=Bo(e);if(n<16||n<s||n>1024)throw new Error(`expected ${s}-1024 bytes of input, got ${n}`);let o=r?Ue(t):je(t),a=ut(o,e-yt)+yt;return r?gr(a,i):tr(a,i)}var yy=BigInt(0),Ao=BigInt(1);function qi(t,e){let r=(i,s)=>{let o=s.negate();return i?o:s},n=i=>{let s=Math.ceil(e/i)+1,o=2**(i-1);return{windows:s,windowSize:o}};return{constTimeNegate:r,unsafeLadder(i,s){let o=t.ZERO,a=i;for(;s>yy;)s&Ao&&(o=o.add(a)),a=a.double(),s>>=Ao;return o},precomputeWindow(i,s){let{windows:o,windowSize:a}=n(s),u=[],c=i,f=c;for(let h=0;h<o;h++){f=c,u.push(f);for(let l=1;l<a;l++)f=f.add(c),u.push(f);c=f.double()}return u},wNAF(i,s,o){let{windows:a,windowSize:u}=n(i),c=t.ZERO,f=t.BASE,h=BigInt(2**i-1),l=2**i,g=BigInt(i);for(let p=0;p<a;p++){let d=p*u,y=Number(o&h);o>>=g,y>u&&(y-=l,o+=Ao);let m=d,w=d+Math.abs(y)-1,b=p%2!==0,_=y<0;y===0?f=f.add(r(b,s[m])):c=c.add(r(_,s[w]))}return{p:c,f}},wNAFCached(i,s,o,a){let u=i._WINDOW_SIZE||1,c=s.get(i);return c||(c=this.precomputeWindow(i,u),u!==1&&s.set(i,a(c))),this.wNAF(u,c,o)}}}function Ln(t){return Eo(t.Fp),Be(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...So(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var he=BigInt(0),ee=BigInt(1),Hi=BigInt(2),gy=BigInt(8),my={zip215:!0};function xy(t){let e=Ln(t);return Be(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function zi(t){let e=xy(t),{Fp:r,n,prehash:i,hash:s,randomBytes:o,nByteLength:a,h:u}=e,c=Hi<<BigInt(a*8)-ee,f=r.create,h=e.uvRatio||((P,A)=>{try{return{isValid:!0,value:r.sqrt(P*r.inv(A))}}catch{return{isValid:!1,value:he}}}),l=e.adjustScalarBytes||(P=>P),g=e.domain||((P,A,K)=>{if(A.length||K)throw new Error("Contexts/pre-hash are not supported");return P}),p=P=>typeof P=="bigint"&&he<P,d=(P,A)=>p(P)&&p(A)&&P<A,y=P=>P===he||d(P,c);function m(P,A){if(d(P,A))return P;throw new Error(`Expected valid scalar < ${A}, got ${typeof P} ${P}`)}function w(P){return P===he?P:m(P,n)}let b=new Map;function _(P){if(!(P instanceof E))throw new Error("ExtendedPoint expected")}class E{constructor(A,K,F,H){if(this.ex=A,this.ey=K,this.ez=F,this.et=H,!y(A))throw new Error("x required");if(!y(K))throw new Error("y required");if(!y(F))throw new Error("z required");if(!y(H))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(A){if(A instanceof E)throw new Error("extended point not allowed");let{x:K,y:F}=A||{};if(!y(K)||!y(F))throw new Error("invalid affine point");return new E(K,F,ee,f(K*F))}static normalizeZ(A){let K=r.invertBatch(A.map(F=>F.ez));return A.map((F,H)=>F.toAffine(K[H])).map(E.fromAffine)}_setWindowSize(A){this._WINDOW_SIZE=A,b.delete(this)}assertValidity(){let{a:A,d:K}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:F,ey:H,ez:$,et:J}=this,st=f(F*F),j=f(H*H),rt=f($*$),At=f(rt*rt),xt=f(st*A),Ot=f(rt*f(xt+j)),Mt=f(At+f(K*f(st*j)));if(Ot!==Mt)throw new Error("bad point: equation left != right (1)");let _t=f(F*H),Ft=f($*J);if(_t!==Ft)throw new Error("bad point: equation left != right (2)")}equals(A){_(A);let{ex:K,ey:F,ez:H}=this,{ex:$,ey:J,ez:st}=A,j=f(K*st),rt=f($*H),At=f(F*st),xt=f(J*H);return j===rt&&At===xt}is0(){return this.equals(E.ZERO)}negate(){return new E(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:A}=e,{ex:K,ey:F,ez:H}=this,$=f(K*K),J=f(F*F),st=f(Hi*f(H*H)),j=f(A*$),rt=K+F,At=f(f(rt*rt)-$-J),xt=j+J,Ot=xt-st,Mt=j-J,_t=f(At*Ot),Ft=f(xt*Mt),Ie=f(At*Mt),ir=f(Ot*xt);return new E(_t,Ft,ir,Ie)}add(A){_(A);let{a:K,d:F}=e,{ex:H,ey:$,ez:J,et:st}=this,{ex:j,ey:rt,ez:At,et:xt}=A;if(K===BigInt(-1)){let ua=f(($-H)*(rt+j)),ca=f(($+H)*(rt-j)),rs=f(ca-ua);if(rs===he)return this.double();let fa=f(J*Hi*xt),ha=f(st*Hi*At),la=ha+fa,pa=ca+ua,da=ha-fa,df=f(la*rs),yf=f(pa*da),gf=f(la*da),mf=f(rs*pa);return new E(df,yf,mf,gf)}let Ot=f(H*j),Mt=f($*rt),_t=f(st*F*xt),Ft=f(J*At),Ie=f((H+$)*(j+rt)-Ot-Mt),ir=Ft-_t,rn=Ft+_t,aa=f(Mt-K*Ot),ff=f(Ie*ir),hf=f(rn*aa),lf=f(Ie*aa),pf=f(ir*rn);return new E(ff,hf,pf,lf)}subtract(A){return this.add(A.negate())}wNAF(A){return N.wNAFCached(this,b,A,E.normalizeZ)}multiply(A){let{p:K,f:F}=this.wNAF(m(A,n));return E.normalizeZ([K,F])[0]}multiplyUnsafe(A){let K=w(A);return K===he?L:this.equals(L)||K===ee?this:this.equals(S)?this.wNAF(K).p:N.unsafeLadder(this,K)}isSmallOrder(){return this.multiplyUnsafe(u).is0()}isTorsionFree(){return N.unsafeLadder(this,n).is0()}toAffine(A){let{ex:K,ey:F,ez:H}=this,$=this.is0();A==null&&(A=$?gy:r.inv(H));let J=f(K*A),st=f(F*A),j=f(H*A);if($)return{x:he,y:ee};if(j!==ee)throw new Error("invZ was invalid");return{x:J,y:st}}clearCofactor(){let{h:A}=e;return A===ee?this:this.multiplyUnsafe(A)}static fromHex(A,K=!1){let{d:F,a:H}=e,$=r.BYTES;A=vt("pointHex",A,$);let J=A.slice(),st=A[$-1];J[$-1]=st&-129;let j=je(J);j===he||(K?m(j,c):m(j,r.ORDER));let rt=f(j*j),At=f(rt-ee),xt=f(F*rt-H),{isValid:Ot,value:Mt}=h(At,xt);if(!Ot)throw new Error("Point.fromHex: invalid y coordinate");let _t=(Mt&ee)===ee,Ft=(st&128)!==0;if(!K&&Mt===he&&Ft)throw new Error("Point.fromHex: x=0 and x_0=1");return Ft!==_t&&(Mt=f(-Mt)),E.fromAffine({x:Mt,y:j})}static fromPrivateKey(A){return q(A).point}toRawBytes(){let{x:A,y:K}=this.toAffine(),F=gr(K,r.BYTES);return F[F.length-1]|=A&ee?128:0,F}toHex(){return ke(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,ee,f(e.Gx*e.Gy)),E.ZERO=new E(he,ee,ee,he);let{BASE:S,ZERO:L}=E,N=qi(E,a*8);function G(P){return ut(P,n)}function z(P){return G(je(P))}function q(P){let A=a;P=vt("private key",P,A);let K=vt("hashed private key",s(P),2*A),F=l(K.slice(0,A)),H=K.slice(A,2*A),$=z(F),J=S.multiply($),st=J.toRawBytes();return{head:F,prefix:H,scalar:$,point:J,pointBytes:st}}function X(P){return q(P).pointBytes}function at(P=new Uint8Array,...A){let K=Ke(...A);return z(s(g(K,vt("context",P),!!i)))}function Kt(P,A,K={}){P=vt("message",P),i&&(P=i(P));let{prefix:F,scalar:H,pointBytes:$}=q(A),J=at(K.context,F,P),st=S.multiply(J).toRawBytes(),j=at(K.context,st,$,P),rt=G(J+j*H);w(rt);let At=Ke(st,gr(rt,r.BYTES));return vt("result",At,a*2)}let C=my;function D(P,A,K,F=C){let{context:H,zip215:$}=F,J=r.BYTES;P=vt("signature",P,2*J),A=vt("message",A),i&&(A=i(A));let st=je(P.slice(J,2*J)),j,rt,At;try{j=E.fromHex(K,$),rt=E.fromHex(P.slice(0,J),$),At=S.multiplyUnsafe(st)}catch{return!1}if(!$&&j.isSmallOrder())return!1;let xt=at(H,rt.toRawBytes(),j.toRawBytes(),A);return rt.add(j.multiplyUnsafe(xt)).subtract(At).clearCofactor().equals(E.ZERO)}return S._setWindowSize(8),{CURVE:e,getPublicKey:X,sign:Kt,verify:D,ExtendedPoint:E,utils:{getExtendedPublicKey:q,randomPrivateKey:()=>o(r.BYTES),precompute(P=8,A=E.BASE){return A._setWindowSize(P),A.multiply(BigInt(3)),A}}}}var Co=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Zu=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),wb=BigInt(0),by=BigInt(1),Io=BigInt(2),vy=BigInt(5),Xu=BigInt(10),wy=BigInt(20),Ey=BigInt(40),Ju=BigInt(80);function Sy(t){let e=Co,n=t*t%e*t%e,i=gt(n,Io,e)*n%e,s=gt(i,by,e)*t%e,o=gt(s,vy,e)*s%e,a=gt(o,Xu,e)*o%e,u=gt(a,wy,e)*a%e,c=gt(u,Ey,e)*u%e,f=gt(c,Ju,e)*c%e,h=gt(f,Ju,e)*c%e,l=gt(h,Xu,e)*o%e;return{pow_p_5_8:gt(l,Io,e)*t%e,b2:n}}function By(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function Ay(t,e){let r=Co,n=ut(e*e*e,r),i=ut(n*n*e,r),s=Sy(t*i).pow_p_5_8,o=ut(t*n*s,r),a=ut(e*o*o,r),u=o,c=ut(o*Zu,r),f=a===t,h=a===ut(-t,r),l=a===ut(-t*Zu,r);return f&&(o=u),(h||l)&&(o=c),Yu(o,r)&&(o=ut(-o,r)),{isValid:f||h,value:o}}var Oe=Vi(Co,void 0,!0),To={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Oe,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:mo,randomBytes:Wr,adjustScalarBytes:By,uvRatio:Ay},$r=zi(To);function ju(t,e,r){if(e.length>255)throw new Error("Context is too big");return Di(po("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Eb=zi({...To,domain:ju}),Sb=zi({...To,domain:ju,prehash:mo});var Iy=(Oe.ORDER+BigInt(3))/BigInt(8),Bb=Oe.pow(Io,Iy),Ab=Oe.sqrt(Oe.neg(Oe.ONE)),Ib=(Oe.ORDER-BigInt(5))/BigInt(8),Cb=BigInt(486662);var Tb=Wu(Oe,Oe.neg(BigInt(486664)));var _b=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),Rb=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),Lb=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),Nb=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Pb=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Zr=32,Me=64,Gi=32;function tc(){let t=$r.utils.randomPrivateKey(),e=$r.getPublicKey(t);return{privateKey:ic(t,e),publicKey:e}}function ec(t){if(t.length!==Gi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=$r.getPublicKey(e);return{privateKey:ic(e,r),publicKey:r}}function rc(t,e){let r=t.subarray(0,Gi);return $r.sign(e instanceof Uint8Array?e:e.subarray(),r)}function nc(t,e,r){return $r.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function ic(t,e){let r=new Uint8Array(Me);for(let n=0;n<Gi;n++)r[n]=t[n],r[Gi+n]=e[n];return r}var _o={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Yi(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",s=t?.saltLength??16,o=t?.iterations??32767,a=Bt.get();r*=8;async function u(h,l){let g=a.getRandomValues(new Uint8Array(s)),p=a.getRandomValues(new Uint8Array(n)),d={name:e,iv:p};typeof l=="string"&&(l=St(l));let y;if(l.length===0){y=await a.subtle.importKey("jwk",_o,{name:"AES-GCM"},!0,["encrypt"]);try{let w={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},b=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(w,b,{name:e,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",_o,{name:"AES-GCM"},!0,["encrypt"])}}else{let w={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},b=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(w,b,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(d,y,h);return jt([g,d.iv,new Uint8Array(m)])}async function c(h,l){let g=h.subarray(0,s),p=h.subarray(s,s+n),d=h.subarray(s+n),y={name:e,iv:p};typeof l=="string"&&(l=St(l));let m;if(l.length===0)try{let b={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},_=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,_,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",_o,{name:"AES-GCM"},!0,["decrypt"])}else{let b={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},_=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,_,{name:e,length:r},!0,["decrypt"])}let w=await a.subtle.decrypt(y,m,d);return new Uint8Array(w)}return{encrypt:u,decrypt:c}}async function Xr(t,e){let n=await Yi().encrypt(t,e);return sn.encode(n)}var jr={};It(jr,{KeyType:()=>lt,PrivateKey:()=>de,PublicKey:()=>pe});var Ro=new Float32Array([-0]),er=new Uint8Array(Ro.buffer);function oc(t,e,r){Ro[0]=t,e[r]=er[0],e[r+1]=er[1],e[r+2]=er[2],e[r+3]=er[3]}function ac(t,e){return er[0]=t[e],er[1]=t[e+1],er[2]=t[e+2],er[3]=t[e+3],Ro[0]}var Lo=new Float64Array([-0]),Ht=new Uint8Array(Lo.buffer);function uc(t,e,r){Lo[0]=t,e[r]=Ht[0],e[r+1]=Ht[1],e[r+2]=Ht[2],e[r+3]=Ht[3],e[r+4]=Ht[4],e[r+5]=Ht[5],e[r+6]=Ht[6],e[r+7]=Ht[7]}function cc(t,e){return Ht[0]=t[e],Ht[1]=t[e+1],Ht[2]=t[e+2],Ht[3]=t[e+3],Ht[4]=t[e+4],Ht[5]=t[e+5],Ht[6]=t[e+6],Ht[7]=t[e+7],Lo[0]}var Ty=BigInt(Number.MAX_SAFE_INTEGER),_y=BigInt(Number.MIN_SAFE_INTEGER),Zt=class t{lo;hi;constructor(e,r){this.lo=e|0,this.hi=r|0}toNumber(e=!1){if(!e&&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(e=!1){if(e)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(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?e<16384?e<128?1:2:e<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return xr;if(e<Ty&&e>_y)return this.fromNumber(Number(e));let r=e<0n;r&&(e=-e);let n=e>>32n,i=e-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>fc&&(i=0n,++n>fc&&(n=0n))),new t(Number(i),Number(n))}static fromNumber(e){if(e===0)return xr;let r=e<0;r&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new t(n,i)}static from(e){return typeof e=="number"?t.fromNumber(e):typeof e=="bigint"?t.fromBigInt(e):typeof e=="string"?t.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new t(e.low>>>0,e.high>>>0):xr}},xr=new Zt(0,0);xr.toBigInt=function(){return 0n};xr.zzEncode=xr.zzDecode=function(){return this};xr.length=function(){return 1};var fc=4294967296n;function hc(t){let e=0,r=0;for(let n=0;n<t.length;++n)r=t.charCodeAt(n),r<128?e+=1:r<2048?e+=2:(r&64512)===55296&&(t.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function lc(t,e,r){if(r-e<1)return"";let i,s=[],o=0,a;for(;e<r;)a=t[e++],a<128?s[o++]=a:a>191&&a<224?s[o++]=(a&31)<<6|t[e++]&63:a>239&&a<365?(a=((a&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,s[o++]=55296+(a>>10),s[o++]=56320+(a&1023)):s[o++]=(a&15)<<12|(t[e++]&63)<<6|t[e++]&63,o>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,s)),o=0);return i!=null?(o>0&&i.push(String.fromCharCode.apply(String,s.slice(0,o))),i.join("")):String.fromCharCode.apply(String,s.slice(0,o))}function No(t,e,r){let n=r,i,s;for(let o=0;o<t.length;++o)i=t.charCodeAt(o),i<128?e[r++]=i:i<2048?(e[r++]=i>>6|192,e[r++]=i&63|128):(i&64512)===55296&&((s=t.charCodeAt(o+1))&64512)===56320?(i=65536+((i&1023)<<10)+(s&1023),++o,e[r++]=i>>18|240,e[r++]=i>>12&63|128,e[r++]=i>>6&63|128,e[r++]=i&63|128):(e[r++]=i>>12|224,e[r++]=i>>6&63|128,e[r++]=i&63|128);return r-n}function le(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function Wi(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var Po=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,le(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw le(this,4);return Wi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw le(this,4);return Wi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw le(this,4);let e=ac(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw le(this,4);let e=cc(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),r=this.pos,n=this.pos+e;if(n>this.len)throw le(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return lc(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw le(this,e);this.pos+=e}else do if(this.pos>=this.len)throw le(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new Zt(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw le(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,e}if(this.len-this.pos>4){for(;r<5;++r)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;r<5;++r){if(this.pos>=this.len)throw le(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw le(this,8);let e=Wi(this.buf,this.pos+=4),r=Wi(this.buf,this.pos+=4);return new Zt(e,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 Do(t){return new Po(t instanceof Uint8Array?t:t.subarray())}function Qi(t,e){let r=Do(t);return e.decode(r)}function $i(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function br(t=0){return globalThis.Buffer?.allocUnsafe!=null?$i(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function yc(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var dc=yc("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),ko=yc("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=br(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Ry={utf8:dc,"utf-8":dc,hex:Te.base16,latin1:ko,ascii:ko,binary:ko,...Te},gc=Ry;function mc(t,e="utf8"){let r=gc[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?$i(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function Uo(t){let e=t??8192,r=e>>>1,n,i=e;return function(o){if(o<1||o>r)return br(o);i+o>e&&(n=br(e),i=0);let a=n.subarray(i,i+=o);return i&7&&(i=(i|7)+1),a}}var vr=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function Ko(){}var Mo=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Ly=Uo();function Ny(t){return globalThis.Buffer!=null?br(t):Ly(t)}var Dn=class{len;head;tail;states;constructor(){this.len=0,this.head=new vr(Ko,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new vr(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new Fo((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(Nn,10,Zt.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=Zt.fromBigInt(e);return this._push(Nn,r.length(),r)}uint64Number(e){let r=Zt.fromNumber(e);return this._push(Nn,r.length(),r)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let r=Zt.fromBigInt(e).zzEncode();return this._push(Nn,r.length(),r)}sint64Number(e){let r=Zt.fromNumber(e).zzEncode();return this._push(Nn,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(Oo,1,e?1:0)}fixed32(e){return this._push(Pn,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=Zt.fromBigInt(e);return this._push(Pn,4,r.lo)._push(Pn,4,r.hi)}fixed64Number(e){let r=Zt.fromNumber(e);return this._push(Pn,4,r.lo)._push(Pn,4,r.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(oc,4,e)}double(e){return this._push(uc,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(Oo,1,0):this.uint32(r)._push(Dy,r,e)}string(e){let r=hc(e);return r!==0?this.uint32(r)._push(No,r,e):this._push(Oo,1,0)}fork(){return this.states=new Mo(this),this.head=this.tail=new vr(Ko,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 vr(Ko,0,0),this.len=0),this}ldelim(){let e=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=r,this.len+=n),this}finish(){let e=this.head.next,r=Ny(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function Oo(t,e,r){e[r]=t&255}function Py(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var Fo=class extends vr{next;constructor(e,r){super(Py,e,r),this.next=void 0}};function Nn(t,e,r){for(;t.hi!==0;)e[r++]=t.lo&127|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[r++]=t.lo&127|128,t.lo=t.lo>>>7;e[r++]=t.lo}function Pn(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}function Dy(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Dn.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(ky,e,t),this},Dn.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(Uy,e,t),this});function ky(t,e,r){e.set(t,r)}function Uy(t,e,r){t.length<40?No(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(mc(t),r)}function Vo(){return new Dn}function Zi(t,e){let r=Vo();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Jr;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(Jr||(Jr={}));function Xi(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function qo(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(s,o){let a=e(s);o.int32(a)},n=function(s){let o=s.int32();return e(o)};return Xi("enum",Jr.VARINT,r,n)}function Ji(t,e){return Xi("message",Jr.LENGTH_DELIMITED,t,e)}var lt;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(lt||(lt={}));var Ho;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(Ho||(Ho={}));(function(t){t.codec=()=>qo(Ho)})(lt||(lt={}));var pe;(function(t){let e;t.codec=()=>(e==null&&(e=Ji((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),lt.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},s=n==null?r.len:r.pos+n;for(;r.pos<s;){let o=r.uint32();switch(o>>>3){case 1:i.Type=lt.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(o&7);break}}return i})),e),t.encode=r=>Zi(r,t.codec()),t.decode=r=>Qi(r,t.codec())})(pe||(pe={}));var de;(function(t){let e;t.codec=()=>(e==null&&(e=Ji((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),lt.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},s=n==null?r.len:r.pos+n;for(;r.pos<s;){let o=r.uint32();switch(o>>>3){case 1:i.Type=lt.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(o&7);break}}return i})),e),t.encode=r=>Zi(r,t.codec()),t.decode=r=>Qi(r,t.codec())})(de||(de={}));var kn=class{_key;constructor(e){this._key=tn(e,Zr)}verify(e,r){return nc(this._key,r,e)}marshal(){return this._key}get bytes(){return pe.encode({Type:lt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Qt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return ie(e)?e.then(({bytes:r})=>r):e.bytes}},wr=class{_key;_publicKey;constructor(e,r){this._key=tn(e,Me),this._publicKey=tn(r,Zr)}sign(e){return rc(this._key,e)}get public(){return new kn(this._publicKey)}marshal(){return this._key}get bytes(){return de.encode({Type:lt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Qt(this.bytes,e.bytes)}async hash(){let e=Lt.digest(this.bytes),r;return ie(e)?{bytes:r}=await e:r=e.bytes,r}async id(){let e=He.digest(this.public.bytes);return zt.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Xr(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Ky(t){if(t.length>Me){t=tn(t,Me+Zr);let n=t.subarray(0,Me),i=t.subarray(Me,t.length);return new wr(n,i)}t=tn(t,Me);let e=t.subarray(0,Me),r=t.subarray(Zr);return new wr(e,r)}function Oy(t){return t=tn(t,Zr),new kn(t)}async function My(){let{privateKey:t,publicKey:e}=tc();return new wr(t,e)}async function zo(t){let{privateKey:e,publicKey:r}=ec(t);return new wr(e,r)}function tn(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new O(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}var xc={"P-256":256,"P-384":384,"P-521":521},Fy=Object.keys(xc),Yo=Fy.join(" / ");async function bc(t){if(t!=="P-256"&&t!=="P-384"&&t!=="P-521")throw new O(`Unknown curve: ${t}. Must be ${Yo}`,"ERR_INVALID_CURVE");let e=await Bt.get().subtle.generateKey({name:"ECDH",namedCurve:t},!0,["deriveBits"]),r=async(s,o)=>{let a;o!=null?a=await Bt.get().subtle.importKey("jwk",qy(t,o),{name:"ECDH",namedCurve:t},!1,["deriveBits"]):a=e.privateKey;let u=await Bt.get().subtle.importKey("jwk",wc(t,s),{name:"ECDH",namedCurve:t},!1,[]),c=await Bt.get().subtle.deriveBits({name:"ECDH",namedCurve:t,public:u},a,xc[t]);return new Uint8Array(c,0,c.byteLength)},n=await Bt.get().subtle.exportKey("jwk",e.publicKey);return{key:Vy(n),genSharedKey:r}}var vc={"P-256":32,"P-384":48,"P-521":66};function Vy(t){if(t.crv==null||t.x==null||t.y==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");if(t.crv!=="P-256"&&t.crv!=="P-384"&&t.crv!=="P-521")throw new O(`Unknown curve: ${t.crv}. Must be ${Yo}`,"ERR_INVALID_CURVE");let e=vc[t.crv];return jt([Uint8Array.from([4]),Li(t.x,e),Li(t.y,e)],1+e*2)}function wc(t,e){if(t!=="P-256"&&t!=="P-384"&&t!=="P-521")throw new O(`Unknown curve: ${t}. Must be ${Yo}`,"ERR_INVALID_CURVE");let r=vc[t];if(!Qt(e.subarray(0,1),Uint8Array.from([4])))throw new O("Cannot unmarshal public key - invalid key format","ERR_INVALID_KEY_FORMAT");return{kty:"EC",crv:t,x:Tt(e.subarray(1,r+1),"base64url"),y:Tt(e.subarray(1+r),"base64url"),ext:!0}}var qy=(t,e)=>({...wc(t,e.public),d:Tt(e.private,"base64url")});var Ec=bc;async function Sc(t,e){let r=sn.decode(t);return Yi().decrypt(r,e)}var Bc={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,keySize:32}};async function Ac(t,e,r){let n=Bc[t];if(n==null){let w=Object.keys(Bc).join(" / ");throw new O(`unknown cipher type '${t}'. Must be ${w}`,"ERR_INVALID_CIPHER_TYPE")}if(e==null)throw new O("missing hash type","ERR_MISSING_HASH_TYPE");let i=n.keySize,s=n.ivSize,o=20,a=St("key expansion"),u=2*(s+i+o),c=await N0(e,r),f=await c.digest(a),h=[],l=0;for(;l<u;){let w=await c.digest(jt([f,a])),b=w.length;l+b>u&&(b=u-l),h.push(w),l+=b,f=await c.digest(f)}let g=u/2,p=jt(h),d=p.subarray(0,g),y=p.subarray(g,u),m=w=>({iv:w.subarray(0,s),cipherKey:w.subarray(s,s+i),macKey:w.subarray(s+i)});return{k1:m(d),k2:m(y)}}var Xo={};It(Xo,{MAX_KEY_SIZE:()=>Mn,RsaPrivateKey:()=>en,RsaPublicKey:()=>On,fromJwk:()=>Jy,generateKeyPair:()=>jy,unmarshalRsaPrivateKey:()=>Zy,unmarshalRsaPublicKey:()=>Xy});var Kn=Rt(ot(),1);var gw=Rt(Rc(),1);function Sr(t){if(isNaN(t)||t<=0)throw new O("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Wr(t)}var Jv=Rt(Ri(),1),$o=Rt(ot(),1);function Lc(t,e){return e.map(r=>te(t[r]))}function Nc(t){return $o.default.pki.setRsaPrivateKey(...Lc(t,["n","e","d","p","q","dp","dq","qi"]))}function Pc(t){return $o.default.pki.setRsaPublicKey(...Lc(t,["n","e"]))}var Br={};It(Br,{jwkToPkcs1:()=>Gy,jwkToPkix:()=>Wy,pkcs1ToJwk:()=>zy,pkixToJwk:()=>Yy});var ew=Rt(In(),1),rw=Rt(Ri(),1);var Fe=Rt(ot(),1);function zy(t){let e=Fe.default.asn1.fromDer(Tt(t,"ascii")),r=Fe.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:ce(r.n),e:ce(r.e),d:ce(r.d),p:ce(r.p),q:ce(r.q),dp:ce(r.dP),dq:ce(r.dQ),qi:ce(r.qInv),alg:"RS256"}}function Gy(t){if(t.n==null||t.e==null||t.d==null||t.p==null||t.q==null||t.dp==null||t.dq==null||t.qi==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Fe.default.pki.privateKeyToAsn1({n:te(t.n),e:te(t.e),d:te(t.d),p:te(t.p),q:te(t.q),dP:te(t.dp),dQ:te(t.dq),qInv:te(t.qi)});return St(Fe.default.asn1.toDer(e).getBytes(),"ascii")}function Yy(t){let e=Fe.default.asn1.fromDer(Tt(t,"ascii")),r=Fe.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:ce(r.n),e:ce(r.e)}}function Wy(t){if(t.n==null||t.e==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Fe.default.pki.publicKeyToAsn1({n:te(t.n),e:te(t.e)});return St(Fe.default.asn1.toDer(e).getBytes(),"ascii")}async function Dc(t){let e=await Bt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await Kc(e);return{privateKey:r[0],publicKey:r[1]}}async function Zo(t){let r=[await Bt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Qy(t)],n=await Kc({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function kc(t,e){let r=await Bt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Bt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function Uc(t,e,r){let n=await Bt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Bt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r instanceof Uint8Array?r:r.subarray())}async function Kc(t){if(t.privateKey==null||t.publicKey==null)throw new O("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Bt.get().subtle.exportKey("jwk",t.privateKey),Bt.get().subtle.exportKey("jwk",t.publicKey)])}async function Qy(t){return Bt.get().subtle.importKey("jwk",{kty:t.kty,n:t.n,e:t.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function Oc(t,e,r,n){let i=e?Pc(t):Nc(t),s=Tt(r instanceof Uint8Array?r:r.subarray(),"ascii"),o=n(s,i);return St(o,"ascii")}function Mc(t,e){return Oc(t,!0,e,(r,n)=>n.encrypt(r))}function Fc(t,e){return Oc(t,!1,e,(r,n)=>n.decrypt(r))}function ji(t){if(t.kty!=="RSA")throw new O("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new O("invalid key modulus","ERR_INVALID_KEY_MODULUS");return St(t.n,"base64url").length*8}var Mn=8192,On=class{_key;constructor(e){this._key=e}verify(e,r){return Uc(this._key,r,e)}marshal(){return Br.jwkToPkix(this._key)}get bytes(){return pe.encode({Type:lt.RSA,Data:this.marshal()}).subarray()}encrypt(e){return Mc(this._key,e)}equals(e){return Qt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return ie(e)?e.then(({bytes:r})=>r):e.bytes}},en=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return Sr(16)}sign(e){return kc(this._key,e)}get public(){if(this._publicKey==null)throw new O("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new On(this._publicKey)}decrypt(e){return Fc(this._key,e)}marshal(){return Br.jwkToPkcs1(this._key)}get bytes(){return de.encode({Type:lt.RSA,Data:this.marshal()}).subarray()}equals(e){return Qt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return ie(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return Tt(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new Kn.default.util.ByteBuffer(this.marshal()),i=Kn.default.asn1.fromDer(n),s=Kn.default.pki.privateKeyFromAsn1(i),o={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Kn.default.pki.encryptRsaPrivateKey(s,e,o)}else{if(r==="libp2p-key")return Xr(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Zy(t){let e=Br.pkcs1ToJwk(t);if(ji(e)>Mn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await Zo(e);return new en(r.privateKey,r.publicKey)}function Xy(t){let e=Br.pkixToJwk(t);if(ji(e)>Mn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new On(e)}async function Jy(t){if(ji(t)>Mn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Zo(t);return new en(e.privateKey,e.publicKey)}async function jy(t){if(t>Mn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Dc(t);return new en(e.privateKey,e.publicKey)}var na={};It(na,{Secp256k1PrivateKey:()=>Vn,Secp256k1PublicKey:()=>Fn,generateKeyPair:()=>d1,unmarshalSecp256k1PrivateKey:()=>l1,unmarshalSecp256k1PublicKey:()=>p1});var t1=(t,e,r)=>t&e^~t&r,e1=(t,e,r)=>t&e^t&r^e&r,r1=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),rr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),nr=new Uint32Array(64),Jo=class extends Qr{constructor(){super(64,32,8,!1),this.A=rr[0]|0,this.B=rr[1]|0,this.C=rr[2]|0,this.D=rr[3]|0,this.E=rr[4]|0,this.F=rr[5]|0,this.G=rr[6]|0,this.H=rr[7]|0}get(){let{A:e,B:r,C:n,D:i,E:s,F:o,G:a,H:u}=this;return[e,r,n,i,s,o,a,u]}set(e,r,n,i,s,o,a,u){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=s|0,this.F=o|0,this.G=a|0,this.H=u|0}process(e,r){for(let h=0;h<16;h++,r+=4)nr[h]=e.getUint32(r,!1);for(let h=16;h<64;h++){let l=nr[h-15],g=nr[h-2],p=fe(l,7)^fe(l,18)^l>>>3,d=fe(g,17)^fe(g,19)^g>>>10;nr[h]=d+nr[h-7]+p+nr[h-16]|0}let{A:n,B:i,C:s,D:o,E:a,F:u,G:c,H:f}=this;for(let h=0;h<64;h++){let l=fe(a,6)^fe(a,11)^fe(a,25),g=f+l+t1(a,u,c)+r1[h]+nr[h]|0,d=(fe(n,2)^fe(n,13)^fe(n,22))+e1(n,i,s)|0;f=c,c=u,u=a,a=o+g|0,o=s,s=i,i=n,n=g+d|0}n=n+this.A|0,i=i+this.B|0,s=s+this.C|0,o=o+this.D|0,a=a+this.E|0,u=u+this.F|0,c=c+this.G|0,f=f+this.H|0,this.set(n,i,s,o,a,u,c,f)}roundClean(){nr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Vc=ki(()=>new Jo);function n1(t){let e=Ln(t);Be(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:i1,hexToBytes:s1}=Mi,Ar={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Ar;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:i1(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Ar,r=typeof t=="string"?s1(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:s}=Ar._parseInt(r.subarray(2)),{d:o,l:a}=Ar._parseInt(s);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s:o}},hexFromSig(t){let e=c=>Number.parseInt(c[0],16)&8?"00"+c:c,r=c=>{let f=c.toString(16);return f.length&1?`0${f}`:f},n=e(r(t.s)),i=e(r(t.r)),s=n.length/2,o=i.length/2,a=r(s),u=r(o);return`30${r(o+s+4)}02${u}${i}02${a}${n}`}},Ve=BigInt(0),se=BigInt(1),Iw=BigInt(2),qc=BigInt(3),Cw=BigInt(4);function o1(t){let e=n1(t),{Fp:r}=e,n=e.toBytes||((p,d,y)=>{let m=d.toAffine();return Ke(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(p=>{let d=p.subarray(1),y=r.fromBytes(d.subarray(0,r.BYTES)),m=r.fromBytes(d.subarray(r.BYTES,2*r.BYTES));return{x:y,y:m}});function s(p){let{a:d,b:y}=e,m=r.sqr(p),w=r.mul(m,p);return r.add(r.add(w,r.mul(p,d)),y)}if(!r.eql(r.sqr(e.Gy),s(e.Gx)))throw new Error("bad generator point: equation left != right");function o(p){return typeof p=="bigint"&&Ve<p&&p<e.n}function a(p){if(!o(p))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function u(p){let{allowedPrivateKeyLengths:d,nByteLength:y,wrapPrivateKey:m,n:w}=e;if(d&&typeof p!="bigint"){if(p instanceof Uint8Array&&(p=ke(p)),typeof p!="string"||!d.includes(p.length))throw new Error("Invalid key");p=p.padStart(y*2,"0")}let b;try{b=typeof p=="bigint"?p:Ue(vt("private key",p,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof p}`)}return m&&(b=ut(b,w)),a(b),b}let c=new Map;function f(p){if(!(p instanceof h))throw new Error("ProjectivePoint expected")}class h{constructor(d,y,m){if(this.px=d,this.py=y,this.pz=m,d==null||!r.isValid(d))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(d){let{x:y,y:m}=d||{};if(!d||!r.isValid(y)||!r.isValid(m))throw new Error("invalid affine point");if(d instanceof h)throw new Error("projective point not allowed");let w=b=>r.eql(b,r.ZERO);return w(y)&&w(m)?h.ZERO:new h(y,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let y=r.invertBatch(d.map(m=>m.pz));return d.map((m,w)=>m.toAffine(y[w])).map(h.fromAffine)}static fromHex(d){let y=h.fromAffine(i(vt("pointHex",d)));return y.assertValidity(),y}static fromPrivateKey(d){return h.BASE.multiply(u(d))}_setWindowSize(d){this._WINDOW_SIZE=d,c.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y}=this.toAffine();if(!r.isValid(d)||!r.isValid(y))throw new Error("bad point: x or y not FE");let m=r.sqr(y),w=s(d);if(!r.eql(m,w))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:d}=this.toAffine();if(r.isOdd)return!r.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){f(d);let{px:y,py:m,pz:w}=this,{px:b,py:_,pz:E}=d,S=r.eql(r.mul(y,E),r.mul(b,w)),L=r.eql(r.mul(m,E),r.mul(_,w));return S&&L}negate(){return new h(this.px,r.neg(this.py),this.pz)}double(){let{a:d,b:y}=e,m=r.mul(y,qc),{px:w,py:b,pz:_}=this,E=r.ZERO,S=r.ZERO,L=r.ZERO,N=r.mul(w,w),G=r.mul(b,b),z=r.mul(_,_),q=r.mul(w,b);return q=r.add(q,q),L=r.mul(w,_),L=r.add(L,L),E=r.mul(d,L),S=r.mul(m,z),S=r.add(E,S),E=r.sub(G,S),S=r.add(G,S),S=r.mul(E,S),E=r.mul(q,E),L=r.mul(m,L),z=r.mul(d,z),q=r.sub(N,z),q=r.mul(d,q),q=r.add(q,L),L=r.add(N,N),N=r.add(L,N),N=r.add(N,z),N=r.mul(N,q),S=r.add(S,N),z=r.mul(b,_),z=r.add(z,z),N=r.mul(z,q),E=r.sub(E,N),L=r.mul(z,G),L=r.add(L,L),L=r.add(L,L),new h(E,S,L)}add(d){f(d);let{px:y,py:m,pz:w}=this,{px:b,py:_,pz:E}=d,S=r.ZERO,L=r.ZERO,N=r.ZERO,G=e.a,z=r.mul(e.b,qc),q=r.mul(y,b),X=r.mul(m,_),at=r.mul(w,E),Kt=r.add(y,m),C=r.add(b,_);Kt=r.mul(Kt,C),C=r.add(q,X),Kt=r.sub(Kt,C),C=r.add(y,w);let D=r.add(b,E);return C=r.mul(C,D),D=r.add(q,at),C=r.sub(C,D),D=r.add(m,w),S=r.add(_,E),D=r.mul(D,S),S=r.add(X,at),D=r.sub(D,S),N=r.mul(G,C),S=r.mul(z,at),N=r.add(S,N),S=r.sub(X,N),N=r.add(X,N),L=r.mul(S,N),X=r.add(q,q),X=r.add(X,q),at=r.mul(G,at),C=r.mul(z,C),X=r.add(X,at),at=r.sub(q,at),at=r.mul(G,at),C=r.add(C,at),q=r.mul(X,C),L=r.add(L,q),q=r.mul(D,C),S=r.mul(Kt,S),S=r.sub(S,q),q=r.mul(Kt,X),N=r.mul(D,N),N=r.add(N,q),new h(S,L,N)}subtract(d){return this.add(d.negate())}is0(){return this.equals(h.ZERO)}wNAF(d){return g.wNAFCached(this,c,d,y=>{let m=r.invertBatch(y.map(w=>w.pz));return y.map((w,b)=>w.toAffine(m[b])).map(h.fromAffine)})}multiplyUnsafe(d){let y=h.ZERO;if(d===Ve)return y;if(a(d),d===se)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,d);let{k1neg:w,k1:b,k2neg:_,k2:E}=m.splitScalar(d),S=y,L=y,N=this;for(;b>Ve||E>Ve;)b&se&&(S=S.add(N)),E&se&&(L=L.add(N)),N=N.double(),b>>=se,E>>=se;return w&&(S=S.negate()),_&&(L=L.negate()),L=new h(r.mul(L.px,m.beta),L.py,L.pz),S.add(L)}multiply(d){a(d);let y=d,m,w,{endo:b}=e;if(b){let{k1neg:_,k1:E,k2neg:S,k2:L}=b.splitScalar(y),{p:N,f:G}=this.wNAF(E),{p:z,f:q}=this.wNAF(L);N=g.constTimeNegate(_,N),z=g.constTimeNegate(S,z),z=new h(r.mul(z.px,b.beta),z.py,z.pz),m=N.add(z),w=G.add(q)}else{let{p:_,f:E}=this.wNAF(y);m=_,w=E}return h.normalizeZ([m,w])[0]}multiplyAndAddUnsafe(d,y,m){let w=h.BASE,b=(E,S)=>S===Ve||S===se||!E.equals(w)?E.multiplyUnsafe(S):E.multiply(S),_=b(this,y).add(b(d,m));return _.is0()?void 0:_}toAffine(d){let{px:y,py:m,pz:w}=this,b=this.is0();d==null&&(d=b?r.ONE:r.inv(w));let _=r.mul(y,d),E=r.mul(m,d),S=r.mul(w,d);if(b)return{x:r.ZERO,y:r.ZERO};if(!r.eql(S,r.ONE))throw new Error("invZ was invalid");return{x:_,y:E}}isTorsionFree(){let{h:d,isTorsionFree:y}=e;if(d===se)return!0;if(y)return y(h,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:y}=e;return d===se?this:y?y(h,this):this.multiplyUnsafe(e.h)}toRawBytes(d=!0){return this.assertValidity(),n(h,this,d)}toHex(d=!0){return ke(this.toRawBytes(d))}}h.BASE=new h(e.Gx,e.Gy,r.ONE),h.ZERO=new h(r.ZERO,r.ONE,r.ZERO);let l=e.nBitLength,g=qi(h,e.endo?Math.ceil(l/2):l);return{CURVE:e,ProjectivePoint:h,normPrivateKeyToScalar:u,weierstrassEquation:s,isWithinCurveOrder:o}}function a1(t){let e=Ln(t);return Be(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Hc(t){let e=a1(t),{Fp:r,n}=e,i=r.BYTES+1,s=2*r.BYTES+1;function o(C){return Ve<C&&C<r.ORDER}function a(C){return ut(C,n)}function u(C){return Fi(C,n)}let{ProjectivePoint:c,normPrivateKeyToScalar:f,weierstrassEquation:h,isWithinCurveOrder:l}=o1({...e,toBytes(C,D,R){let P=D.toAffine(),A=r.toBytes(P.x),K=Ke;return R?K(Uint8Array.from([D.hasEvenY()?2:3]),A):K(Uint8Array.from([4]),A,r.toBytes(P.y))},fromBytes(C){let D=C.length,R=C[0],P=C.subarray(1);if(D===i&&(R===2||R===3)){let A=Ue(P);if(!o(A))throw new Error("Point is not on curve");let K=h(A),F=r.sqrt(K),H=(F&se)===se;return(R&1)===1!==H&&(F=r.neg(F)),{x:A,y:F}}else if(D===s&&R===4){let A=r.fromBytes(P.subarray(0,r.BYTES)),K=r.fromBytes(P.subarray(r.BYTES,2*r.BYTES));return{x:A,y:K}}else throw new Error(`Point of length ${D} was invalid. Expected ${i} compressed bytes or ${s} uncompressed bytes`)}}),g=C=>ke(tr(C,e.nByteLength));function p(C){let D=n>>se;return C>D}function d(C){return p(C)?a(-C):C}let y=(C,D,R)=>Ue(C.slice(D,R));class m{constructor(D,R,P){this.r=D,this.s=R,this.recovery=P,this.assertValidity()}static fromCompact(D){let R=e.nByteLength;return D=vt("compactSignature",D,R*2),new m(y(D,0,R),y(D,R,2*R))}static fromDER(D){let{r:R,s:P}=Ar.toSig(vt("DER",D));return new m(R,P)}assertValidity(){if(!l(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!l(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(D){return new m(this.r,this.s,D)}recoverPublicKey(D){let{r:R,s:P,recovery:A}=this,K=L(vt("msgHash",D));if(A==null||![0,1,2,3].includes(A))throw new Error("recovery id invalid");let F=A===2||A===3?R+e.n:R;if(F>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let H=A&1?"03":"02",$=c.fromHex(H+g(F)),J=u(F),st=a(-K*J),j=a(P*J),rt=c.BASE.multiplyAndAddUnsafe($,st,j);if(!rt)throw new Error("point at infinify");return rt.assertValidity(),rt}hasHighS(){return p(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return yr(this.toDERHex())}toDERHex(){return Ar.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return yr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let w={isValidPrivateKey(C){try{return f(C),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let C=Bo(e.n);return $u(e.randomBytes(C),e.n)},precompute(C=8,D=c.BASE){return D._setWindowSize(C),D.multiply(BigInt(3)),D}};function b(C,D=!0){return c.fromPrivateKey(C).toRawBytes(D)}function _(C){let D=C instanceof Uint8Array,R=typeof C=="string",P=(D||R)&&C.length;return D?P===i||P===s:R?P===2*i||P===2*s:C instanceof c}function E(C,D,R=!0){if(_(C))throw new Error("first arg must be private key");if(!_(D))throw new Error("second arg must be public key");return c.fromHex(D).multiply(f(C)).toRawBytes(R)}let S=e.bits2int||function(C){let D=Ue(C),R=C.length*8-e.nBitLength;return R>0?D>>BigInt(R):D},L=e.bits2int_modN||function(C){return a(S(C))},N=Rn(e.nBitLength);function G(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Ve<=C&&C<N))throw new Error(`bigint expected < 2^${e.nBitLength}`);return tr(C,e.nByteLength)}function z(C,D,R=q){if(["recovered","canonical"].some(xt=>xt in R))throw new Error("sign() legacy options not supported");let{hash:P,randomBytes:A}=e,{lowS:K,prehash:F,extraEntropy:H}=R;K==null&&(K=!0),C=vt("msgHash",C),F&&(C=vt("prehashed msgHash",P(C)));let $=L(C),J=f(D),st=[G(J),G($)];if(H!=null){let xt=H===!0?A(r.BYTES):H;st.push(vt("extraEntropy",xt))}let j=Ke(...st),rt=$;function At(xt){let Ot=S(xt);if(!l(Ot))return;let Mt=u(Ot),_t=c.BASE.multiply(Ot).toAffine(),Ft=a(_t.x);if(Ft===Ve)return;let Ie=a(Mt*a(rt+Ft*J));if(Ie===Ve)return;let ir=(_t.x===Ft?0:2)|Number(_t.y&se),rn=Ie;return K&&p(Ie)&&(rn=d(Ie),ir^=1),new m(Ft,rn,ir)}return{seed:j,k2sig:At}}let q={lowS:e.lowS,prehash:!1},X={lowS:e.lowS,prehash:!1};function at(C,D,R=q){let{seed:P,k2sig:A}=z(C,D,R),K=e;return vo(K.hash.outputLen,K.nByteLength,K.hmac)(P,A)}c.BASE._setWindowSize(8);function Kt(C,D,R,P=X){let A=C;if(D=vt("msgHash",D),R=vt("publicKey",R),"strict"in P)throw new Error("options.strict was renamed to lowS");let{lowS:K,prehash:F}=P,H,$;try{if(typeof A=="string"||A instanceof Uint8Array)try{H=m.fromDER(A)}catch(_t){if(!(_t instanceof Ar.Err))throw _t;H=m.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:_t,s:Ft}=A;H=new m(_t,Ft)}else throw new Error("PARSE");$=c.fromHex(R)}catch(_t){if(_t.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(K&&H.hasHighS())return!1;F&&(D=e.hash(D));let{r:J,s:st}=H,j=L(D),rt=u(st),At=a(j*rt),xt=a(J*rt),Ot=c.BASE.multiplyAndAddUnsafe($,At,xt)?.toAffine();return Ot?a(Ot.x)===J:!1}return{CURVE:e,getPublicKey:b,getSharedSecret:E,sign:at,verify:Kt,ProjectivePoint:c,Signature:m,utils:w}}var ts=class extends Yr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ku(e);let n=_n(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,s=new Uint8Array(i);s.set(n.length>i?e.create().update(n).digest():n);for(let o=0;o<s.length;o++)s[o]^=54;this.iHash.update(s),this.oHash=e.create();for(let o=0;o<s.length;o++)s[o]^=106;this.oHash.update(s),s.fill(0)}update(e){return Gr(this),this.iHash.update(e),this}digestInto(e){Gr(this),lo(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:s,blockLen:o,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=s,e.blockLen=o,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},jo=(t,e,r)=>new ts(t,e).update(r).digest();jo.create=(t,e)=>new ts(t,e);function u1(t){return{hash:t,hmac:(e,...r)=>jo(t,e,Di(...r)),randomBytes:Wr}}function zc(t,e){let r=n=>Hc({...t,...u1(n)});return Object.freeze({...r(e),create:r})}var Wc=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Gc=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),c1=BigInt(1),ta=BigInt(2),Yc=(t,e)=>(t+e/ta)/e;function f1(t){let e=Wc,r=BigInt(3),n=BigInt(6),i=BigInt(11),s=BigInt(22),o=BigInt(23),a=BigInt(44),u=BigInt(88),c=t*t*t%e,f=c*c*t%e,h=gt(f,r,e)*f%e,l=gt(h,r,e)*f%e,g=gt(l,ta,e)*c%e,p=gt(g,i,e)*g%e,d=gt(p,s,e)*p%e,y=gt(d,a,e)*d%e,m=gt(y,u,e)*y%e,w=gt(m,a,e)*d%e,b=gt(w,r,e)*f%e,_=gt(b,o,e)*p%e,E=gt(_,n,e)*c%e,S=gt(E,ta,e);if(!ea.eql(ea.sqr(S),t))throw new Error("Cannot find square root");return S}var ea=Vi(Wc,void 0,void 0,{sqrt:f1}),ye=zc({a:BigInt(0),b:BigInt(7),Fp:ea,n:Gc,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=Gc,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-c1*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=r,o=BigInt("0x100000000000000000000000000000000"),a=Yc(s*t,e),u=Yc(-n*t,e),c=ut(t-a*r-u*i,e),f=ut(-a*n-u*s,e),h=c>o,l=f>o;if(h&&(c=e-c),l&&(f=e-f),c>o||f>o)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:h,k1:c,k2neg:l,k2:f}}}},Vc),Mw=BigInt(0);var Fw=ye.ProjectivePoint;function Qc(){return ye.utils.randomPrivateKey()}function $c(t,e){let r=Lt.digest(e instanceof Uint8Array?e:e.subarray());if(ie(r))return r.then(({digest:n})=>ye.sign(n,t).toDERRawBytes()).catch(n=>{throw new O(String(n),"ERR_INVALID_INPUT")});try{return ye.sign(r.digest,t).toDERRawBytes()}catch(n){throw new O(String(n),"ERR_INVALID_INPUT")}}function Zc(t,e,r){let n=Lt.digest(r instanceof Uint8Array?r:r.subarray());if(ie(n))return n.then(({digest:i})=>ye.verify(e,i,t)).catch(i=>{throw new O(String(i),"ERR_INVALID_INPUT")});try{return ye.verify(e,n.digest,t)}catch(i){throw new O(String(i),"ERR_INVALID_INPUT")}}function Xc(t){return ye.ProjectivePoint.fromHex(t).toRawBytes(!0)}function Jc(t){try{ye.getPublicKey(t,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}function ra(t){try{ye.ProjectivePoint.fromHex(t)}catch(e){throw new O(String(e),"ERR_INVALID_PUBLIC_KEY")}}function jc(t){try{return ye.getPublicKey(t,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}var Fn=class{_key;constructor(e){ra(e),this._key=e}verify(e,r){return Zc(this._key,r,e)}marshal(){return Xc(this._key)}get bytes(){return pe.encode({Type:lt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Qt(this.bytes,e.bytes)}async hash(){let e=Lt.digest(this.bytes),r;return ie(e)?{bytes:r}=await e:r=e.bytes,r}},Vn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??jc(e),Jc(this._key),ra(this._publicKey)}sign(e){return $c(this._key,e)}get public(){return new Fn(this._publicKey)}marshal(){return this._key}get bytes(){return de.encode({Type:lt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Qt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return ie(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return Tt(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Xr(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function l1(t){return new Vn(t)}function p1(t){return new Fn(t)}async function d1(){let t=Qc();return new Vn(t)}var Ae={rsa:Xo,ed25519:Go,secp256k1:na};function ia(t){let e=Object.keys(Ae).join(" / ");return new O(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function sa(t){if(t=t.toLowerCase(),t==="rsa"||t==="ed25519"||t==="secp256k1")return Ae[t];throw ia(t)}async function y1(t,e){return sa(t).generateKeyPair(e??2048)}async function g1(t,e,r){if(t.toLowerCase()!=="ed25519")throw new O("Seed key derivation is unimplemented for RSA or secp256k1","ERR_UNSUPPORTED_KEY_DERIVATION_TYPE");return zo(e)}function m1(t){let e=pe.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case lt.RSA:return Ae.rsa.unmarshalRsaPublicKey(r);case lt.Ed25519:return Ae.ed25519.unmarshalEd25519PublicKey(r);case lt.Secp256k1:return Ae.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw ia(e.Type??"unknown")}}function x1(t,e){return e=(e??"rsa").toLowerCase(),sa(e),t.bytes}async function tf(t){let e=de.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case lt.RSA:return Ae.rsa.unmarshalRsaPrivateKey(r);case lt.Ed25519:return Ae.ed25519.unmarshalEd25519PrivateKey(r);case lt.Secp256k1:return Ae.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw ia(e.Type??"RSA")}}function b1(t,e){return e=(e??"rsa").toLowerCase(),sa(e),t.bytes}async function v1(t,e){try{let i=await Sc(t,e);return await tf(i)}catch{}let r=es.default.pki.decryptRsaPrivateKey(t,e);if(r===null)throw new O("Cannot read the key, most likely the password is wrong or not a RSA key","ERR_CANNOT_DECRYPT_PEM");let n=es.default.asn1.toDer(es.default.pki.privateKeyToAsn1(r));return n=St(n.getBytes(),"ascii"),Ae.rsa.unmarshalRsaPrivateKey(n)}var w1=Rt(ro(),1),E1=Rt(Et(),1);function ef(){return BigInt(`0x${Tt(Sr(8),"base16")}`)}var rf=(t,e)=>{let r=St(e.toString(16).padStart(16,"0"),"base16"),n=new Uint8Array(t.length+r.length);return n.set(t,0),n.set(r,t.length),n},nf=t=>Lt.encode(t);var sf=function(t){return Array.isArray(t)?t:[t]},S1=async t=>{if(t.sequenceNumber==null||t.from==null||t.signature==null)return!1;let e=hn(t.from);return e.publicKey!=null?!0:t.key!=null?(await Yn(t.key)).equals(e):!1},of=async t=>{if(t.from==null)throw new O("RPC message was missing from",Nt.ERR_MISSING_FROM);if(!await S1(t))return{type:"unsigned",topic:t.topic??"",data:t.data??new Uint8Array(0)};let e=hn(t.from),r={type:"signed",from:hn(t.from),topic:t.topic??"",sequenceNumber:A1(t.sequenceNumber??new Uint8Array(0)),data:t.data??new Uint8Array(0),signature:t.signature??new Uint8Array(0),key:t.key??e.publicKey??new Uint8Array(0)};if(r.key.length===0)throw new O("Signed RPC message was missing key",Nt.ERR_MISSING_KEY);return r},Hn=t=>t.type==="signed"?{from:t.from.multihash.bytes,data:t.data,sequenceNumber:B1(t.sequenceNumber),topic:t.topic,signature:t.signature,key:t.key}:{data:t.data,topic:t.topic},B1=t=>{let e=t.toString(16);return e.length%2!==0&&(e=`0${e}`),St(e,"base16")},A1=t=>BigInt(`0x${Tt(t,"base16")}`);var af=St("libp2p-pubsub:");async function uf(t,e,r){if(t.privateKey==null)throw new Error("Cannot sign message, no private key present");if(t.publicKey==null)throw new Error("Cannot sign message, no public key present");let n={type:"signed",topic:e.topic,data:e.data,sequenceNumber:e.sequenceNumber,from:t},i=jt([af,r(Hn(n)).subarray()]),s=await qn.unmarshalPrivateKey(t.privateKey);return n.signature=await s.sign(i),n.key=t.publicKey,n}async function cf(t,e){if(t.type!=="signed")throw new Error('Message type must be "signed" to be verified');if(t.signature==null)throw new Error("Message must contain a signature to be verified");if(t.from==null)throw new Error("Message must contain a from property to be verified");let r=jt([af,e({...Hn(t),signature:void 0,key:void 0}).subarray()]),n=await I1(t);return qn.unmarshalPublicKey(n).verify(r,t.signature)}async function I1(t){if(t.type!=="signed")throw new Error('Message type must be "signed" to have a public key');if(t.from==null)throw new Error("Could not get the public key from the originator id");if(t.key!=null){let e=await Yn(t.key);if(e.publicKey!=null)return e.publicKey}if(t.from.publicKey!=null)return t.from.publicKey;throw new Error("Could not get the public key from the originator id")}var oa=class extends Ir{log;started;topics;subscriptions;peers;globalSignaturePolicy;canRelayMessage;emitSelf;topicValidators;queue;multicodecs;components;_registrarTopologyIds;enabled;maxInboundStreams;maxOutboundStreams;constructor(e,r){super();let{multicodecs:n=[],globalSignaturePolicy:i="StrictSign",canRelayMessage:s=!1,emitSelf:o=!1,messageProcessingConcurrency:a=10,maxInboundStreams:u=1,maxOutboundStreams:c=1}=r;this.log=e.logger.forComponent("libp2p:pubsub"),this.components=e,this.multicodecs=sf(n),this.enabled=r.enabled!==!1,this.started=!1,this.topics=new Map,this.subscriptions=new Set,this.peers=new Ur,this.globalSignaturePolicy=i==="StrictNoSign"?"StrictNoSign":"StrictSign",this.canRelayMessage=s,this.emitSelf=o,this.topicValidators=new Map,this.queue=new Ja({concurrency:a}),this.maxInboundStreams=u,this.maxOutboundStreams=c,this._onIncomingStream=this._onIncomingStream.bind(this),this._onPeerConnected=this._onPeerConnected.bind(this),this._onPeerDisconnected=this._onPeerDisconnected.bind(this)}async start(){if(this.started||!this.enabled)return;this.log("starting");let e=this.components.registrar;await Promise.all(this.multicodecs.map(async n=>{await e.handle(n,this._onIncomingStream,{maxInboundStreams:this.maxInboundStreams,maxOutboundStreams:this.maxOutboundStreams})}));let r={onConnect:this._onPeerConnected,onDisconnect:this._onPeerDisconnected};this._registrarTopologyIds=await Promise.all(this.multicodecs.map(async n=>e.register(n,r))),this.log("started"),this.started=!0}async stop(){if(!this.started||!this.enabled)return;let e=this.components.registrar;this._registrarTopologyIds!=null&&this._registrarTopologyIds?.forEach(r=>{e.unregister(r)}),await Promise.all(this.multicodecs.map(async r=>{await e.unhandle(r)})),this.log("stopping");for(let r of this.peers.values())r.close();this.peers.clear(),this.subscriptions=new Set,this.started=!1,this.log("stopped")}isStarted(){return this.started}_onIncomingStream(e){let{stream:r,connection:n}=e,i=n.remotePeer;if(r.protocol==null){r.abort(new Error("Stream was not multiplexed"));return}let s=this.addPeer(i,r.protocol),o=s.attachInboundStream(r);this.processMessages(i,o,s).catch(a=>{this.log(a)})}_onPeerConnected(e,r){if(this.log("connected %p",e),r.streams.find(n=>n.direction==="outbound"&&n.protocol!=null&&this.multicodecs.includes(n.protocol))!=null){this.log("outbound pubsub streams already present on connection from %p",e);return}Promise.resolve().then(async()=>{try{let n=await r.newStream(this.multicodecs);if(n.protocol==null){n.abort(new Error("Stream was not multiplexed"));return}await this.addPeer(e,n.protocol).attachOutboundStream(n)}catch(n){this.log.error(n)}this.send(e,{subscriptions:Array.from(this.subscriptions).map(n=>n.toString()),subscribe:!0})}).catch(n=>{this.log.error(n)})}_onPeerDisconnected(e,r){let n=e.toString();this.log("connection ended",n),this._removePeer(e)}addPeer(e,r){let n=this.peers.get(e);if(n!=null)return n;this.log("new peer %p",e);let i=new ci(this.components,{id:e,protocol:r});return this.peers.set(e,i),i.addEventListener("close",()=>this._removePeer(e),{once:!0}),i}_removePeer(e){let r=this.peers.get(e);if(r!=null){r.close(),this.log("delete peer %p",e),this.peers.delete(e);for(let n of this.topics.values())n.delete(e);return r}}async processMessages(e,r,n){try{await ln(r,async i=>{for await(let s of i){let o=this.decodeRpc(s),a=[];for(let u of o.messages??[]){if(u.from==null||u.data==null||u.topic==null){this.log("message from %p was missing from, data or topic fields, dropping",e);continue}a.push({from:u.from,data:u.data,topic:u.topic,sequenceNumber:u.sequenceNumber??void 0,signature:u.signature??void 0,key:u.key??void 0})}this.processRpc(e,n,{subscriptions:(o.subscriptions??[]).map(u=>({subscribe:!!u.subscribe,topic:u.topic??""})),messages:a}).catch(u=>{this.log(u)})}})}catch(i){this._onPeerDisconnected(n.id,i)}}async processRpc(e,r,n){if(!this.acceptFrom(e))return this.log("received message from unacceptable peer %p",e),!1;this.log("rpc from %p",e);let{subscriptions:i,messages:s}=n;return i!=null&&i.length>0&&(this.log("subscription update from %p",e),i.forEach(o=>{this.processRpcSubOpt(e,o)}),super.dispatchEvent(new ge("subscription-change",{detail:{peerId:r.id,subscriptions:i.map(({topic:o,subscribe:a})=>({topic:`${o??""}`,subscribe:!!a}))}}))),s!=null&&s.length>0&&(this.log("messages from %p",e),this.queue.addAll(s.map(o=>async()=>{if(o.topic==null||!this.subscriptions.has(o.topic)&&!this.canRelayMessage)return this.log("received message we didn't subscribe to. Dropping."),!1;try{let a=await of(o);await this.processMessage(e,a)}catch(a){this.log.error(a)}})).catch(o=>{this.log(o)})),!0}processRpcSubOpt(e,r){let n=r.topic;if(n==null)return;let i=this.topics.get(n);i==null&&(i=new Kr,this.topics.set(n,i)),r.subscribe===!0?i.add(e):i.delete(e)}async processMessage(e,r){if(!(this.components.peerId.equals(e)&&!this.emitSelf)){try{await this.validate(e,r)}catch(n){this.log("Message is invalid, dropping it. %O",n);return}this.subscriptions.has(r.topic)&&(!this.components.peerId.equals(e)||this.emitSelf)&&super.dispatchEvent(new ge("message",{detail:r})),await this.publishMessage(e,r)}}getMsgId(e){switch(this.globalSignaturePolicy){case"StrictSign":if(e.type!=="signed")throw new O('Message type should be "signed" when signature policy is StrictSign but it was not',Nt.ERR_MISSING_SIGNATURE);if(e.sequenceNumber==null)throw new O("Need seqno when signature policy is StrictSign but it was missing",Nt.ERR_MISSING_SEQNO);if(e.key==null)throw new O("Need key when signature policy is StrictSign but it was missing",Nt.ERR_MISSING_KEY);return rf(e.key,e.sequenceNumber);case"StrictNoSign":return nf(e.data);default:throw new O("Cannot get message id: unhandled signature policy",Nt.ERR_UNHANDLED_SIGNATURE_POLICY)}}acceptFrom(e){return!0}send(e,r){let{messages:n,subscriptions:i,subscribe:s}=r;this.sendRpc(e,{subscriptions:(i??[]).map(o=>({topic:o,subscribe:!!s})),messages:(n??[]).map(Hn)})}sendRpc(e,r){let n=this.peers.get(e);if(n==null){this.log.error("Cannot send RPC to %p as there are no streams to it available",e);return}if(!n.isWritable){this.log.error("Cannot send RPC to %p as there is no outbound stream to it available",e);return}n.write(this.encodeRpc(r))}async validate(e,r){switch(this.globalSignaturePolicy){case"StrictNoSign":if(r.type!=="unsigned")throw new O('Message type should be "unsigned" when signature policy is StrictNoSign but it was not',Nt.ERR_MISSING_SIGNATURE);if(r.signature!=null)throw new O("StrictNoSigning: signature should not be present",Nt.ERR_UNEXPECTED_SIGNATURE);if(r.key!=null)throw new O("StrictNoSigning: key should not be present",Nt.ERR_UNEXPECTED_KEY);if(r.sequenceNumber!=null)throw new O("StrictNoSigning: seqno should not be present",Nt.ERR_UNEXPECTED_SEQNO);break;case"StrictSign":if(r.type!=="signed")throw new O('Message type should be "signed" when signature policy is StrictSign but it was not',Nt.ERR_MISSING_SIGNATURE);if(r.signature==null)throw new O("StrictSigning: Signing required and no signature was present",Nt.ERR_MISSING_SIGNATURE);if(r.sequenceNumber==null)throw new O("StrictSigning: Signing required and no sequenceNumber was present",Nt.ERR_MISSING_SEQNO);if(!await cf(r,this.encodeMessage.bind(this)))throw new O("StrictSigning: Invalid message signature",Nt.ERR_INVALID_SIGNATURE);break;default:throw new O("Cannot validate message: unhandled signature policy",Nt.ERR_UNHANDLED_SIGNATURE_POLICY)}let i=this.topicValidators.get(r.topic);if(i!=null){let s=await i(e,r);if(s===nn.Reject||s===nn.Ignore)throw new O("Message validation failed",Nt.ERR_TOPIC_VALIDATOR_REJECT)}}async buildMessage(e){switch(this.globalSignaturePolicy){case"StrictSign":return uf(this.components.peerId,e,this.encodeMessage.bind(this));case"StrictNoSign":return Promise.resolve({type:"unsigned",...e});default:throw new O("Cannot build message: unhandled signature policy",Nt.ERR_UNHANDLED_SIGNATURE_POLICY)}}getSubscribers(e){if(!this.started)throw new O("not started yet","ERR_NOT_STARTED_YET");if(e==null)throw new O("topic is required","ERR_NOT_VALID_TOPIC");let r=this.topics.get(e.toString());return r==null?[]:Array.from(r.values())}async publish(e,r){if(!this.started)throw new Error("Pubsub has not started");let n={from:this.components.peerId,topic:e,data:r??new Uint8Array(0),sequenceNumber:ef()};this.log("publish topic: %s from: %p data: %m",e,n.from,n.data);let i=await this.buildMessage(n),s=!1;this.emitSelf&&this.subscriptions.has(e)&&(s=!0,super.dispatchEvent(new ge("message",{detail:i})));let o=await this.publishMessage(this.components.peerId,i);return s&&(o.recipients=[...o.recipients,this.components.peerId]),o}subscribe(e){if(!this.started)throw new Error("Pubsub has not started");if(this.log("subscribe to topic: %s",e),!this.subscriptions.has(e)){this.subscriptions.add(e);for(let r of this.peers.keys())this.send(r,{subscriptions:[e],subscribe:!0})}}unsubscribe(e){if(!this.started)throw new Error("Pubsub is not started");super.removeEventListener(e);let r=this.subscriptions.has(e);if(this.log("unsubscribe from %s - am subscribed %s",e,r),r){this.subscriptions.delete(e);for(let n of this.peers.keys())this.send(n,{subscriptions:[e],subscribe:!1})}}getTopics(){if(!this.started)throw new Error("Pubsub is not started");return Array.from(this.subscriptions)}getPeers(){if(!this.started)throw new Error("Pubsub is not started");return Array.from(this.peers.keys())}};return Sf(C1);})();
|
15
|
+
`+a+e.substr(o+1),s=i-o-1,o=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(o=i);return e}function Yh(t){return t.replace(/^\s+/,"")}});var E0=ut((t2,w0)=>{var ye=st();sr();bt();var x0=w0.exports=ye.sha256=ye.sha256||{};ye.md.sha256=ye.md.algorithms.sha256=x0;x0.create=function(){b0||Wh();var t=null,e=ye.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,s=0;s<i;++s)n.fullMessageLength.push(0);return e=ye.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,s){s==="utf8"&&(i=ye.util.encodeUtf8(i));var o=i.length;n.messageLength+=o,o=[o/4294967296>>>0,o>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=o[1],o[1]=o[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,o[0]=o[1]/4294967296>>>0;return e.putBytes(i),m0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=ye.util.createBuffer();i.putBytes(e.bytes());var s=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,o=s&n.blockLength-1;i.putBytes(Us.substr(0,n.blockLength-o));for(var a,u,c=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,u=a/4294967296>>>0,c+=u,i.putInt32(c>>>0),c=a>>>0;i.putInt32(c);var h={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};m0(h,r,i);var l=ye.util.createBuffer();return l.putInt32(h.h0),l.putInt32(h.h1),l.putInt32(h.h2),l.putInt32(h.h3),l.putInt32(h.h4),l.putInt32(h.h5),l.putInt32(h.h6),l.putInt32(h.h7),l},n};var Us=null,b0=!1,v0=null;function Wh(){Us="\x80",Us+=ye.util.fillString("\0",64),v0=[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],b0=!0}function m0(t,e,r){for(var n,i,s,o,a,u,c,f,h,l,g,p,d,y,m,w=r.length();w>=64;){for(c=0;c<16;++c)e[c]=r.getInt32();for(;c<64;++c)n=e[c-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[c-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[c]=n+e[c-7]+i+e[c-16]|0;for(f=t.h0,h=t.h1,l=t.h2,g=t.h3,p=t.h4,d=t.h5,y=t.h6,m=t.h7,c=0;c<64;++c)o=(p>>>6|p<<26)^(p>>>11|p<<21)^(p>>>25|p<<7),a=y^p&(d^y),s=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),u=f&h|l&(f^h),n=m+o+a+v0[c]+e[c],i=s+u,m=y,y=d,d=p,p=g+n>>>0,g=l,l=h,h=f,f=n+i>>>0;t.h0=t.h0+f|0,t.h1=t.h1+h|0,t.h2=t.h2+l|0,t.h3=t.h3+g|0,t.h4=t.h4+p|0,t.h5=t.h5+d|0,t.h6=t.h6+y|0,t.h7=t.h7+m|0,w-=64}}});var B0=ut((e2,S0)=>{var ge=st();bt();var oi=null;ge.util.isNodejs&&!ge.options.usePureJavaScript&&!process.versions["node-webkit"]&&(oi=ni());var $h=S0.exports=ge.prng=ge.prng||{};$h.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(c,f){if(!f)return e.generateSync(c);var h=e.plugin.cipher,l=e.plugin.increment,g=e.plugin.formatKey,p=e.plugin.formatSeed,d=ge.util.createBuffer();e.key=null,y();function y(m){if(m)return f(m);if(d.length()>=c)return f(null,d.getBytes(c));if(e.generated>1048575&&(e.key=null),e.key===null)return ge.util.nextTick(function(){s(y)});var w=h(e.key,e.seed);e.generated+=w.length,d.putBytes(w),e.key=g(h(e.key,l(e.seed))),e.seed=p(h(e.key,e.seed)),ge.util.setImmediate(y)}},e.generateSync=function(c){var f=e.plugin.cipher,h=e.plugin.increment,l=e.plugin.formatKey,g=e.plugin.formatSeed;e.key=null;for(var p=ge.util.createBuffer();p.length()<c;){e.generated>1048575&&(e.key=null),e.key===null&&o();var d=f(e.key,e.seed);e.generated+=d.length,p.putBytes(d),e.key=l(f(e.key,h(e.seed))),e.seed=g(f(e.key,e.seed))}return p.getBytes(c)};function s(c){if(e.pools[0].messageLength>=32)return a(),c();var f=32-e.pools[0].messageLength<<5;e.seedFile(f,function(h,l){if(h)return c(h);e.collect(l),a(),c()})}function o(){if(e.pools[0].messageLength>=32)return a();var c=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(c)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var c=e.plugin.md.create();c.update(e.keyBytes);for(var f=1,h=0;h<32;++h)e.reseeds%f===0&&(c.update(e.pools[h].digest().getBytes()),e.pools[h].start()),f=f<<1;e.keyBytes=c.digest().getBytes(),c.start(),c.update(e.keyBytes);var l=c.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(l),e.generated=0}function u(c){var f=null,h=ge.util.globalScope,l=h.crypto||h.msCrypto;l&&l.getRandomValues&&(f=function(E){return l.getRandomValues(E)});var g=ge.util.createBuffer();if(f)for(;g.length()<c;){var p=Math.max(1,Math.min(c-g.length(),65536)/4),d=new Uint32Array(Math.floor(p));try{f(d);for(var y=0;y<d.length;++y)g.putInt32(d[y])}catch(E){if(!(typeof QuotaExceededError<"u"&&E instanceof QuotaExceededError))throw E}}if(g.length()<c)for(var m,w,b,_=Math.floor(Math.random()*65536);g.length()<c;){w=16807*(_&65535),m=16807*(_>>16),w+=(m&32767)<<16,w+=m>>15,w=(w&2147483647)+(w>>31),_=w&4294967295;for(var y=0;y<3;++y)b=_>>>(y<<3),b^=Math.floor(Math.random()*256),g.putByte(b&255)}return g.getBytes(c)}return oi?(e.seedFile=function(c,f){oi.randomBytes(c,function(h,l){if(h)return f(h);f(null,l.toString())})},e.seedFileSync=function(c){return oi.randomBytes(c).toString()}):(e.seedFile=function(c,f){try{f(null,u(c))}catch(h){f(h)}},e.seedFileSync=u),e.collect=function(c){for(var f=c.length,h=0;h<f;++h)e.pools[e.pool].update(c.substr(h,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(c,f){for(var h="",l=0;l<f;l+=8)h+=String.fromCharCode(c>>l&255);e.collect(h)},e.registerWorker=function(c){if(c===self)e.seedFile=function(h,l){function g(p){var d=p.data;d.forge&&d.forge.prng&&(self.removeEventListener("message",g),l(d.forge.prng.err,d.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:h}}})};else{var f=function(h){var l=h.data;l.forge&&l.forge.prng&&e.seedFile(l.forge.prng.needed,function(g,p){c.postMessage({forge:{prng:{err:g,bytes:p}}})})};c.addEventListener("message",f)}},e}});var gn=ut((r2,Ks)=>{var Lt=st();Qn();E0();B0();bt();(function(){if(Lt.random&&Lt.random.getBytes){Ks.exports=Lt.random;return}(function(t){var e={},r=new Array(4),n=Lt.util.createBuffer();e.formatKey=function(h){var l=Lt.util.createBuffer(h);return h=new Array(4),h[0]=l.getInt32(),h[1]=l.getInt32(),h[2]=l.getInt32(),h[3]=l.getInt32(),Lt.aes._expandKey(h,!1)},e.formatSeed=function(h){var l=Lt.util.createBuffer(h);return h=new Array(4),h[0]=l.getInt32(),h[1]=l.getInt32(),h[2]=l.getInt32(),h[3]=l.getInt32(),h},e.cipher=function(h,l){return Lt.aes._updateBlock(h,l,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(h){return++h[3],h},e.md=Lt.md.sha256;function i(){var h=Lt.prng.create(e);return h.getBytes=function(l,g){return h.generate(l,g)},h.getBytesSync=function(l){return h.generate(l)},h}var s=i(),o=null,a=Lt.util.globalScope,u=a.crypto||a.msCrypto;if(u&&u.getRandomValues&&(o=function(h){return u.getRandomValues(h)}),Lt.options.usePureJavaScript||!Lt.util.isNodejs&&!o){if(typeof window>"u"||window.document,s.collectInt(+new Date,32),typeof navigator<"u"){var c="";for(var f in navigator)try{typeof navigator[f]=="string"&&(c+=navigator[f])}catch{}s.collect(c),c=null}t&&(t().mousemove(function(h){s.collectInt(h.clientX,16),s.collectInt(h.clientY,16)}),t().keypress(function(h){s.collectInt(h.charCode,8)}))}if(!Lt.random)Lt.random=s;else for(var f in s)Lt.random[f]=s[f];Lt.random.createInstance=i,Ks.exports=Lt.random})(typeof jQuery<"u"?jQuery:null)})()});var T0=ut((n2,C0)=>{var Yt=st();bt();var Os=[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],A0=[1,2,3,5],Zh=function(t,e){return t<<e&65535|(t&65535)>>16-e},Qh=function(t,e){return(t&65535)>>e|t<<16-e&65535};C0.exports=Yt.rc2=Yt.rc2||{};Yt.rc2.expandKey=function(t,e){typeof t=="string"&&(t=Yt.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,s=Math.ceil(i/8),o=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(Os[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-s,Os[r.at(128-s)&o]),a=127-s;a>=0;a--)r.setAt(a,Os[r.at(a+1)^r.at(a+s)]);return r};var I0=function(t,e,r){var n=!1,i=null,s=null,o=null,a,u,c,f,h=[];for(t=Yt.rc2.expandKey(t,e),c=0;c<64;c++)h.push(t.getInt16Le());r?(a=function(p){for(c=0;c<4;c++)p[c]+=h[f]+(p[(c+3)%4]&p[(c+2)%4])+(~p[(c+3)%4]&p[(c+1)%4]),p[c]=Zh(p[c],A0[c]),f++},u=function(p){for(c=0;c<4;c++)p[c]+=h[p[(c+3)%4]&63]}):(a=function(p){for(c=3;c>=0;c--)p[c]=Qh(p[c],A0[c]),p[c]-=h[f]+(p[(c+3)%4]&p[(c+2)%4])+(~p[(c+3)%4]&p[(c+1)%4]),f--},u=function(p){for(c=3;c>=0;c--)p[c]-=h[p[(c+3)%4]&63]});var l=function(p){var d=[];for(c=0;c<4;c++){var y=i.getInt16Le();o!==null&&(r?y^=o.getInt16Le():o.putInt16Le(y)),d.push(y&65535)}f=r?0:63;for(var m=0;m<p.length;m++)for(var w=0;w<p[m][0];w++)p[m][1](d);for(c=0;c<4;c++)o!==null&&(r?o.putInt16Le(d[c]):d[c]^=o.getInt16Le()),s.putInt16Le(d[c])},g=null;return g={start:function(p,d){p&&typeof p=="string"&&(p=Yt.util.createBuffer(p)),n=!1,i=Yt.util.createBuffer(),s=d||new Yt.util.createBuffer,o=p,g.output=s},update:function(p){for(n||i.putBuffer(p);i.length()>=8;)l([[5,a],[1,u],[6,a],[1,u],[5,a]])},finish:function(p){var d=!0;if(r)if(p)d=p(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(d&&(n=!0,g.update()),!r&&(d=i.length()===0,d))if(p)d=p(8,s,!r);else{var m=s.length(),w=s.at(m-1);w>m?d=!1:s.truncate(w)}return d}},g};Yt.rc2.startEncrypting=function(t,e,r){var n=Yt.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};Yt.rc2.createEncryptionCipher=function(t,e){return I0(t,e,!0)};Yt.rc2.startDecrypting=function(t,e,r){var n=Yt.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};Yt.rc2.createDecryptionCipher=function(t,e){return I0(t,e,!1)}});var ci=ut((i2,U0)=>{var Ms=st();U0.exports=Ms.jsbn=Ms.jsbn||{};var _e,Xh=0xdeadbeefcafe,_0=(Xh&16777215)==15715070;function I(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}Ms.jsbn.BigInteger=I;function tt(){return new I(null)}function Jh(t,e,r,n,i,s){for(;--s>=0;){var o=e*this.data[t++]+r.data[n]+i;i=Math.floor(o/67108864),r.data[n++]=o&67108863}return i}function jh(t,e,r,n,i,s){for(var o=e&32767,a=e>>15;--s>=0;){var u=this.data[t]&32767,c=this.data[t++]>>15,f=a*u+c*o;u=o*u+((f&32767)<<15)+r.data[n]+(i&1073741823),i=(u>>>30)+(f>>>15)+a*c+(i>>>30),r.data[n++]=u&1073741823}return i}function R0(t,e,r,n,i,s){for(var o=e&16383,a=e>>14;--s>=0;){var u=this.data[t]&16383,c=this.data[t++]>>14,f=a*u+c*o;u=o*u+((f&16383)<<14)+r.data[n]+i,i=(u>>28)+(f>>14)+a*c,r.data[n++]=u&268435455}return i}typeof navigator>"u"?(I.prototype.am=R0,_e=28):_0&&navigator.appName=="Microsoft Internet Explorer"?(I.prototype.am=jh,_e=30):_0&&navigator.appName!="Netscape"?(I.prototype.am=Jh,_e=26):(I.prototype.am=R0,_e=28);I.prototype.DB=_e;I.prototype.DM=(1<<_e)-1;I.prototype.DV=1<<_e;var Fs=52;I.prototype.FV=Math.pow(2,Fs);I.prototype.F1=Fs-_e;I.prototype.F2=2*_e-Fs;var tl="0123456789abcdefghijklmnopqrstuvwxyz",ai=new Array,Kr,Xt;Kr=48;for(Xt=0;Xt<=9;++Xt)ai[Kr++]=Xt;Kr=97;for(Xt=10;Xt<36;++Xt)ai[Kr++]=Xt;Kr=65;for(Xt=10;Xt<36;++Xt)ai[Kr++]=Xt;function L0(t){return tl.charAt(t)}function N0(t,e){var r=ai[t.charCodeAt(e)];return r??-1}function el(t){for(var e=this.t-1;e>=0;--e)t.data[e]=this.data[e];t.t=this.t,t.s=this.s}function rl(t){this.t=1,this.s=t<0?-1:0,t>0?this.data[0]=t:t<-1?this.data[0]=t+this.DV:this.t=0}function He(t){var e=tt();return e.fromInt(t),e}function nl(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,s=0;--n>=0;){var o=r==8?t[n]&255:N0(t,n);if(o<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,s==0?this.data[this.t++]=o:s+r>this.DB?(this.data[this.t-1]|=(o&(1<<this.DB-s)-1)<<s,this.data[this.t++]=o>>this.DB-s):this.data[this.t-1]|=o<<s,s+=r,s>=this.DB&&(s-=this.DB)}r==8&&t[0]&128&&(this.s=-1,s>0&&(this.data[this.t-1]|=(1<<this.DB-s)-1<<s)),this.clamp(),i&&I.ZERO.subTo(this,this)}function il(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function sl(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,s="",o=this.t,a=this.DB-o*this.DB%e;if(o-- >0)for(a<this.DB&&(n=this.data[o]>>a)>0&&(i=!0,s=L0(n));o>=0;)a<e?(n=(this.data[o]&(1<<a)-1)<<e-a,n|=this.data[--o]>>(a+=this.DB-e)):(n=this.data[o]>>(a-=e)&r,a<=0&&(a+=this.DB,--o)),n>0&&(i=!0),i&&(s+=L0(n));return i?s:"0"}function ol(){var t=tt();return I.ZERO.subTo(this,t),t}function al(){return this.s<0?this.negate():this}function ul(t){var e=this.s-t.s;if(e!=0)return e;var r=this.t;if(e=r-t.t,e!=0)return this.s<0?-e:e;for(;--r>=0;)if((e=this.data[r]-t.data[r])!=0)return e;return 0}function ui(t){var e=1,r;return(r=t>>>16)!=0&&(t=r,e+=16),(r=t>>8)!=0&&(t=r,e+=8),(r=t>>4)!=0&&(t=r,e+=4),(r=t>>2)!=0&&(t=r,e+=2),(r=t>>1)!=0&&(t=r,e+=1),e}function cl(){return this.t<=0?0:this.DB*(this.t-1)+ui(this.data[this.t-1]^this.s&this.DM)}function fl(t,e){var r;for(r=this.t-1;r>=0;--r)e.data[r+t]=this.data[r];for(r=t-1;r>=0;--r)e.data[r]=0;e.t=this.t+t,e.s=this.s}function hl(t,e){for(var r=t;r<this.t;++r)e.data[r-t]=this.data[r];e.t=Math.max(this.t-t,0),e.s=this.s}function ll(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,s=Math.floor(t/this.DB),o=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+s+1]=this.data[a]>>n|o,o=(this.data[a]&i)<<r;for(a=s-1;a>=0;--a)e.data[a]=0;e.data[s]=o,e.t=this.t+s+1,e.s=this.s,e.clamp()}function pl(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,s=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var o=r+1;o<this.t;++o)e.data[o-r-1]|=(this.data[o]&s)<<i,e.data[o-r]=this.data[o]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&s)<<i),e.t=this.t-r,e.clamp()}function dl(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function yl(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&I.ZERO.subTo(e,e)}function gl(t){for(var e=this.abs(),r=t.t=2*e.t;--r>=0;)t.data[r]=0;for(r=0;r<e.t-1;++r){var n=e.am(r,e.data[r],t,2*r,0,1);(t.data[r+e.t]+=e.am(r+1,2*e.data[r],t,2*r+1,n,e.t-r-1))>=e.DV&&(t.data[r+e.t]-=e.DV,t.data[r+e.t+1]=1)}t.t>0&&(t.data[t.t-1]+=e.am(r,e.data[r],t,2*r,0,1)),t.s=0,t.clamp()}function ml(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=tt());var s=tt(),o=this.s,a=t.s,u=this.DB-ui(n.data[n.t-1]);u>0?(n.lShiftTo(u,s),i.lShiftTo(u,r)):(n.copyTo(s),i.copyTo(r));var c=s.t,f=s.data[c-1];if(f!=0){var h=f*(1<<this.F1)+(c>1?s.data[c-2]>>this.F2:0),l=this.FV/h,g=(1<<this.F1)/h,p=1<<this.F2,d=r.t,y=d-c,m=e??tt();for(s.dlShiftTo(y,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),I.ONE.dlShiftTo(c,m),m.subTo(s,s);s.t<c;)s.data[s.t++]=0;for(;--y>=0;){var w=r.data[--d]==f?this.DM:Math.floor(r.data[d]*l+(r.data[d-1]+p)*g);if((r.data[d]+=s.am(0,w,r,y,0,c))<w)for(s.dlShiftTo(y,m),r.subTo(m,r);r.data[d]<--w;)r.subTo(m,r)}e!=null&&(r.drShiftTo(c,e),o!=a&&I.ZERO.subTo(e,e)),r.t=c,r.clamp(),u>0&&r.rShiftTo(u,r),o<0&&I.ZERO.subTo(r,r)}}}function xl(t){var e=tt();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(I.ZERO)>0&&t.subTo(e,e),e}function or(t){this.m=t}function bl(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function vl(t){return t}function wl(t){t.divRemTo(this.m,null,t)}function El(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function Sl(t,e){t.squareTo(e),this.reduce(e)}or.prototype.convert=bl;or.prototype.revert=vl;or.prototype.reduce=wl;or.prototype.mulTo=El;or.prototype.sqrTo=Sl;function Bl(){if(this.t<1)return 0;var t=this.data[0];if(!(t&1))return 0;var e=t&3;return e=e*(2-(t&15)*e)&15,e=e*(2-(t&255)*e)&255,e=e*(2-((t&65535)*e&65535))&65535,e=e*(2-t*e%this.DV)%this.DV,e>0?this.DV-e:-e}function ar(t){this.m=t,this.mp=t.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}function Al(t){var e=tt();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(I.ZERO)>0&&this.m.subTo(e,e),e}function Il(t){var e=tt();return t.copyTo(e),this.reduce(e),e}function Cl(t){for(;t.t<=this.mt2;)t.data[t.t++]=0;for(var e=0;e<this.m.t;++e){var r=t.data[e]&32767,n=r*this.mpl+((r*this.mph+(t.data[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(r=e+this.m.t,t.data[r]+=this.m.am(0,n,t,e,0,this.m.t);t.data[r]>=t.DV;)t.data[r]-=t.DV,t.data[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)}function Tl(t,e){t.squareTo(e),this.reduce(e)}function _l(t,e,r){t.multiplyTo(e,r),this.reduce(r)}ar.prototype.convert=Al;ar.prototype.revert=Il;ar.prototype.reduce=Cl;ar.prototype.mulTo=_l;ar.prototype.sqrTo=Tl;function Rl(){return(this.t>0?this.data[0]&1:this.s)==0}function Ll(t,e){if(t>4294967295||t<1)return I.ONE;var r=tt(),n=tt(),i=e.convert(this),s=ui(t)-1;for(i.copyTo(r);--s>=0;)if(e.sqrTo(r,n),(t&1<<s)>0)e.mulTo(n,i,r);else{var o=r;r=n,n=o}return e.revert(r)}function Nl(t,e){var r;return t<256||e.isEven()?r=new or(e):r=new ar(e),this.exp(t,r)}I.prototype.copyTo=el;I.prototype.fromInt=rl;I.prototype.fromString=nl;I.prototype.clamp=il;I.prototype.dlShiftTo=fl;I.prototype.drShiftTo=hl;I.prototype.lShiftTo=ll;I.prototype.rShiftTo=pl;I.prototype.subTo=dl;I.prototype.multiplyTo=yl;I.prototype.squareTo=gl;I.prototype.divRemTo=ml;I.prototype.invDigit=Bl;I.prototype.isEven=Rl;I.prototype.exp=Ll;I.prototype.toString=sl;I.prototype.negate=ol;I.prototype.abs=al;I.prototype.compareTo=ul;I.prototype.bitLength=cl;I.prototype.mod=xl;I.prototype.modPowInt=Nl;I.ZERO=He(0);I.ONE=He(1);function Dl(){var t=tt();return this.copyTo(t),t}function Pl(){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 kl(){return this.t==0?this.s:this.data[0]<<24>>24}function Ul(){return this.t==0?this.s:this.data[0]<<16>>16}function Kl(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Ol(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Ml(t){if(t==null&&(t=10),this.signum()==0||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=He(r),i=tt(),s=tt(),o="";for(this.divRemTo(n,i,s);i.signum()>0;)o=(r+s.intValue()).toString(t).substr(1)+o,i.divRemTo(n,i,s);return s.intValue().toString(t)+o}function Fl(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,s=0,o=0,a=0;a<t.length;++a){var u=N0(t,a);if(u<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}o=e*o+u,++s>=r&&(this.dMultiply(n),this.dAddOffset(o,0),s=0,o=0)}s>0&&(this.dMultiply(Math.pow(e,s)),this.dAddOffset(o,0)),i&&I.ZERO.subTo(this,this)}function Vl(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(I.ONE.shiftLeft(t-1),Vs,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(I.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function ql(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function Hl(t){return this.compareTo(t)==0}function zl(t){return this.compareTo(t)<0?this:t}function Gl(t){return this.compareTo(t)>0?this:t}function Yl(t,e,r){var n,i,s=Math.min(t.t,this.t);for(n=0;n<s;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=s;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=s;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function Wl(t,e){return t&e}function $l(t){var e=tt();return this.bitwiseTo(t,Wl,e),e}function Vs(t,e){return t|e}function Zl(t){var e=tt();return this.bitwiseTo(t,Vs,e),e}function D0(t,e){return t^e}function Ql(t){var e=tt();return this.bitwiseTo(t,D0,e),e}function P0(t,e){return t&~e}function Xl(t){var e=tt();return this.bitwiseTo(t,P0,e),e}function Jl(){for(var t=tt(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function jl(t){var e=tt();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function tp(t){var e=tt();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function ep(t){if(t==0)return-1;var e=0;return t&65535||(t>>=16,e+=16),t&255||(t>>=8,e+=8),t&15||(t>>=4,e+=4),t&3||(t>>=2,e+=2),t&1||++e,e}function rp(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+ep(this.data[t]);return this.s<0?this.t*this.DB:-1}function np(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function ip(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=np(this.data[r]^e);return t}function sp(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function op(t,e){var r=I.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function ap(t){return this.changeBit(t,Vs)}function up(t){return this.changeBit(t,P0)}function cp(t){return this.changeBit(t,D0)}function fp(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function hp(t){var e=tt();return this.addTo(t,e),e}function lp(t){var e=tt();return this.subTo(t,e),e}function pp(t){var e=tt();return this.multiplyTo(t,e),e}function dp(t){var e=tt();return this.divRemTo(t,e,null),e}function yp(t){var e=tt();return this.divRemTo(t,null,e),e}function gp(t){var e=tt(),r=tt();return this.divRemTo(t,e,r),new Array(e,r)}function mp(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function xp(t,e){if(t!=0){for(;this.t<=e;)this.data[this.t++]=0;for(this.data[e]+=t;this.data[e]>=this.DV;)this.data[e]-=this.DV,++e>=this.t&&(this.data[this.t++]=0),++this.data[e]}}function mn(){}function k0(t){return t}function bp(t,e,r){t.multiplyTo(e,r)}function vp(t,e){t.squareTo(e)}mn.prototype.convert=k0;mn.prototype.revert=k0;mn.prototype.mulTo=bp;mn.prototype.sqrTo=vp;function wp(t){return this.exp(t,new mn)}function Ep(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function Sp(t,e,r){--e;var n=r.t=this.t+t.t-e;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(e-this.t,0);n<t.t;++n)r.data[this.t+n-e]=this.am(e-n,t.data[n],r,0,0,this.t+n-e);r.clamp(),r.drShiftTo(1,r)}function Or(t){this.r2=tt(),this.q3=tt(),I.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function Bp(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=tt();return t.copyTo(e),this.reduce(e),e}function Ap(t){return t}function Ip(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)}function Cp(t,e){t.squareTo(e),this.reduce(e)}function Tp(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Or.prototype.convert=Bp;Or.prototype.revert=Ap;Or.prototype.reduce=Ip;Or.prototype.mulTo=Tp;Or.prototype.sqrTo=Cp;function _p(t,e){var r=t.bitLength(),n,i=He(1),s;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?s=new or(e):e.isEven()?s=new Or(e):s=new ar(e);var o=new Array,a=3,u=n-1,c=(1<<n)-1;if(o[1]=s.convert(this),n>1){var f=tt();for(s.sqrTo(o[1],f);a<=c;)o[a]=tt(),s.mulTo(f,o[a-2],o[a]),a+=2}var h=t.t-1,l,g=!0,p=tt(),d;for(r=ui(t.data[h])-1;h>=0;){for(r>=u?l=t.data[h]>>r-u&c:(l=(t.data[h]&(1<<r+1)-1)<<u-r,h>0&&(l|=t.data[h-1]>>this.DB+r-u)),a=n;!(l&1);)l>>=1,--a;if((r-=a)<0&&(r+=this.DB,--h),g)o[l].copyTo(i),g=!1;else{for(;a>1;)s.sqrTo(i,p),s.sqrTo(p,i),a-=2;a>0?s.sqrTo(i,p):(d=i,i=p,p=d),s.mulTo(p,o[l],i)}for(;h>=0&&!(t.data[h]&1<<r);)s.sqrTo(i,p),d=i,i=p,p=d,--r<0&&(r=this.DB-1,--h)}return s.revert(i)}function Rp(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),s=r.getLowestSetBit();if(s<0)return e;for(i<s&&(s=i),s>0&&(e.rShiftTo(s,e),r.rShiftTo(s,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return s>0&&r.lShiftTo(s,r),r}function Lp(t){if(t<=0)return 0;var e=this.DV%t,r=this.s<0?t-1:0;if(this.t>0)if(e==0)r=this.data[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this.data[n])%t;return r}function Np(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return I.ZERO;for(var r=t.clone(),n=this.clone(),i=He(1),s=He(0),o=He(0),a=He(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!s.isEven())&&(i.addTo(this,i),s.subTo(t,s)),i.rShiftTo(1,i)):s.isEven()||s.subTo(t,s),s.rShiftTo(1,s);for(;n.isEven();)n.rShiftTo(1,n),e?((!o.isEven()||!a.isEven())&&(o.addTo(this,o),a.subTo(t,a)),o.rShiftTo(1,o)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(o,i),s.subTo(a,s)):(n.subTo(r,n),e&&o.subTo(i,o),a.subTo(s,a))}if(n.compareTo(I.ONE)!=0)return I.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var re=[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],Dp=(1<<26)/re[re.length-1];function Pp(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=re[re.length-1]){for(e=0;e<re.length;++e)if(r.data[0]==re[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<re.length;){for(var n=re[e],i=e+1;i<re.length&&n<Dp;)n*=re[i++];for(n=r.modInt(n);e<i;)if(n%re[e++]==0)return!1}return r.millerRabin(t)}function kp(t){var e=this.subtract(I.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Up(),s,o=0;o<t;++o){do s=new I(this.bitLength(),i);while(s.compareTo(I.ONE)<=0||s.compareTo(e)>=0);var a=s.modPow(n,this);if(a.compareTo(I.ONE)!=0&&a.compareTo(e)!=0){for(var u=1;u++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(I.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function Up(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}I.prototype.chunkSize=Kl;I.prototype.toRadix=Ml;I.prototype.fromRadix=Fl;I.prototype.fromNumber=Vl;I.prototype.bitwiseTo=Yl;I.prototype.changeBit=op;I.prototype.addTo=fp;I.prototype.dMultiply=mp;I.prototype.dAddOffset=xp;I.prototype.multiplyLowerTo=Ep;I.prototype.multiplyUpperTo=Sp;I.prototype.modInt=Lp;I.prototype.millerRabin=kp;I.prototype.clone=Dl;I.prototype.intValue=Pl;I.prototype.byteValue=kl;I.prototype.shortValue=Ul;I.prototype.signum=Ol;I.prototype.toByteArray=ql;I.prototype.equals=Hl;I.prototype.min=zl;I.prototype.max=Gl;I.prototype.and=$l;I.prototype.or=Zl;I.prototype.xor=Ql;I.prototype.andNot=Xl;I.prototype.not=Jl;I.prototype.shiftLeft=jl;I.prototype.shiftRight=tp;I.prototype.getLowestSetBit=rp;I.prototype.bitCount=ip;I.prototype.testBit=sp;I.prototype.setBit=ap;I.prototype.clearBit=up;I.prototype.flipBit=cp;I.prototype.add=hp;I.prototype.subtract=lp;I.prototype.multiply=pp;I.prototype.divide=dp;I.prototype.remainder=yp;I.prototype.divideAndRemainder=gp;I.prototype.modPow=_p;I.prototype.modInverse=Np;I.prototype.pow=wp;I.prototype.gcd=Rp;I.prototype.isProbablePrime=Pp});var V0=ut((s2,F0)=>{var me=st();sr();bt();var O0=F0.exports=me.sha1=me.sha1||{};me.md.sha1=me.md.algorithms.sha1=O0;O0.create=function(){M0||Kp();var t=null,e=me.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,s=0;s<i;++s)n.fullMessageLength.push(0);return e=me.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,s){s==="utf8"&&(i=me.util.encodeUtf8(i));var o=i.length;n.messageLength+=o,o=[o/4294967296>>>0,o>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=o[1],o[1]=o[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,o[0]=o[1]/4294967296>>>0;return e.putBytes(i),K0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=me.util.createBuffer();i.putBytes(e.bytes());var s=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,o=s&n.blockLength-1;i.putBytes(qs.substr(0,n.blockLength-o));for(var a,u,c=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,u=a/4294967296>>>0,c+=u,i.putInt32(c>>>0),c=a>>>0;i.putInt32(c);var h={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};K0(h,r,i);var l=me.util.createBuffer();return l.putInt32(h.h0),l.putInt32(h.h1),l.putInt32(h.h2),l.putInt32(h.h3),l.putInt32(h.h4),l},n};var qs=null,M0=!1;function Kp(){qs="\x80",qs+=me.util.fillString("\0",64),M0=!0}function K0(t,e,r){for(var n,i,s,o,a,u,c,f,h=r.length();h>=64;){for(i=t.h0,s=t.h1,o=t.h2,a=t.h3,u=t.h4,f=0;f<16;++f)n=r.getInt32(),e[f]=n,c=a^s&(o^a),n=(i<<5|i>>>27)+c+u+1518500249+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<20;++f)n=e[f-3]^e[f-8]^e[f-14]^e[f-16],n=n<<1|n>>>31,e[f]=n,c=a^s&(o^a),n=(i<<5|i>>>27)+c+u+1518500249+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<32;++f)n=e[f-3]^e[f-8]^e[f-14]^e[f-16],n=n<<1|n>>>31,e[f]=n,c=s^o^a,n=(i<<5|i>>>27)+c+u+1859775393+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<40;++f)n=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[f]=n,c=s^o^a,n=(i<<5|i>>>27)+c+u+1859775393+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<60;++f)n=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[f]=n,c=s&o|a&(s^o),n=(i<<5|i>>>27)+c+u+2400959708+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;for(;f<80;++f)n=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[f]=n,c=s^o^a,n=(i<<5|i>>>27)+c+u+3395469782+n,u=a,a=o,o=(s<<30|s>>>2)>>>0,s=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+s|0,t.h2=t.h2+o|0,t.h3=t.h3+a|0,t.h4=t.h4+u|0,h-=64}}});var z0=ut((o2,H0)=>{var xe=st();bt();gn();V0();var q0=H0.exports=xe.pkcs1=xe.pkcs1||{};q0.encode_rsa_oaep=function(t,e,r){var n,i,s,o;typeof r=="string"?(n=r,i=arguments[3]||void 0,s=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,s=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md)),s?s.start():s=xe.md.sha1.create(),o||(o=s);var a=Math.ceil(t.n.bitLength()/8),u=a-2*s.digestLength-2;if(e.length>u){var c=new Error("RSAES-OAEP input message length is too long.");throw c.length=e.length,c.maxLength=u,c}n||(n=""),s.update(n,"raw");for(var f=s.digest(),h="",l=u-e.length,g=0;g<l;g++)h+="\0";var p=f.getBytes()+h+""+e;if(!i)i=xe.random.getBytes(s.digestLength);else if(i.length!==s.digestLength){var c=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw c.seedLength=i.length,c.digestLength=s.digestLength,c}var d=fi(i,a-s.digestLength-1,o),y=xe.util.xorBytes(p,d,p.length),m=fi(y,s.digestLength,o),w=xe.util.xorBytes(i,m,i.length);return"\0"+w+y};q0.decode_rsa_oaep=function(t,e,r){var n,i,s;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&&(s=r.mgf1.md));var o=Math.ceil(t.n.bitLength()/8);if(e.length!==o){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=e.length,y.expectedLength=o,y}if(i===void 0?i=xe.md.sha1.create():i.start(),s||(s=i),o<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(),u=e.charAt(0),c=e.substring(1,i.digestLength+1),f=e.substring(1+i.digestLength),h=fi(f,i.digestLength,s),l=xe.util.xorBytes(c,h,c.length),g=fi(l,o-i.digestLength-1,s),p=xe.util.xorBytes(f,g,f.length),d=p.substring(0,i.digestLength),y=u!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==d.charAt(m);for(var w=1,b=i.digestLength,_=i.digestLength;_<p.length;_++){var E=p.charCodeAt(_),S=E&1^1,L=w?65534:0;y|=E&L,w=w&S,b+=w}if(y||p.charCodeAt(b)!==1)throw new Error("Invalid RSAES-OAEP padding.");return p.substring(b+1)};function fi(t,e,r){r||(r=xe.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),s=0;s<i;++s){var o=String.fromCharCode(s>>24&255,s>>16&255,s>>8&255,s&255);r.start(),r.update(t+o),n+=r.digest().getBytes()}return n.substring(0,e)}});var G0=ut((a2,Hs)=>{var ze=st();bt();ci();gn();(function(){if(ze.prime){Hs.exports=ze.prime;return}var t=Hs.exports=ze.prime=ze.prime||{},e=ze.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(h,l){return h|l};t.generateProbablePrime=function(h,l,g){typeof l=="function"&&(g=l,l={}),l=l||{};var p=l.algorithm||"PRIMEINC";typeof p=="string"&&(p={name:p}),p.options=p.options||{};var d=l.prng||ze.random,y={nextBytes:function(m){for(var w=d.getBytesSync(m.length),b=0;b<m.length;++b)m[b]=w.charCodeAt(b)}};if(p.name==="PRIMEINC")return s(h,y,p.options,g);throw new Error("Invalid prime generation algorithm: "+p.name)};function s(h,l,g,p){return"workers"in g?u(h,l,g,p):o(h,l,g,p)}function o(h,l,g,p){var d=c(h,l),y=0,m=f(d.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var w=10;"maxBlockTime"in g&&(w=g.maxBlockTime),a(d,h,l,y,m,w,p)}function a(h,l,g,p,d,y,m){var w=+new Date;do{if(h.bitLength()>l&&(h=c(l,g)),h.isProbablePrime(d))return m(null,h);h.dAddOffset(r[p++%8],0)}while(y<0||+new Date-w<y);ze.util.setImmediate(function(){a(h,l,g,p,d,y,m)})}function u(h,l,g,p){if(typeof Worker>"u")return o(h,l,g,p);var d=c(h,l),y=g.workers,m=g.workLoad||100,w=m*30/8,b=g.workerScript||"forge/prime.worker.js";if(y===-1)return ze.util.estimateCores(function(E,S){E&&(S=2),y=S-1,_()});_();function _(){y=Math.max(1,y);for(var E=[],S=0;S<y;++S)E[S]=new Worker(b);for(var L=y,S=0;S<y;++S)E[S].addEventListener("message",z);var N=!1;function z(H){if(!N){--L;var V=H.data;if(V.found){for(var Q=0;Q<E.length;++Q)E[Q].terminate();return N=!0,p(null,new e(V.prime,16))}d.bitLength()>h&&(d=c(h,l));var ot=d.toString(16);H.target.postMessage({hex:ot,workLoad:m}),d.dAddOffset(w,0)}}}}function c(h,l){var g=new e(h,l),p=h-1;return g.testBit(p)||g.bitwiseTo(e.ONE.shiftLeft(p),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}function f(h){return h<=100?27:h<=150?18:h<=200?15:h<=250?12:h<=300?9:h<=350?8:h<=400?7:h<=500?6:h<=600?5:h<=800?4:h<=1250?3:2}})()});var li=ut((u2,J0)=>{var F=st();yn();ci();jn();z0();G0();gn();bt();typeof j>"u"&&(j=F.jsbn.BigInteger);var j,zs=F.util.isNodejs?ni():null,v=F.asn1,Jt=F.util;F.pki=F.pki||{};J0.exports=F.pki.rsa=F.rsa=F.rsa||{};var G=F.pki,Op=[6,4,2,4,2,4,6,2],Mp={name:"PrivateKeyInfo",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:v.Class.UNIVERSAL,type:v.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:v.Class.UNIVERSAL,type:v.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Fp={name:"RSAPrivateKey",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Vp={name:"RSAPublicKey",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:v.Class.UNIVERSAL,type:v.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},qp=F.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:v.Class.UNIVERSAL,type:v.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:v.Class.UNIVERSAL,type:v.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Hp={name:"DigestInfo",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:v.Class.UNIVERSAL,type:v.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:v.Class.UNIVERSAL,type:v.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:v.Class.UNIVERSAL,type:v.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:v.Class.UNIVERSAL,type:v.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},zp=function(t){var e;if(t.algorithm in G.oids)e=G.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=v.oidToDer(e).getBytes(),i=v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[]),s=v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[]);s.value.push(v.create(v.Class.UNIVERSAL,v.Type.OID,!1,n)),s.value.push(v.create(v.Class.UNIVERSAL,v.Type.NULL,!1,""));var o=v.create(v.Class.UNIVERSAL,v.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(s),i.value.push(o),v.toDer(i).getBytes()},Q0=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(j.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(j.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new j(F.util.bytesToHex(F.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(j.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),s=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(s)<0;)i=i.add(e.p);var o=i.subtract(s).multiply(e.qInv).mod(e.p).multiply(e.q).add(s);return o=o.multiply(n.modInverse(e.n)).mod(e.n),o};G.rsa.encrypt=function(t,e,r){var n=r,i,s=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=X0(t,e,r)):(i=F.util.createBuffer(),i.putBytes(t));for(var o=new j(i.toHex(),16),a=Q0(o,e,n),u=a.toString(16),c=F.util.createBuffer(),f=s-Math.ceil(u.length/2);f>0;)c.putByte(0),--f;return c.putBytes(F.util.hexToBytes(u)),c.getBytes()};G.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var s=new Error("Encrypted message length is invalid.");throw s.length=t.length,s.expected=i,s}var o=new j(F.util.createBuffer(t).toHex(),16);if(o.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Q0(o,e,r),u=a.toString(16),c=F.util.createBuffer(),f=i-Math.ceil(u.length/2);f>0;)c.putByte(0),--f;return c.putBytes(F.util.hexToBytes(u)),n!==!1?hi(c.getBytes(),e,r):c.getBytes()};G.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||F.random,i={nextBytes:function(a){for(var u=n.getBytesSync(a.length),c=0;c<a.length;++c)a[c]=u.charCodeAt(c)}},s=r.algorithm||"PRIMEINC",o;if(s==="PRIMEINC")o={algorithm:s,state:0,bits:t,rng:i,eInt:e||65537,e:new j(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},o.e.fromInt(o.eInt);else throw new Error("Invalid key generation algorithm: "+s);return o};G.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new j(null);r.fromInt(30);for(var n=0,i=function(h,l){return h|l},s=+new Date,o,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var u=t.p===null?t.pBits:t.qBits,c=u-1;t.pqState===0?(t.num=new j(u,t.rng),t.num.testBit(c)||t.num.bitwiseTo(j.ONE.shiftLeft(c),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>u?t.pqState=0:t.num.isProbablePrime(Yp(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Op[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(j.ONE),t.q1=t.q.subtract(j.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(j.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var f=t.e.modInverse(t.phi);t.keys={privateKey:G.rsa.setPrivateKey(t.n,t.e,f,t.p,t.q,f.mod(t.p1),f.mod(t.q1),t.q.modInverse(t.p)),publicKey:G.rsa.setPublicKey(t.n,t.e)}}o=+new Date,a+=o-s,s=o}return t.keys!==null};G.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!F.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(Y0("generateKeyPair"))return zs.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,u,c){if(a)return n(a);n(null,{privateKey:G.privateKeyFromPem(c),publicKey:G.publicKeyFromPem(u)})});if(W0("generateKey")&&W0("exportKey"))return Jt.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Z0(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return Jt.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var u=G.privateKeyFromAsn1(v.fromDer(F.util.createBuffer(a)));n(null,{privateKey:u,publicKey:G.setRsaPublicKey(u.n,u.e)})}});if($0("generateKey")&&$0("exportKey")){var i=Jt.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Z0(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var u=a.target.result,c=Jt.globalScope.msCrypto.subtle.exportKey("pkcs8",u.privateKey);c.oncomplete=function(f){var h=f.target.result,l=G.privateKeyFromAsn1(v.fromDer(F.util.createBuffer(h)));n(null,{privateKey:l,publicKey:G.setRsaPublicKey(l.n,l.e)})},c.onerror=function(f){n(f)}},i.onerror=function(a){n(a)};return}}else if(Y0("generateKeyPairSync")){var s=zs.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:G.privateKeyFromPem(s.privateKey),publicKey:G.publicKeyFromPem(s.publicKey)}}}var o=G.rsa.createKeyPairGenerationState(t,e,r);if(!n)return G.rsa.stepKeyPairGenerationState(o,0),o.keys;Gp(o,r,n)};G.setRsaPublicKey=G.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,s){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,u,c){return X0(a,u,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,u){return F.pkcs1.encode_rsa_oaep(u,a,s)}};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 o=i.encode(n,r,!0);return G.rsa.encrypt(o,r,!0)},r.verify=function(n,i,s,o){typeof s=="string"?s=s.toUpperCase():s===void 0&&(s="RSASSA-PKCS1-V1_5"),o===void 0&&(o={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in o||(o._parseAllDigestBytes=!0),s==="RSASSA-PKCS1-V1_5"?s={verify:function(u,c){c=hi(c,r,!0);var f=v.fromDer(c,{parseAllBytes:o._parseAllDigestBytes}),h={},l=[];if(!v.validate(f,Hp,h,l)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=l,g}var p=v.derToOid(h.algorithmIdentifier);if(!(p===F.oids.md2||p===F.oids.md5||p===F.oids.sha1||p===F.oids.sha224||p===F.oids.sha256||p===F.oids.sha384||p===F.oids.sha512||p===F.oids["sha512-224"]||p===F.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=p,g}if((p===F.oids.md2||p===F.oids.md5)&&!("parameters"in h))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return u===h.digest}}:(s==="NONE"||s==="NULL"||s===null)&&(s={verify:function(u,c){return c=hi(c,r,!0),u===c}});var a=G.rsa.decrypt(i,r,!0,!1);return s.verify(n,a,r.n.bitLength())},r};G.setRsaPrivateKey=G.rsa.setPrivateKey=function(t,e,r,n,i,s,o,a){var u={n:t,e,d:r,p:n,q:i,dP:s,dQ:o,qInv:a};return u.decrypt=function(c,f,h){typeof f=="string"?f=f.toUpperCase():f===void 0&&(f="RSAES-PKCS1-V1_5");var l=G.rsa.decrypt(c,u,!1,!1);if(f==="RSAES-PKCS1-V1_5")f={decode:hi};else if(f==="RSA-OAEP"||f==="RSAES-OAEP")f={decode:function(g,p){return F.pkcs1.decode_rsa_oaep(p,g,h)}};else if(["RAW","NONE","NULL",null].indexOf(f)!==-1)f={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+f+'".');return f.decode(l,u,!1)},u.sign=function(c,f){var h=!1;typeof f=="string"&&(f=f.toUpperCase()),f===void 0||f==="RSASSA-PKCS1-V1_5"?(f={encode:zp},h=1):(f==="NONE"||f==="NULL"||f===null)&&(f={encode:function(){return c}},h=1);var l=f.encode(c,u.n.bitLength());return G.rsa.encrypt(l,u,h)},u};G.wrapRsaPrivateKey=function(t){return v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,v.integerToDer(0).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.OID,!1,v.oidToDer(G.oids.rsaEncryption).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.NULL,!1,"")]),v.create(v.Class.UNIVERSAL,v.Type.OCTETSTRING,!1,v.toDer(t).getBytes())])};G.privateKeyFromAsn1=function(t){var e={},r=[];if(v.validate(t,Mp,e,r)&&(t=v.fromDer(F.util.createBuffer(e.privateKey))),e={},r=[],!v.validate(t,Fp,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,s,o,a,u,c,f,h;return i=F.util.createBuffer(e.privateKeyModulus).toHex(),s=F.util.createBuffer(e.privateKeyPublicExponent).toHex(),o=F.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=F.util.createBuffer(e.privateKeyPrime1).toHex(),u=F.util.createBuffer(e.privateKeyPrime2).toHex(),c=F.util.createBuffer(e.privateKeyExponent1).toHex(),f=F.util.createBuffer(e.privateKeyExponent2).toHex(),h=F.util.createBuffer(e.privateKeyCoefficient).toHex(),G.setRsaPrivateKey(new j(i,16),new j(s,16),new j(o,16),new j(a,16),new j(u,16),new j(c,16),new j(f,16),new j(h,16))};G.privateKeyToAsn1=G.privateKeyToRSAPrivateKey=function(t){return v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,v.integerToDer(0).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.n)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.e)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.d)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.p)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.q)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.dP)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.dQ)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.qInv))])};G.publicKeyFromAsn1=function(t){var e={},r=[];if(v.validate(t,qp,e,r)){var n=v.derToOid(e.publicKeyOid);if(n!==G.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!v.validate(t,Vp,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var s=F.util.createBuffer(e.publicKeyModulus).toHex(),o=F.util.createBuffer(e.publicKeyExponent).toHex();return G.setRsaPublicKey(new j(s,16),new j(o,16))};G.publicKeyToAsn1=G.publicKeyToSubjectPublicKeyInfo=function(t){return v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.OID,!1,v.oidToDer(G.oids.rsaEncryption).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.NULL,!1,"")]),v.create(v.Class.UNIVERSAL,v.Type.BITSTRING,!1,[G.publicKeyToRSAPublicKey(t)])])};G.publicKeyToRSAPublicKey=function(t){return v.create(v.Class.UNIVERSAL,v.Type.SEQUENCE,!0,[v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.n)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,be(t.e))])};function X0(t,e,r){var n=F.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var s=new Error("Message is too long for PKCS#1 v1.5 padding.");throw s.length=t.length,s.max=i-11,s}n.putByte(0),n.putByte(r);var o=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var u=0;u<o;++u)n.putByte(a)}else for(;o>0;){for(var c=0,f=F.random.getBytes(o),u=0;u<o;++u)a=f.charCodeAt(u),a===0?++c:n.putByte(a);o=c}return n.putByte(0),n.putBytes(t),n}function hi(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),s=F.util.createBuffer(t),o=s.getByte(),a=s.getByte();if(o!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var u=0;if(a===0){u=i-3-n;for(var c=0;c<u;++c)if(s.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(u=0;s.length()>1;){if(s.getByte()!==255){--s.read;break}++u}else if(a===2)for(u=0;s.length()>1;){if(s.getByte()===0){--s.read;break}++u}var f=s.getByte();if(f!==0||u!==i-3-s.length())throw new Error("Encryption block is invalid.");return s.getBytes()}function Gp(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){s(t.pBits,function(a,u){if(a)return r(a);if(t.p=u,t.q!==null)return o(a,t.q);s(t.qBits,o)})}function s(a,u){F.prime.generateProbablePrime(a,n,u)}function o(a,u){if(a)return r(a);if(t.q=u,t.p.compareTo(t.q)<0){var c=t.p;t.p=t.q,t.q=c}if(t.p.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)!==0){t.p=null,i();return}if(t.q.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)!==0){t.q=null,s(t.qBits,o);return}if(t.p1=t.p.subtract(j.ONE),t.q1=t.q.subtract(j.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(j.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,s(t.qBits,o);return}var f=t.e.modInverse(t.phi);t.keys={privateKey:G.rsa.setPrivateKey(t.n,t.e,f,t.p,t.q,f.mod(t.p1),f.mod(t.q1),t.q.modInverse(t.p)),publicKey:G.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function be(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=F.util.hexToBytes(e);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function Yp(t){return t<=100?27:t<=150?18:t<=200?15:t<=250?12:t<=300?9:t<=350?8:t<=400?7:t<=500?6:t<=600?5:t<=800?4:t<=1250?3:2}function Y0(t){return F.util.isNodejs&&typeof zs[t]=="function"}function W0(t){return typeof Jt.globalScope<"u"&&typeof Jt.globalScope.crypto=="object"&&typeof Jt.globalScope.crypto.subtle=="object"&&typeof Jt.globalScope.crypto.subtle[t]=="function"}function $0(t){return typeof Jt.globalScope<"u"&&typeof Jt.globalScope.msCrypto=="object"&&typeof Jt.globalScope.msCrypto.subtle=="object"&&typeof Jt.globalScope.msCrypto.subtle[t]=="function"}function Z0(t){for(var e=F.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var iu=ut((c2,nu)=>{var U=st();Qn();yn();c0();sr();jn();ks();g0();gn();T0();li();bt();typeof j0>"u"&&(j0=U.jsbn.BigInteger);var j0,B=U.asn1,Y=U.pki=U.pki||{};nu.exports=Y.pbe=U.pbe=U.pbe||{};var ur=Y.oids,Wp={name:"EncryptedPrivateKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},$p={name:"PBES2Algorithms",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},Zp={name:"pkcs-12PbeParams",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"iterations"}]};Y.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=U.random.getBytesSync(r.saltSize),i=r.count,s=B.integerToDer(i),o,a,u;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var c,f,h;switch(r.algorithm){case"aes128":o=16,c=16,f=ur["aes128-CBC"],h=U.aes.createEncryptionCipher;break;case"aes192":o=24,c=16,f=ur["aes192-CBC"],h=U.aes.createEncryptionCipher;break;case"aes256":o=32,c=16,f=ur["aes256-CBC"],h=U.aes.createEncryptionCipher;break;case"des":o=8,c=8,f=ur.desCBC,h=U.des.createEncryptionCipher;break;default:var l=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw l.algorithm=r.algorithm,l}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),p=ru(g),d=U.pkcs5.pbkdf2(e,n,i,o,p),y=U.random.getBytesSync(c),m=h(d);m.start(y),m.update(B.toDer(t)),m.finish(),u=m.output.getBytes();var w=Qp(n,s,o,g);a=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(ur.pkcs5PBES2).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(ur.pkcs5PBKDF2).getBytes()),w]),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(f).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){o=24;var b=new U.util.ByteBuffer(n),d=Y.pbe.generatePkcs12Key(e,b,1,i,o),y=Y.pbe.generatePkcs12Key(e,b,2,i,o),m=U.des.createEncryptionCipher(d);m.start(y),m.update(B.toDer(t)),m.finish(),u=m.output.getBytes(),a=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(ur["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,n),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,s.getBytes())])])}else{var l=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw l.algorithm=r.algorithm,l}var _=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[a,B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,u)]);return _};Y.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!B.validate(t,Wp,n,i)){var s=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw s.errors=i,s}var o=B.derToOid(n.encryptionOid),a=Y.pbe.getCipher(o,n.encryptionParams,e),u=U.util.createBuffer(n.encryptedData);return a.update(u),a.finish()&&(r=B.fromDer(a.output)),r};Y.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:B.toDer(t).getBytes()};return U.pem.encode(r,{maxline:e})};Y.encryptedPrivateKeyFromPem=function(t){var e=U.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return B.fromDer(e.body)};Y.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=Y.wrapRsaPrivateKey(Y.privateKeyToAsn1(t));return n=Y.encryptPrivateKeyInfo(n,e,r),Y.encryptedPrivateKeyToPem(n)}var i,s,o,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",o=16,s=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",o=24,s=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",o=32,s=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",o=24,s=U.random.getBytesSync(8),a=U.des.createEncryptionCipher;break;case"des":i="DES-CBC",o=8,s=U.random.getBytesSync(8),a=U.des.createEncryptionCipher;break;default:var u=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw u.algorithm=r.algorithm,u}var c=U.pbe.opensslDeriveBytes(e,s.substr(0,8),o),f=a(c);f.start(s),f.update(B.toDer(Y.privateKeyToAsn1(t))),f.finish();var h={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:U.util.bytesToHex(s).toUpperCase()},body:f.output.getBytes()};return U.pem.encode(h)};Y.decryptRsaPrivateKey=function(t,e){var r=null,n=U.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var s,o;switch(n.dekInfo.algorithm){case"DES-CBC":s=8,o=U.des.createDecryptionCipher;break;case"DES-EDE3-CBC":s=24,o=U.des.createDecryptionCipher;break;case"AES-128-CBC":s=16,o=U.aes.createDecryptionCipher;break;case"AES-192-CBC":s=24,o=U.aes.createDecryptionCipher;break;case"AES-256-CBC":s=32,o=U.aes.createDecryptionCipher;break;case"RC2-40-CBC":s=5,o=function(h){return U.rc2.createDecryptionCipher(h,40)};break;case"RC2-64-CBC":s=8,o=function(h){return U.rc2.createDecryptionCipher(h,64)};break;case"RC2-128-CBC":s=16,o=function(h){return U.rc2.createDecryptionCipher(h,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=U.util.hexToBytes(n.dekInfo.parameters),u=U.pbe.opensslDeriveBytes(e,a.substr(0,8),s),c=o(u);if(c.start(a),c.update(U.util.createBuffer(n.body)),c.finish())r=c.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=Y.decryptPrivateKeyInfo(B.fromDer(r),e):r=B.fromDer(r),r!==null&&(r=Y.privateKeyFromAsn1(r)),r};Y.pbe.generatePkcs12Key=function(t,e,r,n,i,s){var o,a;if(typeof s>"u"||s===null){if(!("sha1"in U.md))throw new Error('"sha1" hash algorithm unavailable.');s=U.md.sha1.create()}var u=s.digestLength,c=s.blockLength,f=new U.util.ByteBuffer,h=new U.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)h.putInt16(t.charCodeAt(a));h.putInt16(0)}var l=h.length(),g=e.length(),p=new U.util.ByteBuffer;p.fillWithByte(r,c);var d=c*Math.ceil(g/c),y=new U.util.ByteBuffer;for(a=0;a<d;a++)y.putByte(e.at(a%g));var m=c*Math.ceil(l/c),w=new U.util.ByteBuffer;for(a=0;a<m;a++)w.putByte(h.at(a%l));var b=y;b.putBuffer(w);for(var _=Math.ceil(i/u),E=1;E<=_;E++){var S=new U.util.ByteBuffer;S.putBytes(p.bytes()),S.putBytes(b.bytes());for(var L=0;L<n;L++)s.start(),s.update(S.getBytes()),S=s.digest();var N=new U.util.ByteBuffer;for(a=0;a<c;a++)N.putByte(S.at(a%u));var z=Math.ceil(g/c)+Math.ceil(l/c),H=new U.util.ByteBuffer;for(o=0;o<z;o++){var V=new U.util.ByteBuffer(b.getBytes(c)),Q=511;for(a=N.length()-1;a>=0;a--)Q=Q>>8,Q+=N.at(a)+V.at(a),V.setAt(a,Q&255);H.putBuffer(V)}b=H,f.putBuffer(S)}return f.truncate(f.length()-i),f};Y.pbe.getCipher=function(t,e,r){switch(t){case Y.oids.pkcs5PBES2:return Y.pbe.getCipherForPBES2(t,e,r);case Y.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case Y.oids["pbewithSHAAnd40BitRC2-CBC"]:return Y.pbe.getCipherForPKCS12PBE(t,e,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=t,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};Y.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!B.validate(e,$p,n,i)){var s=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw s.errors=i,s}if(t=B.derToOid(n.kdfOid),t!==Y.oids.pkcs5PBKDF2){var s=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw s.oid=t,s.supportedOids=["pkcs5PBKDF2"],s}if(t=B.derToOid(n.encOid),t!==Y.oids["aes128-CBC"]&&t!==Y.oids["aes192-CBC"]&&t!==Y.oids["aes256-CBC"]&&t!==Y.oids["des-EDE3-CBC"]&&t!==Y.oids.desCBC){var s=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw s.oid=t,s.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],s}var o=n.kdfSalt,a=U.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var u,c;switch(Y.oids[t]){case"aes128-CBC":u=16,c=U.aes.createDecryptionCipher;break;case"aes192-CBC":u=24,c=U.aes.createDecryptionCipher;break;case"aes256-CBC":u=32,c=U.aes.createDecryptionCipher;break;case"des-EDE3-CBC":u=24,c=U.des.createDecryptionCipher;break;case"desCBC":u=8,c=U.des.createDecryptionCipher;break}var f=eu(n.prfOid),h=U.pkcs5.pbkdf2(r,o,a,u,f),l=n.encIv,g=c(h);return g.start(l),g};Y.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!B.validate(e,Zp,n,i)){var s=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw s.errors=i,s}var o=U.util.createBuffer(n.salt),a=U.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var u,c,f;switch(t){case Y.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:u=24,c=8,f=U.des.startDecrypting;break;case Y.oids["pbewithSHAAnd40BitRC2-CBC"]:u=5,c=8,f=function(d,y){var m=U.rc2.createDecryptionCipher(d,40);return m.start(y,null),m};break;default:var s=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw s.oid=t,s}var h=eu(n.prfOid),l=Y.pbe.generatePkcs12Key(r,o,1,a,u,h);h.start();var g=Y.pbe.generatePkcs12Key(r,o,2,a,c,h);return f(l,g)};Y.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in U.md))throw new Error('"md5" hash algorithm unavailable.');n=U.md.md5.create()}e===null&&(e="");for(var i=[tu(n,t+e)],s=16,o=1;s<r;++o,s+=16)i.push(tu(n,i[o-1]+t+e));return i.join("").substr(0,r)};function tu(t,e){return t.start().update(e).digest().getBytes()}function eu(t){var e;if(!t)e="hmacWithSHA1";else if(e=Y.oids[B.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return ru(e)}function ru(t){var e=U.md;switch(t){case"hmacWithSHA224":e=U.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function Qp(t,e,r,n){var i=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,t),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,U.util.hexToBytes(r.toString(16))),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(Y.oids[n]).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,"")])),i}});var ec=ut((yv,tc)=>{var lt=st();sr();bt();var An=tc.exports=lt.sha512=lt.sha512||{};lt.md.sha512=lt.md.algorithms.sha512=An;var Ju=lt.sha384=lt.sha512.sha384=lt.sha512.sha384||{};Ju.create=function(){return An.create("SHA-384")};lt.md.sha384=lt.md.algorithms.sha384=Ju;lt.sha512.sha256=lt.sha512.sha256||{create:function(){return An.create("SHA-512/256")}};lt.md["sha512/256"]=lt.md.algorithms["sha512/256"]=lt.sha512.sha256;lt.sha512.sha224=lt.sha512.sha224||{create:function(){return An.create("SHA-512/224")}};lt.md["sha512/224"]=lt.md.algorithms["sha512/224"]=lt.sha512.sha224;An.create=function(t){if(ju||my(),typeof t>"u"&&(t="SHA-512"),!(t in yr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=yr[t],r=null,n=lt.util.createBuffer(),i=new Array(80),s=0;s<80;++s)i[s]=new Array(2);var o=64;switch(t){case"SHA-384":o=48;break;case"SHA-512/256":o=32;break;case"SHA-512/224":o=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:o,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var u=a.messageLengthSize/4,c=0;c<u;++c)a.fullMessageLength.push(0);n=lt.util.createBuffer(),r=new Array(e.length);for(var c=0;c<e.length;++c)r[c]=e[c].slice(0);return a},a.start(),a.update=function(u,c){c==="utf8"&&(u=lt.util.encodeUtf8(u));var f=u.length;a.messageLength+=f,f=[f/4294967296>>>0,f>>>0];for(var h=a.fullMessageLength.length-1;h>=0;--h)a.fullMessageLength[h]+=f[1],f[1]=f[0]+(a.fullMessageLength[h]/4294967296>>>0),a.fullMessageLength[h]=a.fullMessageLength[h]>>>0,f[0]=f[1]/4294967296>>>0;return n.putBytes(u),Xu(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var u=lt.util.createBuffer();u.putBytes(n.bytes());var c=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,f=c&a.blockLength-1;u.putBytes(Io.substr(0,a.blockLength-f));for(var h,l,g=a.fullMessageLength[0]*8,p=0;p<a.fullMessageLength.length-1;++p)h=a.fullMessageLength[p+1]*8,l=h/4294967296>>>0,g+=l,u.putInt32(g>>>0),g=h>>>0;u.putInt32(g);for(var d=new Array(r.length),p=0;p<r.length;++p)d[p]=r[p].slice(0);Xu(d,i,u);var y=lt.util.createBuffer(),m;t==="SHA-512"?m=d.length:t==="SHA-384"?m=d.length-2:m=d.length-4;for(var p=0;p<m;++p)y.putInt32(d[p][0]),(p!==m-1||t!=="SHA-512/224")&&y.putInt32(d[p][1]);return y},a};var Io=null,ju=!1,Co=null,yr=null;function my(){Io="\x80",Io+=lt.util.fillString("\0",128),Co=[[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]],yr={},yr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],yr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],yr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],yr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],ju=!0}function Xu(t,e,r){for(var n,i,s,o,a,u,c,f,h,l,g,p,d,y,m,w,b,_,E,S,L,N,z,H,V,Q,ot,Nt,C,P,R,D,A,K,M,q=r.length();q>=128;){for(C=0;C<16;++C)e[C][0]=r.getInt32()>>>0,e[C][1]=r.getInt32()>>>0;for(;C<80;++C)D=e[C-2],P=D[0],R=D[1],n=((P>>>19|R<<13)^(R>>>29|P<<3)^P>>>6)>>>0,i=((P<<13|R>>>19)^(R<<3|P>>>29)^(P<<26|R>>>6))>>>0,K=e[C-15],P=K[0],R=K[1],s=((P>>>1|R<<31)^(P>>>8|R<<24)^P>>>7)>>>0,o=((P<<31|R>>>1)^(P<<24|R>>>8)^(P<<25|R>>>7))>>>0,A=e[C-7],M=e[C-16],R=i+A[1]+o+M[1],e[C][0]=n+A[0]+s+M[0]+(R/4294967296>>>0)>>>0,e[C][1]=R>>>0;for(d=t[0][0],y=t[0][1],m=t[1][0],w=t[1][1],b=t[2][0],_=t[2][1],E=t[3][0],S=t[3][1],L=t[4][0],N=t[4][1],z=t[5][0],H=t[5][1],V=t[6][0],Q=t[6][1],ot=t[7][0],Nt=t[7][1],C=0;C<80;++C)c=((L>>>14|N<<18)^(L>>>18|N<<14)^(N>>>9|L<<23))>>>0,f=((L<<18|N>>>14)^(L<<14|N>>>18)^(N<<23|L>>>9))>>>0,h=(V^L&(z^V))>>>0,l=(Q^N&(H^Q))>>>0,a=((d>>>28|y<<4)^(y>>>2|d<<30)^(y>>>7|d<<25))>>>0,u=((d<<4|y>>>28)^(y<<30|d>>>2)^(y<<25|d>>>7))>>>0,g=(d&m|b&(d^m))>>>0,p=(y&w|_&(y^w))>>>0,R=Nt+f+l+Co[C][1]+e[C][1],n=ot+c+h+Co[C][0]+e[C][0]+(R/4294967296>>>0)>>>0,i=R>>>0,R=u+p,s=a+g+(R/4294967296>>>0)>>>0,o=R>>>0,ot=V,Nt=Q,V=z,Q=H,z=L,H=N,R=S+i,L=E+n+(R/4294967296>>>0)>>>0,N=R>>>0,E=b,S=_,b=m,_=w,m=d,w=y,R=i+o,d=n+s+(R/4294967296>>>0)>>>0,y=R>>>0;R=t[0][1]+y,t[0][0]=t[0][0]+d+(R/4294967296>>>0)>>>0,t[0][1]=R>>>0,R=t[1][1]+w,t[1][0]=t[1][0]+m+(R/4294967296>>>0)>>>0,t[1][1]=R>>>0,R=t[2][1]+_,t[2][0]=t[2][0]+b+(R/4294967296>>>0)>>>0,t[2][1]=R>>>0,R=t[3][1]+S,t[3][0]=t[3][0]+E+(R/4294967296>>>0)>>>0,t[3][1]=R>>>0,R=t[4][1]+N,t[4][0]=t[4][0]+L+(R/4294967296>>>0)>>>0,t[4][1]=R>>>0,R=t[5][1]+H,t[5][0]=t[5][0]+z+(R/4294967296>>>0)>>>0,t[5][1]=R>>>0,R=t[6][1]+Q,t[6][0]=t[6][0]+V+(R/4294967296>>>0)>>>0,t[6][1]=R>>>0,R=t[7][1]+Nt,t[7][0]=t[7][0]+ot+(R/4294967296>>>0)>>>0,t[7][1]=R>>>0,q-=128}}});var r1={};Et(r1,{PubSubBaseProtocol:()=>qo});var i1=Symbol.for("@libp2p/connection");var o1=Symbol.for("@libp2p/content-routing");var c1=Symbol.for("@libp2p/peer-discovery");var Jo=Symbol.for("@libp2p/peer-id");var l1=Symbol.for("@libp2p/peer-routing");var Xr;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(Xr||(Xr={}));var g1=Symbol.for("@libp2p/transport");var jo;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(jo||(jo={}));var O=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var vr=class extends EventTarget{#t=new Map;listenerCount(e){let r=this.#t.get(e);return r==null?0:r.length}addEventListener(e,r,n){super.addEventListener(e,r,n);let i=this.#t.get(e);i==null&&(i=[],this.#t.set(e,i)),i.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,r,n){super.removeEventListener(e.toString(),r??null,n);let i=this.#t.get(e);i!=null&&(i=i.filter(({callback:s})=>s!==r),this.#t.set(e,i))}dispatchEvent(e){let r=super.dispatchEvent(e),n=this.#t.get(e.type);return n==null||(n=n.filter(({once:i})=>!i),this.#t.set(e.type,n)),r}safeDispatchEvent(e,r){return this.dispatchEvent(new le(e,r))}},Mi=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},le=globalThis.CustomEvent??Mi;var zi={};Et(zi,{base58btc:()=>qt,base58flickr:()=>ef});function Qc(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var s=t.charAt(i),o=s.charCodeAt(0);if(r[o]!==255)throw new TypeError(s+" is ambiguous");r[o]=i}var a=t.length,u=t.charAt(0),c=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function h(p){if(p instanceof Uint8Array||(ArrayBuffer.isView(p)?p=new Uint8Array(p.buffer,p.byteOffset,p.byteLength):Array.isArray(p)&&(p=Uint8Array.from(p))),!(p instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(p.length===0)return"";for(var d=0,y=0,m=0,w=p.length;m!==w&&p[m]===0;)m++,d++;for(var b=(w-m)*f+1>>>0,_=new Uint8Array(b);m!==w;){for(var E=p[m],S=0,L=b-1;(E!==0||S<y)&&L!==-1;L--,S++)E+=256*_[L]>>>0,_[L]=E%a>>>0,E=E/a>>>0;if(E!==0)throw new Error("Non-zero carry");y=S,m++}for(var N=b-y;N!==b&&_[N]===0;)N++;for(var z=u.repeat(d);N<b;++N)z+=t.charAt(_[N]);return z}function l(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return new Uint8Array;var d=0;if(p[d]!==" "){for(var y=0,m=0;p[d]===u;)y++,d++;for(var w=(p.length-d)*c+1>>>0,b=new Uint8Array(w);p[d];){var _=r[p.charCodeAt(d)];if(_===255)return;for(var E=0,S=w-1;(_!==0||E<m)&&S!==-1;S--,E++)_+=a*b[S]>>>0,b[S]=_%256>>>0,_=_/256>>>0;if(_!==0)throw new Error("Non-zero carry");m=E,d++}if(p[d]!==" "){for(var L=w-m;L!==w&&b[L]===0;)L++;for(var N=new Uint8Array(y+(w-L)),z=y;L!==w;)N[z++]=b[L++];return N}}}function g(p){var d=l(p);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:h,decodeUnsafe:l,decode:g}}var Xc=Qc,Jc=Xc,ta=Jc;var Z1=new Uint8Array(0);var ea=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},Be=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")};var ra=t=>new TextEncoder().encode(t),na=t=>new TextDecoder().decode(t);var Fi=class{constructor(e,r,n){this.name=e,this.prefix=r,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Vi=class{constructor(e,r,n){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return sa(this,e)}},qi=class{constructor(e){this.decoders=e}or(e){return sa(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},sa=(t,e)=>new qi({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Hi=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Fi(e,r,n),this.decoder=new Vi(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},wr=({name:t,prefix:e,encode:r,decode:n})=>new Hi(t,e,r,n),Oe=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=ta(r,e);return wr({prefix:t,name:e,encode:n,decode:s=>Be(i(s))})},jc=(t,e,r,n)=>{let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let s=t.length;for(;t[s-1]==="=";)--s;let o=new Uint8Array(s*r/8|0),a=0,u=0,c=0;for(let f=0;f<s;++f){let h=i[t[f]];if(h===void 0)throw new SyntaxError(`Non-${n} character`);u=u<<r|h,a+=r,a>=8&&(a-=8,o[c++]=255&u>>a)}if(a>=r||255&u<<8-a)throw new SyntaxError("Unexpected end of data");return o},tf=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,s="",o=0,a=0;for(let u=0;u<t.length;++u)for(a=a<<8|t[u],o+=8;o>r;)o-=r,s+=e[i&a>>o];if(o&&(s+=e[i&a<<r-o]),n)for(;s.length*r&7;)s+="=";return s},mt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>wr({prefix:e,name:t,encode(i){return tf(i,n,r)},decode(i){return jc(i,n,r,t)}});var qt=Oe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),ef=Oe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Gi={};Et(Gi,{base10:()=>rf});var rf=Oe({prefix:"9",name:"base10",alphabet:"0123456789"});var Yi={};Et(Yi,{base16:()=>nf,base16upper:()=>sf});var nf=mt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),sf=mt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Wi={};Et(Wi,{base2:()=>of});var of=mt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var $i={};Et($i,{base256emoji:()=>hf});var oa=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}"),af=oa.reduce((t,e,r)=>(t[r]=e,t),[]),uf=oa.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function cf(t){return t.reduce((e,r)=>(e+=af[r],e),"")}function ff(t){let e=[];for(let r of t){let n=uf[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var hf=wr({prefix:"\u{1F680}",name:"base256emoji",encode:cf,decode:ff});var Zi={};Et(Zi,{base32:()=>Er,base32hex:()=>yf,base32hexpad:()=>mf,base32hexpadupper:()=>xf,base32hexupper:()=>gf,base32pad:()=>pf,base32padupper:()=>df,base32upper:()=>lf,base32z:()=>bf});var Er=mt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),lf=mt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),pf=mt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),df=mt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),yf=mt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),gf=mt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),mf=mt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),xf=mt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),bf=mt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Qi={};Et(Qi,{base36:()=>vf,base36upper:()=>wf});var vf=Oe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),wf=Oe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Xi={};Et(Xi,{base64:()=>Jr,base64pad:()=>Ef,base64url:()=>Sf,base64urlpad:()=>Bf});var Jr=mt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Ef=mt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Sf=mt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Bf=mt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Ji={};Et(Ji,{base8:()=>Af});var Af=mt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ji={};Et(ji,{identity:()=>If});var If=wr({prefix:"\0",name:"identity",encode:t=>na(t),decode:t=>ra(t)});var fg=new TextEncoder,hg=new TextDecoder;var es={};Et(es,{identity:()=>Me});var _f=ca,aa=128,Rf=127,Lf=~Rf,Nf=Math.pow(2,31);function ca(t,e,r){e=e||[],r=r||0;for(var n=r;t>=Nf;)e[r++]=t&255|aa,t/=128;for(;t&Lf;)e[r++]=t&255|aa,t>>>=7;return e[r]=t|0,ca.bytes=r-n+1,e}var Df=ts,Pf=128,ua=127;function ts(t,n){var r=0,n=n||0,i=0,s=n,o,a=t.length;do{if(s>=a)throw ts.bytes=0,new RangeError("Could not decode varint");o=t[s++],r+=i<28?(o&ua)<<i:(o&ua)*Math.pow(2,i),i+=7}while(o>=Pf);return ts.bytes=s-n,r}var kf=Math.pow(2,7),Uf=Math.pow(2,14),Kf=Math.pow(2,21),Of=Math.pow(2,28),Mf=Math.pow(2,35),Ff=Math.pow(2,42),Vf=Math.pow(2,49),qf=Math.pow(2,56),Hf=Math.pow(2,63),zf=function(t){return t<kf?1:t<Uf?2:t<Kf?3:t<Of?4:t<Mf?5:t<Ff?6:t<Vf?7:t<qf?8:t<Hf?9:10},Gf={encode:_f,decode:Df,encodingLength:zf},Yf=Gf,jr=Yf;var tn=(t,e=0)=>[jr.decode(t,e),jr.decode.bytes],Sr=(t,e,r=0)=>(jr.encode(t,e,r),e),Br=t=>jr.encodingLength(t);var pe=(t,e)=>{let r=e.byteLength,n=Br(t),i=n+Br(r),s=new Uint8Array(i+r);return Sr(t,s,0),Sr(r,s,n),s.set(e,i),new Ar(t,r,e,s)},en=t=>{let e=Be(t),[r,n]=tn(e),[i,s]=tn(e.subarray(n)),o=e.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new Ar(r,i,o,e)},fa=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&ea(t.bytes,r.bytes)}},Ar=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var ha=0,Wf="identity",la=Be,$f=t=>pe(ha,la(t)),Me={code:ha,name:Wf,encode:la,digest:$f};var is={};Et(is,{sha256:()=>It,sha512:()=>Zf});var ns=({name:t,code:e,encode:r})=>new rs(t,e,r),rs=class{constructor(e,r,n){this.name=e,this.code=r,this.encode=n}digest(e){if(e instanceof Uint8Array){let r=this.encode(e);return r instanceof Uint8Array?pe(this.code,r):r.then(n=>pe(this.code,n))}else throw Error("Unknown type, must be binary type")}};var da=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),It=ns({name:"sha2-256",code:18,encode:da("SHA-256")}),Zf=ns({name:"sha2-512",code:19,encode:da("SHA-512")});var ya=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Xf(r,ss(t),e||qt.encoder);default:return Jf(r,ss(t),e||Er.encoder)}};var ga=new WeakMap,ss=t=>{let e=ga.get(t);if(e==null){let r=new Map;return ga.set(t,r),r}return e},je=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==rn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==jf)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=pe(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&fa(e.multihash,n.multihash)}toString(e){return ya(this,e)}toJSON(){return{"/":ya(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:s,bytes:o}=r;return new t(n,i,s,o||ma(n,i,s.bytes))}else if(r[th]===!0){let{version:n,multihash:i,code:s}=r,o=en(i);return t.create(n,s,o)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==rn)throw new Error(`Version 0 CID must use dag-pb (code: ${rn}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=ma(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,rn,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=Be(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let s=i.subarray(r.multihashSize-r.digestSize),o=new Ar(r.multihashCode,r.digestSize,s,i);return[r.version===0?t.createV0(o):t.createV1(r.codec,o),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[h,l]=tn(e.subarray(r));return r+=l,h},i=n(),s=rn;if(i===18?(i=0,r=0):s=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let o=r,a=n(),u=n(),c=r+u,f=c-o;return{version:i,codec:s,multihashCode:a,digestSize:u,multihashSize:f,size:c}}static parse(e,r){let[n,i]=Qf(e,r),s=t.decode(i);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return ss(s).set(n,e),s}},Qf=(t,e)=>{switch(t[0]){case"Q":{let r=e||qt;return[qt.prefix,r.decode(`${qt.prefix}${t}`)]}case qt.prefix:{let r=e||qt;return[qt.prefix,r.decode(t)]}case Er.prefix:{let r=e||Er;return[Er.prefix,r.decode(t)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[t[0],e.decode(t)]}}},Xf=(t,e,r)=>{let{prefix:n}=r;if(n!==qt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let s=r.encode(t).slice(1);return e.set(n,s),s}else return i},Jf=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let s=r.encode(t);return e.set(n,s),s}else return i},rn=112,jf=18,ma=(t,e,r)=>{let n=Br(t),i=n+Br(e),s=new Uint8Array(i+r.byteLength);return Sr(t,s,0),Sr(e,s,n),s.set(r,i),s},th=Symbol.for("@ipld/js-cid/CID");var Qt={...ji,...Wi,...Ji,...Gi,...Yi,...Zi,...Qi,...zi,...Xi,...$i},Cg={...is,...es};function os(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var eh=Symbol.for("nodejs.util.inspect.custom"),xa=Object.values(Qt).map(t=>t.decoder).reduce((t,e)=>t.or(e),Qt.identity.decoder),ba=114,as=36,us=37,nn=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Jo]=!0;toString(){return this.string==null&&(this.string=qt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return je.createV1(ba,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return os(this.multihash.bytes,e);if(typeof e=="string")return St(e).equals(this);if(e?.multihash?.bytes!=null)return os(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[eh](){return`PeerId(${this.toString()})`}},Cr=class extends nn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Tr=class extends nn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},_r=class extends nn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function St(t,e){if(e=e??xa,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=en(qt.decode(`z${t}`));return t.startsWith("12D")?new Tr({multihash:r}):t.startsWith("16U")?new _r({multihash:r}):new Cr({multihash:r})}return sn(xa.decode(t))}function sn(t){try{let e=en(t);if(e.code===Me.code){if(e.digest.length===as)return new Tr({multihash:e});if(e.digest.length===us)return new _r({multihash:e})}if(e.code===It.code)return new Cr({multihash:e})}catch{return rh(je.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function rh(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==ba)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===It.code)return new Cr({multihash:t.multihash});if(e.code===Me.code){if(e.digest.length===as)return new Tr({multihash:t.multihash});if(e.digest.length===us)return new _r({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Un(t,e){return t.length===as?new Tr({multihash:pe(Me.code,t),privateKey:e}):t.length===us?new _r({multihash:pe(Me.code,t),privateKey:e}):new Cr({multihash:await It.digest(t),publicKey:t,privateKey:e})}function Ae(t,e){let r={[Symbol.iterator]:()=>r,next:()=>{let n=t.next(),i=n.value;return n.done===!0||i==null?{done:!0,value:void 0}:{done:!1,value:e(i)}}};return r}var Rr=class{map;constructor(e){if(this.map=new Map,e!=null)for(let[r,n]of e.entries())this.map.set(r.toString(),n)}[Symbol.iterator](){return this.entries()}clear(){this.map.clear()}delete(e){return this.map.delete(e.toString())}entries(){return Ae(this.map.entries(),e=>[St(e[0]),e[1]])}forEach(e){this.map.forEach((r,n)=>{e(r,St(n),this)})}get(e){return this.map.get(e.toString())}has(e){return this.map.has(e.toString())}set(e,r){this.map.set(e.toString(),r)}keys(){return Ae(this.map.keys(),e=>St(e))}values(){return this.map.values()}get size(){return this.map.size}};var Lr=class t{set;constructor(e){if(this.set=new Set,e!=null)for(let r of e)this.set.add(r.toString())}get size(){return this.set.size}[Symbol.iterator](){return this.values()}add(e){this.set.add(e.toString())}clear(){this.set.clear()}delete(e){this.set.delete(e.toString())}entries(){return Ae(this.set.entries(),e=>{let r=St(e[0]);return[r,r]})}forEach(e){this.set.forEach(r=>{let n=St(r);e(n,n,this)})}has(e){return this.set.has(e.toString())}values(){return Ae(this.set.values(),e=>St(e))}intersection(e){let r=new t;for(let n of e)this.has(n)&&r.add(n);return r}difference(e){let r=new t;for(let n of this)e.has(n)||r.add(n);return r}union(e){let r=new t;for(let n of e)r.add(n);for(let n of this)r.add(n);return r}};var Kn=class t{list;constructor(e){if(this.list=[],e!=null)for(let r of e)this.list.push(r.toString())}[Symbol.iterator](){return Ae(this.list.entries(),e=>St(e[1]))}concat(e){let r=new t(this);for(let n of e)r.push(n);return r}entries(){return Ae(this.list.entries(),e=>[e[0],St(e[1])])}every(e){return this.list.every((r,n)=>e(St(r),n,this))}filter(e){let r=new t;return this.list.forEach((n,i)=>{let s=St(n);e(s,i,this)&&r.push(s)}),r}find(e){let r=this.list.find((n,i)=>e(St(n),i,this));if(r!=null)return St(r)}findIndex(e){return this.list.findIndex((r,n)=>e(St(r),n,this))}forEach(e){this.list.forEach((r,n)=>{e(St(r),n,this)})}includes(e){return this.list.includes(e.toString())}indexOf(e){return this.list.indexOf(e.toString())}pop(){let e=this.list.pop();if(e!=null)return St(e)}push(...e){for(let r of e)this.list.push(r.toString())}shift(){let e=this.list.shift();if(e!=null)return St(e)}unshift(...e){let r=this.list.length;for(let n=e.length-1;n>-1;n--)r=this.list.unshift(e[n].toString());return r}clear(){this.list=[]}get length(){return this.list.length}};function On(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var Mn=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Nr=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Mn(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let r=this.head;this.head=r.next=new Mn(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var cs=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Dr(t={}){return nh(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},t)}function nh(t,e){e=e??{};let r=e.onEnd,n=new Nr,i,s,o,a=On(),u=async()=>{try{return n.isEmpty()?o?{done:!0}:await new Promise((y,m)=>{s=w=>{s=null,n.push(w);try{y(t(n))}catch(b){m(b)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=On()})}},c=y=>s!=null?s(y):(n.push(y),i),f=y=>(n=new Nr,s!=null?s({error:y}):(n.push({error:y}),i)),h=y=>{if(o)return i;if(e?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return c({done:!1,value:y})},l=y=>o?i:(o=!0,y!=null?f(y):c({done:!0})),g=()=>(n=new Nr,l(),{done:!0}),p=y=>(l(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:g,throw:p,push:h,end:l,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let w,b;m!=null&&(w=new Promise((_,E)=>{b=()=>{E(new cs)},m.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&m!=null&&m?.removeEventListener("abort",b)}}},r==null)return i;let d=i;return i={[Symbol.asyncIterator](){return this},next(){return d.next()},throw(y){return d.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return d.return(),r!=null&&(r(),r=void 0),{done:!0}},push:h,end(y){return d.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return d.readableLength},onEmpty:y=>d.onEmpty(y)},i}function ih(t){return t[Symbol.asyncIterator]!=null}function sh(...t){let e=[];for(let r of t)ih(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Dr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var va=sh;function on(t,...e){if(t==null)throw new Error("Empty pipeline");if(fs(t)){let n=t;t=()=>n.source}else if(Ea(t)||wa(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&fs(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++)fs(r[n])&&(r[n]=ah(r[n]));return oh(...r)}var oh=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},wa=t=>t?.[Symbol.asyncIterator]!=null,Ea=t=>t?.[Symbol.iterator]!=null,fs=t=>t==null?!1:t.sink!=null&&t.source!=null,ah=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Dr({objectMode:!0});r.then(()=>{n.end()},o=>{n.end(o)});let i,s=t.source;if(wa(s))i=async function*(){yield*s,n.end()};else if(Ea(s))i=function*(){yield*s,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return va(n,i())}return t.source};var ls=At(Ba(),1);var un=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},ps=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Aa=t=>globalThis.DOMException===void 0?new ps(t):new DOMException(t),Ia=t=>{let e=t.reason===void 0?Aa("This operation was aborted."):t.reason;return e instanceof Error?e:Aa(e)};function ds(t,e){let{milliseconds:r,fallback:n,message:i,customTimers:s={setTimeout,clearTimeout}}=e,o,u=new Promise((c,f)=>{if(typeof r!="number"||Math.sign(r)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${r}\``);if(e.signal){let{signal:l}=e;l.aborted&&f(Ia(l)),l.addEventListener("abort",()=>{f(Ia(l))})}if(r===Number.POSITIVE_INFINITY){t.then(c,f);return}let h=new un;o=s.setTimeout.call(void 0,()=>{if(n){try{c(n())}catch(l){f(l)}return}typeof t.cancel=="function"&&t.cancel(),i===!1?c():i instanceof Error?f(i):(h.message=i??`Promise timed out after ${r} milliseconds`,f(h))},r),(async()=>{try{c(await t)}catch(l){f(l)}})()}).finally(()=>{u.clear()});return u.clear=()=>{s.clearTimeout.call(void 0,o),o=void 0},u}function ys(t,e,r){let n=0,i=t.length;for(;i>0;){let s=Math.trunc(i/2),o=n+s;r(t[o],e)<=0?(n=++o,i-=s+1):i=s}return n}var cn=class{#t=[];enqueue(e,r){r={priority:0,...r};let n={priority:r.priority,run:e};if(this.size&&this.#t[this.size-1].priority>=r.priority){this.#t.push(n);return}let i=ys(this.#t,n,(s,o)=>o.priority-s.priority);this.#t.splice(i,0,n)}dequeue(){return this.#t.shift()?.run}filter(e){return this.#t.filter(r=>r.priority===e.priority).map(r=>r.run)}get size(){return this.#t.length}};var fn=class extends ls.default{#t;#o;#s=0;#p;#a;#d=0;#r;#u;#e;#y;#n=0;#c;#i;#g;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:cn,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#t=e.carryoverConcurrencyCount,this.#o=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#p=e.intervalCap,this.#a=e.interval,this.#e=new e.queueClass,this.#y=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#g=e.throwOnTimeout===!0,this.#i=e.autoStart===!1}get#b(){return this.#o||this.#s<this.#p}get#v(){return this.#n<this.#c}#w(){this.#n--,this.#f(),this.emit("next")}#E(){this.#x(),this.#m(),this.#u=void 0}get#S(){let e=Date.now();if(this.#r===void 0){let r=this.#d-e;if(r<0)this.#s=this.#t?this.#n:0;else return this.#u===void 0&&(this.#u=setTimeout(()=>{this.#E()},r)),!0}return!1}#f(){if(this.#e.size===0)return this.#r&&clearInterval(this.#r),this.#r=void 0,this.emit("empty"),this.#n===0&&this.emit("idle"),!1;if(!this.#i){let e=!this.#S;if(this.#b&&this.#v){let r=this.#e.dequeue();return r?(this.emit("active"),r(),e&&this.#m(),!0):!1}}return!1}#m(){this.#o||this.#r!==void 0||(this.#r=setInterval(()=>{this.#x()},this.#a),this.#d=Date.now()+this.#a)}#x(){this.#s===0&&this.#n===0&&this.#r&&(clearInterval(this.#r),this.#r=void 0),this.#s=this.#t?this.#n:0,this.#h()}#h(){for(;this.#f(););}get concurrency(){return this.#c}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#c=e,this.#h()}async#B(e){return new Promise((r,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,r={}){return r={timeout:this.timeout,throwOnTimeout:this.#g,...r},new Promise((n,i)=>{this.#e.enqueue(async()=>{this.#n++,this.#s++;try{r.signal?.throwIfAborted();let s=e({signal:r.signal});r.timeout&&(s=ds(Promise.resolve(s),{milliseconds:r.timeout})),r.signal&&(s=Promise.race([s,this.#B(r.signal)]));let o=await s;n(o),this.emit("completed",o)}catch(s){if(s instanceof un&&!r.throwOnTimeout){n();return}i(s),this.emit("error",s)}finally{this.#w()}},r),this.emit("add"),this.#f()})}async addAll(e,r){return Promise.all(e.map(async n=>this.add(n,r)))}start(){return this.#i?(this.#i=!1,this.#h(),this):this}pause(){this.#i=!0}clear(){this.#e=new this.#y}async onEmpty(){this.#e.size!==0&&await this.#l("empty")}async onSizeLessThan(e){this.#e.size<e||await this.#l("next",()=>this.#e.size<e)}async onIdle(){this.#n===0&&this.#e.size===0||await this.#l("idle")}async#l(e,r){return new Promise(n=>{let i=()=>{r&&!r()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#e.size}sizeBy(e){return this.#e.filter(e).length}get pending(){return this.#n}get isPaused(){return this.#i}};var Ct={ERR_INVALID_SIGNATURE_POLICY:"ERR_INVALID_SIGNATURE_POLICY",ERR_UNHANDLED_SIGNATURE_POLICY:"ERR_UNHANDLED_SIGNATURE_POLICY",ERR_MISSING_SIGNATURE:"ERR_MISSING_SIGNATURE",ERR_MISSING_SEQNO:"ERR_MISSING_SEQNO",ERR_MISSING_KEY:"ERR_MISSING_KEY",ERR_INVALID_SIGNATURE:"ERR_INVALID_SIGNATURE",ERR_MISSING_FROM:"ERR_MISSING_FROM",ERR_UNEXPECTED_FROM:"ERR_UNEXPECTED_FROM",ERR_UNEXPECTED_SIGNATURE:"ERR_UNEXPECTED_SIGNATURE",ERR_UNEXPECTED_KEY:"ERR_UNEXPECTED_KEY",ERR_UNEXPECTED_SEQNO:"ERR_UNEXPECTED_SEQNO",ERR_TOPIC_VALIDATOR_REJECT:"ERR_TOPIC_VALIDATOR_REJECT"};function Ca(t){if(t!=null){if(typeof t[Symbol.iterator]=="function")return t[Symbol.iterator]();if(typeof t[Symbol.asyncIterator]=="function")return t[Symbol.asyncIterator]();if(typeof t.next=="function")return t}throw new Error("argument is not an iterator or iterable")}function Ta(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function _a(t,e){let r=Ca(t).return?.();Ta(r)&&r.catch(n=>{e.error("could not cause iterator to return",n)})}function tr(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Ie(t=0){return globalThis.Buffer?.alloc!=null?tr(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Ot(t=0){return globalThis.Buffer?.allocUnsafe!=null?tr(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var fh=Math.pow(2,7),hh=Math.pow(2,14),lh=Math.pow(2,21),gs=Math.pow(2,28),ms=Math.pow(2,35),xs=Math.pow(2,42),bs=Math.pow(2,49),rt=128,Mt=127;function er(t){if(t<fh)return 1;if(t<hh)return 2;if(t<lh)return 3;if(t<gs)return 4;if(t<ms)return 5;if(t<xs)return 6;if(t<bs)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ph(t,e,r=0){switch(er(t)){case 8:e[r++]=t&255|rt,t/=128;case 7:e[r++]=t&255|rt,t/=128;case 6:e[r++]=t&255|rt,t/=128;case 5:e[r++]=t&255|rt,t/=128;case 4:e[r++]=t&255|rt,t>>>=7;case 3:e[r++]=t&255|rt,t>>>=7;case 2:e[r++]=t&255|rt,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function dh(t,e,r=0){switch(er(t)){case 8:e.set(r++,t&255|rt),t/=128;case 7:e.set(r++,t&255|rt),t/=128;case 6:e.set(r++,t&255|rt),t/=128;case 5:e.set(r++,t&255|rt),t/=128;case 4:e.set(r++,t&255|rt),t>>>=7;case 3:e.set(r++,t&255|rt),t>>>=7;case 2:e.set(r++,t&255|rt),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function yh(t,e){let r=t[e],n=0;if(n+=r&Mt,r<rt||(r=t[e+1],n+=(r&Mt)<<7,r<rt)||(r=t[e+2],n+=(r&Mt)<<14,r<rt)||(r=t[e+3],n+=(r&Mt)<<21,r<rt)||(r=t[e+4],n+=(r&Mt)*gs,r<rt)||(r=t[e+5],n+=(r&Mt)*ms,r<rt)||(r=t[e+6],n+=(r&Mt)*xs,r<rt)||(r=t[e+7],n+=(r&Mt)*bs,r<rt))return n;throw new RangeError("Could not decode varint")}function gh(t,e){let r=t.get(e),n=0;if(n+=r&Mt,r<rt||(r=t.get(e+1),n+=(r&Mt)<<7,r<rt)||(r=t.get(e+2),n+=(r&Mt)<<14,r<rt)||(r=t.get(e+3),n+=(r&Mt)<<21,r<rt)||(r=t.get(e+4),n+=(r&Mt)*gs,r<rt)||(r=t.get(e+5),n+=(r&Mt)*ms,r<rt)||(r=t.get(e+6),n+=(r&Mt)*xs,r<rt)||(r=t.get(e+7),n+=(r&Mt)*bs,r<rt))return n;throw new RangeError("Could not decode varint")}function Ra(t,e,r=0){return e==null&&(e=Ot(er(t))),e instanceof Uint8Array?ph(t,e,r):dh(t,e,r)}function La(t,e=0){return t instanceof Uint8Array?yh(t,e):gh(t,e)}function vs(t,e){e==null&&(e=t.reduce((i,s)=>i+s.length,0));let r=Ot(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return tr(r)}function Da(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var ka=Symbol.for("@achingbrain/uint8arraylist");function Pa(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function Vn(t){return!!t?.[ka]}var Fe=class t{bufs;length;[ka]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Vn(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Vn(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=Pa(this.bufs,e);return r.buf[r.index]}set(e,r){let n=Pa(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(Vn(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return vs(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:vs(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),s=new t;return s.length=i,s.bufs=[...n],s}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let s=0;s<this.bufs.length;s++){let o=this.bufs[s],a=i,u=a+o.byteLength;if(i=u,e>=u)continue;let c=e>=a&&e<u,f=r>a&&r<=u;if(c&&f){if(e===a&&r===u){n.push(o);break}let h=e-a;n.push(o.subarray(h,h+(r-e)));break}if(c){if(e===0){n.push(o);continue}n.push(o.subarray(e-a));continue}if(f){if(r===u){n.push(o);break}n.push(o.subarray(0,r-a));break}n.push(o)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!Vn(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let s=256,o=new Int32Array(s);for(let h=0;h<s;h++)o[h]=-1;for(let h=0;h<i;h++)o[n[h]]=h;let a=o,u=this.byteLength-n.byteLength,c=n.byteLength-1,f;for(let h=r;h<=u;h+=f){f=0;for(let l=c;l>=0;l--){let g=this.get(h+l);if(n[l]!==g){f=Math.max(1,l-a[g]);break}}if(f===0)return h}return-1}getInt8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(e,r){let n=Ot(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=Ie(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=Ie(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=Ie(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=Ot(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=Ie(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=Ie(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=Ie(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=Ie(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=Ie(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Da(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,s)=>i+s.byteLength,0)),n.length=r,n}};function qn(t){return t[Symbol.asyncIterator]!=null}var Hn=t=>{let e=er(t),r=Ot(e);return Ra(t,r),Hn.bytes=e,r};Hn.bytes=0;function zn(t,e){e=e??{};let r=e.lengthEncoder??Hn;function*n(i){let s=r(i.byteLength);s instanceof Uint8Array?yield s:yield*s,i instanceof Uint8Array?yield i:yield*i}return qn(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}zn.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??Hn;return new Fe(r(t.byteLength),t)};var Pr=At(Oa(),1);var xh=8,bh=1024*1024*4,rr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(rr||(rr={}));var ws=t=>{let e=La(t);return ws.bytes=er(e),e};ws.bytes=0;function hn(t,e){let r=new Fe,n=rr.LENGTH,i=-1,s=e?.lengthDecoder??ws,o=e?.maxLengthLength??xh,a=e?.maxDataLength??bh;function*u(){for(;r.byteLength>0;){if(n===rr.LENGTH)try{if(i=s(r),i<0)throw(0,Pr.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Pr.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let c=s.bytes;r.consume(c),e?.onLength!=null&&e.onLength(i),n=rr.DATA}catch(c){if(c instanceof RangeError){if(r.byteLength>o)throw(0,Pr.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw c}if(n===rr.DATA){if(r.byteLength<i)break;let c=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(c),yield c,n=rr.LENGTH}}}return qn(t)?async function*(){for await(let c of t)r.append(c),yield*u();if(r.byteLength>0)throw(0,Pr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let c of t)r.append(c),yield*u();if(r.byteLength>0)throw(0,Pr.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}hn.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:s,value:o}=await t.next(r);if(s===!0)return;o!=null&&(yield o)}catch(s){if(s.code==="ERR_UNDER_READ")return{done:!0,value:null};throw s}finally{r=1}}();return hn(n,{...e??{},onLength:s=>{r=s}})};var Gn=class extends vr{id;protocol;outboundStream;inboundStream;_rawOutboundStream;_rawInboundStream;_inboundAbortController;closed;log;constructor(e,r){super(),this.log=e.logger.forComponent("libp2p-pubsub:peer-streams"),this.id=r.id,this.protocol=r.protocol,this._inboundAbortController=new AbortController,this.closed=!1}get isReadable(){return!!this.inboundStream}get isWritable(){return!!this.outboundStream}write(e){if(this.outboundStream==null){let r=this.id.toString();throw new Error("No writable connection to "+r)}this.outboundStream.push(e instanceof Uint8Array?new Fe(e):e)}attachInboundStream(e){let r=()=>{_a(e.source,this.log)};return this._inboundAbortController.signal.addEventListener("abort",r,{once:!0}),this._rawInboundStream=e,this.inboundStream=on(this._rawInboundStream,n=>hn(n)),this.dispatchEvent(new le("stream:inbound")),this.inboundStream}async attachOutboundStream(e){let r=this.outboundStream;return this.outboundStream!=null&&this.outboundStream.end(),this._rawOutboundStream=e,this.outboundStream=Dr({onEnd:n=>{this._rawOutboundStream!=null&&this._rawOutboundStream.closeWrite().catch(i=>{this.log("error closing outbound stream",i)}),this._rawOutboundStream=void 0,this.outboundStream=void 0,n!=null&&this.dispatchEvent(new le("close"))}}),on(this.outboundStream,n=>zn(n),this._rawOutboundStream).catch(n=>{this.log.error(n)}),r==null&&this.dispatchEvent(new le("stream:outbound")),this.outboundStream}close(){this.closed||(this.closed=!0,this.outboundStream!=null&&this.outboundStream.end(),this.inboundStream!=null&&this._inboundAbortController.abort(),this._rawOutboundStream=void 0,this.outboundStream=void 0,this._rawInboundStream=void 0,this.inboundStream=void 0,this.dispatchEvent(new le("close")))}};var Px=At(Qn(),1),_h=At(st(),1);function ir(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Xn(t=0){return globalThis.Buffer?.allocUnsafe!=null?ir(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function t0(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var ja=t0("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Ds=t0("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=Xn(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Th={utf8:ja,"utf-8":ja,hex:Qt.base16,latin1:Ds,ascii:Ds,binary:Ds,...Qt},Jn=Th;function Ft(t,e="utf8"){let r=Jn[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ir(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function kt(t,e="utf8"){let r=Jn[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var vt={get(t=globalThis){let e=t.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var e0={SHA1:20,SHA256:32,SHA512:64};var Nh={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"},Dh=async(t,e)=>{let r=await vt.get().subtle.sign({name:"HMAC"},t,e);return new Uint8Array(r,0,r.byteLength)};async function r0(t,e){let r=Nh[t],n=await vt.get().subtle.importKey("raw",e,{name:"HMAC",hash:{name:r}},!1,["sign"]);return{async digest(i){return Dh(n,i)},length:e0[t]}}var Ln={};Et(Ln,{generateEphemeralKeyPair:()=>Wu,generateKeyPair:()=>Hy,generateKeyPairFromSeed:()=>zy,importKey:()=>$y,keyStretcher:()=>Qu,keysPBM:()=>Wr,marshalPrivateKey:()=>Wy,marshalPublicKey:()=>Yy,supportedKeys:()=>Ee,unmarshalPrivateKey:()=>Ac,unmarshalPublicKey:()=>Gy});var bw=At(yn(),1),vw=At(iu(),1);var ki=At(st(),1);var Bo={};Et(Bo,{Ed25519PrivateKey:()=>dr,Ed25519PublicKey:()=>Bn,generateKeyPair:()=>py,generateKeyPairFromSeed:()=>So,unmarshalEd25519PrivateKey:()=>hy,unmarshalEd25519PublicKey:()=>ly});function ne(t,e){if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}var d2=At(bt(),1),y2=At(ci(),1),su=At(st(),1);function ve(t,e){if(globalThis.Buffer!=null)return ir(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,s)=>i+s.length,0));let r=Xn(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ir(r)}function ie(t,e){let r=Uint8Array.from(t.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=ve([new Uint8Array(e-r.length),r])}return kt(r,"base64url")}function $t(t){let e=pi(t);return new su.default.jsbn.BigInteger(kt(e,"base16"),16)}function pi(t,e){let r=Ft(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=ve([new Uint8Array(e-r.length),r])}return r}function jt(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function ou(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Xp(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function Gs(t,...e){if(!Xp(t))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function au(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");ou(t.outputLen),ou(t.blockLen)}function Mr(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function uu(t,e){Gs(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var di=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function cu(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var yi=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),se=(t,e)=>t<<32-e|t>>>e,Jp=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Jp)throw new Error("Non little-endian hardware is not supported");function Ys(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function xn(t){if(typeof t=="string"&&(t=Ys(t)),!cu(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function gi(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];if(!cu(i))throw new Error("Uint8Array expected");e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let s=t[n];r.set(s,i),i+=s.length}return r}var Fr=class{clone(){return this._cloneInto()}},S2={}.toString;function mi(t){let e=n=>t().update(xn(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Vr(t=32){if(di&&typeof di.getRandomValues=="function")return di.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function jp(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),s=BigInt(4294967295),o=Number(r>>i&s),a=Number(r&s),u=n?4:0,c=n?0:4;t.setUint32(e+u,o,n),t.setUint32(e+c,a,n)}var qr=class extends Fr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=yi(this.buffer)}update(e){Mr(this);let{view:r,buffer:n,blockLen:i}=this;e=xn(e);let s=e.length;for(let o=0;o<s;){let a=Math.min(i-this.pos,s-o);if(a===i){let u=yi(e);for(;i<=s-o;o+=i)this.process(u,o);continue}n.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Mr(this),uu(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:s}=this,{pos:o}=this;r[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>i-o&&(this.process(n,0),o=0);for(let h=o;h<i;h++)r[h]=0;jp(n,i-8,BigInt(this.length*8),s),this.process(n,0);let a=yi(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let c=u/4,f=this.get();if(c>f.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<c;h++)a.setUint32(4*h,f[h],s)}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:s,destroyed:o,pos:a}=this;return e.length=i,e.pos=a,e.finished=s,e.destroyed=o,i%r&&e.buffer.set(n),e}};var xi=BigInt(4294967295),Ws=BigInt(32);function fu(t,e=!1){return e?{h:Number(t&xi),l:Number(t>>Ws&xi)}:{h:Number(t>>Ws&xi)|0,l:Number(t&xi)|0}}function td(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:s,l:o}=fu(t[i],e);[r[i],n[i]]=[s,o]}return[r,n]}var ed=(t,e)=>BigInt(t>>>0)<<Ws|BigInt(e>>>0),rd=(t,e,r)=>t>>>r,nd=(t,e,r)=>t<<32-r|e>>>r,id=(t,e,r)=>t>>>r|e<<32-r,sd=(t,e,r)=>t<<32-r|e>>>r,od=(t,e,r)=>t<<64-r|e>>>r-32,ad=(t,e,r)=>t>>>r-32|e<<64-r,ud=(t,e)=>e,cd=(t,e)=>t,fd=(t,e,r)=>t<<r|e>>>32-r,hd=(t,e,r)=>e<<r|t>>>32-r,ld=(t,e,r)=>e<<r-32|t>>>64-r,pd=(t,e,r)=>t<<r-32|e>>>64-r;function dd(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var yd=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),gd=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,md=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),xd=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,bd=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),vd=(t,e,r,n,i,s)=>e+r+n+i+s+(t/2**32|0)|0;var wd={fromBig:fu,split:td,toBig:ed,shrSH:rd,shrSL:nd,rotrSH:id,rotrSL:sd,rotrBH:od,rotrBL:ad,rotr32H:ud,rotr32L:cd,rotlSH:fd,rotlSL:hd,rotlBH:ld,rotlBL:pd,add:dd,add3L:yd,add3H:gd,add4L:md,add4H:xd,add5H:vd,add5L:bd},W=wd;var[Ed,Sd]=W.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),Ge=new Uint32Array(80),Ye=new Uint32Array(80),$s=class extends qr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:s,Cl:o,Dh:a,Dl:u,Eh:c,El:f,Fh:h,Fl:l,Gh:g,Gl:p,Hh:d,Hl:y}=this;return[e,r,n,i,s,o,a,u,c,f,h,l,g,p,d,y]}set(e,r,n,i,s,o,a,u,c,f,h,l,g,p,d,y){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=s|0,this.Cl=o|0,this.Dh=a|0,this.Dl=u|0,this.Eh=c|0,this.El=f|0,this.Fh=h|0,this.Fl=l|0,this.Gh=g|0,this.Gl=p|0,this.Hh=d|0,this.Hl=y|0}process(e,r){for(let b=0;b<16;b++,r+=4)Ge[b]=e.getUint32(r),Ye[b]=e.getUint32(r+=4);for(let b=16;b<80;b++){let _=Ge[b-15]|0,E=Ye[b-15]|0,S=W.rotrSH(_,E,1)^W.rotrSH(_,E,8)^W.shrSH(_,E,7),L=W.rotrSL(_,E,1)^W.rotrSL(_,E,8)^W.shrSL(_,E,7),N=Ge[b-2]|0,z=Ye[b-2]|0,H=W.rotrSH(N,z,19)^W.rotrBH(N,z,61)^W.shrSH(N,z,6),V=W.rotrSL(N,z,19)^W.rotrBL(N,z,61)^W.shrSL(N,z,6),Q=W.add4L(L,V,Ye[b-7],Ye[b-16]),ot=W.add4H(Q,S,H,Ge[b-7],Ge[b-16]);Ge[b]=ot|0,Ye[b]=Q|0}let{Ah:n,Al:i,Bh:s,Bl:o,Ch:a,Cl:u,Dh:c,Dl:f,Eh:h,El:l,Fh:g,Fl:p,Gh:d,Gl:y,Hh:m,Hl:w}=this;for(let b=0;b<80;b++){let _=W.rotrSH(h,l,14)^W.rotrSH(h,l,18)^W.rotrBH(h,l,41),E=W.rotrSL(h,l,14)^W.rotrSL(h,l,18)^W.rotrBL(h,l,41),S=h&g^~h&d,L=l&p^~l&y,N=W.add5L(w,E,L,Sd[b],Ye[b]),z=W.add5H(N,m,_,S,Ed[b],Ge[b]),H=N|0,V=W.rotrSH(n,i,28)^W.rotrBH(n,i,34)^W.rotrBH(n,i,39),Q=W.rotrSL(n,i,28)^W.rotrBL(n,i,34)^W.rotrBL(n,i,39),ot=n&s^n&a^s&a,Nt=i&o^i&u^o&u;m=d|0,w=y|0,d=g|0,y=p|0,g=h|0,p=l|0,{h,l}=W.add(c|0,f|0,z|0,H|0),c=a|0,f=u|0,a=s|0,u=o|0,s=n|0,o=i|0;let C=W.add3L(H,Q,Nt);n=W.add3H(C,z,V,ot),i=C|0}({h:n,l:i}=W.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:s,l:o}=W.add(this.Bh|0,this.Bl|0,s|0,o|0),{h:a,l:u}=W.add(this.Ch|0,this.Cl|0,a|0,u|0),{h:c,l:f}=W.add(this.Dh|0,this.Dl|0,c|0,f|0),{h,l}=W.add(this.Eh|0,this.El|0,h|0,l|0),{h:g,l:p}=W.add(this.Fh|0,this.Fl|0,g|0,p|0),{h:d,l:y}=W.add(this.Gh|0,this.Gl|0,d|0,y|0),{h:m,l:w}=W.add(this.Hh|0,this.Hl|0,m|0,w|0),this.set(n,i,s,o,a,u,c,f,h,l,g,p,d,y,m,w)}roundClean(){Ge.fill(0),Ye.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 Zs=mi(()=>new $s);var vi={};Et(vi,{bitGet:()=>Rd,bitLen:()=>_d,bitMask:()=>bn,bitSet:()=>Ld,bytesToHex:()=>Le,bytesToNumberBE:()=>Ne,bytesToNumberLE:()=>We,concatBytes:()=>De,createHmacDrbg:()=>Js,ensureBytes:()=>xt,equalBytes:()=>Cd,hexToBytes:()=>cr,hexToNumber:()=>Xs,isBytes:()=>oe,numberToBytesBE:()=>$e,numberToBytesLE:()=>fr,numberToHexUnpadded:()=>du,numberToVarBytesBE:()=>Id,utf8ToBytes:()=>Td,validateObject:()=>we});var pu=BigInt(0),bi=BigInt(1),Bd=BigInt(2);function oe(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var Ad=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Le(t){if(!oe(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Ad[t[r]];return e}function du(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Xs(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}var Re={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function hu(t){if(t>=Re._0&&t<=Re._9)return t-Re._0;if(t>=Re._A&&t<=Re._F)return t-(Re._A-10);if(t>=Re._a&&t<=Re._f)return t-(Re._a-10)}function cr(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length,r=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let i=0,s=0;i<r;i++,s+=2){let o=hu(t.charCodeAt(s)),a=hu(t.charCodeAt(s+1));if(o===void 0||a===void 0){let u=t[s]+t[s+1];throw new Error('hex string expected, got non-hex character "'+u+'" at index '+s)}n[i]=o*16+a}return n}function Ne(t){return Xs(Le(t))}function We(t){if(!oe(t))throw new Error("Uint8Array expected");return Xs(Le(Uint8Array.from(t).reverse()))}function $e(t,e){return cr(t.toString(16).padStart(e*2,"0"))}function fr(t,e){return $e(t,e).reverse()}function Id(t){return cr(du(t))}function xt(t,e,r){let n;if(typeof e=="string")try{n=cr(e)}catch(s){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${s}`)}else if(oe(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function De(...t){let e=0;for(let i=0;i<t.length;i++){let s=t[i];if(!oe(s))throw new Error("Uint8Array expected");e+=s.length}let r=new Uint8Array(e),n=0;for(let i=0;i<t.length;i++){let s=t[i];r.set(s,n),n+=s.length}return r}function Cd(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}function Td(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function _d(t){let e;for(e=0;t>pu;t>>=bi,e+=1);return e}function Rd(t,e){return t>>BigInt(e)&bi}var Ld=(t,e,r)=>t|(r?bi:pu)<<BigInt(e),bn=t=>(Bd<<BigInt(t-1))-bi,Qs=t=>new Uint8Array(t),lu=t=>Uint8Array.from(t);function Js(t,e,r){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=Qs(t),i=Qs(t),s=0,o=()=>{n.fill(1),i.fill(0),s=0},a=(...h)=>r(i,n,...h),u=(h=Qs())=>{i=a(lu([0]),h),n=a(),h.length!==0&&(i=a(lu([1]),h),n=a())},c=()=>{if(s++>=1e3)throw new Error("drbg: tried 1000 values");let h=0,l=[];for(;h<e;){n=a();let g=n.slice();l.push(g),h+=n.length}return De(...l)};return(h,l)=>{o(),u(h);let g;for(;!(g=l(c()));)u();return o(),g}}var Nd={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||oe(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function we(t,e,r={}){let n=(i,s,o)=>{let a=Nd[s];if(typeof a!="function")throw new Error(`Invalid validator "${s}", expected function`);let u=t[i];if(!(o&&u===void 0)&&!a(u,t))throw new Error(`Invalid param ${String(i)}=${u} (${typeof u}), expected ${s}`)};for(let[i,s]of Object.entries(e))n(i,s,!1);for(let[i,s]of Object.entries(r))n(i,s,!0);return t}var Tt=BigInt(0),dt=BigInt(1),hr=BigInt(2),Dd=BigInt(3),js=BigInt(4),yu=BigInt(5),gu=BigInt(8),Pd=BigInt(9),kd=BigInt(16);function at(t,e){let r=t%e;return r>=Tt?r:e+r}function Ud(t,e,r){if(r<=Tt||e<Tt)throw new Error("Expected power/modulo > 0");if(r===dt)return Tt;let n=dt;for(;e>Tt;)e&dt&&(n=n*t%r),t=t*t%r,e>>=dt;return n}function yt(t,e,r){let n=t;for(;e-- >Tt;)n*=n,n%=r;return n}function wi(t,e){if(t===Tt||e<=Tt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=at(t,e),n=e,i=Tt,s=dt,o=dt,a=Tt;for(;r!==Tt;){let c=n/r,f=n%r,h=i-o*c,l=s-a*c;n=r,r=f,i=o,s=a,o=h,a=l}if(n!==dt)throw new Error("invert: does not exist");return at(i,e)}function Kd(t){let e=(t-dt)/hr,r,n,i;for(r=t-dt,n=0;r%hr===Tt;r/=hr,n++);for(i=hr;i<t&&Ud(i,e,t)!==t-dt;i++);if(n===1){let o=(t+dt)/js;return function(u,c){let f=u.pow(c,o);if(!u.eql(u.sqr(f),c))throw new Error("Cannot find square root");return f}}let s=(r+dt)/hr;return function(a,u){if(a.pow(u,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let c=n,f=a.pow(a.mul(a.ONE,i),r),h=a.pow(u,s),l=a.pow(u,r);for(;!a.eql(l,a.ONE);){if(a.eql(l,a.ZERO))return a.ZERO;let g=1;for(let d=a.sqr(l);g<c&&!a.eql(d,a.ONE);g++)d=a.sqr(d);let p=a.pow(f,dt<<BigInt(c-g-1));f=a.sqr(p),h=a.mul(h,p),l=a.mul(l,f),c=g}return h}}function Od(t){if(t%js===Dd){let e=(t+dt)/js;return function(n,i){let s=n.pow(i,e);if(!n.eql(n.sqr(s),i))throw new Error("Cannot find square root");return s}}if(t%gu===yu){let e=(t-yu)/gu;return function(n,i){let s=n.mul(i,hr),o=n.pow(s,e),a=n.mul(i,o),u=n.mul(n.mul(a,hr),o),c=n.mul(a,n.sub(u,n.ONE));if(!n.eql(n.sqr(c),i))throw new Error("Cannot find square root");return c}}return t%kd,Kd(t)}var mu=(t,e)=>(at(t,e)&dt)===dt,Md=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function to(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Md.reduce((n,i)=>(n[i]="function",n),e);return we(t,r)}function Fd(t,e,r){if(r<Tt)throw new Error("Expected power > 0");if(r===Tt)return t.ONE;if(r===dt)return e;let n=t.ONE,i=e;for(;r>Tt;)r&dt&&(n=t.mul(n,i)),i=t.sqr(i),r>>=dt;return n}function Vd(t,e){let r=new Array(e.length),n=e.reduce((s,o,a)=>t.is0(o)?s:(r[a]=s,t.mul(s,o)),t.ONE),i=t.inv(n);return e.reduceRight((s,o,a)=>t.is0(o)?s:(r[a]=t.mul(s,r[a]),t.mul(s,o)),i),r}function eo(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ei(t,e,r=!1,n={}){if(t<=Tt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:s}=eo(t,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");let o=Od(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:s,MASK:bn(i),ZERO:Tt,ONE:dt,create:u=>at(u,t),isValid:u=>{if(typeof u!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof u}`);return Tt<=u&&u<t},is0:u=>u===Tt,isOdd:u=>(u&dt)===dt,neg:u=>at(-u,t),eql:(u,c)=>u===c,sqr:u=>at(u*u,t),add:(u,c)=>at(u+c,t),sub:(u,c)=>at(u-c,t),mul:(u,c)=>at(u*c,t),pow:(u,c)=>Fd(a,u,c),div:(u,c)=>at(u*wi(c,t),t),sqrN:u=>u*u,addN:(u,c)=>u+c,subN:(u,c)=>u-c,mulN:(u,c)=>u*c,inv:u=>wi(u,t),sqrt:n.sqrt||(u=>o(a,u)),invertBatch:u=>Vd(a,u),cmov:(u,c,f)=>f?c:u,toBytes:u=>r?fr(u,s):$e(u,s),fromBytes:u=>{if(u.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${u.length}`);return r?We(u):Ne(u)}});return Object.freeze(a)}function xu(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let r=t.sqrt(e);return t.isOdd(r)?t.neg(r):r}function bu(t){if(typeof t!="bigint")throw new Error("field order must be bigint");let e=t.toString(2).length;return Math.ceil(e/8)}function ro(t){let e=bu(t);return e+Math.ceil(e/2)}function vu(t,e,r=!1){let n=t.length,i=bu(e),s=ro(e);if(n<16||n<s||n>1024)throw new Error(`expected ${s}-1024 bytes of input, got ${n}`);let o=r?Ne(t):We(t),a=at(o,e-dt)+dt;return r?fr(a,i):$e(a,i)}var Hd=BigInt(0),no=BigInt(1);function Si(t,e){let r=(i,s)=>{let o=s.negate();return i?o:s},n=i=>{let s=Math.ceil(e/i)+1,o=2**(i-1);return{windows:s,windowSize:o}};return{constTimeNegate:r,unsafeLadder(i,s){let o=t.ZERO,a=i;for(;s>Hd;)s&no&&(o=o.add(a)),a=a.double(),s>>=no;return o},precomputeWindow(i,s){let{windows:o,windowSize:a}=n(s),u=[],c=i,f=c;for(let h=0;h<o;h++){f=c,u.push(f);for(let l=1;l<a;l++)f=f.add(c),u.push(f);c=f.double()}return u},wNAF(i,s,o){let{windows:a,windowSize:u}=n(i),c=t.ZERO,f=t.BASE,h=BigInt(2**i-1),l=2**i,g=BigInt(i);for(let p=0;p<a;p++){let d=p*u,y=Number(o&h);o>>=g,y>u&&(y-=l,o+=no);let m=d,w=d+Math.abs(y)-1,b=p%2!==0,_=y<0;y===0?f=f.add(r(b,s[m])):c=c.add(r(_,s[w]))}return{p:c,f}},wNAFCached(i,s,o,a){let u=i._WINDOW_SIZE||1,c=s.get(i);return c||(c=this.precomputeWindow(i,u),u!==1&&s.set(i,a(c))),this.wNAF(u,c,o)}}}function vn(t){return to(t.Fp),we(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...eo(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var ae=BigInt(0),Zt=BigInt(1),Bi=BigInt(2),zd=BigInt(8),Gd={zip215:!0};function Yd(t){let e=vn(t);return we(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Ai(t){let e=Yd(t),{Fp:r,n,prehash:i,hash:s,randomBytes:o,nByteLength:a,h:u}=e,c=Bi<<BigInt(a*8)-Zt,f=r.create,h=e.uvRatio||((D,A)=>{try{return{isValid:!0,value:r.sqrt(D*r.inv(A))}}catch{return{isValid:!1,value:ae}}}),l=e.adjustScalarBytes||(D=>D),g=e.domain||((D,A,K)=>{if(A.length||K)throw new Error("Contexts/pre-hash are not supported");return D}),p=D=>typeof D=="bigint"&&ae<D,d=(D,A)=>p(D)&&p(A)&&D<A,y=D=>D===ae||d(D,c);function m(D,A){if(d(D,A))return D;throw new Error(`Expected valid scalar < ${A}, got ${typeof D} ${D}`)}function w(D){return D===ae?D:m(D,n)}let b=new Map;function _(D){if(!(D instanceof E))throw new Error("ExtendedPoint expected")}class E{constructor(A,K,M,q){if(this.ex=A,this.ey=K,this.ez=M,this.et=q,!y(A))throw new Error("x required");if(!y(K))throw new Error("y required");if(!y(M))throw new Error("z required");if(!y(q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(A){if(A instanceof E)throw new Error("extended point not allowed");let{x:K,y:M}=A||{};if(!y(K)||!y(M))throw new Error("invalid affine point");return new E(K,M,Zt,f(K*M))}static normalizeZ(A){let K=r.invertBatch(A.map(M=>M.ez));return A.map((M,q)=>M.toAffine(K[q])).map(E.fromAffine)}_setWindowSize(A){this._WINDOW_SIZE=A,b.delete(this)}assertValidity(){let{a:A,d:K}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:M,ey:q,ez:$,et:X}=this,it=f(M*M),J=f(q*q),et=f($*$),wt=f(et*et),gt=f(it*A),Dt=f(et*f(gt+J)),Pt=f(wt+f(K*f(it*J)));if(Dt!==Pt)throw new Error("bad point: equation left != right (1)");let Bt=f(M*q),Ut=f($*X);if(Bt!==Ut)throw new Error("bad point: equation left != right (2)")}equals(A){_(A);let{ex:K,ey:M,ez:q}=this,{ex:$,ey:X,ez:it}=A,J=f(K*it),et=f($*q),wt=f(M*it),gt=f(X*q);return J===et&&wt===gt}is0(){return this.equals(E.ZERO)}negate(){return new E(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:A}=e,{ex:K,ey:M,ez:q}=this,$=f(K*K),X=f(M*M),it=f(Bi*f(q*q)),J=f(A*$),et=K+M,wt=f(f(et*et)-$-X),gt=J+X,Dt=gt-it,Pt=J-X,Bt=f(wt*Dt),Ut=f(gt*Pt),Se=f(wt*Pt),Je=f(Dt*gt);return new E(Bt,Ut,Je,Se)}add(A){_(A);let{a:K,d:M}=e,{ex:q,ey:$,ez:X,et:it}=this,{ex:J,ey:et,ez:wt,et:gt}=A;if(K===BigInt(-1)){let zo=f(($-q)*(et+J)),Go=f(($+q)*(et-J)),Oi=f(Go-zo);if(Oi===ae)return this.double();let Yo=f(X*Bi*gt),Wo=f(it*Bi*wt),$o=Wo+Yo,Zo=Go+zo,Qo=Wo-Yo,Fc=f($o*Oi),Vc=f(Zo*Qo),qc=f($o*Qo),Hc=f(Oi*Zo);return new E(Fc,Vc,Hc,qc)}let Dt=f(q*J),Pt=f($*et),Bt=f(it*M*gt),Ut=f(X*wt),Se=f((q+$)*(J+et)-Dt-Pt),Je=Ut-Bt,Qr=Ut+Bt,Ho=f(Pt-K*Dt),Uc=f(Se*Je),Kc=f(Qr*Ho),Oc=f(Se*Ho),Mc=f(Je*Qr);return new E(Uc,Kc,Mc,Oc)}subtract(A){return this.add(A.negate())}wNAF(A){return N.wNAFCached(this,b,A,E.normalizeZ)}multiply(A){let{p:K,f:M}=this.wNAF(m(A,n));return E.normalizeZ([K,M])[0]}multiplyUnsafe(A){let K=w(A);return K===ae?L:this.equals(L)||K===Zt?this:this.equals(S)?this.wNAF(K).p:N.unsafeLadder(this,K)}isSmallOrder(){return this.multiplyUnsafe(u).is0()}isTorsionFree(){return N.unsafeLadder(this,n).is0()}toAffine(A){let{ex:K,ey:M,ez:q}=this,$=this.is0();A==null&&(A=$?zd:r.inv(q));let X=f(K*A),it=f(M*A),J=f(q*A);if($)return{x:ae,y:Zt};if(J!==Zt)throw new Error("invZ was invalid");return{x:X,y:it}}clearCofactor(){let{h:A}=e;return A===Zt?this:this.multiplyUnsafe(A)}static fromHex(A,K=!1){let{d:M,a:q}=e,$=r.BYTES;A=xt("pointHex",A,$);let X=A.slice(),it=A[$-1];X[$-1]=it&-129;let J=We(X);J===ae||(K?m(J,c):m(J,r.ORDER));let et=f(J*J),wt=f(et-Zt),gt=f(M*et-q),{isValid:Dt,value:Pt}=h(wt,gt);if(!Dt)throw new Error("Point.fromHex: invalid y coordinate");let Bt=(Pt&Zt)===Zt,Ut=(it&128)!==0;if(!K&&Pt===ae&&Ut)throw new Error("Point.fromHex: x=0 and x_0=1");return Ut!==Bt&&(Pt=f(-Pt)),E.fromAffine({x:Pt,y:J})}static fromPrivateKey(A){return V(A).point}toRawBytes(){let{x:A,y:K}=this.toAffine(),M=fr(K,r.BYTES);return M[M.length-1]|=A&Zt?128:0,M}toHex(){return Le(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,Zt,f(e.Gx*e.Gy)),E.ZERO=new E(ae,Zt,Zt,ae);let{BASE:S,ZERO:L}=E,N=Si(E,a*8);function z(D){return at(D,n)}function H(D){return z(We(D))}function V(D){let A=a;D=xt("private key",D,A);let K=xt("hashed private key",s(D),2*A),M=l(K.slice(0,A)),q=K.slice(A,2*A),$=H(M),X=S.multiply($),it=X.toRawBytes();return{head:M,prefix:q,scalar:$,point:X,pointBytes:it}}function Q(D){return V(D).pointBytes}function ot(D=new Uint8Array,...A){let K=De(...A);return H(s(g(K,xt("context",D),!!i)))}function Nt(D,A,K={}){D=xt("message",D),i&&(D=i(D));let{prefix:M,scalar:q,pointBytes:$}=V(A),X=ot(K.context,M,D),it=S.multiply(X).toRawBytes(),J=ot(K.context,it,$,D),et=z(X+J*q);w(et);let wt=De(it,fr(et,r.BYTES));return xt("result",wt,a*2)}let C=Gd;function P(D,A,K,M=C){let{context:q,zip215:$}=M,X=r.BYTES;D=xt("signature",D,2*X),A=xt("message",A),i&&(A=i(A));let it=We(D.slice(X,2*X)),J,et,wt;try{J=E.fromHex(K,$),et=E.fromHex(D.slice(0,X),$),wt=S.multiplyUnsafe(it)}catch{return!1}if(!$&&J.isSmallOrder())return!1;let gt=ot(q,et.toRawBytes(),J.toRawBytes(),A);return et.add(J.multiplyUnsafe(gt)).subtract(wt).clearCofactor().equals(E.ZERO)}return S._setWindowSize(8),{CURVE:e,getPublicKey:Q,sign:Nt,verify:P,ExtendedPoint:E,utils:{getExtendedPublicKey:V,randomPrivateKey:()=>o(r.BYTES),precompute(D=8,A=E.BASE){return A._setWindowSize(D),A.multiply(BigInt(3)),A}}}}var so=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),wu=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),G2=BigInt(0),Wd=BigInt(1),io=BigInt(2),$d=BigInt(5),Eu=BigInt(10),Zd=BigInt(20),Qd=BigInt(40),Su=BigInt(80);function Xd(t){let e=so,n=t*t%e*t%e,i=yt(n,io,e)*n%e,s=yt(i,Wd,e)*t%e,o=yt(s,$d,e)*s%e,a=yt(o,Eu,e)*o%e,u=yt(a,Zd,e)*a%e,c=yt(u,Qd,e)*u%e,f=yt(c,Su,e)*c%e,h=yt(f,Su,e)*c%e,l=yt(h,Eu,e)*o%e;return{pow_p_5_8:yt(l,io,e)*t%e,b2:n}}function Jd(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function jd(t,e){let r=so,n=at(e*e*e,r),i=at(n*n*e,r),s=Xd(t*i).pow_p_5_8,o=at(t*n*s,r),a=at(e*o*o,r),u=o,c=at(o*wu,r),f=a===t,h=a===at(-t,r),l=a===at(-t*wu,r);return f&&(o=u),(h||l)&&(o=c),mu(o,r)&&(o=at(-o,r)),{isValid:f||h,value:o}}var Pe=Ei(so,void 0,!0),oo={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Pe,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Zs,randomBytes:Vr,adjustScalarBytes:Jd,uvRatio:jd},Hr=Ai(oo);function Bu(t,e,r){if(e.length>255)throw new Error("Context is too big");return gi(Ys("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Y2=Ai({...oo,domain:Bu}),W2=Ai({...oo,domain:Bu,prehash:Zs});var ty=(Pe.ORDER+BigInt(3))/BigInt(8),$2=Pe.pow(io,ty),Z2=Pe.sqrt(Pe.neg(Pe.ONE)),Q2=(Pe.ORDER-BigInt(5))/BigInt(8),X2=BigInt(486662);var J2=xu(Pe,Pe.neg(BigInt(486664)));var j2=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),tb=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),eb=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),rb=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var nb=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var zr=32,ke=64,Ii=32;function Au(){let t=Hr.utils.randomPrivateKey(),e=Hr.getPublicKey(t);return{privateKey:_u(t,e),publicKey:e}}function Iu(t){if(t.length!==Ii)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=Hr.getPublicKey(e);return{privateKey:_u(e,r),publicKey:r}}function Cu(t,e){let r=t.subarray(0,Ii);return Hr.sign(e instanceof Uint8Array?e:e.subarray(),r)}function Tu(t,e,r){return Hr.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function _u(t,e){let r=new Uint8Array(ke);for(let n=0;n<Ii;n++)r[n]=t[n],r[Ii+n]=e[n];return r}var ao={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function Ci(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",s=t?.saltLength??16,o=t?.iterations??32767,a=vt.get();r*=8;async function u(h,l){let g=a.getRandomValues(new Uint8Array(s)),p=a.getRandomValues(new Uint8Array(n)),d={name:e,iv:p};typeof l=="string"&&(l=Ft(l));let y;if(l.length===0){y=await a.subtle.importKey("jwk",ao,{name:"AES-GCM"},!0,["encrypt"]);try{let w={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},b=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(w,b,{name:e,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",ao,{name:"AES-GCM"},!0,["encrypt"])}}else{let w={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},b=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(w,b,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(d,y,h);return ve([g,d.iv,new Uint8Array(m)])}async function c(h,l){let g=h.subarray(0,s),p=h.subarray(s,s+n),d=h.subarray(s+n),y={name:e,iv:p};typeof l=="string"&&(l=Ft(l));let m;if(l.length===0)try{let b={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},_=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,_,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",ao,{name:"AES-GCM"},!0,["decrypt"])}else{let b={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},_=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,_,{name:e,length:r},!0,["decrypt"])}let w=await a.subtle.decrypt(y,m,d);return new Uint8Array(w)}return{encrypt:u,decrypt:c}}async function Gr(t,e){let n=await Ci().encrypt(t,e);return Jr.encode(n)}var Wr={};Et(Wr,{KeyType:()=>ht,PrivateKey:()=>fe,PublicKey:()=>ce});var uo=new Float32Array([-0]),Ze=new Uint8Array(uo.buffer);function Lu(t,e,r){uo[0]=t,e[r]=Ze[0],e[r+1]=Ze[1],e[r+2]=Ze[2],e[r+3]=Ze[3]}function Nu(t,e){return Ze[0]=t[e],Ze[1]=t[e+1],Ze[2]=t[e+2],Ze[3]=t[e+3],uo[0]}var co=new Float64Array([-0]),Vt=new Uint8Array(co.buffer);function Du(t,e,r){co[0]=t,e[r]=Vt[0],e[r+1]=Vt[1],e[r+2]=Vt[2],e[r+3]=Vt[3],e[r+4]=Vt[4],e[r+5]=Vt[5],e[r+6]=Vt[6],e[r+7]=Vt[7]}function Pu(t,e){return Vt[0]=t[e],Vt[1]=t[e+1],Vt[2]=t[e+2],Vt[3]=t[e+3],Vt[4]=t[e+4],Vt[5]=t[e+5],Vt[6]=t[e+6],Vt[7]=t[e+7],co[0]}var ry=BigInt(Number.MAX_SAFE_INTEGER),ny=BigInt(Number.MIN_SAFE_INTEGER),Wt=class t{lo;hi;constructor(e,r){this.lo=e|0,this.hi=r|0}toNumber(e=!1){if(!e&&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(e=!1){if(e)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(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?e<16384?e<128?1:2:e<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return lr;if(e<ry&&e>ny)return this.fromNumber(Number(e));let r=e<0n;r&&(e=-e);let n=e>>32n,i=e-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>ku&&(i=0n,++n>ku&&(n=0n))),new t(Number(i),Number(n))}static fromNumber(e){if(e===0)return lr;let r=e<0;r&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new t(n,i)}static from(e){return typeof e=="number"?t.fromNumber(e):typeof e=="bigint"?t.fromBigInt(e):typeof e=="string"?t.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new t(e.low>>>0,e.high>>>0):lr}},lr=new Wt(0,0);lr.toBigInt=function(){return 0n};lr.zzEncode=lr.zzDecode=function(){return this};lr.length=function(){return 1};var ku=4294967296n;function Uu(t){let e=0,r=0;for(let n=0;n<t.length;++n)r=t.charCodeAt(n),r<128?e+=1:r<2048?e+=2:(r&64512)===55296&&(t.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function Ku(t,e,r){if(r-e<1)return"";let i,s=[],o=0,a;for(;e<r;)a=t[e++],a<128?s[o++]=a:a>191&&a<224?s[o++]=(a&31)<<6|t[e++]&63:a>239&&a<365?(a=((a&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,s[o++]=55296+(a>>10),s[o++]=56320+(a&1023)):s[o++]=(a&15)<<12|(t[e++]&63)<<6|t[e++]&63,o>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,s)),o=0);return i!=null?(o>0&&i.push(String.fromCharCode.apply(String,s.slice(0,o))),i.join("")):String.fromCharCode.apply(String,s.slice(0,o))}function fo(t,e,r){let n=r,i,s;for(let o=0;o<t.length;++o)i=t.charCodeAt(o),i<128?e[r++]=i:i<2048?(e[r++]=i>>6|192,e[r++]=i&63|128):(i&64512)===55296&&((s=t.charCodeAt(o+1))&64512)===56320?(i=65536+((i&1023)<<10)+(s&1023),++o,e[r++]=i>>18|240,e[r++]=i>>12&63|128,e[r++]=i>>6&63|128,e[r++]=i&63|128):(e[r++]=i>>12|224,e[r++]=i>>6&63|128,e[r++]=i&63|128);return r-n}function ue(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function Ti(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var ho=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,ue(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ue(this,4);return Ti(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ue(this,4);return Ti(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ue(this,4);let e=Nu(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw ue(this,4);let e=Pu(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),r=this.pos,n=this.pos+e;if(n>this.len)throw ue(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return Ku(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw ue(this,e);this.pos+=e}else do if(this.pos>=this.len)throw ue(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new Wt(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw ue(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,e}if(this.len-this.pos>4){for(;r<5;++r)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;r<5;++r){if(this.pos>=this.len)throw ue(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ue(this,8);let e=Ti(this.buf,this.pos+=4),r=Ti(this.buf,this.pos+=4);return new Wt(e,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 lo(t){return new ho(t instanceof Uint8Array?t:t.subarray())}function _i(t,e){let r=lo(t);return e.decode(r)}function Fu(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var Mu=Fu("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),po=Fu("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=Ot(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),iy={utf8:Mu,"utf-8":Mu,hex:Qt.base16,latin1:po,ascii:po,binary:po,...Qt},Vu=iy;function qu(t,e="utf8"){let r=Vu[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?tr(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function yo(t){let e=t??8192,r=e>>>1,n,i=e;return function(o){if(o<1||o>r)return Ot(o);i+o>e&&(n=Ot(e),i=0);let a=n.subarray(i,i+=o);return i&7&&(i=(i|7)+1),a}}var pr=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function go(){}var xo=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},sy=yo();function oy(t){return globalThis.Buffer!=null?Ot(t):sy(t)}var Sn=class{len;head;tail;states;constructor(){this.len=0,this.head=new pr(go,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new pr(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new bo((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(wn,10,Wt.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=Wt.fromBigInt(e);return this._push(wn,r.length(),r)}uint64Number(e){let r=Wt.fromNumber(e);return this._push(wn,r.length(),r)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let r=Wt.fromBigInt(e).zzEncode();return this._push(wn,r.length(),r)}sint64Number(e){let r=Wt.fromNumber(e).zzEncode();return this._push(wn,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(mo,1,e?1:0)}fixed32(e){return this._push(En,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=Wt.fromBigInt(e);return this._push(En,4,r.lo)._push(En,4,r.hi)}fixed64Number(e){let r=Wt.fromNumber(e);return this._push(En,4,r.lo)._push(En,4,r.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(Lu,4,e)}double(e){return this._push(Du,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(mo,1,0):this.uint32(r)._push(uy,r,e)}string(e){let r=Uu(e);return r!==0?this.uint32(r)._push(fo,r,e):this._push(mo,1,0)}fork(){return this.states=new xo(this),this.head=this.tail=new pr(go,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 pr(go,0,0),this.len=0),this}ldelim(){let e=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=r,this.len+=n),this}finish(){let e=this.head.next,r=oy(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function mo(t,e,r){e[r]=t&255}function ay(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var bo=class extends pr{next;constructor(e,r){super(ay,e,r),this.next=void 0}};function wn(t,e,r){for(;t.hi!==0;)e[r++]=t.lo&127|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[r++]=t.lo&127|128,t.lo=t.lo>>>7;e[r++]=t.lo}function En(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}function uy(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Sn.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(cy,e,t),this},Sn.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(fy,e,t),this});function cy(t,e,r){e.set(t,r)}function fy(t,e,r){t.length<40?fo(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(qu(t),r)}function vo(){return new Sn}function Ri(t,e){let r=vo();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Yr;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(Yr||(Yr={}));function Li(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function wo(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(s,o){let a=e(s);o.int32(a)},n=function(s){let o=s.int32();return e(o)};return Li("enum",Yr.VARINT,r,n)}function Ni(t,e){return Li("message",Yr.LENGTH_DELIMITED,t,e)}var ht;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(ht||(ht={}));var Eo;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(Eo||(Eo={}));(function(t){t.codec=()=>wo(Eo)})(ht||(ht={}));var ce;(function(t){let e;t.codec=()=>(e==null&&(e=Ni((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),ht.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},s=n==null?r.len:r.pos+n;for(;r.pos<s;){let o=r.uint32();switch(o>>>3){case 1:i.Type=ht.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(o&7);break}}return i})),e),t.encode=r=>Ri(r,t.codec()),t.decode=r=>_i(r,t.codec())})(ce||(ce={}));var fe;(function(t){let e;t.codec=()=>(e==null&&(e=Ni((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),ht.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},s=n==null?r.len:r.pos+n;for(;r.pos<s;){let o=r.uint32();switch(o>>>3){case 1:i.Type=ht.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(o&7);break}}return i})),e),t.encode=r=>Ri(r,t.codec()),t.decode=r=>_i(r,t.codec())})(fe||(fe={}));var Bn=class{_key;constructor(e){this._key=$r(e,zr)}verify(e,r){return Tu(this._key,r,e)}marshal(){return this._key}get bytes(){return ce.encode({Type:ht.Ed25519,Data:this.marshal()}).subarray()}equals(e){return ne(this.bytes,e.bytes)}hash(){let e=It.digest(this.bytes);return jt(e)?e.then(({bytes:r})=>r):e.bytes}},dr=class{_key;_publicKey;constructor(e,r){this._key=$r(e,ke),this._publicKey=$r(r,zr)}sign(e){return Cu(this._key,e)}get public(){return new Bn(this._publicKey)}marshal(){return this._key}get bytes(){return fe.encode({Type:ht.Ed25519,Data:this.marshal()}).subarray()}equals(e){return ne(this.bytes,e.bytes)}async hash(){let e=It.digest(this.bytes),r;return jt(e)?{bytes:r}=await e:r=e.bytes,r}async id(){let e=Me.digest(this.public.bytes);return qt.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Gr(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function hy(t){if(t.length>ke){t=$r(t,ke+zr);let n=t.subarray(0,ke),i=t.subarray(ke,t.length);return new dr(n,i)}t=$r(t,ke);let e=t.subarray(0,ke),r=t.subarray(zr);return new dr(e,r)}function ly(t){return t=$r(t,zr),new Bn(t)}async function py(){let{privateKey:t,publicKey:e}=Au();return new dr(t,e)}async function So(t){let{privateKey:e,publicKey:r}=Iu(t);return new dr(e,r)}function $r(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new O(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}var Hu={"P-256":256,"P-384":384,"P-521":521},dy=Object.keys(Hu),Ao=dy.join(" / ");async function zu(t){if(t!=="P-256"&&t!=="P-384"&&t!=="P-521")throw new O(`Unknown curve: ${t}. Must be ${Ao}`,"ERR_INVALID_CURVE");let e=await vt.get().subtle.generateKey({name:"ECDH",namedCurve:t},!0,["deriveBits"]),r=async(s,o)=>{let a;o!=null?a=await vt.get().subtle.importKey("jwk",gy(t,o),{name:"ECDH",namedCurve:t},!1,["deriveBits"]):a=e.privateKey;let u=await vt.get().subtle.importKey("jwk",Yu(t,s),{name:"ECDH",namedCurve:t},!1,[]),c=await vt.get().subtle.deriveBits({name:"ECDH",namedCurve:t,public:u},a,Hu[t]);return new Uint8Array(c,0,c.byteLength)},n=await vt.get().subtle.exportKey("jwk",e.publicKey);return{key:yy(n),genSharedKey:r}}var Gu={"P-256":32,"P-384":48,"P-521":66};function yy(t){if(t.crv==null||t.x==null||t.y==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");if(t.crv!=="P-256"&&t.crv!=="P-384"&&t.crv!=="P-521")throw new O(`Unknown curve: ${t.crv}. Must be ${Ao}`,"ERR_INVALID_CURVE");let e=Gu[t.crv];return ve([Uint8Array.from([4]),pi(t.x,e),pi(t.y,e)],1+e*2)}function Yu(t,e){if(t!=="P-256"&&t!=="P-384"&&t!=="P-521")throw new O(`Unknown curve: ${t}. Must be ${Ao}`,"ERR_INVALID_CURVE");let r=Gu[t];if(!ne(e.subarray(0,1),Uint8Array.from([4])))throw new O("Cannot unmarshal public key - invalid key format","ERR_INVALID_KEY_FORMAT");return{kty:"EC",crv:t,x:kt(e.subarray(1,r+1),"base64url"),y:kt(e.subarray(1+r),"base64url"),ext:!0}}var gy=(t,e)=>({...Yu(t,e.public),d:kt(e.private,"base64url")});var Wu=zu;async function $u(t,e){let r=Jr.decode(t);return Ci().decrypt(r,e)}var Zu={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,keySize:32}};async function Qu(t,e,r){let n=Zu[t];if(n==null){let w=Object.keys(Zu).join(" / ");throw new O(`unknown cipher type '${t}'. Must be ${w}`,"ERR_INVALID_CIPHER_TYPE")}if(e==null)throw new O("missing hash type","ERR_MISSING_HASH_TYPE");let i=n.keySize,s=n.ivSize,o=20,a=Ft("key expansion"),u=2*(s+i+o),c=await r0(e,r),f=await c.digest(a),h=[],l=0;for(;l<u;){let w=await c.digest(ve([f,a])),b=w.length;l+b>u&&(b=u-l),h.push(w),l+=b,f=await c.digest(f)}let g=u/2,p=ve(h),d=p.subarray(0,g),y=p.subarray(g,u),m=w=>({iv:w.subarray(0,s),cipherKey:w.subarray(s,s+i),macKey:w.subarray(s+i)});return{k1:m(d),k2:m(y)}}var Ro={};Et(Ro,{MAX_KEY_SIZE:()=>Tn,RsaPrivateKey:()=>Zr,RsaPublicKey:()=>Cn,fromJwk:()=>Iy,generateKeyPair:()=>Cy,unmarshalRsaPrivateKey:()=>By,unmarshalRsaPublicKey:()=>Ay});var In=At(st(),1);var Kv=At(ec(),1);function gr(t){if(isNaN(t)||t<=0)throw new O("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Vr(t)}var bv=At(li(),1),To=At(st(),1);function rc(t,e){return e.map(r=>$t(t[r]))}function nc(t){return To.default.pki.setRsaPrivateKey(...rc(t,["n","e","d","p","q","dp","dq","qi"]))}function ic(t){return To.default.pki.setRsaPublicKey(...rc(t,["n","e"]))}var mr={};Et(mr,{jwkToPkcs1:()=>by,jwkToPkix:()=>wy,pkcs1ToJwk:()=>xy,pkixToJwk:()=>vy});var Ev=At(yn(),1),Sv=At(li(),1);var Ue=At(st(),1);function xy(t){let e=Ue.default.asn1.fromDer(kt(t,"ascii")),r=Ue.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:ie(r.n),e:ie(r.e),d:ie(r.d),p:ie(r.p),q:ie(r.q),dp:ie(r.dP),dq:ie(r.dQ),qi:ie(r.qInv),alg:"RS256"}}function by(t){if(t.n==null||t.e==null||t.d==null||t.p==null||t.q==null||t.dp==null||t.dq==null||t.qi==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Ue.default.pki.privateKeyToAsn1({n:$t(t.n),e:$t(t.e),d:$t(t.d),p:$t(t.p),q:$t(t.q),dP:$t(t.dp),dQ:$t(t.dq),qInv:$t(t.qi)});return Ft(Ue.default.asn1.toDer(e).getBytes(),"ascii")}function vy(t){let e=Ue.default.asn1.fromDer(kt(t,"ascii")),r=Ue.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:ie(r.n),e:ie(r.e)}}function wy(t){if(t.n==null||t.e==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Ue.default.pki.publicKeyToAsn1({n:$t(t.n),e:$t(t.e)});return Ft(Ue.default.asn1.toDer(e).getBytes(),"ascii")}async function sc(t){let e=await vt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await uc(e);return{privateKey:r[0],publicKey:r[1]}}async function _o(t){let r=[await vt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Ey(t)],n=await uc({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function oc(t,e){let r=await vt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await vt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function ac(t,e,r){let n=await vt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return vt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r instanceof Uint8Array?r:r.subarray())}async function uc(t){if(t.privateKey==null||t.publicKey==null)throw new O("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([vt.get().subtle.exportKey("jwk",t.privateKey),vt.get().subtle.exportKey("jwk",t.publicKey)])}async function Ey(t){return vt.get().subtle.importKey("jwk",{kty:t.kty,n:t.n,e:t.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function cc(t,e,r,n){let i=e?ic(t):nc(t),s=kt(r instanceof Uint8Array?r:r.subarray(),"ascii"),o=n(s,i);return Ft(o,"ascii")}function fc(t,e){return cc(t,!0,e,(r,n)=>n.encrypt(r))}function hc(t,e){return cc(t,!1,e,(r,n)=>n.decrypt(r))}function Di(t){if(t.kty!=="RSA")throw new O("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new O("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Ft(t.n,"base64url").length*8}var Tn=8192,Cn=class{_key;constructor(e){this._key=e}verify(e,r){return ac(this._key,r,e)}marshal(){return mr.jwkToPkix(this._key)}get bytes(){return ce.encode({Type:ht.RSA,Data:this.marshal()}).subarray()}encrypt(e){return fc(this._key,e)}equals(e){return ne(this.bytes,e.bytes)}hash(){let e=It.digest(this.bytes);return jt(e)?e.then(({bytes:r})=>r):e.bytes}},Zr=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return gr(16)}sign(e){return oc(this._key,e)}get public(){if(this._publicKey==null)throw new O("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Cn(this._publicKey)}decrypt(e){return hc(this._key,e)}marshal(){return mr.jwkToPkcs1(this._key)}get bytes(){return fe.encode({Type:ht.RSA,Data:this.marshal()}).subarray()}equals(e){return ne(this.bytes,e.bytes)}hash(){let e=It.digest(this.bytes);return jt(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return kt(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new In.default.util.ByteBuffer(this.marshal()),i=In.default.asn1.fromDer(n),s=In.default.pki.privateKeyFromAsn1(i),o={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return In.default.pki.encryptRsaPrivateKey(s,e,o)}else{if(r==="libp2p-key")return Gr(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function By(t){let e=mr.pkcs1ToJwk(t);if(Di(e)>Tn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await _o(e);return new Zr(r.privateKey,r.publicKey)}function Ay(t){let e=mr.pkixToJwk(t);if(Di(e)>Tn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Cn(e)}async function Iy(t){if(Di(t)>Tn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await _o(t);return new Zr(e.privateKey,e.publicKey)}async function Cy(t){if(t>Tn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await sc(t);return new Zr(e.privateKey,e.publicKey)}var Uo={};Et(Uo,{Secp256k1PrivateKey:()=>Rn,Secp256k1PublicKey:()=>_n,generateKeyPair:()=>qy,unmarshalSecp256k1PrivateKey:()=>Fy,unmarshalSecp256k1PublicKey:()=>Vy});var Ty=(t,e,r)=>t&e^~t&r,_y=(t,e,r)=>t&e^t&r^e&r,Ry=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]),Qe=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Xe=new Uint32Array(64),Lo=class extends qr{constructor(){super(64,32,8,!1),this.A=Qe[0]|0,this.B=Qe[1]|0,this.C=Qe[2]|0,this.D=Qe[3]|0,this.E=Qe[4]|0,this.F=Qe[5]|0,this.G=Qe[6]|0,this.H=Qe[7]|0}get(){let{A:e,B:r,C:n,D:i,E:s,F:o,G:a,H:u}=this;return[e,r,n,i,s,o,a,u]}set(e,r,n,i,s,o,a,u){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=s|0,this.F=o|0,this.G=a|0,this.H=u|0}process(e,r){for(let h=0;h<16;h++,r+=4)Xe[h]=e.getUint32(r,!1);for(let h=16;h<64;h++){let l=Xe[h-15],g=Xe[h-2],p=se(l,7)^se(l,18)^l>>>3,d=se(g,17)^se(g,19)^g>>>10;Xe[h]=d+Xe[h-7]+p+Xe[h-16]|0}let{A:n,B:i,C:s,D:o,E:a,F:u,G:c,H:f}=this;for(let h=0;h<64;h++){let l=se(a,6)^se(a,11)^se(a,25),g=f+l+Ty(a,u,c)+Ry[h]+Xe[h]|0,d=(se(n,2)^se(n,13)^se(n,22))+_y(n,i,s)|0;f=c,c=u,u=a,a=o+g|0,o=s,s=i,i=n,n=g+d|0}n=n+this.A|0,i=i+this.B|0,s=s+this.C|0,o=o+this.D|0,a=a+this.E|0,u=u+this.F|0,c=c+this.G|0,f=f+this.H|0,this.set(n,i,s,o,a,u,c,f)}roundClean(){Xe.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var lc=mi(()=>new Lo);function Ly(t){let e=vn(t);we(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:Ny,hexToBytes:Dy}=vi,xr={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=xr;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:Ny(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=xr,r=typeof t=="string"?Dy(t):t;if(!oe(r))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:s}=xr._parseInt(r.subarray(2)),{d:o,l:a}=xr._parseInt(s);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s:o}},hexFromSig(t){let e=c=>Number.parseInt(c[0],16)&8?"00"+c:c,r=c=>{let f=c.toString(16);return f.length&1?`0${f}`:f},n=e(r(t.s)),i=e(r(t.r)),s=n.length/2,o=i.length/2,a=r(s),u=r(o);return`30${r(o+s+4)}02${u}${i}02${a}${n}`}},Ke=BigInt(0),te=BigInt(1),Wv=BigInt(2),pc=BigInt(3),$v=BigInt(4);function Py(t){let e=Ly(t),{Fp:r}=e,n=e.toBytes||((p,d,y)=>{let m=d.toAffine();return De(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(p=>{let d=p.subarray(1),y=r.fromBytes(d.subarray(0,r.BYTES)),m=r.fromBytes(d.subarray(r.BYTES,2*r.BYTES));return{x:y,y:m}});function s(p){let{a:d,b:y}=e,m=r.sqr(p),w=r.mul(m,p);return r.add(r.add(w,r.mul(p,d)),y)}if(!r.eql(r.sqr(e.Gy),s(e.Gx)))throw new Error("bad generator point: equation left != right");function o(p){return typeof p=="bigint"&&Ke<p&&p<e.n}function a(p){if(!o(p))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function u(p){let{allowedPrivateKeyLengths:d,nByteLength:y,wrapPrivateKey:m,n:w}=e;if(d&&typeof p!="bigint"){if(oe(p)&&(p=Le(p)),typeof p!="string"||!d.includes(p.length))throw new Error("Invalid key");p=p.padStart(y*2,"0")}let b;try{b=typeof p=="bigint"?p:Ne(xt("private key",p,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof p}`)}return m&&(b=at(b,w)),a(b),b}let c=new Map;function f(p){if(!(p instanceof h))throw new Error("ProjectivePoint expected")}class h{constructor(d,y,m){if(this.px=d,this.py=y,this.pz=m,d==null||!r.isValid(d))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(d){let{x:y,y:m}=d||{};if(!d||!r.isValid(y)||!r.isValid(m))throw new Error("invalid affine point");if(d instanceof h)throw new Error("projective point not allowed");let w=b=>r.eql(b,r.ZERO);return w(y)&&w(m)?h.ZERO:new h(y,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let y=r.invertBatch(d.map(m=>m.pz));return d.map((m,w)=>m.toAffine(y[w])).map(h.fromAffine)}static fromHex(d){let y=h.fromAffine(i(xt("pointHex",d)));return y.assertValidity(),y}static fromPrivateKey(d){return h.BASE.multiply(u(d))}_setWindowSize(d){this._WINDOW_SIZE=d,c.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y}=this.toAffine();if(!r.isValid(d)||!r.isValid(y))throw new Error("bad point: x or y not FE");let m=r.sqr(y),w=s(d);if(!r.eql(m,w))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:d}=this.toAffine();if(r.isOdd)return!r.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){f(d);let{px:y,py:m,pz:w}=this,{px:b,py:_,pz:E}=d,S=r.eql(r.mul(y,E),r.mul(b,w)),L=r.eql(r.mul(m,E),r.mul(_,w));return S&&L}negate(){return new h(this.px,r.neg(this.py),this.pz)}double(){let{a:d,b:y}=e,m=r.mul(y,pc),{px:w,py:b,pz:_}=this,E=r.ZERO,S=r.ZERO,L=r.ZERO,N=r.mul(w,w),z=r.mul(b,b),H=r.mul(_,_),V=r.mul(w,b);return V=r.add(V,V),L=r.mul(w,_),L=r.add(L,L),E=r.mul(d,L),S=r.mul(m,H),S=r.add(E,S),E=r.sub(z,S),S=r.add(z,S),S=r.mul(E,S),E=r.mul(V,E),L=r.mul(m,L),H=r.mul(d,H),V=r.sub(N,H),V=r.mul(d,V),V=r.add(V,L),L=r.add(N,N),N=r.add(L,N),N=r.add(N,H),N=r.mul(N,V),S=r.add(S,N),H=r.mul(b,_),H=r.add(H,H),N=r.mul(H,V),E=r.sub(E,N),L=r.mul(H,z),L=r.add(L,L),L=r.add(L,L),new h(E,S,L)}add(d){f(d);let{px:y,py:m,pz:w}=this,{px:b,py:_,pz:E}=d,S=r.ZERO,L=r.ZERO,N=r.ZERO,z=e.a,H=r.mul(e.b,pc),V=r.mul(y,b),Q=r.mul(m,_),ot=r.mul(w,E),Nt=r.add(y,m),C=r.add(b,_);Nt=r.mul(Nt,C),C=r.add(V,Q),Nt=r.sub(Nt,C),C=r.add(y,w);let P=r.add(b,E);return C=r.mul(C,P),P=r.add(V,ot),C=r.sub(C,P),P=r.add(m,w),S=r.add(_,E),P=r.mul(P,S),S=r.add(Q,ot),P=r.sub(P,S),N=r.mul(z,C),S=r.mul(H,ot),N=r.add(S,N),S=r.sub(Q,N),N=r.add(Q,N),L=r.mul(S,N),Q=r.add(V,V),Q=r.add(Q,V),ot=r.mul(z,ot),C=r.mul(H,C),Q=r.add(Q,ot),ot=r.sub(V,ot),ot=r.mul(z,ot),C=r.add(C,ot),V=r.mul(Q,C),L=r.add(L,V),V=r.mul(P,C),S=r.mul(Nt,S),S=r.sub(S,V),V=r.mul(Nt,Q),N=r.mul(P,N),N=r.add(N,V),new h(S,L,N)}subtract(d){return this.add(d.negate())}is0(){return this.equals(h.ZERO)}wNAF(d){return g.wNAFCached(this,c,d,y=>{let m=r.invertBatch(y.map(w=>w.pz));return y.map((w,b)=>w.toAffine(m[b])).map(h.fromAffine)})}multiplyUnsafe(d){let y=h.ZERO;if(d===Ke)return y;if(a(d),d===te)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,d);let{k1neg:w,k1:b,k2neg:_,k2:E}=m.splitScalar(d),S=y,L=y,N=this;for(;b>Ke||E>Ke;)b&te&&(S=S.add(N)),E&te&&(L=L.add(N)),N=N.double(),b>>=te,E>>=te;return w&&(S=S.negate()),_&&(L=L.negate()),L=new h(r.mul(L.px,m.beta),L.py,L.pz),S.add(L)}multiply(d){a(d);let y=d,m,w,{endo:b}=e;if(b){let{k1neg:_,k1:E,k2neg:S,k2:L}=b.splitScalar(y),{p:N,f:z}=this.wNAF(E),{p:H,f:V}=this.wNAF(L);N=g.constTimeNegate(_,N),H=g.constTimeNegate(S,H),H=new h(r.mul(H.px,b.beta),H.py,H.pz),m=N.add(H),w=z.add(V)}else{let{p:_,f:E}=this.wNAF(y);m=_,w=E}return h.normalizeZ([m,w])[0]}multiplyAndAddUnsafe(d,y,m){let w=h.BASE,b=(E,S)=>S===Ke||S===te||!E.equals(w)?E.multiplyUnsafe(S):E.multiply(S),_=b(this,y).add(b(d,m));return _.is0()?void 0:_}toAffine(d){let{px:y,py:m,pz:w}=this,b=this.is0();d==null&&(d=b?r.ONE:r.inv(w));let _=r.mul(y,d),E=r.mul(m,d),S=r.mul(w,d);if(b)return{x:r.ZERO,y:r.ZERO};if(!r.eql(S,r.ONE))throw new Error("invZ was invalid");return{x:_,y:E}}isTorsionFree(){let{h:d,isTorsionFree:y}=e;if(d===te)return!0;if(y)return y(h,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:y}=e;return d===te?this:y?y(h,this):this.multiplyUnsafe(e.h)}toRawBytes(d=!0){return this.assertValidity(),n(h,this,d)}toHex(d=!0){return Le(this.toRawBytes(d))}}h.BASE=new h(e.Gx,e.Gy,r.ONE),h.ZERO=new h(r.ZERO,r.ONE,r.ZERO);let l=e.nBitLength,g=Si(h,e.endo?Math.ceil(l/2):l);return{CURVE:e,ProjectivePoint:h,normPrivateKeyToScalar:u,weierstrassEquation:s,isWithinCurveOrder:o}}function ky(t){let e=vn(t);return we(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function dc(t){let e=ky(t),{Fp:r,n}=e,i=r.BYTES+1,s=2*r.BYTES+1;function o(C){return Ke<C&&C<r.ORDER}function a(C){return at(C,n)}function u(C){return wi(C,n)}let{ProjectivePoint:c,normPrivateKeyToScalar:f,weierstrassEquation:h,isWithinCurveOrder:l}=Py({...e,toBytes(C,P,R){let D=P.toAffine(),A=r.toBytes(D.x),K=De;return R?K(Uint8Array.from([P.hasEvenY()?2:3]),A):K(Uint8Array.from([4]),A,r.toBytes(D.y))},fromBytes(C){let P=C.length,R=C[0],D=C.subarray(1);if(P===i&&(R===2||R===3)){let A=Ne(D);if(!o(A))throw new Error("Point is not on curve");let K=h(A),M=r.sqrt(K),q=(M&te)===te;return(R&1)===1!==q&&(M=r.neg(M)),{x:A,y:M}}else if(P===s&&R===4){let A=r.fromBytes(D.subarray(0,r.BYTES)),K=r.fromBytes(D.subarray(r.BYTES,2*r.BYTES));return{x:A,y:K}}else throw new Error(`Point of length ${P} was invalid. Expected ${i} compressed bytes or ${s} uncompressed bytes`)}}),g=C=>Le($e(C,e.nByteLength));function p(C){let P=n>>te;return C>P}function d(C){return p(C)?a(-C):C}let y=(C,P,R)=>Ne(C.slice(P,R));class m{constructor(P,R,D){this.r=P,this.s=R,this.recovery=D,this.assertValidity()}static fromCompact(P){let R=e.nByteLength;return P=xt("compactSignature",P,R*2),new m(y(P,0,R),y(P,R,2*R))}static fromDER(P){let{r:R,s:D}=xr.toSig(xt("DER",P));return new m(R,D)}assertValidity(){if(!l(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!l(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(P){return new m(this.r,this.s,P)}recoverPublicKey(P){let{r:R,s:D,recovery:A}=this,K=L(xt("msgHash",P));if(A==null||![0,1,2,3].includes(A))throw new Error("recovery id invalid");let M=A===2||A===3?R+e.n:R;if(M>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=A&1?"03":"02",$=c.fromHex(q+g(M)),X=u(M),it=a(-K*X),J=a(D*X),et=c.BASE.multiplyAndAddUnsafe($,it,J);if(!et)throw new Error("point at infinify");return et.assertValidity(),et}hasHighS(){return p(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return cr(this.toDERHex())}toDERHex(){return xr.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return cr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let w={isValidPrivateKey(C){try{return f(C),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let C=ro(e.n);return vu(e.randomBytes(C),e.n)},precompute(C=8,P=c.BASE){return P._setWindowSize(C),P.multiply(BigInt(3)),P}};function b(C,P=!0){return c.fromPrivateKey(C).toRawBytes(P)}function _(C){let P=oe(C),R=typeof C=="string",D=(P||R)&&C.length;return P?D===i||D===s:R?D===2*i||D===2*s:C instanceof c}function E(C,P,R=!0){if(_(C))throw new Error("first arg must be private key");if(!_(P))throw new Error("second arg must be public key");return c.fromHex(P).multiply(f(C)).toRawBytes(R)}let S=e.bits2int||function(C){let P=Ne(C),R=C.length*8-e.nBitLength;return R>0?P>>BigInt(R):P},L=e.bits2int_modN||function(C){return a(S(C))},N=bn(e.nBitLength);function z(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(Ke<=C&&C<N))throw new Error(`bigint expected < 2^${e.nBitLength}`);return $e(C,e.nByteLength)}function H(C,P,R=V){if(["recovered","canonical"].some(gt=>gt in R))throw new Error("sign() legacy options not supported");let{hash:D,randomBytes:A}=e,{lowS:K,prehash:M,extraEntropy:q}=R;K==null&&(K=!0),C=xt("msgHash",C),M&&(C=xt("prehashed msgHash",D(C)));let $=L(C),X=f(P),it=[z(X),z($)];if(q!=null){let gt=q===!0?A(r.BYTES):q;it.push(xt("extraEntropy",gt))}let J=De(...it),et=$;function wt(gt){let Dt=S(gt);if(!l(Dt))return;let Pt=u(Dt),Bt=c.BASE.multiply(Dt).toAffine(),Ut=a(Bt.x);if(Ut===Ke)return;let Se=a(Pt*a(et+Ut*X));if(Se===Ke)return;let Je=(Bt.x===Ut?0:2)|Number(Bt.y&te),Qr=Se;return K&&p(Se)&&(Qr=d(Se),Je^=1),new m(Ut,Qr,Je)}return{seed:J,k2sig:wt}}let V={lowS:e.lowS,prehash:!1},Q={lowS:e.lowS,prehash:!1};function ot(C,P,R=V){let{seed:D,k2sig:A}=H(C,P,R),K=e;return Js(K.hash.outputLen,K.nByteLength,K.hmac)(D,A)}c.BASE._setWindowSize(8);function Nt(C,P,R,D=Q){let A=C;if(P=xt("msgHash",P),R=xt("publicKey",R),"strict"in D)throw new Error("options.strict was renamed to lowS");let{lowS:K,prehash:M}=D,q,$;try{if(typeof A=="string"||oe(A))try{q=m.fromDER(A)}catch(Bt){if(!(Bt instanceof xr.Err))throw Bt;q=m.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:Bt,s:Ut}=A;q=new m(Bt,Ut)}else throw new Error("PARSE");$=c.fromHex(R)}catch(Bt){if(Bt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(K&&q.hasHighS())return!1;M&&(P=e.hash(P));let{r:X,s:it}=q,J=L(P),et=u(it),wt=a(J*et),gt=a(X*et),Dt=c.BASE.multiplyAndAddUnsafe($,wt,gt)?.toAffine();return Dt?a(Dt.x)===X:!1}return{CURVE:e,getPublicKey:b,getSharedSecret:E,sign:ot,verify:Nt,ProjectivePoint:c,Signature:m,utils:w}}var Pi=class extends Fr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,au(e);let n=xn(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,s=new Uint8Array(i);s.set(n.length>i?e.create().update(n).digest():n);for(let o=0;o<s.length;o++)s[o]^=54;this.iHash.update(s),this.oHash=e.create();for(let o=0;o<s.length;o++)s[o]^=106;this.oHash.update(s),s.fill(0)}update(e){return Mr(this),this.iHash.update(e),this}digestInto(e){Mr(this),Gs(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:s,blockLen:o,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=s,e.blockLen=o,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},No=(t,e,r)=>new Pi(t,e).update(r).digest();No.create=(t,e)=>new Pi(t,e);function Uy(t){return{hash:t,hmac:(e,...r)=>No(t,e,gi(...r)),randomBytes:Vr}}function yc(t,e){let r=n=>dc({...t,...Uy(n)});return Object.freeze({...r(e),create:r})}var xc=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),gc=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Ky=BigInt(1),Do=BigInt(2),mc=(t,e)=>(t+e/Do)/e;function Oy(t){let e=xc,r=BigInt(3),n=BigInt(6),i=BigInt(11),s=BigInt(22),o=BigInt(23),a=BigInt(44),u=BigInt(88),c=t*t*t%e,f=c*c*t%e,h=yt(f,r,e)*f%e,l=yt(h,r,e)*f%e,g=yt(l,Do,e)*c%e,p=yt(g,i,e)*g%e,d=yt(p,s,e)*p%e,y=yt(d,a,e)*d%e,m=yt(y,u,e)*y%e,w=yt(m,a,e)*d%e,b=yt(w,r,e)*f%e,_=yt(b,o,e)*p%e,E=yt(_,n,e)*c%e,S=yt(E,Do,e);if(!Po.eql(Po.sqr(S),t))throw new Error("Cannot find square root");return S}var Po=Ei(xc,void 0,void 0,{sqrt:Oy}),he=yc({a:BigInt(0),b:BigInt(7),Fp:Po,n:gc,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=gc,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Ky*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=r,o=BigInt("0x100000000000000000000000000000000"),a=mc(s*t,e),u=mc(-n*t,e),c=at(t-a*r-u*i,e),f=at(-a*n-u*s,e),h=c>o,l=f>o;if(h&&(c=e-c),l&&(f=e-f),c>o||f>o)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:h,k1:c,k2neg:l,k2:f}}}},lc),ow=BigInt(0);var aw=he.ProjectivePoint;function bc(){return he.utils.randomPrivateKey()}function vc(t,e){let r=It.digest(e instanceof Uint8Array?e:e.subarray());if(jt(r))return r.then(({digest:n})=>he.sign(n,t).toDERRawBytes()).catch(n=>{throw new O(String(n),"ERR_INVALID_INPUT")});try{return he.sign(r.digest,t).toDERRawBytes()}catch(n){throw new O(String(n),"ERR_INVALID_INPUT")}}function wc(t,e,r){let n=It.digest(r instanceof Uint8Array?r:r.subarray());if(jt(n))return n.then(({digest:i})=>he.verify(e,i,t)).catch(i=>{throw new O(String(i),"ERR_INVALID_INPUT")});try{return he.verify(e,n.digest,t)}catch(i){throw new O(String(i),"ERR_INVALID_INPUT")}}function Ec(t){return he.ProjectivePoint.fromHex(t).toRawBytes(!0)}function Sc(t){try{he.getPublicKey(t,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}function ko(t){try{he.ProjectivePoint.fromHex(t)}catch(e){throw new O(String(e),"ERR_INVALID_PUBLIC_KEY")}}function Bc(t){try{return he.getPublicKey(t,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}var _n=class{_key;constructor(e){ko(e),this._key=e}verify(e,r){return wc(this._key,r,e)}marshal(){return Ec(this._key)}get bytes(){return ce.encode({Type:ht.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return ne(this.bytes,e.bytes)}async hash(){let e=It.digest(this.bytes),r;return jt(e)?{bytes:r}=await e:r=e.bytes,r}},Rn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??Bc(e),Sc(this._key),ko(this._publicKey)}sign(e){return vc(this._key,e)}get public(){return new _n(this._publicKey)}marshal(){return this._key}get bytes(){return fe.encode({Type:ht.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return ne(this.bytes,e.bytes)}hash(){let e=It.digest(this.bytes);return jt(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return kt(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Gr(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Fy(t){return new Rn(t)}function Vy(t){return new _n(t)}async function qy(){let t=bc();return new Rn(t)}var Ee={rsa:Ro,ed25519:Bo,secp256k1:Uo};function Ko(t){let e=Object.keys(Ee).join(" / ");return new O(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Oo(t){if(t=t.toLowerCase(),t==="rsa"||t==="ed25519"||t==="secp256k1")return Ee[t];throw Ko(t)}async function Hy(t,e){return Oo(t).generateKeyPair(e??2048)}async function zy(t,e,r){if(t.toLowerCase()!=="ed25519")throw new O("Seed key derivation is unimplemented for RSA or secp256k1","ERR_UNSUPPORTED_KEY_DERIVATION_TYPE");return So(e)}function Gy(t){let e=ce.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case ht.RSA:return Ee.rsa.unmarshalRsaPublicKey(r);case ht.Ed25519:return Ee.ed25519.unmarshalEd25519PublicKey(r);case ht.Secp256k1:return Ee.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Ko(e.Type??"unknown")}}function Yy(t,e){return e=(e??"rsa").toLowerCase(),Oo(e),t.bytes}async function Ac(t){let e=fe.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case ht.RSA:return Ee.rsa.unmarshalRsaPrivateKey(r);case ht.Ed25519:return Ee.ed25519.unmarshalEd25519PrivateKey(r);case ht.Secp256k1:return Ee.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Ko(e.Type??"RSA")}}function Wy(t,e){return e=(e??"rsa").toLowerCase(),Oo(e),t.bytes}async function $y(t,e){try{let i=await $u(t,e);return await Ac(i)}catch{}let r=ki.default.pki.decryptRsaPrivateKey(t,e);if(r===null)throw new O("Cannot read the key, most likely the password is wrong or not a RSA key","ERR_CANNOT_DECRYPT_PEM");let n=ki.default.asn1.toDer(ki.default.pki.privateKeyToAsn1(r));return n=Ft(n.getBytes(),"ascii"),Ee.rsa.unmarshalRsaPrivateKey(n)}var Zy=At(ks(),1),Qy=At(bt(),1);function br(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Ui(t=0){return globalThis.Buffer?.allocUnsafe!=null?br(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function Mo(t,e){if(globalThis.Buffer!=null)return br(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,s)=>i+s.length,0));let r=Ui(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return br(r)}function Cc(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var Ic=Cc("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Fo=Cc("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);let e=Ui(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Xy={utf8:Ic,"utf-8":Ic,hex:Qt.base16,latin1:Fo,ascii:Fo,binary:Fo,...Qt},Ki=Xy;function Nn(t,e="utf8"){let r=Ki[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?br(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function Vo(t,e="utf8"){let r=Ki[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}function Tc(){return BigInt(`0x${Vo(gr(8),"base16")}`)}var _c=(t,e)=>{let r=Nn(e.toString(16).padStart(16,"0"),"base16"),n=new Uint8Array(t.length+r.length);return n.set(t,0),n.set(r,t.length),n},Rc=t=>It.encode(t);var Lc=function(t){return Array.isArray(t)?t:[t]},Jy=async t=>{if(t.sequenceNumber==null||t.from==null||t.signature==null)return!1;let e=sn(t.from);return e.publicKey!=null?!0:t.key!=null?(await Un(t.key)).equals(e):!1},Nc=async t=>{if(t.from==null)throw new O("RPC message was missing from",Ct.ERR_MISSING_FROM);if(!await Jy(t))return{type:"unsigned",topic:t.topic??"",data:t.data??new Uint8Array(0)};let e=sn(t.from),r={type:"signed",from:sn(t.from),topic:t.topic??"",sequenceNumber:t1(t.sequenceNumber??new Uint8Array(0)),data:t.data??new Uint8Array(0),signature:t.signature??new Uint8Array(0),key:t.key??e.publicKey??new Uint8Array(0)};if(r.key.length===0)throw new O("Signed RPC message was missing key",Ct.ERR_MISSING_KEY);return r},Dn=t=>t.type==="signed"?{from:t.from.multihash.bytes,data:t.data,sequenceNumber:jy(t.sequenceNumber),topic:t.topic,signature:t.signature,key:t.key}:{data:t.data,topic:t.topic},jy=t=>{let e=t.toString(16);return e.length%2!==0&&(e=`0${e}`),Nn(e,"base16")},t1=t=>BigInt(`0x${Vo(t,"base16")}`);var Dc=Nn("libp2p-pubsub:");async function Pc(t,e,r){if(t.privateKey==null)throw new Error("Cannot sign message, no private key present");if(t.publicKey==null)throw new Error("Cannot sign message, no public key present");let n={type:"signed",topic:e.topic,data:e.data,sequenceNumber:e.sequenceNumber,from:t},i=Mo([Dc,r(Dn(n)).subarray()]),s=await Ln.unmarshalPrivateKey(t.privateKey);return n.signature=await s.sign(i),n.key=t.publicKey,n}async function kc(t,e){if(t.type!=="signed")throw new Error('Message type must be "signed" to be verified');if(t.signature==null)throw new Error("Message must contain a signature to be verified");if(t.from==null)throw new Error("Message must contain a from property to be verified");let r=Mo([Dc,e({...Dn(t),signature:void 0,key:void 0}).subarray()]),n=await e1(t);return Ln.unmarshalPublicKey(n).verify(r,t.signature)}async function e1(t){if(t.type!=="signed")throw new Error('Message type must be "signed" to have a public key');if(t.from==null)throw new Error("Could not get the public key from the originator id");if(t.key!=null){let e=await Un(t.key);if(e.publicKey!=null)return e.publicKey}if(t.from.publicKey!=null)return t.from.publicKey;throw new Error("Could not get the public key from the originator id")}var qo=class extends vr{log;started;topics;subscriptions;peers;globalSignaturePolicy;canRelayMessage;emitSelf;topicValidators;queue;multicodecs;components;_registrarTopologyIds;enabled;maxInboundStreams;maxOutboundStreams;constructor(e,r){super();let{multicodecs:n=[],globalSignaturePolicy:i="StrictSign",canRelayMessage:s=!1,emitSelf:o=!1,messageProcessingConcurrency:a=10,maxInboundStreams:u=1,maxOutboundStreams:c=1}=r;this.log=e.logger.forComponent("libp2p:pubsub"),this.components=e,this.multicodecs=Lc(n),this.enabled=r.enabled!==!1,this.started=!1,this.topics=new Map,this.subscriptions=new Set,this.peers=new Rr,this.globalSignaturePolicy=i==="StrictNoSign"?"StrictNoSign":"StrictSign",this.canRelayMessage=s,this.emitSelf=o,this.topicValidators=new Map,this.queue=new fn({concurrency:a}),this.maxInboundStreams=u,this.maxOutboundStreams=c,this._onIncomingStream=this._onIncomingStream.bind(this),this._onPeerConnected=this._onPeerConnected.bind(this),this._onPeerDisconnected=this._onPeerDisconnected.bind(this)}async start(){if(this.started||!this.enabled)return;this.log("starting");let e=this.components.registrar;await Promise.all(this.multicodecs.map(async n=>{await e.handle(n,this._onIncomingStream,{maxInboundStreams:this.maxInboundStreams,maxOutboundStreams:this.maxOutboundStreams})}));let r={onConnect:this._onPeerConnected,onDisconnect:this._onPeerDisconnected};this._registrarTopologyIds=await Promise.all(this.multicodecs.map(async n=>e.register(n,r))),this.log("started"),this.started=!0}async stop(){if(!this.started||!this.enabled)return;let e=this.components.registrar;this._registrarTopologyIds!=null&&this._registrarTopologyIds?.forEach(r=>{e.unregister(r)}),await Promise.all(this.multicodecs.map(async r=>{await e.unhandle(r)})),this.log("stopping");for(let r of this.peers.values())r.close();this.peers.clear(),this.subscriptions=new Set,this.started=!1,this.log("stopped")}isStarted(){return this.started}_onIncomingStream(e){let{stream:r,connection:n}=e,i=n.remotePeer;if(r.protocol==null){r.abort(new Error("Stream was not multiplexed"));return}let s=this.addPeer(i,r.protocol),o=s.attachInboundStream(r);this.processMessages(i,o,s).catch(a=>{this.log(a)})}_onPeerConnected(e,r){if(this.log("connected %p",e),r.streams.find(n=>n.direction==="outbound"&&n.protocol!=null&&this.multicodecs.includes(n.protocol))!=null){this.log("outbound pubsub streams already present on connection from %p",e);return}Promise.resolve().then(async()=>{try{let n=await r.newStream(this.multicodecs);if(n.protocol==null){n.abort(new Error("Stream was not multiplexed"));return}await this.addPeer(e,n.protocol).attachOutboundStream(n)}catch(n){this.log.error(n)}this.send(e,{subscriptions:Array.from(this.subscriptions).map(n=>n.toString()),subscribe:!0})}).catch(n=>{this.log.error(n)})}_onPeerDisconnected(e,r){let n=e.toString();this.log("connection ended",n),this._removePeer(e)}addPeer(e,r){let n=this.peers.get(e);if(n!=null)return n;this.log("new peer %p",e);let i=new Gn(this.components,{id:e,protocol:r});return this.peers.set(e,i),i.addEventListener("close",()=>this._removePeer(e),{once:!0}),i}_removePeer(e){let r=this.peers.get(e);if(r!=null){r.close(),this.log("delete peer %p",e),this.peers.delete(e);for(let n of this.topics.values())n.delete(e);return r}}async processMessages(e,r,n){try{await on(r,async i=>{for await(let s of i){let o=this.decodeRpc(s),a=[];for(let u of o.messages??[]){if(u.from==null||u.data==null||u.topic==null){this.log("message from %p was missing from, data or topic fields, dropping",e);continue}a.push({from:u.from,data:u.data,topic:u.topic,sequenceNumber:u.sequenceNumber??void 0,signature:u.signature??void 0,key:u.key??void 0})}this.processRpc(e,n,{subscriptions:(o.subscriptions??[]).map(u=>({subscribe:!!u.subscribe,topic:u.topic??""})),messages:a}).catch(u=>{this.log(u)})}})}catch(i){this._onPeerDisconnected(n.id,i)}}async processRpc(e,r,n){if(!this.acceptFrom(e))return this.log("received message from unacceptable peer %p",e),!1;this.log("rpc from %p",e);let{subscriptions:i,messages:s}=n;return i!=null&&i.length>0&&(this.log("subscription update from %p",e),i.forEach(o=>{this.processRpcSubOpt(e,o)}),super.dispatchEvent(new le("subscription-change",{detail:{peerId:r.id,subscriptions:i.map(({topic:o,subscribe:a})=>({topic:`${o??""}`,subscribe:!!a}))}}))),s!=null&&s.length>0&&(this.log("messages from %p",e),this.queue.addAll(s.map(o=>async()=>{if(o.topic==null||!this.subscriptions.has(o.topic)&&!this.canRelayMessage)return this.log("received message we didn't subscribe to. Dropping."),!1;try{let a=await Nc(o);await this.processMessage(e,a)}catch(a){this.log.error(a)}})).catch(o=>{this.log(o)})),!0}processRpcSubOpt(e,r){let n=r.topic;if(n==null)return;let i=this.topics.get(n);i==null&&(i=new Lr,this.topics.set(n,i)),r.subscribe===!0?i.add(e):i.delete(e)}async processMessage(e,r){if(!(this.components.peerId.equals(e)&&!this.emitSelf)){try{await this.validate(e,r)}catch(n){this.log("Message is invalid, dropping it. %O",n);return}this.subscriptions.has(r.topic)&&(!this.components.peerId.equals(e)||this.emitSelf)&&super.dispatchEvent(new le("message",{detail:r})),await this.publishMessage(e,r)}}getMsgId(e){switch(this.globalSignaturePolicy){case"StrictSign":if(e.type!=="signed")throw new O('Message type should be "signed" when signature policy is StrictSign but it was not',Ct.ERR_MISSING_SIGNATURE);if(e.sequenceNumber==null)throw new O("Need seqno when signature policy is StrictSign but it was missing",Ct.ERR_MISSING_SEQNO);if(e.key==null)throw new O("Need key when signature policy is StrictSign but it was missing",Ct.ERR_MISSING_KEY);return _c(e.key,e.sequenceNumber);case"StrictNoSign":return Rc(e.data);default:throw new O("Cannot get message id: unhandled signature policy",Ct.ERR_UNHANDLED_SIGNATURE_POLICY)}}acceptFrom(e){return!0}send(e,r){let{messages:n,subscriptions:i,subscribe:s}=r;this.sendRpc(e,{subscriptions:(i??[]).map(o=>({topic:o,subscribe:!!s})),messages:(n??[]).map(Dn)})}sendRpc(e,r){let n=this.peers.get(e);if(n==null){this.log.error("Cannot send RPC to %p as there are no streams to it available",e);return}if(!n.isWritable){this.log.error("Cannot send RPC to %p as there is no outbound stream to it available",e);return}n.write(this.encodeRpc(r))}async validate(e,r){switch(this.globalSignaturePolicy){case"StrictNoSign":if(r.type!=="unsigned")throw new O('Message type should be "unsigned" when signature policy is StrictNoSign but it was not',Ct.ERR_MISSING_SIGNATURE);if(r.signature!=null)throw new O("StrictNoSigning: signature should not be present",Ct.ERR_UNEXPECTED_SIGNATURE);if(r.key!=null)throw new O("StrictNoSigning: key should not be present",Ct.ERR_UNEXPECTED_KEY);if(r.sequenceNumber!=null)throw new O("StrictNoSigning: seqno should not be present",Ct.ERR_UNEXPECTED_SEQNO);break;case"StrictSign":if(r.type!=="signed")throw new O('Message type should be "signed" when signature policy is StrictSign but it was not',Ct.ERR_MISSING_SIGNATURE);if(r.signature==null)throw new O("StrictSigning: Signing required and no signature was present",Ct.ERR_MISSING_SIGNATURE);if(r.sequenceNumber==null)throw new O("StrictSigning: Signing required and no sequenceNumber was present",Ct.ERR_MISSING_SEQNO);if(!await kc(r,this.encodeMessage.bind(this)))throw new O("StrictSigning: Invalid message signature",Ct.ERR_INVALID_SIGNATURE);break;default:throw new O("Cannot validate message: unhandled signature policy",Ct.ERR_UNHANDLED_SIGNATURE_POLICY)}let i=this.topicValidators.get(r.topic);if(i!=null){let s=await i(e,r);if(s===Xr.Reject||s===Xr.Ignore)throw new O("Message validation failed",Ct.ERR_TOPIC_VALIDATOR_REJECT)}}async buildMessage(e){switch(this.globalSignaturePolicy){case"StrictSign":return Pc(this.components.peerId,e,this.encodeMessage.bind(this));case"StrictNoSign":return Promise.resolve({type:"unsigned",...e});default:throw new O("Cannot build message: unhandled signature policy",Ct.ERR_UNHANDLED_SIGNATURE_POLICY)}}getSubscribers(e){if(!this.started)throw new O("not started yet","ERR_NOT_STARTED_YET");if(e==null)throw new O("topic is required","ERR_NOT_VALID_TOPIC");let r=this.topics.get(e.toString());return r==null?[]:Array.from(r.values())}async publish(e,r){if(!this.started)throw new Error("Pubsub has not started");let n={from:this.components.peerId,topic:e,data:r??new Uint8Array(0),sequenceNumber:Tc()};this.log("publish topic: %s from: %p data: %m",e,n.from,n.data);let i=await this.buildMessage(n),s=!1;this.emitSelf&&this.subscriptions.has(e)&&(s=!0,super.dispatchEvent(new le("message",{detail:i})));let o=await this.publishMessage(this.components.peerId,i);return s&&(o.recipients=[...o.recipients,this.components.peerId]),o}subscribe(e){if(!this.started)throw new Error("Pubsub has not started");if(this.log("subscribe to topic: %s",e),!this.subscriptions.has(e)){this.subscriptions.add(e);for(let r of this.peers.keys())this.send(r,{subscriptions:[e],subscribe:!0})}}unsubscribe(e){if(!this.started)throw new Error("Pubsub is not started");super.removeEventListener(e);let r=this.subscriptions.has(e);if(this.log("unsubscribe from %s - am subscribed %s",e,r),r){this.subscriptions.delete(e);for(let n of this.peers.keys())this.send(n,{subscriptions:[e],subscribe:!1})}}getTopics(){if(!this.started)throw new Error("Pubsub is not started");return Array.from(this.subscriptions)}getPeers(){if(!this.started)throw new Error("Pubsub is not started");return Array.from(this.peers.keys())}};return Zc(r1);})();
|
16
16
|
/*! Bundled license information:
|
17
17
|
|
18
18
|
@noble/hashes/esm/utils.js:
|