@libp2p/pubsub 8.0.11-551622a96 → 8.0.11-8e4fbe13a
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.min.js +5 -5
- package/package.json +9 -9
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 rf=Object.create;var qn=Object.defineProperty;var nf=Object.getOwnPropertyDescriptor;var sf=Object.getOwnPropertyNames;var of=Object.getPrototypeOf,af=Object.prototype.hasOwnProperty;var ct=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),It=(t,e)=>{for(var r in e)qn(t,r,{get:e[r],enumerable:!0})},ca=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of sf(e))!af.call(t,i)&&i!==r&&qn(t,i,{get:()=>e[i],enumerable:!(n=nf(e,i))||n.enumerable});return t};var Rt=(t,e,r)=>(r=t!=null?rf(of(t)):{},ca(e||!t||!t.__esModule?qn(r,"default",{value:t,enumerable:!0}):r,t)),uf=t=>ca(qn({},"__esModule",{value:!0}),t);var Ua=ct((
|
3
|
-
`)}return n};Os.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=s0[e];if(!r){r=s0[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 Dh(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 St=ct((cm,h0)=>{var u0=ot(),c0=a0(),x=h0.exports=u0.util=u0.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 wn(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}x.ByteBuffer=Ms;function Ms(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 Ms||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}x.ByteStringBuffer=Ms;var Ph=4096;x.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>Ph&&(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){wn(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){wn(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 kh(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=kh;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){wn(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 wn(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){wn(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 Qe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",$e=[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],f0="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+=Qe.charAt(i>>2),r+=Qe.charAt((i&3)<<4|s>>4),isNaN(s)?r+="==":(r+=Qe.charAt((s&15)<<2|o>>6),r+=isNaN(o)?"=":Qe.charAt(o&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
2
|
+
"use strict";var Libp2PPubsub=(()=>{var rf=Object.create;var qn=Object.defineProperty;var nf=Object.getOwnPropertyDescriptor;var sf=Object.getOwnPropertyNames;var of=Object.getPrototypeOf,af=Object.prototype.hasOwnProperty;var ct=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),It=(t,e)=>{for(var r in e)qn(t,r,{get:e[r],enumerable:!0})},ca=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of sf(e))!af.call(t,i)&&i!==r&&qn(t,i,{get:()=>e[i],enumerable:!(n=nf(e,i))||n.enumerable});return t};var Rt=(t,e,r)=>(r=t!=null?rf(of(t)):{},ca(e||!t||!t.__esModule?qn(r,"default",{value:t,enumerable:!0}):r,t)),uf=t=>ca(qn({},"__esModule",{value:!0}),t);var Ua=ct((g2,Bs)=>{"use strict";var vh=Object.prototype.hasOwnProperty,Qt="~";function pn(){}Object.create&&(pn.prototype=Object.create(null),new pn().__proto__||(Qt=!1));function wh(t,e,r){this.fn=t,this.context=e,this.once=r||!1}function ka(t,e,r,n,i){if(typeof r!="function")throw new TypeError("The listener must be a function");var s=new wh(r,n||t,i),o=Qt?Qt+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 Wn(t,e){--t._eventsCount===0?t._events=new pn:delete t._events[e]}function qt(){this._events=new pn,this._eventsCount=0}qt.prototype.eventNames=function(){var e=[],r,n;if(this._eventsCount===0)return e;for(n in r=this._events)vh.call(r,n)&&e.push(Qt?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e};qt.prototype.listeners=function(e){var r=Qt?Qt+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};qt.prototype.listenerCount=function(e){var r=Qt?Qt+e:e,n=this._events[r];return n?n.fn?1:n.length:0};qt.prototype.emit=function(e,r,n,i,s,o){var a=Qt?Qt+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};qt.prototype.on=function(e,r,n){return ka(this,e,r,n,!1)};qt.prototype.once=function(e,r,n){return ka(this,e,r,n,!0)};qt.prototype.removeListener=function(e,r,n,i){var s=Qt?Qt+e:e;if(!this._events[s])return this;if(!r)return Wn(this,s),this;var o=this._events[s];if(o.fn)o.fn===r&&(!i||o.once)&&(!n||o.context===n)&&Wn(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:Wn(this,s)}return this};qt.prototype.removeAllListeners=function(e){var r;return e?(r=Qt?Qt+e:e,this._events[r]&&Wn(this,r)):(this._events=new pn,this._eventsCount=0),this};qt.prototype.off=qt.prototype.removeListener;qt.prototype.addListener=qt.prototype.on;qt.prefixed=Qt;qt.EventEmitter=qt;typeof Bs<"u"&&(Bs.exports=qt)});var n0=ct((Q2,r0)=>{"use strict";function e0(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function Th(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 e0(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),e0(new i,r)}}r0.exports=Th});var ot=ct((um,i0)=>{i0.exports={options:{usePureJavaScript:!1}}});var a0=ct((cm,o0)=>{var Os={};o0.exports=Os;var s0={};Os.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=Dh(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};Os.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=s0[e];if(!r){r=s0[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 Dh(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 St=ct((fm,h0)=>{var u0=ot(),c0=a0(),x=h0.exports=u0.util=u0.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 wn(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}x.ByteBuffer=Ms;function Ms(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 Ms||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}x.ByteStringBuffer=Ms;var Ph=4096;x.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>Ph&&(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){wn(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){wn(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 kh(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=kh;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){wn(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 wn(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){wn(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 Qe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",$e=[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],f0="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+=Qe.charAt(i>>2),r+=Qe.charAt((i&3)<<4|s>>4),isNaN(s)?r+="==":(r+=Qe.charAt((s&15)<<2|o>>6),r+=isNaN(o)?"=":Qe.charAt(o&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
4
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=$e[t.charCodeAt(o++)-43],n=$e[t.charCodeAt(o++)-43],i=$e[t.charCodeAt(o++)-43],s=$e[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:c0.encode,decode:c0.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+=Qe.charAt(i>>2),r+=Qe.charAt((i&3)<<4|s>>4),isNaN(s)?r+="==":(r+=Qe.charAt((s&15)<<2|o>>6),r+=isNaN(o)?"=":Qe.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=$e[t.charCodeAt(u++)-43],s=$e[t.charCodeAt(u++)-43],o=$e[t.charCodeAt(u++)-43],a=$e[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,f0,e)};x.binary.base58.decode=function(t,e){return x.binary.baseN.decode(t,f0,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 Fs=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}},Vs=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},Uh=function(t,e,r,n){var i=Vs(t,e);i===null&&(i={}),i[r]=n,Fs(t,e,i)},Kh=function(t,e,r){var n=Vs(t,e);return n!==null&&(n=r in n?n[r]:null),n},Oh=function(t,e,r){var n=Vs(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),Fs(t,e,n)}},Mh=function(t,e){Fs(t,e,null)},ai=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){ai(Uh,arguments,i)};x.getItem=function(t,e,r,n){return ai(Kh,arguments,n)};x.removeItem=function(t,e,r,n){ai(Oh,arguments,n)};x.clearItems=function(t,e,r){ai(Mh,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 Hs=ct((fm,l0)=>{var Pt=ot();St();l0.exports=Pt.cipher=Pt.cipher||{};Pt.cipher.algorithms=Pt.cipher.algorithms||{};Pt.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Pt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Pt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Pt.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Pt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Pt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Pt.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Pt.cipher.algorithms[t]=e};Pt.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Pt.cipher.algorithms?Pt.cipher.algorithms[t]:null};var qs=Pt.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)};qs.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=Pt.util.createBuffer(),this.output=t.output||Pt.util.createBuffer(),this.mode.start(e)};qs.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()};qs.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 Gs=ct((hm,p0)=>{var kt=ot();St();kt.cipher=kt.cipher||{};var Z=p0.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=ui(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=ui(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=ui(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=ui(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}ci(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(zs(n*8)))}this._inBlock=this._j0.slice(0),ci(this._inBlock),this._partialBytes=0,r=kt.util.createBuffer(r),this._aDataLength=zs(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),ci(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),ci(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(zs(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 ui(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 ci(t){t[t.length-1]=t[t.length-1]+1&4294967295}function zs(t){return[t/4294967296|0,t&4294967295]}});var hi=ct((lm,m0)=>{var ft=ot();Hs();Gs();St();m0.exports=ft.aes=ft.aes||{};ft.aes.startEncrypting=function(t,e,r,n){var i=fi({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};ft.aes.createEncryptionCipher=function(t,e){return fi({key:t,output:null,decrypt:!1,mode:e})};ft.aes.startDecrypting=function(t,e,r,n){var i=fi({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};ft.aes.createDecryptionCipher=function(t,e){return fi({key:t,output:null,decrypt:!0,mode:e})};ft.aes.Algorithm=function(t,e){Qs||y0();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return Ys(r._w,n,i,!1)},decrypt:function(n,i){return Ys(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=g0(e,t.decrypt&&!o),this._init=!0}};ft.aes._expandKey=function(t,e){return Qs||y0(),g0(t,e)};ft.aes._updateBlock=Ys;Fr("AES-ECB",ft.cipher.modes.ecb);Fr("AES-CBC",ft.cipher.modes.cbc);Fr("AES-CFB",ft.cipher.modes.cfb);Fr("AES-OFB",ft.cipher.modes.ofb);Fr("AES-CTR",ft.cipher.modes.ctr);Fr("AES-GCM",ft.cipher.modes.gcm);function Fr(t,e){var r=function(){return new ft.aes.Algorithm(t,e)};ft.cipher.registerAlgorithm(t,r)}var Qs=!1,Mr=4,$t,Ws,d0,fr,ue;function y0(){Qs=!0,d0=[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;$t=new Array(256),Ws=new Array(256),fr=new Array(4),ue=new Array(4);for(var e=0;e<4;++e)fr[e]=new Array(256),ue[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,$t[r]=a,Ws[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)fr[h][r]=c,ue[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 g0(t,e){for(var r=t.slice(0),n,i=1,s=r.length,o=s+6+1,a=Mr*o,u=s;u<a;++u)n=r[u-1],u%s===0?(n=$t[n>>>16&255]<<24^$t[n>>>8&255]<<16^$t[n&255]<<8^$t[n>>>24]^d0[i]<<24,i++):s>6&&u%s===4&&(n=$t[n>>>24]<<24^$t[n>>>16&255]<<16^$t[n>>>8&255]<<8^$t[n&255]),r[u]=r[u-s]^n;if(e){var c,f=ue[0],h=ue[1],l=ue[2],g=ue[3],p=r.slice(0);a=r.length;for(var u=0,d=a-Mr;u<a;u+=Mr,d-=Mr)if(u===0||u===a-Mr)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<Mr;++y)c=r[d+y],p[u+(3&-y)]=f[$t[c>>>24]]^h[$t[c>>>16&255]]^l[$t[c>>>8&255]]^g[$t[c&255]];r=p}return r}function Ys(t,e,r,n){var i=t.length/4-1,s,o,a,u,c;n?(s=ue[0],o=ue[1],a=ue[2],u=ue[3],c=Ws):(s=fr[0],o=fr[1],a=fr[2],u=fr[3],c=$t);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 fi(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 pi=ct((Nm,S0)=>{var En=ot();En.pki=En.pki||{};var Zs=S0.exports=En.pki.oids=En.oids=En.oids||{};function _(t,e){Zs[t]=e,Zs[e]=t}function it(t,e){Zs[t]=e}_("1.2.840.113549.1.1.1","rsaEncryption");_("1.2.840.113549.1.1.4","md5WithRSAEncryption");_("1.2.840.113549.1.1.5","sha1WithRSAEncryption");_("1.2.840.113549.1.1.7","RSAES-OAEP");_("1.2.840.113549.1.1.8","mgf1");_("1.2.840.113549.1.1.9","pSpecified");_("1.2.840.113549.1.1.10","RSASSA-PSS");_("1.2.840.113549.1.1.11","sha256WithRSAEncryption");_("1.2.840.113549.1.1.12","sha384WithRSAEncryption");_("1.2.840.113549.1.1.13","sha512WithRSAEncryption");_("1.3.101.112","EdDSA25519");_("1.2.840.10040.4.3","dsa-with-sha1");_("1.3.14.3.2.7","desCBC");_("1.3.14.3.2.26","sha1");_("1.3.14.3.2.29","sha1WithRSASignature");_("2.16.840.1.101.3.4.2.1","sha256");_("2.16.840.1.101.3.4.2.2","sha384");_("2.16.840.1.101.3.4.2.3","sha512");_("2.16.840.1.101.3.4.2.4","sha224");_("2.16.840.1.101.3.4.2.5","sha512-224");_("2.16.840.1.101.3.4.2.6","sha512-256");_("1.2.840.113549.2.2","md2");_("1.2.840.113549.2.5","md5");_("1.2.840.113549.1.7.1","data");_("1.2.840.113549.1.7.2","signedData");_("1.2.840.113549.1.7.3","envelopedData");_("1.2.840.113549.1.7.4","signedAndEnvelopedData");_("1.2.840.113549.1.7.5","digestedData");_("1.2.840.113549.1.7.6","encryptedData");_("1.2.840.113549.1.9.1","emailAddress");_("1.2.840.113549.1.9.2","unstructuredName");_("1.2.840.113549.1.9.3","contentType");_("1.2.840.113549.1.9.4","messageDigest");_("1.2.840.113549.1.9.5","signingTime");_("1.2.840.113549.1.9.6","counterSignature");_("1.2.840.113549.1.9.7","challengePassword");_("1.2.840.113549.1.9.8","unstructuredAddress");_("1.2.840.113549.1.9.14","extensionRequest");_("1.2.840.113549.1.9.20","friendlyName");_("1.2.840.113549.1.9.21","localKeyId");_("1.2.840.113549.1.9.22.1","x509Certificate");_("1.2.840.113549.1.12.10.1.1","keyBag");_("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");_("1.2.840.113549.1.12.10.1.3","certBag");_("1.2.840.113549.1.12.10.1.4","crlBag");_("1.2.840.113549.1.12.10.1.5","secretBag");_("1.2.840.113549.1.12.10.1.6","safeContentsBag");_("1.2.840.113549.1.5.13","pkcs5PBES2");_("1.2.840.113549.1.5.12","pkcs5PBKDF2");_("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");_("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");_("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");_("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");_("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");_("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");_("1.2.840.113549.2.7","hmacWithSHA1");_("1.2.840.113549.2.8","hmacWithSHA224");_("1.2.840.113549.2.9","hmacWithSHA256");_("1.2.840.113549.2.10","hmacWithSHA384");_("1.2.840.113549.2.11","hmacWithSHA512");_("1.2.840.113549.3.7","des-EDE3-CBC");_("2.16.840.1.101.3.4.1.2","aes128-CBC");_("2.16.840.1.101.3.4.1.22","aes192-CBC");_("2.16.840.1.101.3.4.1.42","aes256-CBC");_("2.5.4.3","commonName");_("2.5.4.4","surname");_("2.5.4.5","serialNumber");_("2.5.4.6","countryName");_("2.5.4.7","localityName");_("2.5.4.8","stateOrProvinceName");_("2.5.4.9","streetAddress");_("2.5.4.10","organizationName");_("2.5.4.11","organizationalUnitName");_("2.5.4.12","title");_("2.5.4.13","description");_("2.5.4.15","businessCategory");_("2.5.4.17","postalCode");_("2.5.4.42","givenName");_("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");_("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");_("2.16.840.1.113730.1.1","nsCertType");_("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");_("2.5.29.14","subjectKeyIdentifier");_("2.5.29.15","keyUsage");it("2.5.29.16","privateKeyUsagePeriod");_("2.5.29.17","subjectAltName");_("2.5.29.18","issuerAltName");_("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");_("2.5.29.31","cRLDistributionPoints");_("2.5.29.32","certificatePolicies");it("2.5.29.33","policyMappings");it("2.5.29.34","policyConstraints");_("2.5.29.35","authorityKeyIdentifier");it("2.5.29.36","policyConstraints");_("2.5.29.37","extKeyUsage");it("2.5.29.46","freshestCRL");it("2.5.29.54","inhibitAnyPolicy");_("1.3.6.1.4.1.11129.2.4.2","timestampList");_("1.3.6.1.5.5.7.1.1","authorityInfoAccess");_("1.3.6.1.5.5.7.3.1","serverAuth");_("1.3.6.1.5.5.7.3.2","clientAuth");_("1.3.6.1.5.5.7.3.3","codeSigning");_("1.3.6.1.5.5.7.3.4","emailProtection");_("1.3.6.1.5.5.7.3.8","timeStamping")});var Bn=ct((Dm,A0)=>{var ht=ot();St();pi();var k=A0.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 Sn(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 Wh=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;Sn(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=di(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 di(t,e,r,n){var i;Sn(t,e,2);var s=t.getByte();e--;var o=s&192,a=s&31;i=t.length();var u=Wh(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(Sn(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),f.push(di(t,e,r+1,n)),e-=i-t.length()}else for(;u>0;)i=t.length(),f.push(di(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&&(Sn(t,e,1),d=t.getByte(),e--),d===0)try{i=t.length();var y={strict:!0,decodeBitStrings:!0},m=di(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)Sn(t,e,2),f+=String.fromCharCode(t.getInt16()),e-=2;else f=t.getBytes(u),e-=u}var T=h===void 0?null:{bitStringContents:h};return k.create(o,a,l,f,T)}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 B0=/[^\\u0000-\\u00ff]/;k.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
|
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=$e[t.charCodeAt(u++)-43],s=$e[t.charCodeAt(u++)-43],o=$e[t.charCodeAt(u++)-43],a=$e[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,f0,e)};x.binary.base58.decode=function(t,e){return x.binary.baseN.decode(t,f0,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 Fs=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}},Vs=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},Uh=function(t,e,r,n){var i=Vs(t,e);i===null&&(i={}),i[r]=n,Fs(t,e,i)},Kh=function(t,e,r){var n=Vs(t,e);return n!==null&&(n=r in n?n[r]:null),n},Oh=function(t,e,r){var n=Vs(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),Fs(t,e,n)}},Mh=function(t,e){Fs(t,e,null)},ai=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){ai(Uh,arguments,i)};x.getItem=function(t,e,r,n){return ai(Kh,arguments,n)};x.removeItem=function(t,e,r,n){ai(Oh,arguments,n)};x.clearItems=function(t,e,r){ai(Mh,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 Hs=ct((hm,l0)=>{var Pt=ot();St();l0.exports=Pt.cipher=Pt.cipher||{};Pt.cipher.algorithms=Pt.cipher.algorithms||{};Pt.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Pt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Pt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Pt.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Pt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Pt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Pt.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Pt.cipher.algorithms[t]=e};Pt.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Pt.cipher.algorithms?Pt.cipher.algorithms[t]:null};var qs=Pt.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)};qs.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=Pt.util.createBuffer(),this.output=t.output||Pt.util.createBuffer(),this.mode.start(e)};qs.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()};qs.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 Gs=ct((lm,p0)=>{var kt=ot();St();kt.cipher=kt.cipher||{};var Z=p0.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=ui(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=ui(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=ui(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=ui(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}ci(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(zs(n*8)))}this._inBlock=this._j0.slice(0),ci(this._inBlock),this._partialBytes=0,r=kt.util.createBuffer(r),this._aDataLength=zs(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),ci(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),ci(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(zs(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 ui(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 ci(t){t[t.length-1]=t[t.length-1]+1&4294967295}function zs(t){return[t/4294967296|0,t&4294967295]}});var hi=ct((pm,m0)=>{var ft=ot();Hs();Gs();St();m0.exports=ft.aes=ft.aes||{};ft.aes.startEncrypting=function(t,e,r,n){var i=fi({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};ft.aes.createEncryptionCipher=function(t,e){return fi({key:t,output:null,decrypt:!1,mode:e})};ft.aes.startDecrypting=function(t,e,r,n){var i=fi({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};ft.aes.createDecryptionCipher=function(t,e){return fi({key:t,output:null,decrypt:!0,mode:e})};ft.aes.Algorithm=function(t,e){Qs||y0();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return Ws(r._w,n,i,!1)},decrypt:function(n,i){return Ws(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=g0(e,t.decrypt&&!o),this._init=!0}};ft.aes._expandKey=function(t,e){return Qs||y0(),g0(t,e)};ft.aes._updateBlock=Ws;Fr("AES-ECB",ft.cipher.modes.ecb);Fr("AES-CBC",ft.cipher.modes.cbc);Fr("AES-CFB",ft.cipher.modes.cfb);Fr("AES-OFB",ft.cipher.modes.ofb);Fr("AES-CTR",ft.cipher.modes.ctr);Fr("AES-GCM",ft.cipher.modes.gcm);function Fr(t,e){var r=function(){return new ft.aes.Algorithm(t,e)};ft.cipher.registerAlgorithm(t,r)}var Qs=!1,Mr=4,$t,Ys,d0,fr,ue;function y0(){Qs=!0,d0=[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;$t=new Array(256),Ys=new Array(256),fr=new Array(4),ue=new Array(4);for(var e=0;e<4;++e)fr[e]=new Array(256),ue[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,$t[r]=a,Ys[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)fr[h][r]=c,ue[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 g0(t,e){for(var r=t.slice(0),n,i=1,s=r.length,o=s+6+1,a=Mr*o,u=s;u<a;++u)n=r[u-1],u%s===0?(n=$t[n>>>16&255]<<24^$t[n>>>8&255]<<16^$t[n&255]<<8^$t[n>>>24]^d0[i]<<24,i++):s>6&&u%s===4&&(n=$t[n>>>24]<<24^$t[n>>>16&255]<<16^$t[n>>>8&255]<<8^$t[n&255]),r[u]=r[u-s]^n;if(e){var c,f=ue[0],h=ue[1],l=ue[2],g=ue[3],p=r.slice(0);a=r.length;for(var u=0,d=a-Mr;u<a;u+=Mr,d-=Mr)if(u===0||u===a-Mr)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<Mr;++y)c=r[d+y],p[u+(3&-y)]=f[$t[c>>>24]]^h[$t[c>>>16&255]]^l[$t[c>>>8&255]]^g[$t[c&255]];r=p}return r}function Ws(t,e,r,n){var i=t.length/4-1,s,o,a,u,c;n?(s=ue[0],o=ue[1],a=ue[2],u=ue[3],c=Ys):(s=fr[0],o=fr[1],a=fr[2],u=fr[3],c=$t);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 fi(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 pi=ct((Dm,S0)=>{var En=ot();En.pki=En.pki||{};var Zs=S0.exports=En.pki.oids=En.oids=En.oids||{};function _(t,e){Zs[t]=e,Zs[e]=t}function it(t,e){Zs[t]=e}_("1.2.840.113549.1.1.1","rsaEncryption");_("1.2.840.113549.1.1.4","md5WithRSAEncryption");_("1.2.840.113549.1.1.5","sha1WithRSAEncryption");_("1.2.840.113549.1.1.7","RSAES-OAEP");_("1.2.840.113549.1.1.8","mgf1");_("1.2.840.113549.1.1.9","pSpecified");_("1.2.840.113549.1.1.10","RSASSA-PSS");_("1.2.840.113549.1.1.11","sha256WithRSAEncryption");_("1.2.840.113549.1.1.12","sha384WithRSAEncryption");_("1.2.840.113549.1.1.13","sha512WithRSAEncryption");_("1.3.101.112","EdDSA25519");_("1.2.840.10040.4.3","dsa-with-sha1");_("1.3.14.3.2.7","desCBC");_("1.3.14.3.2.26","sha1");_("1.3.14.3.2.29","sha1WithRSASignature");_("2.16.840.1.101.3.4.2.1","sha256");_("2.16.840.1.101.3.4.2.2","sha384");_("2.16.840.1.101.3.4.2.3","sha512");_("2.16.840.1.101.3.4.2.4","sha224");_("2.16.840.1.101.3.4.2.5","sha512-224");_("2.16.840.1.101.3.4.2.6","sha512-256");_("1.2.840.113549.2.2","md2");_("1.2.840.113549.2.5","md5");_("1.2.840.113549.1.7.1","data");_("1.2.840.113549.1.7.2","signedData");_("1.2.840.113549.1.7.3","envelopedData");_("1.2.840.113549.1.7.4","signedAndEnvelopedData");_("1.2.840.113549.1.7.5","digestedData");_("1.2.840.113549.1.7.6","encryptedData");_("1.2.840.113549.1.9.1","emailAddress");_("1.2.840.113549.1.9.2","unstructuredName");_("1.2.840.113549.1.9.3","contentType");_("1.2.840.113549.1.9.4","messageDigest");_("1.2.840.113549.1.9.5","signingTime");_("1.2.840.113549.1.9.6","counterSignature");_("1.2.840.113549.1.9.7","challengePassword");_("1.2.840.113549.1.9.8","unstructuredAddress");_("1.2.840.113549.1.9.14","extensionRequest");_("1.2.840.113549.1.9.20","friendlyName");_("1.2.840.113549.1.9.21","localKeyId");_("1.2.840.113549.1.9.22.1","x509Certificate");_("1.2.840.113549.1.12.10.1.1","keyBag");_("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");_("1.2.840.113549.1.12.10.1.3","certBag");_("1.2.840.113549.1.12.10.1.4","crlBag");_("1.2.840.113549.1.12.10.1.5","secretBag");_("1.2.840.113549.1.12.10.1.6","safeContentsBag");_("1.2.840.113549.1.5.13","pkcs5PBES2");_("1.2.840.113549.1.5.12","pkcs5PBKDF2");_("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");_("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");_("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");_("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");_("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");_("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");_("1.2.840.113549.2.7","hmacWithSHA1");_("1.2.840.113549.2.8","hmacWithSHA224");_("1.2.840.113549.2.9","hmacWithSHA256");_("1.2.840.113549.2.10","hmacWithSHA384");_("1.2.840.113549.2.11","hmacWithSHA512");_("1.2.840.113549.3.7","des-EDE3-CBC");_("2.16.840.1.101.3.4.1.2","aes128-CBC");_("2.16.840.1.101.3.4.1.22","aes192-CBC");_("2.16.840.1.101.3.4.1.42","aes256-CBC");_("2.5.4.3","commonName");_("2.5.4.4","surname");_("2.5.4.5","serialNumber");_("2.5.4.6","countryName");_("2.5.4.7","localityName");_("2.5.4.8","stateOrProvinceName");_("2.5.4.9","streetAddress");_("2.5.4.10","organizationName");_("2.5.4.11","organizationalUnitName");_("2.5.4.12","title");_("2.5.4.13","description");_("2.5.4.15","businessCategory");_("2.5.4.17","postalCode");_("2.5.4.42","givenName");_("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");_("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");_("2.16.840.1.113730.1.1","nsCertType");_("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");_("2.5.29.14","subjectKeyIdentifier");_("2.5.29.15","keyUsage");it("2.5.29.16","privateKeyUsagePeriod");_("2.5.29.17","subjectAltName");_("2.5.29.18","issuerAltName");_("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");_("2.5.29.31","cRLDistributionPoints");_("2.5.29.32","certificatePolicies");it("2.5.29.33","policyMappings");it("2.5.29.34","policyConstraints");_("2.5.29.35","authorityKeyIdentifier");it("2.5.29.36","policyConstraints");_("2.5.29.37","extKeyUsage");it("2.5.29.46","freshestCRL");it("2.5.29.54","inhibitAnyPolicy");_("1.3.6.1.4.1.11129.2.4.2","timestampList");_("1.3.6.1.5.5.7.1.1","authorityInfoAccess");_("1.3.6.1.5.5.7.3.1","serverAuth");_("1.3.6.1.5.5.7.3.2","clientAuth");_("1.3.6.1.5.5.7.3.3","codeSigning");_("1.3.6.1.5.5.7.3.4","emailProtection");_("1.3.6.1.5.5.7.3.8","timeStamping")});var Bn=ct((Pm,A0)=>{var ht=ot();St();pi();var k=A0.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 Sn(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 Yh=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;Sn(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=di(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 di(t,e,r,n){var i;Sn(t,e,2);var s=t.getByte();e--;var o=s&192,a=s&31;i=t.length();var u=Yh(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(Sn(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),f.push(di(t,e,r+1,n)),e-=i-t.length()}else for(;u>0;)i=t.length(),f.push(di(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&&(Sn(t,e,1),d=t.getByte(),e--),d===0)try{i=t.length();var y={strict:!0,decodeBitStrings:!0},m=di(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)Sn(t,e,2),f+=String.fromCharCode(t.getInt16()),e-=2;else f=t.getBytes(u),e-=u}var T=h===void 0?null:{bitStringContents:h};return k.create(o,a,l,f,T)}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 B0=/[^\\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)B0.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:B0.test(t.value)?n+="0x"+ht.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var _0=ct((Pm,C0)=>{var dt=ot();Hs();Gs();St();C0.exports=dt.des=dt.des||{};dt.des.startEncrypting=function(t,e,r,n){var i=yi({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};dt.des.createEncryptionCipher=function(t,e){return yi({key:t,output:null,decrypt:!1,mode:e})};dt.des.startDecrypting=function(t,e,r,n){var i=yi({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};dt.des.createDecryptionCipher=function(t,e){return yi({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 I0(r._keys,n,i,!1)},decrypt:function(n,i){return I0(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=el(e),this._init=!0}};be("DES-ECB",dt.cipher.modes.ecb);be("DES-CBC",dt.cipher.modes.cbc);be("DES-CFB",dt.cipher.modes.cfb);be("DES-OFB",dt.cipher.modes.ofb);be("DES-CTR",dt.cipher.modes.ctr);be("3DES-ECB",dt.cipher.modes.ecb);be("3DES-CBC",dt.cipher.modes.cbc);be("3DES-CFB",dt.cipher.modes.cfb);be("3DES-OFB",dt.cipher.modes.ofb);be("3DES-CTR",dt.cipher.modes.ctr);function be(t,e){var r=function(){return new dt.des.Algorithm(t,e)};dt.cipher.registerAlgorithm(t,r)}var Yh=[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],Qh=[-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],$h=[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],Zh=[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],Xh=[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],Jh=[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],jh=[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],tl=[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 el(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,T=0;T<d;T++){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 I0(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^(Qh[g>>>24&63]|Zh[g>>>16&63]|Jh[g>>>8&63]|tl[g&63]|Yh[p>>>24&63]|$h[p>>>16&63]|Xh[p>>>8&63]|jh[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 yi(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((km,T0)=>{var gi=ot();T0.exports=gi.md=gi.md||{};gi.md.algorithms=gi.md.algorithms||{}});var L0=ct((Um,R0)=>{var Ne=ot();hr();St();var rl=R0.exports=Ne.hmac=Ne.hmac||{};rl.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 mi=ct(()=>{});var Xs=ct((Mm,N0)=>{var Zt=ot();L0();hr();St();var nl=Zt.pkcs5=Zt.pkcs5||{},De;Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&(De=mi());N0.exports=Zt.pbkdf2=nl.pbkdf2=function(t,e,r,n,i,s){if(typeof i=="function"&&(s=i,i=null),Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&De.pbkdf2&&(i===null||typeof i!="object")&&(De.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),s?De.pbkdf2Sync.length===4?De.pbkdf2(t,e,r,n,function(b,T){if(b)return s(b);s(null,T.toString("binary"))}):De.pbkdf2(t,e,r,n,i,function(b,T){if(b)return s(b);s(null,T.toString("binary"))}):De.pbkdf2Sync.length===4?De.pbkdf2Sync(t,e,r,n).toString("binary"):De.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Zt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Zt.md[i].create()}var 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=Zt.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(Zt.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=Zt.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(Zt.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=Zt.util.xorBytes(l,g,o),p=g,++y,Zt.util.setImmediate(w);h+=d<u?l:l.substr(0,c),++d,m()}m()}});var k0=ct((Fm,P0)=>{var bi=ot();St();var D0=P0.exports=bi.pem=bi.pem||{};D0.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\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,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)B0.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:B0.test(t.value)?n+="0x"+ht.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var _0=ct((km,C0)=>{var dt=ot();Hs();Gs();St();C0.exports=dt.des=dt.des||{};dt.des.startEncrypting=function(t,e,r,n){var i=yi({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};dt.des.createEncryptionCipher=function(t,e){return yi({key:t,output:null,decrypt:!1,mode:e})};dt.des.startDecrypting=function(t,e,r,n){var i=yi({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};dt.des.createDecryptionCipher=function(t,e){return yi({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 I0(r._keys,n,i,!1)},decrypt:function(n,i){return I0(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=el(e),this._init=!0}};be("DES-ECB",dt.cipher.modes.ecb);be("DES-CBC",dt.cipher.modes.cbc);be("DES-CFB",dt.cipher.modes.cfb);be("DES-OFB",dt.cipher.modes.ofb);be("DES-CTR",dt.cipher.modes.ctr);be("3DES-ECB",dt.cipher.modes.ecb);be("3DES-CBC",dt.cipher.modes.cbc);be("3DES-CFB",dt.cipher.modes.cfb);be("3DES-OFB",dt.cipher.modes.ofb);be("3DES-CTR",dt.cipher.modes.ctr);function be(t,e){var r=function(){return new dt.des.Algorithm(t,e)};dt.cipher.registerAlgorithm(t,r)}var Wh=[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],Qh=[-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],$h=[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],Zh=[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],Xh=[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],Jh=[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],jh=[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],tl=[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 el(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,T=0;T<d;T++){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 I0(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^(Qh[g>>>24&63]|Zh[g>>>16&63]|Jh[g>>>8&63]|tl[g&63]|Wh[p>>>24&63]|$h[p>>>16&63]|Xh[p>>>8&63]|jh[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 yi(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((Um,T0)=>{var gi=ot();T0.exports=gi.md=gi.md||{};gi.md.algorithms=gi.md.algorithms||{}});var L0=ct((Km,R0)=>{var Ne=ot();hr();St();var rl=R0.exports=Ne.hmac=Ne.hmac||{};rl.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 mi=ct(()=>{});var Xs=ct((Fm,N0)=>{var Zt=ot();L0();hr();St();var nl=Zt.pkcs5=Zt.pkcs5||{},De;Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&(De=mi());N0.exports=Zt.pbkdf2=nl.pbkdf2=function(t,e,r,n,i,s){if(typeof i=="function"&&(s=i,i=null),Zt.util.isNodejs&&!Zt.options.usePureJavaScript&&De.pbkdf2&&(i===null||typeof i!="object")&&(De.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),s?De.pbkdf2Sync.length===4?De.pbkdf2(t,e,r,n,function(b,T){if(b)return s(b);s(null,T.toString("binary"))}):De.pbkdf2(t,e,r,n,i,function(b,T){if(b)return s(b);s(null,T.toString("binary"))}):De.pbkdf2Sync.length===4?De.pbkdf2Sync(t,e,r,n).toString("binary"):De.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Zt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Zt.md[i].create()}var 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=Zt.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(Zt.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=Zt.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(Zt.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=Zt.util.xorBytes(l,g,o),p=g,++y,Zt.util.setImmediate(w);h+=d<u?l:l.substr(0,c),++d,m()}m()}});var k0=ct((Vm,P0)=>{var bi=ot();St();var D0=P0.exports=bi.pem=bi.pem||{};D0.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
|
9
9
|
`,n;if(t.procType&&(n={name:"Proc-Type",values:[String(t.procType.version),t.procType.type]},r+=xi(n)),t.contentDomain&&(n={name:"Content-Domain",values:[t.contentDomain]},r+=xi(n)),t.dekInfo&&(n={name:"DEK-Info",values:[t.dekInfo.algorithm]},t.dekInfo.parameters&&n.values.push(t.dekInfo.parameters),r+=xi(n)),t.headers)for(var i=0;i<t.headers.length;++i)r+=xi(t.headers[i]);return t.procType&&(r+=`\r
|
10
10
|
`),r+=bi.util.encode64(t.body,e.maxline||64)+`\r
|
11
11
|
`,r+="-----END "+t.type+`-----\r
|
12
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:bi.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(il(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 xi(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 il(t){return t.replace(/^\s+/,"")}});var V0=ct((Vm,F0)=>{var ve=ot();hr();St();var K0=F0.exports=ve.sha256=ve.sha256||{};ve.md.sha256=ve.md.algorithms.sha256=K0;K0.create=function(){O0||sl();var t=null,e=ve.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=ve.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=ve.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),U0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=ve.util.createBuffer();i.putBytes(e.bytes());var s=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,o=s&n.blockLength-1;i.putBytes(Js.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};U0(h,r,i);var l=ve.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 Js=null,O0=!1,M0=null;function sl(){Js="\x80",Js+=ve.util.fillString("\0",64),M0=[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],O0=!0}function U0(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+M0[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 H0=ct((qm,q0)=>{var we=ot();St();var vi=null;we.util.isNodejs&&!we.options.usePureJavaScript&&!process.versions["node-webkit"]&&(vi=mi());var ol=q0.exports=we.prng=we.prng||{};ol.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=we.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 we.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)),we.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=we.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=we.util.globalScope,l=h.crypto||h.msCrypto;l&&l.getRandomValues&&(f=function(E){return l.getRandomValues(E)});var g=we.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,T=Math.floor(Math.random()*65536);g.length()<c;){w=16807*(T&65535),m=16807*(T>>16),w+=(m&32767)<<16,w+=m>>15,w=(w&2147483647)+(w>>31),T=w&4294967295;for(var y=0;y<3;++y)b=T>>>(y<<3),b^=Math.floor(Math.random()*256),g.putByte(b&255)}return g.getBytes(c)}return vi?(e.seedFile=function(c,f){vi.randomBytes(c,function(h,l){if(h)return f(h);f(null,l.toString())})},e.seedFileSync=function(c){return vi.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 An=ct((Hm,js)=>{var Ut=ot();hi();V0();H0();St();(function(){if(Ut.random&&Ut.random.getBytes){js.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,js.exports=Ut.random})(typeof jQuery<"u"?jQuery:null)})()});var Y0=ct((zm,W0)=>{var Xt=ot();St();var to=[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],z0=[1,2,3,5],al=function(t,e){return t<<e&65535|(t&65535)>>16-e},ul=function(t,e){return(t&65535)>>e|t<<16-e&65535};W0.exports=Xt.rc2=Xt.rc2||{};Xt.rc2.expandKey=function(t,e){typeof t=="string"&&(t=Xt.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(to[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-s,to[r.at(128-s)&o]),a=127-s;a>=0;a--)r.setAt(a,to[r.at(a+1)^r.at(a+s)]);return r};var G0=function(t,e,r){var n=!1,i=null,s=null,o=null,a,u,c,f,h=[];for(t=Xt.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]=al(p[c],z0[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]=ul(p[c],z0[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=Xt.util.createBuffer(p)),n=!1,i=Xt.util.createBuffer(),s=d||new Xt.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};Xt.rc2.startEncrypting=function(t,e,r){var n=Xt.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};Xt.rc2.createEncryptionCipher=function(t,e){return G0(t,e,!0)};Xt.rc2.startDecrypting=function(t,e,r){var n=Xt.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};Xt.rc2.createDecryptionCipher=function(t,e){return G0(t,e,!1)}});var Si=ct((Gm,eu)=>{var eo=ot();eu.exports=eo.jsbn=eo.jsbn||{};var Pe,cl=0xdeadbeefcafe,Q0=(cl&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))}eo.jsbn.BigInteger=I;function et(){return new I(null)}function fl(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 hl(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 $0(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=$0,Pe=28):Q0&&navigator.appName=="Microsoft Internet Explorer"?(I.prototype.am=hl,Pe=30):Q0&&navigator.appName!="Netscape"?(I.prototype.am=fl,Pe=26):(I.prototype.am=$0,Pe=28);I.prototype.DB=Pe;I.prototype.DM=(1<<Pe)-1;I.prototype.DV=1<<Pe;var ro=52;I.prototype.FV=Math.pow(2,ro);I.prototype.F1=ro-Pe;I.prototype.F2=2*Pe-ro;var ll="0123456789abcdefghijklmnopqrstuvwxyz",wi=new Array,Vr,ne;Vr=48;for(ne=0;ne<=9;++ne)wi[Vr++]=ne;Vr=97;for(ne=10;ne<36;++ne)wi[Vr++]=ne;Vr=65;for(ne=10;ne<36;++ne)wi[Vr++]=ne;function Z0(t){return ll.charAt(t)}function X0(t,e){var r=wi[t.charCodeAt(e)];return r??-1}function pl(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 dl(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 Ze(t){var e=et();return e.fromInt(t),e}function yl(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:X0(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 gl(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function ml(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=Z0(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+=Z0(n));return i?s:"0"}function xl(){var t=et();return I.ZERO.subTo(this,t),t}function bl(){return this.s<0?this.negate():this}function vl(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 Ei(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 wl(){return this.t<=0?0:this.DB*(this.t-1)+Ei(this.data[this.t-1]^this.s&this.DM)}function El(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 Sl(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 Bl(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 Al(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 Il(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 Cl(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 _l(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 Tl(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-Ei(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 Rl(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 Ll(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function Nl(t){return t}function Dl(t){t.divRemTo(this.m,null,t)}function Pl(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function kl(t,e){t.squareTo(e),this.reduce(e)}lr.prototype.convert=Ll;lr.prototype.revert=Nl;lr.prototype.reduce=Dl;lr.prototype.mulTo=Pl;lr.prototype.sqrTo=kl;function Ul(){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 Kl(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 Ol(t){var e=et();return t.copyTo(e),this.reduce(e),e}function Ml(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 Fl(t,e){t.squareTo(e),this.reduce(e)}function Vl(t,e,r){t.multiplyTo(e,r),this.reduce(r)}pr.prototype.convert=Kl;pr.prototype.revert=Ol;pr.prototype.reduce=Ml;pr.prototype.mulTo=Vl;pr.prototype.sqrTo=Fl;function ql(){return(this.t>0?this.data[0]&1:this.s)==0}function Hl(t,e){if(t>4294967295||t<1)return I.ONE;var r=et(),n=et(),i=e.convert(this),s=Ei(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 zl(t,e){var r;return t<256||e.isEven()?r=new lr(e):r=new pr(e),this.exp(t,r)}I.prototype.copyTo=pl;I.prototype.fromInt=dl;I.prototype.fromString=yl;I.prototype.clamp=gl;I.prototype.dlShiftTo=El;I.prototype.drShiftTo=Sl;I.prototype.lShiftTo=Bl;I.prototype.rShiftTo=Al;I.prototype.subTo=Il;I.prototype.multiplyTo=Cl;I.prototype.squareTo=_l;I.prototype.divRemTo=Tl;I.prototype.invDigit=Ul;I.prototype.isEven=ql;I.prototype.exp=Hl;I.prototype.toString=ml;I.prototype.negate=xl;I.prototype.abs=bl;I.prototype.compareTo=vl;I.prototype.bitLength=wl;I.prototype.mod=Rl;I.prototype.modPowInt=zl;I.ZERO=Ze(0);I.ONE=Ze(1);function Gl(){var t=et();return this.copyTo(t),t}function Wl(){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 Yl(){return this.t==0?this.s:this.data[0]<<24>>24}function Ql(){return this.t==0?this.s:this.data[0]<<16>>16}function $l(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Zl(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Xl(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=Ze(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 Jl(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=X0(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 jl(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),no,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 tp(){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 ep(t){return this.compareTo(t)==0}function rp(t){return this.compareTo(t)<0?this:t}function np(t){return this.compareTo(t)>0?this:t}function ip(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 sp(t,e){return t&e}function op(t){var e=et();return this.bitwiseTo(t,sp,e),e}function no(t,e){return t|e}function ap(t){var e=et();return this.bitwiseTo(t,no,e),e}function J0(t,e){return t^e}function up(t){var e=et();return this.bitwiseTo(t,J0,e),e}function j0(t,e){return t&~e}function cp(t){var e=et();return this.bitwiseTo(t,j0,e),e}function fp(){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 hp(t){var e=et();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function lp(t){var e=et();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function pp(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 dp(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+pp(this.data[t]);return this.s<0?this.t*this.DB:-1}function yp(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function gp(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=yp(this.data[r]^e);return t}function mp(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function xp(t,e){var r=I.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function bp(t){return this.changeBit(t,no)}function vp(t){return this.changeBit(t,j0)}function wp(t){return this.changeBit(t,J0)}function Ep(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 Sp(t){var e=et();return this.addTo(t,e),e}function Bp(t){var e=et();return this.subTo(t,e),e}function Ap(t){var e=et();return this.multiplyTo(t,e),e}function Ip(t){var e=et();return this.divRemTo(t,e,null),e}function Cp(t){var e=et();return this.divRemTo(t,null,e),e}function _p(t){var e=et(),r=et();return this.divRemTo(t,e,r),new Array(e,r)}function Tp(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function Rp(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 In(){}function tu(t){return t}function Lp(t,e,r){t.multiplyTo(e,r)}function Np(t,e){t.squareTo(e)}In.prototype.convert=tu;In.prototype.revert=tu;In.prototype.mulTo=Lp;In.prototype.sqrTo=Np;function Dp(t){return this.exp(t,new In)}function Pp(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 kp(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 qr(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 Up(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 Kp(t){return t}function Op(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 Mp(t,e){t.squareTo(e),this.reduce(e)}function Fp(t,e,r){t.multiplyTo(e,r),this.reduce(r)}qr.prototype.convert=Up;qr.prototype.revert=Kp;qr.prototype.reduce=Op;qr.prototype.mulTo=Fp;qr.prototype.sqrTo=Mp;function Vp(t,e){var r=t.bitLength(),n,i=Ze(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 qr(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=Ei(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 qp(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 Hp(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 zp(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return I.ZERO;for(var r=t.clone(),n=this.clone(),i=Ze(1),s=Ze(0),o=Ze(0),a=Ze(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 ce=[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],Gp=(1<<26)/ce[ce.length-1];function Wp(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=ce[ce.length-1]){for(e=0;e<ce.length;++e)if(r.data[0]==ce[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<ce.length;){for(var n=ce[e],i=e+1;i<ce.length&&n<Gp;)n*=ce[i++];for(n=r.modInt(n);e<i;)if(n%ce[e++]==0)return!1}return r.millerRabin(t)}function Yp(t){var e=this.subtract(I.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Qp(),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 Qp(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}I.prototype.chunkSize=$l;I.prototype.toRadix=Xl;I.prototype.fromRadix=Jl;I.prototype.fromNumber=jl;I.prototype.bitwiseTo=ip;I.prototype.changeBit=xp;I.prototype.addTo=Ep;I.prototype.dMultiply=Tp;I.prototype.dAddOffset=Rp;I.prototype.multiplyLowerTo=Pp;I.prototype.multiplyUpperTo=kp;I.prototype.modInt=Hp;I.prototype.millerRabin=Yp;I.prototype.clone=Gl;I.prototype.intValue=Wl;I.prototype.byteValue=Yl;I.prototype.shortValue=Ql;I.prototype.signum=Zl;I.prototype.toByteArray=tp;I.prototype.equals=ep;I.prototype.min=rp;I.prototype.max=np;I.prototype.and=op;I.prototype.or=ap;I.prototype.xor=up;I.prototype.andNot=cp;I.prototype.not=fp;I.prototype.shiftLeft=hp;I.prototype.shiftRight=lp;I.prototype.getLowestSetBit=dp;I.prototype.bitCount=gp;I.prototype.testBit=mp;I.prototype.setBit=bp;I.prototype.clearBit=vp;I.prototype.flipBit=wp;I.prototype.add=Sp;I.prototype.subtract=Bp;I.prototype.multiply=Ap;I.prototype.divide=Ip;I.prototype.remainder=Cp;I.prototype.divideAndRemainder=_p;I.prototype.modPow=Vp;I.prototype.modInverse=zp;I.prototype.pow=Dp;I.prototype.gcd=qp;I.prototype.isProbablePrime=Wp});var ou=ct((Wm,su)=>{var Ee=ot();hr();St();var nu=su.exports=Ee.sha1=Ee.sha1||{};Ee.md.sha1=Ee.md.algorithms.sha1=nu;nu.create=function(){iu||$p();var t=null,e=Ee.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=Ee.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,s){s==="utf8"&&(i=Ee.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),ru(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Ee.util.createBuffer();i.putBytes(e.bytes());var s=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,o=s&n.blockLength-1;i.putBytes(io.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};ru(h,r,i);var l=Ee.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 io=null,iu=!1;function $p(){io="\x80",io+=Ee.util.fillString("\0",64),iu=!0}function ru(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 cu=ct((Ym,uu)=>{var Se=ot();St();An();ou();var au=uu.exports=Se.pkcs1=Se.pkcs1||{};au.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=Se.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=Se.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=Bi(i,a-s.digestLength-1,o),y=Se.util.xorBytes(p,d,p.length),m=Bi(y,s.digestLength,o),w=Se.util.xorBytes(i,m,i.length);return"\0"+w+y};au.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=Se.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=Bi(f,i.digestLength,s),l=Se.util.xorBytes(c,h,c.length),g=Bi(l,o-i.digestLength-1,s),p=Se.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,T=i.digestLength;T<p.length;T++){var E=p.charCodeAt(T),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 Bi(t,e,r){r||(r=Se.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 fu=ct((Qm,so)=>{var Xe=ot();St();Si();An();(function(){if(Xe.prime){so.exports=Xe.prime;return}var t=so.exports=Xe.prime=Xe.prime||{},e=Xe.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||Xe.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);Xe.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 Xe.util.estimateCores(function(E,S){E&&(S=2),y=S-1,T()});T();function T(){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 Ii=ct(($m,mu)=>{var V=ot();Bn();Si();pi();cu();fu();An();St();typeof tt>"u"&&(tt=V.jsbn.BigInteger);var tt,oo=V.util.isNodejs?mi():null,v=V.asn1,ie=V.util;V.pki=V.pki||{};mu.exports=V.pki.rsa=V.rsa=V.rsa||{};var W=V.pki,Zp=[6,4,2,4,2,4,6,2],Xp={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"}]},Jp={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"}]},jp={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"}]},td=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"}]}]},ed={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"}]},rd=function(t){var e;if(t.algorithm in W.oids)e=W.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()},yu=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};W.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=gu(t,e,r)):(i=V.util.createBuffer(),i.putBytes(t));for(var o=new tt(i.toHex(),16),a=yu(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()};W.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=yu(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?Ai(c.getBytes(),e,r):c.getBytes()};W.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};W.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(id(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Zp[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:W.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:W.rsa.setPublicKey(t.n,t.e)}}o=+new Date,a+=o-s,s=o}return t.keys!==null};W.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(hu("generateKeyPair"))return oo.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:W.privateKeyFromPem(c),publicKey:W.publicKeyFromPem(u)})});if(lu("generateKey")&&lu("exportKey"))return ie.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:du(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ie.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var u=W.privateKeyFromAsn1(v.fromDer(V.util.createBuffer(a)));n(null,{privateKey:u,publicKey:W.setRsaPublicKey(u.n,u.e)})}});if(pu("generateKey")&&pu("exportKey")){var i=ie.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:du(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var u=a.target.result,c=ie.globalScope.msCrypto.subtle.exportKey("pkcs8",u.privateKey);c.oncomplete=function(f){var h=f.target.result,l=W.privateKeyFromAsn1(v.fromDer(V.util.createBuffer(h)));n(null,{privateKey:l,publicKey:W.setRsaPublicKey(l.n,l.e)})},c.onerror=function(f){n(f)}},i.onerror=function(a){n(a)};return}}else if(hu("generateKeyPairSync")){var s=oo.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:W.privateKeyFromPem(s.privateKey),publicKey:W.publicKeyFromPem(s.publicKey)}}}var o=W.rsa.createKeyPairGenerationState(t,e,r);if(!n)return W.rsa.stepKeyPairGenerationState(o,0),o.keys;nd(o,r,n)};W.setRsaPublicKey=W.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 gu(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 W.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=Ai(c,r,!0);var f=v.fromDer(c,{parseAllBytes:o._parseAllDigestBytes}),h={},l=[];if(!v.validate(f,ed,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=Ai(c,r,!0),u===c}});var a=W.rsa.decrypt(i,r,!0,!1);return s.verify(n,a,r.n.bitLength())},r};W.setRsaPrivateKey=W.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=W.rsa.decrypt(c,u,!1,!1);if(f==="RSAES-PKCS1-V1_5")f={decode:Ai};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:rd},h=1):(f==="NONE"||f==="NULL"||f===null)&&(f={encode:function(){return c}},h=1);var l=f.encode(c,u.n.bitLength());return W.rsa.encrypt(l,u,h)},u};W.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(W.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())])};W.privateKeyFromAsn1=function(t){var e={},r=[];if(v.validate(t,Xp,e,r)&&(t=v.fromDer(V.util.createBuffer(e.privateKey))),e={},r=[],!v.validate(t,Jp,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(),W.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))};W.privateKeyToAsn1=W.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))])};W.publicKeyFromAsn1=function(t){var e={},r=[];if(v.validate(t,td,e,r)){var n=v.derToOid(e.publicKeyOid);if(n!==W.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,jp,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 W.setRsaPublicKey(new tt(s,16),new tt(o,16))};W.publicKeyToAsn1=W.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(W.oids.rsaEncryption).getBytes()),v.create(v.Class.UNIVERSAL,v.Type.NULL,!1,"")]),v.create(v.Class.UNIVERSAL,v.Type.BITSTRING,!1,[W.publicKeyToRSAPublicKey(t)])])};W.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 gu(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 Ai(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 nd(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:W.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:W.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=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 id(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 hu(t){return V.util.isNodejs&&typeof oo[t]=="function"}function lu(t){return typeof ie.globalScope<"u"&&typeof ie.globalScope.crypto=="object"&&typeof ie.globalScope.crypto.subtle=="object"&&typeof ie.globalScope.crypto.subtle[t]=="function"}function pu(t){return typeof ie.globalScope<"u"&&typeof ie.globalScope.msCrypto=="object"&&typeof ie.globalScope.msCrypto.subtle=="object"&&typeof ie.globalScope.msCrypto.subtle[t]=="function"}function du(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 Su=ct((Zm,Eu)=>{var U=ot();hi();Bn();_0();hr();pi();Xs();k0();An();Y0();Ii();St();typeof xu>"u"&&(xu=U.jsbn.BigInteger);var xu,B=U.asn1,Y=U.pki=U.pki||{};Eu.exports=Y.pbe=U.pbe=U.pbe||{};var dr=Y.oids,sd={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"}]},od={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"}]}]},ad={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=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=wu(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=ud(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=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(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 T=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[a,B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,u)]);return T};Y.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!B.validate(t,sd,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 T=Math.ceil(i/u),E=1;E<=T;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};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,od,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=vu(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,ad,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=vu(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=[bu(n,t+e)],s=16,o=1;s<r;++o,s+=16)i.push(bu(n,i[o-1]+t+e));return i.join("").substr(0,r)};function bu(t,e){return t.start().update(e).digest().getBytes()}function vu(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 wu(e)}function wu(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 ud(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 yc=ct((Wb,dc)=>{var pt=ot();hr();St();var Pn=dc.exports=pt.sha512=pt.sha512||{};pt.md.sha512=pt.md.algorithms.sha512=Pn;var lc=pt.sha384=pt.sha512.sha384=pt.sha512.sha384||{};lc.create=function(){return Pn.create("SHA-384")};pt.md.sha384=pt.md.algorithms.sha384=lc;pt.sha512.sha256=pt.sha512.sha256||{create:function(){return Pn.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 Pn.create("SHA-512/224")}};pt.md["sha512/224"]=pt.md.algorithms["sha512/224"]=pt.sha512.sha224;Pn.create=function(t){if(pc||Cy(),typeof t>"u"&&(t="SHA-512"),!(t in wr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=wr[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),hc(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(Vo.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);hc(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 Vo=null,pc=!1,qo=null,wr=null;function Cy(){Vo="\x80",Vo+=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]],wr={},wr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],wr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],wr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],wr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],pc=!0}function hc(t,e,r){for(var n,i,s,o,a,u,c,f,h,l,g,p,d,y,m,w,b,T,E,S,L,N,G,z,q,X,at,Kt,C,P,R,D,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)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],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=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|T&(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=T,b=m,T=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,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 h1={};It(h1,{PubSubBaseProtocol:()=>ta});var p1=Symbol.for("@libp2p/connection");var y1=Symbol.for("@libp2p/content-routing");var x1=Symbol.for("@libp2p/peer-discovery");var fa=Symbol.for("@libp2p/peer-id");var w1=Symbol.for("@libp2p/peer-routing");var en;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(en||(en={}));var A1=Symbol.for("@libp2p/transport");var ha;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(ha||(ha={}));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 Ar=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 me(e,r))}},Ji=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},me=globalThis.CustomEvent??Ji;var ns={};It(ns,{base58btc:()=>Yt,base58flickr:()=>df});function cf(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,T=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*T[L]>>>0,T[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&&T[N]===0;)N++;for(var G=u.repeat(d);N<b;++N)G+=t.charAt(T[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 T=r[p.charCodeAt(d)];if(T===255)return;for(var E=0,S=w-1;(T!==0||E<m)&&S!==-1;S--,E++)T+=a*b[S]>>>0,b[S]=T%256>>>0,T=T/256>>>0;if(T!==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 ff=cf,hf=ff,la=hf;var rg=new Uint8Array(0);var pa=(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},_e=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 da=t=>new TextEncoder().encode(t),ya=t=>new TextDecoder().decode(t);var ji=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")}},ts=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 ma(this,e)}},es=class{constructor(e){this.decoders=e}or(e){return ma(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`)}},ma=(t,e)=>new es({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),rs=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ji(e,r,n),this.decoder=new ts(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Ir=({name:t,prefix:e,encode:r,decode:n})=>new rs(t,e,r,n),qe=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=la(r,e);return Ir({prefix:t,name:e,encode:n,decode:s=>_e(i(s))})},lf=(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},pf=(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},vt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Ir({prefix:e,name:t,encode(i){return pf(i,n,r)},decode(i){return lf(i,n,r,t)}});var Yt=qe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),df=qe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var is={};It(is,{base10:()=>yf});var yf=qe({prefix:"9",name:"base10",alphabet:"0123456789"});var ss={};It(ss,{base16:()=>gf,base16upper:()=>mf});var gf=vt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),mf=vt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var os={};It(os,{base2:()=>xf});var xf=vt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var as={};It(as,{base256emoji:()=>Sf});var xa=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}"),bf=xa.reduce((t,e,r)=>(t[r]=e,t),[]),vf=xa.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function wf(t){return t.reduce((e,r)=>(e+=bf[r],e),"")}function Ef(t){let e=[];for(let r of t){let n=vf[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Sf=Ir({prefix:"\u{1F680}",name:"base256emoji",encode:wf,decode:Ef});var us={};It(us,{base32:()=>Cr,base32hex:()=>Cf,base32hexpad:()=>Tf,base32hexpadupper:()=>Rf,base32hexupper:()=>_f,base32pad:()=>Af,base32padupper:()=>If,base32upper:()=>Bf,base32z:()=>Lf});var Cr=vt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Bf=vt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Af=vt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),If=vt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Cf=vt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),_f=vt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Tf=vt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Rf=vt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Lf=vt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var cs={};It(cs,{base36:()=>Nf,base36upper:()=>Df});var Nf=qe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Df=qe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var fs={};It(fs,{base64:()=>rn,base64pad:()=>Pf,base64url:()=>kf,base64urlpad:()=>Uf});var rn=vt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Pf=vt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),kf=vt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Uf=vt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var hs={};It(hs,{base8:()=>Kf});var Kf=vt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ls={};It(ls,{identity:()=>Of});var Of=Ir({prefix:"\0",name:"identity",encode:t=>ya(t),decode:t=>da(t)});var mg=new TextEncoder,xg=new TextDecoder;var ds={};It(ds,{identity:()=>He});var Vf=wa,ba=128,qf=127,Hf=~qf,zf=Math.pow(2,31);function wa(t,e,r){e=e||[],r=r||0;for(var n=r;t>=zf;)e[r++]=t&255|ba,t/=128;for(;t&Hf;)e[r++]=t&255|ba,t>>>=7;return e[r]=t|0,wa.bytes=r-n+1,e}var Gf=ps,Wf=128,va=127;function ps(t,n){var r=0,n=n||0,i=0,s=n,o,a=t.length;do{if(s>=a)throw ps.bytes=0,new RangeError("Could not decode varint");o=t[s++],r+=i<28?(o&va)<<i:(o&va)*Math.pow(2,i),i+=7}while(o>=Wf);return ps.bytes=s-n,r}var Yf=Math.pow(2,7),Qf=Math.pow(2,14),$f=Math.pow(2,21),Zf=Math.pow(2,28),Xf=Math.pow(2,35),Jf=Math.pow(2,42),jf=Math.pow(2,49),th=Math.pow(2,56),eh=Math.pow(2,63),rh=function(t){return t<Yf?1:t<Qf?2:t<$f?3:t<Zf?4:t<Xf?5:t<Jf?6:t<jf?7:t<th?8:t<eh?9:10},nh={encode:Vf,decode:Gf,encodingLength:rh},ih=nh,nn=ih;var sn=(t,e=0)=>[nn.decode(t,e),nn.decode.bytes],_r=(t,e,r=0)=>(nn.encode(t,e,r),e),Tr=t=>nn.encodingLength(t);var xe=(t,e)=>{let r=e.byteLength,n=Tr(t),i=n+Tr(r),s=new Uint8Array(i+r);return _r(t,s,0),_r(r,s,n),s.set(e,i),new Rr(t,r,e,s)},on=t=>{let e=_e(t),[r,n]=sn(e),[i,s]=sn(e.subarray(n)),o=e.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new Rr(r,i,o,e)},Ea=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&pa(t.bytes,r.bytes)}},Rr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Sa=0,sh="identity",Ba=_e,oh=t=>xe(Sa,Ba(t)),He={code:Sa,name:sh,encode:Ba,digest:oh};var ms={};It(ms,{sha256:()=>Lt,sha512:()=>ah});var gs=({name:t,code:e,encode:r})=>new ys(t,e,r),ys=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?xe(this.code,r):r.then(n=>xe(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Ia=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Lt=gs({name:"sha2-256",code:18,encode:Ia("SHA-256")}),ah=gs({name:"sha2-512",code:19,encode:Ia("SHA-512")});var Ca=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return ch(r,xs(t),e||Yt.encoder);default:return fh(r,xs(t),e||Cr.encoder)}};var _a=new WeakMap,xs=t=>{let e=_a.get(t);if(e==null){let r=new Map;return _a.set(t,r),r}return e},or=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!==an)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==hh)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=xe(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&&Ea(e.multihash,n.multihash)}toString(e){return Ca(this,e)}toJSON(){return{"/":Ca(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||Ta(n,i,s.bytes))}else if(r[lh]===!0){let{version:n,multihash:i,code:s}=r,o=on(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!==an)throw new Error(`Version 0 CID must use dag-pb (code: ${an}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=Ta(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,an,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=_e(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 Rr(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]=sn(e.subarray(r));return r+=l,h},i=n(),s=an;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]=uh(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 xs(s).set(n,e),s}},uh=(t,e)=>{switch(t[0]){case"Q":{let r=e||Yt;return[Yt.prefix,r.decode(`${Yt.prefix}${t}`)]}case Yt.prefix:{let r=e||Yt;return[Yt.prefix,r.decode(t)]}case Cr.prefix:{let r=e||Cr;return[Cr.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)]}}},ch=(t,e,r)=>{let{prefix:n}=r;if(n!==Yt.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},fh=(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},an=112,hh=18,Ta=(t,e,r)=>{let n=Tr(t),i=n+Tr(e),s=new Uint8Array(i+r.byteLength);return _r(t,s,0),_r(e,s,n),s.set(r,i),s},lh=Symbol.for("@ipld/js-cid/CID");var Nr={...ls,...os,...hs,...is,...ss,...us,...cs,...ns,...fs,...as},Pg={...ms,...ds};function Vt(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 ph=Symbol.for("nodejs.util.inspect.custom"),Ra=Object.values(Nr).map(t=>t.decoder).reduce((t,e)=>t.or(e),Nr.identity.decoder),La=114,bs=36,vs=37,un=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()})`}[fa]=!0;toString(){return this.string==null&&(this.string=Yt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return or.createV1(La,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Vt(this.multihash.bytes,e);if(typeof e=="string")return Ct(e).equals(this);if(e?.multihash?.bytes!=null)return Vt(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[ph](){return`PeerId(${this.toString()})`}},Dr=class extends un{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Pr=class extends un{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},kr=class extends un{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Ct(t,e){if(e=e??Ra,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=on(Yt.decode(`z${t}`));return t.startsWith("12D")?new Pr({multihash:r}):t.startsWith("16U")?new kr({multihash:r}):new Dr({multihash:r})}return cn(Ra.decode(t))}function cn(t){try{let e=on(t);if(e.code===He.code){if(e.digest.length===bs)return new Pr({multihash:e});if(e.digest.length===vs)return new kr({multihash:e})}if(e.code===Lt.code)return new Dr({multihash:e})}catch{return dh(or.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function dh(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==La)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Lt.code)return new Dr({multihash:t.multihash});if(e.code===He.code){if(e.digest.length===bs)return new Pr({multihash:t.multihash});if(e.digest.length===vs)return new kr({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function zn(t,e){return t.length===bs?new Pr({multihash:xe(He.code,t),privateKey:e}):t.length===vs?new kr({multihash:xe(He.code,t),privateKey:e}):new Dr({multihash:await Lt.digest(t),publicKey:t,privateKey:e})}function Te(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 fn=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){this.map.delete(e.toString())}entries(){return Te(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 Te(this.map.keys(),e=>Ct(e))}values(){return this.map.values()}get size(){return this.map.size}};var hn=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 Te(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 Te(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 ws=class t{list;constructor(e){if(this.list=[],e!=null)for(let r of e)this.list.push(r.toString())}[Symbol.iterator](){return Te(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 Te(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}get length(){return this.list.length}};function Gn(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var Wn=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}},Ur=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Wn(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 Wn(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 Es=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Kr(t={}){return yh(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 yh(t,e){e=e??{};let r=e.onEnd,n=new Ur,i,s,o,a=Gn(),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=Gn()})}},c=y=>s!=null?s(y):(n.push(y),i),f=y=>(n=new Ur,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 Ur,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((T,E)=>{b=()=>{E(new Es)},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 gh(t){return t[Symbol.asyncIterator]!=null}function mh(...t){let e=[];for(let r of t)gh(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Kr({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 Na=mh;function ln(t,...e){if(t==null)throw new Error("Empty pipeline");if(Ss(t)){let n=t;t=()=>n.source}else if(Pa(t)||Da(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Ss(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++)Ss(r[n])&&(r[n]=bh(r[n]));return xh(...r)}var xh=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},Da=t=>t?.[Symbol.asyncIterator]!=null,Pa=t=>t?.[Symbol.iterator]!=null,Ss=t=>t==null?!1:t.sink!=null&&t.source!=null,bh=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Kr({objectMode:!0});r.then(()=>{n.end()},o=>{n.end(o)});let i,s=t.source;if(Da(s))i=async function*(){yield*s,n.end()};else if(Pa(s))i=function*(){yield*s,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Na(n,i())}return t.source};var As=Rt(Ua(),1);var dn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Is=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ka=t=>globalThis.DOMException===void 0?new Is(t):new DOMException(t),Oa=t=>{let e=t.reason===void 0?Ka("This operation was aborted."):t.reason;return e instanceof Error?e:Ka(e)};function Cs(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(Oa(u)),u.addEventListener("abort",()=>{a(Oa(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 _s(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 ar=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,Ts=class{constructor(){Re.set(this,[])}enqueue(e,r){r={priority:0,...r};let n={priority:r.priority,run:e};if(this.size&&ar(this,Re,"f")[this.size-1].priority>=r.priority){ar(this,Re,"f").push(n);return}let i=_s(ar(this,Re,"f"),n,(s,o)=>o.priority-s.priority);ar(this,Re,"f").splice(i,0,n)}dequeue(){let e=ar(this,Re,"f").shift();return e?.run}filter(e){return ar(this,Re,"f").filter(r=>r.priority===e.priority).map(r=>r.run)}get size(){return ar(this,Re,"f").length}};Re=new WeakMap;var Ma=Ts;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)},Et,gn,mn,Ge,jn,xn,Qn,ae,yn,jt,$n,te,bn,ze,Zn,Fa,Va,za,qa,Ha,Xn,Rs,Ls,ti,Ga,Jn,ei=class extends Error{},Ns=class extends As.default{constructor(e){var r,n,i,s;if(super(),Et.add(this),gn.set(this,void 0),mn.set(this,void 0),Ge.set(this,0),jn.set(this,void 0),xn.set(this,void 0),Qn.set(this,0),ae.set(this,void 0),yn.set(this,void 0),jt.set(this,void 0),$n.set(this,void 0),te.set(this,0),bn.set(this,void 0),ze.set(this,void 0),Zn.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:Ma,...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,jn,e.intervalCap,"f"),mt(this,xn,e.interval,"f"),mt(this,jt,new e.queueClass,"f"),mt(this,$n,e.queueClass,"f"),this.concurrency=e.concurrency,this.timeout=e.timeout,mt(this,Zn,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,Et,"m",ti).call(this)}async add(e,r={}){return r={timeout:this.timeout,throwOnTimeout:M(this,Zn,"f"),...r},new Promise((n,i)=>{M(this,jt,"f").enqueue(async()=>{var s,o,a;mt(this,te,(o=M(this,te,"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 ei("The task was aborted.");let u=e({signal:r.signal});r.timeout&&(u=Cs(Promise.resolve(u),r.timeout)),r.signal&&(u=Promise.race([u,M(this,Et,"m",Ga).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,Et,"m",za).call(this)}},r),this.emit("add"),M(this,Et,"m",Xn).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,Et,"m",ti).call(this),this):this}pause(){mt(this,ze,!0,"f")}clear(){mt(this,jt,new(M(this,$n,"f")),"f")}async onEmpty(){M(this,jt,"f").size!==0&&await M(this,Et,"m",Jn).call(this,"empty")}async onSizeLessThan(e){M(this,jt,"f").size<e||await M(this,Et,"m",Jn).call(this,"next",()=>M(this,jt,"f").size<e)}async onIdle(){M(this,te,"f")===0&&M(this,jt,"f").size===0||await M(this,Et,"m",Jn).call(this,"idle")}get size(){return M(this,jt,"f").size}sizeBy(e){return M(this,jt,"f").filter(e).length}get pending(){return M(this,te,"f")}get isPaused(){return M(this,ze,"f")}};gn=new WeakMap,mn=new WeakMap,Ge=new WeakMap,jn=new WeakMap,xn=new WeakMap,Qn=new WeakMap,ae=new WeakMap,yn=new WeakMap,jt=new WeakMap,$n=new WeakMap,te=new WeakMap,bn=new WeakMap,ze=new WeakMap,Zn=new WeakMap,Et=new WeakSet,Fa=function(){return M(this,mn,"f")||M(this,Ge,"f")<M(this,jn,"f")},Va=function(){return M(this,te,"f")<M(this,bn,"f")},za=function(){var e;mt(this,te,(e=M(this,te,"f"),e--,e),"f"),M(this,Et,"m",Xn).call(this),this.emit("next")},qa=function(){M(this,Et,"m",Ls).call(this),M(this,Et,"m",Rs).call(this),mt(this,yn,void 0,"f")},Ha=function(){let e=Date.now();if(M(this,ae,"f")===void 0){let r=M(this,Qn,"f")-e;if(r<0)mt(this,Ge,M(this,gn,"f")?M(this,te,"f"):0,"f");else return M(this,yn,"f")===void 0&&mt(this,yn,setTimeout(()=>{M(this,Et,"m",qa).call(this)},r),"f"),!0}return!1},Xn=function(){if(M(this,jt,"f").size===0)return M(this,ae,"f")&&clearInterval(M(this,ae,"f")),mt(this,ae,void 0,"f"),this.emit("empty"),M(this,te,"f")===0&&this.emit("idle"),!1;if(!M(this,ze,"f")){let e=!M(this,Et,"a",Ha);if(M(this,Et,"a",Fa)&&M(this,Et,"a",Va)){let r=M(this,jt,"f").dequeue();return r?(this.emit("active"),r(),e&&M(this,Et,"m",Rs).call(this),!0):!1}}return!1},Rs=function(){M(this,mn,"f")||M(this,ae,"f")!==void 0||(mt(this,ae,setInterval(()=>{M(this,Et,"m",Ls).call(this)},M(this,xn,"f")),"f"),mt(this,Qn,Date.now()+M(this,xn,"f"),"f"))},Ls=function(){M(this,Ge,"f")===0&&M(this,te,"f")===0&&M(this,ae,"f")&&(clearInterval(M(this,ae,"f")),mt(this,ae,void 0,"f")),mt(this,Ge,M(this,gn,"f")?M(this,te,"f"):0,"f"),M(this,Et,"m",ti).call(this)},ti=function(){for(;M(this,Et,"m",Xn).call(this););},Ga=async function(e){return new Promise((r,n)=>{e.addEventListener("abort",()=>{n(new ei("The task was aborted."))},{once:!0})})},Jn=async function(e,r){return new Promise(n=>{let i=()=>{r&&!r()||(this.off(e,i),n())};this.on(e,i)})};var Wa=Ns;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 Ya(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 Qa(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function $a(t,e){let r=Ya(t).return?.();Qa(r)&&r.catch(n=>{e.error("could not cause iterator to return",n)})}function We(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Le(t=0){return globalThis.Buffer?.alloc!=null?We(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Ht(t=0){return globalThis.Buffer?.allocUnsafe!=null?We(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var Eh=Math.pow(2,7),Sh=Math.pow(2,14),Bh=Math.pow(2,21),Ds=Math.pow(2,28),Ps=Math.pow(2,35),ks=Math.pow(2,42),Us=Math.pow(2,49),nt=128,zt=127;function ur(t){if(t<Eh)return 1;if(t<Sh)return 2;if(t<Bh)return 3;if(t<Ds)return 4;if(t<Ps)return 5;if(t<ks)return 6;if(t<Us)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Ah(t,e,r=0){switch(ur(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 Ih(t,e,r=0){switch(ur(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 Ch(t,e){let r=t[e],n=0;if(n+=r&zt,r<nt||(r=t[e+1],n+=(r&zt)<<7,r<nt)||(r=t[e+2],n+=(r&zt)<<14,r<nt)||(r=t[e+3],n+=(r&zt)<<21,r<nt)||(r=t[e+4],n+=(r&zt)*Ds,r<nt)||(r=t[e+5],n+=(r&zt)*Ps,r<nt)||(r=t[e+6],n+=(r&zt)*ks,r<nt)||(r=t[e+7],n+=(r&zt)*Us,r<nt))return n;throw new RangeError("Could not decode varint")}function _h(t,e){let r=t.get(e),n=0;if(n+=r&zt,r<nt||(r=t.get(e+1),n+=(r&zt)<<7,r<nt)||(r=t.get(e+2),n+=(r&zt)<<14,r<nt)||(r=t.get(e+3),n+=(r&zt)<<21,r<nt)||(r=t.get(e+4),n+=(r&zt)*Ds,r<nt)||(r=t.get(e+5),n+=(r&zt)*Ps,r<nt)||(r=t.get(e+6),n+=(r&zt)*ks,r<nt)||(r=t.get(e+7),n+=(r&zt)*Us,r<nt))return n;throw new RangeError("Could not decode varint")}function Za(t,e,r=0){return e==null&&(e=Ht(ur(t))),e instanceof Uint8Array?Ah(t,e,r):Ih(t,e,r)}function Xa(t,e=0){return t instanceof Uint8Array?Ch(t,e):_h(t,e)}function Gt(t,e){if(globalThis.Buffer!=null)return We(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,s)=>i+s.length,0));let r=Ht(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return We(r)}var t0=Symbol.for("@achingbrain/uint8arraylist");function ja(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 ri(t){return!!t?.[t0]}var Ye=class t{bufs;length;[t0]=!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(ri(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...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(ri(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=ja(this.bufs,e);return r.buf[r.index]}set(e,r){let n=ja(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(ri(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 Gt(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:Gt(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(!ri(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=Ht(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=Ht(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(!Vt(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 ni(t){return t[Symbol.asyncIterator]!=null}var ii=t=>{let e=ur(t),r=Ht(e);return Za(t,r),ii.bytes=e,r};ii.bytes=0;function si(t,e){e=e??{};let r=e.lengthEncoder??ii;function*n(i){let s=r(i.byteLength);s instanceof Uint8Array?yield s:yield*s,i instanceof Uint8Array?yield i:yield*i}return ni(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}si.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??ii;return new Ye(r(t.byteLength),t)};var Or=Rt(n0(),1);var Rh=8,Lh=1024*1024*4,cr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(cr||(cr={}));var Ks=t=>{let e=Xa(t);return Ks.bytes=ur(e),e};Ks.bytes=0;function vn(t,e){let r=new Ye,n=cr.LENGTH,i=-1,s=e?.lengthDecoder??Ks,o=e?.maxLengthLength??Rh,a=e?.maxDataLength??Lh;function*u(){for(;r.byteLength>0;){if(n===cr.LENGTH)try{if(i=s(r),i<0)throw(0,Or.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Or.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=cr.DATA}catch(c){if(c instanceof RangeError){if(r.byteLength>o)throw(0,Or.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw c}if(n===cr.DATA){if(r.byteLength<i)break;let c=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(c),yield c,n=cr.LENGTH}}}return ni(t)?async function*(){for await(let c of t)r.append(c),yield*u();if(r.byteLength>0)throw(0,Or.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,Or.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}vn.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 vn(n,{...e??{},onLength:s=>{r=s}})};var oi=class extends Ar{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=()=>{$a(e.source,this.log)};return this._inboundAbortController.signal.addEventListener("abort",r,{once:!0}),this._rawInboundStream=e,this.inboundStream=ln(this._rawInboundStream,n=>vn(n)),this.dispatchEvent(new me("stream:inbound")),this.inboundStream}async attachOutboundStream(e){let r=this.outboundStream;return this.outboundStream!=null&&this.outboundStream.end(),this._rawOutboundStream=e,this.outboundStream=Kr({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 me("close"))}}),ln(this.outboundStream,n=>si(n),this._rawOutboundStream).catch(n=>{this.log.error(n)}),r==null&&this.dispatchEvent(new me("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 me("close")))}};var wm=Rt(hi(),1),Vh=Rt(ot(),1);function b0(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var x0=b0("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),$s=b0("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=Ht(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Fh={utf8:x0,"utf-8":x0,hex:Nr.base16,latin1:$s,ascii:$s,binary:$s,...Nr},li=Fh;function xt(t,e="utf8"){let r=li[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?We(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function _t(t,e="utf8"){let r=li[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 v0={SHA1:20,SHA256:32,SHA512:64};var zh={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"},Gh=async(t,e)=>{let r=await Bt.get().subtle.sign({name:"HMAC"},t,e);return new Uint8Array(r,0,r.byteLength)};async function w0(t,e){let r=zh[t],n=await Bt.get().subtle.importKey("raw",e,{name:"HMAC",hash:{name:r}},!1,["sign"]);return{async digest(i){return Gh(n,i)},length:v0[t]}}var Fn={};It(Fn,{generateEphemeralKeyPair:()=>ac,generateKeyPair:()=>jy,generateKeyPairFromSeed:()=>t1,importKey:()=>i1,keyStretcher:()=>fc,keysPBM:()=>Xr,marshalPrivateKey:()=>n1,marshalPublicKey:()=>r1,supportedKeys:()=>Ie,unmarshalPrivateKey:()=>Mc,unmarshalPublicKey:()=>e1});var Zv=Rt(Bn(),1),Xv=Rt(Su(),1);var Zi=Rt(ot(),1);var Mo={};It(Mo,{Ed25519PrivateKey:()=>vr,Ed25519PublicKey:()=>Dn,generateKeyPair:()=>Sy,generateKeyPairFromSeed:()=>Oo,unmarshalEd25519PrivateKey:()=>wy,unmarshalEd25519PublicKey:()=>Ey});var Xm=Rt(St(),1),Jm=Rt(Si(),1),Bu=Rt(ot(),1);function fe(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=Gt([new Uint8Array(e-r.length),r])}return _t(r,"base64url")}function ee(t){let e=Ci(t);return new Bu.default.jsbn.BigInteger(_t(e,"base16"),16)}function Ci(t,e){let r=xt(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=Gt([new Uint8Array(e-r.length),r])}return r}function se(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function Au(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function ao(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 Iu(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Au(t.outputLen),Au(t.blockLen)}function Hr(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 Cu(t,e){ao(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var _i=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var _u=t=>t instanceof Uint8Array;var Ti=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),he=(t,e)=>t<<32-e|t>>>e,cd=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!cd)throw new Error("Non little-endian hardware is not supported");function uo(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Cn(t){if(typeof t=="string"&&(t=uo(t)),!_u(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function Ri(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!_u(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var zr=class{clone(){return this._cloneInto()}},ox={}.toString;function Li(t){let e=n=>t().update(Cn(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Gr(t=32){if(_i&&typeof _i.getRandomValues=="function")return _i.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function fd(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),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 Wr=class extends zr{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=Ti(this.buffer)}update(e){Hr(this);let{view:r,buffer:n,blockLen:i}=this;e=Cn(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=Ti(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){Hr(this),Cu(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;fd(n,i-8,BigInt(this.length*8),s),this.process(n,0);let a=Ti(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 Ni=BigInt(4294967295),co=BigInt(32);function Tu(t,e=!1){return e?{h:Number(t&Ni),l:Number(t>>co&Ni)}:{h:Number(t>>co&Ni)|0,l:Number(t&Ni)|0}}function hd(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}=Tu(t[i],e);[r[i],n[i]]=[s,o]}return[r,n]}var ld=(t,e)=>BigInt(t>>>0)<<co|BigInt(e>>>0),pd=(t,e,r)=>t>>>r,dd=(t,e,r)=>t<<32-r|e>>>r,yd=(t,e,r)=>t>>>r|e<<32-r,gd=(t,e,r)=>t<<32-r|e>>>r,md=(t,e,r)=>t<<64-r|e>>>r-32,xd=(t,e,r)=>t>>>r-32|e<<64-r,bd=(t,e)=>e,vd=(t,e)=>t,wd=(t,e,r)=>t<<r|e>>>32-r,Ed=(t,e,r)=>e<<r|t>>>32-r,Sd=(t,e,r)=>e<<r-32|t>>>64-r,Bd=(t,e,r)=>t<<r-32|e>>>64-r;function Ad(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Id=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Cd=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,_d=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Td=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Rd=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Ld=(t,e,r,n,i,s)=>e+r+n+i+s+(t/2**32|0)|0;var Nd={fromBig:Tu,split:hd,toBig:ld,shrSH:pd,shrSL:dd,rotrSH:yd,rotrSL:gd,rotrBH:md,rotrBL:xd,rotr32H:bd,rotr32L:vd,rotlSH:wd,rotlSL:Ed,rotlBH:Sd,rotlBL:Bd,add:Ad,add3L:Id,add3H:Cd,add4L:_d,add4H:Td,add5H:Ld,add5L:Rd},Q=Nd;var[Dd,Pd]=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))),Je=new Uint32Array(80),je=new Uint32Array(80),fo=class extends Wr{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)Je[b]=e.getUint32(r),je[b]=e.getUint32(r+=4);for(let b=16;b<80;b++){let T=Je[b-15]|0,E=je[b-15]|0,S=Q.rotrSH(T,E,1)^Q.rotrSH(T,E,8)^Q.shrSH(T,E,7),L=Q.rotrSL(T,E,1)^Q.rotrSL(T,E,8)^Q.shrSL(T,E,7),N=Je[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,Je[b-7],Je[b-16]);Je[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 T=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,Pd[b],je[b]),G=Q.add5H(N,m,T,S,Dd[b],Je[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(){Je.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 ho=Li(()=>new fo);var ki={};It(ki,{bitGet:()=>Vd,bitLen:()=>Fd,bitMask:()=>_n,bitSet:()=>qd,bytesToHex:()=>ke,bytesToNumberBE:()=>Ue,bytesToNumberLE:()=>tr,concatBytes:()=>Ke,createHmacDrbg:()=>yo,ensureBytes:()=>wt,equalBytes:()=>Od,hexToBytes:()=>yr,hexToNumber:()=>po,numberToBytesBE:()=>er,numberToBytesLE:()=>gr,numberToHexUnpadded:()=>Nu,numberToVarBytesBE:()=>Kd,utf8ToBytes:()=>Md,validateObject:()=>Ae});var Lu=BigInt(0),Di=BigInt(1),kd=BigInt(2),Pi=t=>t instanceof Uint8Array,Ud=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function ke(t){if(!Pi(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Ud[t[r]];return e}function Nu(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function po(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 po(ke(t))}function tr(t){if(!Pi(t))throw new Error("Uint8Array expected");return po(ke(Uint8Array.from(t).reverse()))}function er(t,e){return yr(t.toString(16).padStart(e*2,"0"))}function gr(t,e){return er(t,e).reverse()}function Kd(t){return yr(Nu(t))}function wt(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(Pi(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(!Pi(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Od(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 Md(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Fd(t){let e;for(e=0;t>Lu;t>>=Di,e+=1);return e}function Vd(t,e){return t>>BigInt(e)&Di}var qd=(t,e,r)=>t|(r?Di:Lu)<<BigInt(e),_n=t=>(kd<<BigInt(t-1))-Di,lo=t=>new Uint8Array(t),Ru=t=>Uint8Array.from(t);function yo(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=lo(t),i=lo(t),s=0,o=()=>{n.fill(1),i.fill(0),s=0},a=(...h)=>r(i,n,...h),u=(h=lo())=>{i=a(Ru([0]),h),n=a(),h.length!==0&&(i=a(Ru([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 Hd={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 Ae(t,e,r={}){let n=(i,s,o)=>{let a=Hd[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 Dt=BigInt(0),yt=BigInt(1),mr=BigInt(2),zd=BigInt(3),go=BigInt(4),Du=BigInt(5),Pu=BigInt(8),Gd=BigInt(9),Wd=BigInt(16);function ut(t,e){let r=t%e;return r>=Dt?r:e+r}function Yd(t,e,r){if(r<=Dt||e<Dt)throw new Error("Expected power/modulo > 0");if(r===yt)return Dt;let n=yt;for(;e>Dt;)e&yt&&(n=n*t%r),t=t*t%r,e>>=yt;return n}function gt(t,e,r){let n=t;for(;e-- >Dt;)n*=n,n%=r;return n}function Ui(t,e){if(t===Dt||e<=Dt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ut(t,e),n=e,i=Dt,s=yt,o=yt,a=Dt;for(;r!==Dt;){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 Qd(t){let e=(t-yt)/mr,r,n,i;for(r=t-yt,n=0;r%mr===Dt;r/=mr,n++);for(i=mr;i<t&&Yd(i,e,t)!==t-yt;i++);if(n===1){let o=(t+yt)/go;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 $d(t){if(t%go===zd){let e=(t+yt)/go;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%Pu===Du){let e=(t-Du)/Pu;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%Wd,Qd(t)}var ku=(t,e)=>(ut(t,e)&yt)===yt,Zd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function mo(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Zd.reduce((n,i)=>(n[i]="function",n),e);return Ae(t,r)}function Xd(t,e,r){if(r<Dt)throw new Error("Expected power > 0");if(r===Dt)return t.ONE;if(r===yt)return e;let n=t.ONE,i=e;for(;r>Dt;)r&yt&&(n=t.mul(n,i)),i=t.sqr(i),r>>=yt;return n}function Jd(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 xo(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ki(t,e,r=!1,n={}){if(t<=Dt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:s}=xo(t,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");let o=$d(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:s,MASK:_n(i),ZERO:Dt,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 Dt<=u&&u<t},is0:u=>u===Dt,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)=>Xd(a,u,c),div:(u,c)=>ut(u*Ui(c,t),t),sqrN:u=>u*u,addN:(u,c)=>u+c,subN:(u,c)=>u-c,mulN:(u,c)=>u*c,inv:u=>Ui(u,t),sqrt:n.sqrt||(u=>o(a,u)),invertBatch:u=>Jd(a,u),cmov:(u,c,f)=>f?c:u,toBytes:u=>r?gr(u,s):er(u,s),fromBytes:u=>{if(u.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${u.length}`);return r?tr(u):Ue(u)}});return Object.freeze(a)}function Uu(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 Ku(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=Ku(t);return e+Math.ceil(e/2)}function Ou(t,e,r=!1){let n=t.length,i=Ku(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):tr(t),a=ut(o,e-yt)+yt;return r?gr(a,i):er(a,i)}var ty=BigInt(0),vo=BigInt(1);function Oi(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>ty;)s&vo&&(o=o.add(a)),a=a.double(),s>>=vo;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+=vo);let m=d,w=d+Math.abs(y)-1,b=p%2!==0,T=y<0;y===0?f=f.add(r(b,s[m])):c=c.add(r(T,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 Tn(t){return mo(t.Fp),Ae(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...xo(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var le=BigInt(0),re=BigInt(1),Mi=BigInt(2),ey=BigInt(8),ry={zip215:!0};function ny(t){let e=Tn(t);return Ae(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Fi(t){let e=ny(t),{Fp:r,n,prehash:i,hash:s,randomBytes:o,nByteLength:a,h:u}=e,c=Mi<<BigInt(a*8)-re,f=r.create,h=e.uvRatio||((D,A)=>{try{return{isValid:!0,value:r.sqrt(D*r.inv(A))}}catch{return{isValid:!1,value:le}}}),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"&&le<D,d=(D,A)=>p(D)&&p(A)&&D<A,y=D=>D===le||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===le?D:m(D,n)}let b=new Map;function T(D){if(!(D 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,re,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),bt=f(st*A),Ot=f(rt*f(bt+j)),Mt=f(At+f(K*f(st*j)));if(Ot!==Mt)throw new Error("bad point: equation left != right (1)");let Tt=f(F*H),Ft=f($*J);if(Tt!==Ft)throw new Error("bad point: equation left != right (2)")}equals(A){T(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),bt=f(J*H);return j===rt&&At===bt}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(Mi*f(H*H)),j=f(A*$),rt=K+F,At=f(f(rt*rt)-$-J),bt=j+J,Ot=bt-st,Mt=j-J,Tt=f(At*Ot),Ft=f(bt*Mt),Ce=f(At*Mt),sr=f(Ot*bt);return new E(Tt,Ft,sr,Ce)}add(A){T(A);let{a:K,d:F}=e,{ex:H,ey:$,ez:J,et:st}=this,{ex:j,ey:rt,ez:At,et:bt}=A;if(K===BigInt(-1)){let ra=f(($-H)*(rt+j)),na=f(($+H)*(rt-j)),Xi=f(na-ra);if(Xi===le)return this.double();let ia=f(J*Mi*bt),sa=f(st*Mi*At),oa=sa+ia,aa=na+ra,ua=sa-ia,Jc=f(oa*Xi),jc=f(aa*ua),tf=f(oa*ua),ef=f(Xi*aa);return new E(Jc,jc,ef,tf)}let Ot=f(H*j),Mt=f($*rt),Tt=f(st*F*bt),Ft=f(J*At),Ce=f((H+$)*(j+rt)-Ot-Mt),sr=Ft-Tt,tn=Ft+Tt,ea=f(Mt-K*Ot),Qc=f(Ce*sr),$c=f(tn*ea),Zc=f(Ce*ea),Xc=f(sr*tn);return new E(Qc,$c,Xc,Zc)}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===le?L:this.equals(L)||K===re?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=$?ey:r.inv(H));let J=f(K*A),st=f(F*A),j=f(H*A);if($)return{x:le,y:re};if(j!==re)throw new Error("invZ was invalid");return{x:J,y:st}}clearCofactor(){let{h:A}=e;return A===re?this:this.multiplyUnsafe(A)}static fromHex(A,K=!1){let{d:F,a:H}=e,$=r.BYTES;A=wt("pointHex",A,$);let J=A.slice(),st=A[$-1];J[$-1]=st&-129;let j=tr(J);j===le||(K?m(j,c):m(j,r.ORDER));let rt=f(j*j),At=f(rt-re),bt=f(F*rt-H),{isValid:Ot,value:Mt}=h(At,bt);if(!Ot)throw new Error("Point.fromHex: invalid y coordinate");let Tt=(Mt&re)===re,Ft=(st&128)!==0;if(!K&&Mt===le&&Ft)throw new Error("Point.fromHex: x=0 and x_0=1");return Ft!==Tt&&(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&re?128:0,F}toHex(){return ke(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,re,f(e.Gx*e.Gy)),E.ZERO=new E(le,re,re,le);let{BASE:S,ZERO:L}=E,N=Oi(E,a*8);function G(D){return ut(D,n)}function z(D){return G(tr(D))}function q(D){let A=a;D=wt("private key",D,A);let K=wt("hashed private key",s(D),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(D){return q(D).pointBytes}function at(D=new Uint8Array,...A){let K=Ke(...A);return z(s(g(K,wt("context",D),!!i)))}function Kt(D,A,K={}){D=wt("message",D),i&&(D=i(D));let{prefix:F,scalar:H,pointBytes:$}=q(A),J=at(K.context,F,D),st=S.multiply(J).toRawBytes(),j=at(K.context,st,$,D),rt=G(J+j*H);w(rt);let At=Ke(st,gr(rt,r.BYTES));return wt("result",At,a*2)}let C=ry;function P(D,A,K,F=C){let{context:H,zip215:$}=F,J=r.BYTES;D=wt("signature",D,2*J),A=wt("message",A),i&&(A=i(A));let st=tr(D.slice(J,2*J)),j,rt,At;try{j=E.fromHex(K,$),rt=E.fromHex(D.slice(0,J),$),At=S.multiplyUnsafe(st)}catch{return!1}if(!$&&j.isSmallOrder())return!1;let bt=at(H,rt.toRawBytes(),j.toRawBytes(),A);return rt.add(j.multiplyUnsafe(bt)).subtract(At).clearCofactor().equals(E.ZERO)}return S._setWindowSize(8),{CURVE:e,getPublicKey:X,sign:Kt,verify:P,ExtendedPoint:E,utils:{getExtendedPublicKey:q,randomPrivateKey:()=>o(r.BYTES),precompute(D=8,A=E.BASE){return A._setWindowSize(D),A.multiply(BigInt(3)),A}}}}var Eo=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Mu=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),_x=BigInt(0),iy=BigInt(1),wo=BigInt(2),sy=BigInt(5),Fu=BigInt(10),oy=BigInt(20),ay=BigInt(40),Vu=BigInt(80);function uy(t){let e=Eo,n=t*t%e*t%e,i=gt(n,wo,e)*n%e,s=gt(i,iy,e)*t%e,o=gt(s,sy,e)*s%e,a=gt(o,Fu,e)*o%e,u=gt(a,oy,e)*a%e,c=gt(u,ay,e)*u%e,f=gt(c,Vu,e)*c%e,h=gt(f,Vu,e)*c%e,l=gt(h,Fu,e)*o%e;return{pow_p_5_8:gt(l,wo,e)*t%e,b2:n}}function cy(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function fy(t,e){let r=Eo,n=ut(e*e*e,r),i=ut(n*n*e,r),s=uy(t*i).pow_p_5_8,o=ut(t*n*s,r),a=ut(e*o*o,r),u=o,c=ut(o*Mu,r),f=a===t,h=a===ut(-t,r),l=a===ut(-t*Mu,r);return f&&(o=u),(h||l)&&(o=c),ku(o,r)&&(o=ut(-o,r)),{isValid:f||h,value:o}}var Oe=Ki(Eo,void 0,!0),So={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Oe,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:ho,randomBytes:Gr,adjustScalarBytes:cy,uvRatio:fy},Yr=Fi(So);function qu(t,e,r){if(e.length>255)throw new Error("Context is too big");return Ri(uo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Tx=Fi({...So,domain:qu}),Rx=Fi({...So,domain:qu,prehash:ho});var hy=(Oe.ORDER+BigInt(3))/BigInt(8),Lx=Oe.pow(wo,hy),Nx=Oe.sqrt(Oe.neg(Oe.ONE)),Dx=(Oe.ORDER-BigInt(5))/BigInt(8),Px=BigInt(486662);var kx=Uu(Oe,Oe.neg(BigInt(486664)));var Ux=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),Kx=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),Ox=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),Mx=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Fx=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Qr=32,Me=64,Vi=32;function Hu(){let t=Yr.utils.randomPrivateKey(),e=Yr.getPublicKey(t);return{privateKey:Yu(t,e),publicKey:e}}function zu(t){if(t.length!==Vi)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=Yr.getPublicKey(e);return{privateKey:Yu(e,r),publicKey:r}}function Gu(t,e){let r=t.subarray(0,Vi);return Yr.sign(e instanceof Uint8Array?e:e.subarray(),r)}function Wu(t,e,r){return Yr.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function Yu(t,e){let r=new Uint8Array(Me);for(let n=0;n<Vi;n++)r[n]=t[n],r[Vi+n]=e[n];return r}var Bo={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function qi(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=xt(l));let y;if(l.length===0){y=await a.subtle.importKey("jwk",Bo,{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",Bo,{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 Gt([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=xt(l));let m;if(l.length===0)try{let b={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},T=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,T,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",Bo,{name:"AES-GCM"},!0,["decrypt"])}else{let b={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},T=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,T,{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 $r(t,e){let n=await qi().encrypt(t,e);return rn.encode(n)}var Xr={};It(Xr,{KeyType:()=>lt,PrivateKey:()=>ye,PublicKey:()=>de});var Ao=new Float32Array([-0]),rr=new Uint8Array(Ao.buffer);function $u(t,e,r){Ao[0]=t,e[r]=rr[0],e[r+1]=rr[1],e[r+2]=rr[2],e[r+3]=rr[3]}function Zu(t,e){return rr[0]=t[e],rr[1]=t[e+1],rr[2]=t[e+2],rr[3]=t[e+3],Ao[0]}var Io=new Float64Array([-0]),Wt=new Uint8Array(Io.buffer);function Xu(t,e,r){Io[0]=t,e[r]=Wt[0],e[r+1]=Wt[1],e[r+2]=Wt[2],e[r+3]=Wt[3],e[r+4]=Wt[4],e[r+5]=Wt[5],e[r+6]=Wt[6],e[r+7]=Wt[7]}function Ju(t,e){return Wt[0]=t[e],Wt[1]=t[e+1],Wt[2]=t[e+2],Wt[3]=t[e+3],Wt[4]=t[e+4],Wt[5]=t[e+5],Wt[6]=t[e+6],Wt[7]=t[e+7],Io[0]}var py=BigInt(Number.MAX_SAFE_INTEGER),dy=BigInt(Number.MIN_SAFE_INTEGER),Jt=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<py&&e>dy)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>ju&&(i=0n,++n>ju&&(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 Jt(0,0);xr.toBigInt=function(){return 0n};xr.zzEncode=xr.zzDecode=function(){return this};xr.length=function(){return 1};var ju=4294967296n;function tc(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 ec(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 Co(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 pe(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function Hi(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var _o=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,pe(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 pe(this,4);return Hi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw pe(this,4);return Hi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw pe(this,4);let e=Zu(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw pe(this,4);let e=Ju(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 pe(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return ec(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw pe(this,e);this.pos+=e}else do if(this.pos>=this.len)throw pe(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 Jt(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 pe(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 pe(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 pe(this,8);let e=Hi(this.buf,this.pos+=4),r=Hi(this.buf,this.pos+=4);return new Jt(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 To(t){return new _o(t instanceof Uint8Array?t:t.subarray())}function zi(t,e){let r=To(t);return e.decode(r)}function Ro(t){let e=t??8192,r=e>>>1,n,i=e;return function(o){if(o<1||o>r)return Ht(o);i+o>e&&(n=Ht(e),i=0);let a=n.subarray(i,i+=o);return i&7&&(i=(i|7)+1),a}}var br=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function Lo(){}var Do=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},yy=Ro();function gy(t){return globalThis.Buffer!=null?Ht(t):yy(t)}var Nn=class{len;head;tail;states;constructor(){this.len=0,this.head=new br(Lo,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new br(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new Po((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(Rn,10,Jt.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=Jt.fromBigInt(e);return this._push(Rn,r.length(),r)}uint64Number(e){let r=Jt.fromNumber(e);return this._push(Rn,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=Jt.fromBigInt(e).zzEncode();return this._push(Rn,r.length(),r)}sint64Number(e){let r=Jt.fromNumber(e).zzEncode();return this._push(Rn,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(No,1,e?1:0)}fixed32(e){return this._push(Ln,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=Jt.fromBigInt(e);return this._push(Ln,4,r.lo)._push(Ln,4,r.hi)}fixed64Number(e){let r=Jt.fromNumber(e);return this._push(Ln,4,r.lo)._push(Ln,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($u,4,e)}double(e){return this._push(Xu,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(No,1,0):this.uint32(r)._push(xy,r,e)}string(e){let r=tc(e);return r!==0?this.uint32(r)._push(Co,r,e):this._push(No,1,0)}fork(){return this.states=new Do(this),this.head=this.tail=new br(Lo,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 br(Lo,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=gy(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function No(t,e,r){e[r]=t&255}function my(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var Po=class extends br{next;constructor(e,r){super(my,e,r),this.next=void 0}};function Rn(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 Ln(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 xy(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Nn.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(by,e,t),this},Nn.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(vy,e,t),this});function by(t,e,r){e.set(t,r)}function vy(t,e,r){t.length<40?Co(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(xt(t),r)}function ko(){return new Nn}function Gi(t,e){let r=ko();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Zr;(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"})(Zr||(Zr={}));function Wi(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function Uo(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 Wi("enum",Zr.VARINT,r,n)}function Yi(t,e){return Wi("message",Zr.LENGTH_DELIMITED,t,e)}var lt;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(lt||(lt={}));var Ko;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(Ko||(Ko={}));(function(t){t.codec=()=>Uo(Ko)})(lt||(lt={}));var de;(function(t){let e;t.codec=()=>(e==null&&(e=Yi((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=>Gi(r,t.codec()),t.decode=r=>zi(r,t.codec())})(de||(de={}));var ye;(function(t){let e;t.codec=()=>(e==null&&(e=Yi((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=>Gi(r,t.codec()),t.decode=r=>zi(r,t.codec())})(ye||(ye={}));var Dn=class{_key;constructor(e){this._key=Jr(e,Qr)}verify(e,r){return Wu(this._key,r,e)}marshal(){return this._key}get bytes(){return de.encode({Type:lt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return se(e)?e.then(({bytes:r})=>r):e.bytes}},vr=class{_key;_publicKey;constructor(e,r){this._key=Jr(e,Me),this._publicKey=Jr(r,Qr)}sign(e){return Gu(this._key,e)}get public(){return new Dn(this._publicKey)}marshal(){return this._key}get bytes(){return ye.encode({Type:lt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}async hash(){let e=Lt.digest(this.bytes),r;return se(e)?{bytes:r}=await e:r=e.bytes,r}async id(){let e=He.digest(this.public.bytes);return Yt.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return $r(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function wy(t){if(t.length>Me){t=Jr(t,Me+Qr);let n=t.subarray(0,Me),i=t.subarray(Me,t.length);return new vr(n,i)}t=Jr(t,Me);let e=t.subarray(0,Me),r=t.subarray(Qr);return new vr(e,r)}function Ey(t){return t=Jr(t,Qr),new Dn(t)}async function Sy(){let{privateKey:t,publicKey:e}=Hu();return new vr(t,e)}async function Oo(t){let{privateKey:e,publicKey:r}=zu(t);return new vr(e,r)}function Jr(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 nc={"P-256":256,"P-384":384,"P-521":521},By=Object.keys(nc),Fo=By.join(" / ");async function ic(t){if(t!=="P-256"&&t!=="P-384"&&t!=="P-521")throw new O(`Unknown curve: ${t}. Must be ${Fo}`,"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",Iy(t,o),{name:"ECDH",namedCurve:t},!1,["deriveBits"]):a=e.privateKey;let u=await Bt.get().subtle.importKey("jwk",oc(t,s),{name:"ECDH",namedCurve:t},!1,[]),c=await Bt.get().subtle.deriveBits({name:"ECDH",namedCurve:t,public:u},a,nc[t]);return new Uint8Array(c,0,c.byteLength)},n=await Bt.get().subtle.exportKey("jwk",e.publicKey);return{key:Ay(n),genSharedKey:r}}var sc={"P-256":32,"P-384":48,"P-521":66};function Ay(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 ${Fo}`,"ERR_INVALID_CURVE");let e=sc[t.crv];return Gt([Uint8Array.from([4]),Ci(t.x,e),Ci(t.y,e)],1+e*2)}function oc(t,e){if(t!=="P-256"&&t!=="P-384"&&t!=="P-521")throw new O(`Unknown curve: ${t}. Must be ${Fo}`,"ERR_INVALID_CURVE");let r=sc[t];if(!Vt(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:_t(e.subarray(1,r+1),"base64url"),y:_t(e.subarray(1+r),"base64url"),ext:!0}}var Iy=(t,e)=>({...oc(t,e.public),d:_t(e.private,"base64url")});var ac=ic;async function uc(t,e){let r=rn.decode(t);return qi().decrypt(r,e)}var cc={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,keySize:32}};async function fc(t,e,r){let n=cc[t];if(n==null){let w=Object.keys(cc).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=xt("key expansion"),u=2*(s+i+o),c=await w0(e,r),f=await c.digest(a),h=[],l=0;for(;l<u;){let w=await c.digest(Gt([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=Gt(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 Go={};It(Go,{MAX_KEY_SIZE:()=>Kn,RsaPrivateKey:()=>jr,RsaPublicKey:()=>Un,fromJwk:()=>Uy,generateKeyPair:()=>Ky,unmarshalRsaPrivateKey:()=>Py,unmarshalRsaPublicKey:()=>ky});var kn=Rt(ot(),1);var dv=Rt(yc(),1);function Er(t){if(isNaN(t)||t<=0)throw new O("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Gr(t)}var Zb=Rt(Ii(),1),Ho=Rt(ot(),1);function gc(t,e){return e.map(r=>ee(t[r]))}function mc(t){return Ho.default.pki.setRsaPrivateKey(...gc(t,["n","e","d","p","q","dp","dq","qi"]))}function xc(t){return Ho.default.pki.setRsaPublicKey(...gc(t,["n","e"]))}var Sr={};It(Sr,{jwkToPkcs1:()=>Ty,jwkToPkix:()=>Ly,pkcs1ToJwk:()=>_y,pkixToJwk:()=>Ry});var jb=Rt(Bn(),1),tv=Rt(Ii(),1);var Fe=Rt(ot(),1);function _y(t){let e=Fe.default.asn1.fromDer(_t(t,"ascii")),r=Fe.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:fe(r.n),e:fe(r.e),d:fe(r.d),p:fe(r.p),q:fe(r.q),dp:fe(r.dP),dq:fe(r.dQ),qi:fe(r.qInv),alg:"RS256"}}function Ty(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:ee(t.n),e:ee(t.e),d:ee(t.d),p:ee(t.p),q:ee(t.q),dP:ee(t.dp),dQ:ee(t.dq),qInv:ee(t.qi)});return xt(Fe.default.asn1.toDer(e).getBytes(),"ascii")}function Ry(t){let e=Fe.default.asn1.fromDer(_t(t,"ascii")),r=Fe.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:fe(r.n),e:fe(r.e)}}function Ly(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:ee(t.n),e:ee(t.e)});return xt(Fe.default.asn1.toDer(e).getBytes(),"ascii")}async function bc(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 Ec(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 Ny(t)],n=await Ec({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function vc(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 wc(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 Ec(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 Ny(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 Sc(t,e,r,n){let i=e?xc(t):mc(t),s=_t(r instanceof Uint8Array?r:r.subarray(),"ascii"),o=n(s,i);return xt(o,"ascii")}function Bc(t,e){return Sc(t,!0,e,(r,n)=>n.encrypt(r))}function Ac(t,e){return Sc(t,!1,e,(r,n)=>n.decrypt(r))}function Qi(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 xt(t.n,"base64url").length*8}var Kn=8192,Un=class{_key;constructor(e){this._key=e}verify(e,r){return wc(this._key,r,e)}marshal(){return Sr.jwkToPkix(this._key)}get bytes(){return de.encode({Type:lt.RSA,Data:this.marshal()}).subarray()}encrypt(e){return Bc(this._key,e)}equals(e){return Vt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return se(e)?e.then(({bytes:r})=>r):e.bytes}},jr=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return Er(16)}sign(e){return vc(this._key,e)}get public(){if(this._publicKey==null)throw new O("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Un(this._publicKey)}decrypt(e){return Ac(this._key,e)}marshal(){return Sr.jwkToPkcs1(this._key)}get bytes(){return ye.encode({Type:lt.RSA,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return se(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return _t(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 $r(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Py(t){let e=Sr.pkcs1ToJwk(t);if(Qi(e)>Kn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await zo(e);return new jr(r.privateKey,r.publicKey)}function ky(t){let e=Sr.pkixToJwk(t);if(Qi(e)>Kn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Un(e)}async function Uy(t){if(Qi(t)>Kn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await zo(t);return new jr(e.privateKey,e.publicKey)}async function Ky(t){if(t>Kn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await bc(t);return new jr(e.privateKey,e.publicKey)}var Xo={};It(Xo,{Secp256k1PrivateKey:()=>Mn,Secp256k1PublicKey:()=>On,generateKeyPair:()=>Jy,unmarshalSecp256k1PrivateKey:()=>Zy,unmarshalSecp256k1PublicKey:()=>Xy});var Oy=(t,e,r)=>t&e^~t&r,My=(t,e,r)=>t&e^t&r^e&r,Fy=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),nr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ir=new Uint32Array(64),Wo=class extends Wr{constructor(){super(64,32,8,!1),this.A=nr[0]|0,this.B=nr[1]|0,this.C=nr[2]|0,this.D=nr[3]|0,this.E=nr[4]|0,this.F=nr[5]|0,this.G=nr[6]|0,this.H=nr[7]|0}get(){let{A: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)ir[h]=e.getUint32(r,!1);for(let h=16;h<64;h++){let l=ir[h-15],g=ir[h-2],p=he(l,7)^he(l,18)^l>>>3,d=he(g,17)^he(g,19)^g>>>10;ir[h]=d+ir[h-7]+p+ir[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=he(a,6)^he(a,11)^he(a,25),g=f+l+Oy(a,u,c)+Fy[h]+ir[h]|0,d=(he(n,2)^he(n,13)^he(n,22))+My(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(){ir.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Ic=Li(()=>new Wo);function Vy(t){let e=Tn(t);Ae(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:qy,hexToBytes:Hy}=ki,Br={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Br;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:qy(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Br,r=typeof t=="string"?Hy(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}=Br._parseInt(r.subarray(2)),{d:o,l:a}=Br._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),oe=BigInt(1),Bv=BigInt(2),Cc=BigInt(3),Av=BigInt(4);function zy(t){let e=Vy(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(wt("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(wt("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:T,pz:E}=d,S=r.eql(r.mul(y,E),r.mul(b,w)),L=r.eql(r.mul(m,E),r.mul(T,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,Cc),{px:w,py:b,pz:T}=this,E=r.ZERO,S=r.ZERO,L=r.ZERO,N=r.mul(w,w),G=r.mul(b,b),z=r.mul(T,T),q=r.mul(w,b);return q=r.add(q,q),L=r.mul(w,T),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,T),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:T,pz:E}=d,S=r.ZERO,L=r.ZERO,N=r.ZERO,G=e.a,z=r.mul(e.b,Cc),q=r.mul(y,b),X=r.mul(m,T),at=r.mul(w,E),Kt=r.add(y,m),C=r.add(b,T);Kt=r.mul(Kt,C),C=r.add(q,X),Kt=r.sub(Kt,C),C=r.add(y,w);let P=r.add(b,E);return C=r.mul(C,P),P=r.add(q,at),C=r.sub(C,P),P=r.add(m,w),S=r.add(T,E),P=r.mul(P,S),S=r.add(X,at),P=r.sub(P,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(P,C),S=r.mul(Kt,S),S=r.sub(S,q),q=r.mul(Kt,X),N=r.mul(P,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===oe)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,d);let{k1neg:w,k1:b,k2neg:T,k2:E}=m.splitScalar(d),S=y,L=y,N=this;for(;b>Ve||E>Ve;)b&oe&&(S=S.add(N)),E&oe&&(L=L.add(N)),N=N.double(),b>>=oe,E>>=oe;return w&&(S=S.negate()),T&&(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:T,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(T,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:T,f:E}=this.wNAF(y);m=T,w=E}return h.normalizeZ([m,w])[0]}multiplyAndAddUnsafe(d,y,m){let w=h.BASE,b=(E,S)=>S===Ve||S===oe||!E.equals(w)?E.multiplyUnsafe(S):E.multiply(S),T=b(this,y).add(b(d,m));return T.is0()?void 0:T}toAffine(d){let{px:y,py:m,pz:w}=this,b=this.is0();d==null&&(d=b?r.ONE:r.inv(w));let T=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:T,y:E}}isTorsionFree(){let{h:d,isTorsionFree:y}=e;if(d===oe)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===oe?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=Oi(h,e.endo?Math.ceil(l/2):l);return{CURVE:e,ProjectivePoint:h,normPrivateKeyToScalar:u,weierstrassEquation:s,isWithinCurveOrder:o}}function Gy(t){let e=Tn(t);return Ae(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function _c(t){let e=Gy(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 Ui(C,n)}let{ProjectivePoint:c,normPrivateKeyToScalar:f,weierstrassEquation:h,isWithinCurveOrder:l}=zy({...e,toBytes(C,P,R){let D=P.toAffine(),A=r.toBytes(D.x),K=Ke;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=Ue(D);if(!o(A))throw new Error("Point is not on curve");let K=h(A),F=r.sqrt(K),H=(F&oe)===oe;return(R&1)===1!==H&&(F=r.neg(F)),{x:A,y:F}}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=>ke(er(C,e.nByteLength));function p(C){let P=n>>oe;return C>P}function d(C){return p(C)?a(-C):C}let y=(C,P,R)=>Ue(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=wt("compactSignature",P,R*2),new m(y(P,0,R),y(P,R,2*R))}static fromDER(P){let{r:R,s:D}=Br.toSig(wt("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(wt("msgHash",P));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(D*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 Br.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 Ou(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 T(C){let P=C instanceof Uint8Array,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(T(C))throw new Error("first arg must be private key");if(!T(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=Ue(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=_n(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 er(C,e.nByteLength)}function z(C,P,R=q){if(["recovered","canonical"].some(bt=>bt in R))throw new Error("sign() legacy options not supported");let{hash:D,randomBytes:A}=e,{lowS:K,prehash:F,extraEntropy:H}=R;K==null&&(K=!0),C=wt("msgHash",C),F&&(C=wt("prehashed msgHash",D(C)));let $=L(C),J=f(P),st=[G(J),G($)];if(H!=null){let bt=H===!0?A(r.BYTES):H;st.push(wt("extraEntropy",bt))}let j=Ke(...st),rt=$;function At(bt){let Ot=S(bt);if(!l(Ot))return;let Mt=u(Ot),Tt=c.BASE.multiply(Ot).toAffine(),Ft=a(Tt.x);if(Ft===Ve)return;let Ce=a(Mt*a(rt+Ft*J));if(Ce===Ve)return;let sr=(Tt.x===Ft?0:2)|Number(Tt.y&oe),tn=Ce;return K&&p(Ce)&&(tn=d(Ce),sr^=1),new m(Ft,tn,sr)}return{seed:j,k2sig:At}}let q={lowS:e.lowS,prehash:!1},X={lowS:e.lowS,prehash:!1};function at(C,P,R=q){let{seed:D,k2sig:A}=z(C,P,R),K=e;return yo(K.hash.outputLen,K.nByteLength,K.hmac)(D,A)}c.BASE._setWindowSize(8);function Kt(C,P,R,D=X){let A=C;if(P=wt("msgHash",P),R=wt("publicKey",R),"strict"in D)throw new Error("options.strict was renamed to lowS");let{lowS:K,prehash:F}=D,H,$;try{if(typeof A=="string"||A instanceof Uint8Array)try{H=m.fromDER(A)}catch(Tt){if(!(Tt instanceof Br.Err))throw Tt;H=m.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:Tt,s:Ft}=A;H=new m(Tt,Ft)}else throw new Error("PARSE");$=c.fromHex(R)}catch(Tt){if(Tt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(K&&H.hasHighS())return!1;F&&(P=e.hash(P));let{r:J,s:st}=H,j=L(P),rt=u(st),At=a(j*rt),bt=a(J*rt),Ot=c.BASE.multiplyAndAddUnsafe($,At,bt)?.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 $i=class extends zr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Iu(e);let n=Cn(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 Hr(this),this.iHash.update(e),this}digestInto(e){Hr(this),ao(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()}},Yo=(t,e,r)=>new $i(t,e).update(r).digest();Yo.create=(t,e)=>new $i(t,e);function Wy(t){return{hash:t,hmac:(e,...r)=>Yo(t,e,Ri(...r)),randomBytes:Gr}}function Tc(t,e){let r=n=>_c({...t,...Wy(n)});return Object.freeze({...r(e),create:r})}var Nc=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Rc=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Yy=BigInt(1),Qo=BigInt(2),Lc=(t,e)=>(t+e/Qo)/e;function Qy(t){let e=Nc,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,Qo,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,T=gt(b,o,e)*p%e,E=gt(T,n,e)*c%e,S=gt(E,Qo,e);if(!$o.eql($o.sqr(S),t))throw new Error("Cannot find square root");return S}var $o=Ki(Nc,void 0,void 0,{sqrt:Qy}),ge=Tc({a:BigInt(0),b:BigInt(7),Fp:$o,n:Rc,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=Rc,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Yy*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=r,o=BigInt("0x100000000000000000000000000000000"),a=Lc(s*t,e),u=Lc(-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}}}},Ic),Kv=BigInt(0);var Ov=ge.ProjectivePoint;function Dc(){return ge.utils.randomPrivateKey()}function Pc(t,e){let r=Lt.digest(e instanceof Uint8Array?e:e.subarray());if(se(r))return r.then(({digest:n})=>ge.sign(n,t).toDERRawBytes()).catch(n=>{throw new O(String(n),"ERR_INVALID_INPUT")});try{return ge.sign(r.digest,t).toDERRawBytes()}catch(n){throw new O(String(n),"ERR_INVALID_INPUT")}}function kc(t,e,r){let n=Lt.digest(r instanceof Uint8Array?r:r.subarray());if(se(n))return n.then(({digest:i})=>ge.verify(e,i,t)).catch(i=>{throw new O(String(i),"ERR_INVALID_INPUT")});try{return ge.verify(e,n.digest,t)}catch(i){throw new O(String(i),"ERR_INVALID_INPUT")}}function Uc(t){return ge.ProjectivePoint.fromHex(t).toRawBytes(!0)}function Kc(t){try{ge.getPublicKey(t,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}function Zo(t){try{ge.ProjectivePoint.fromHex(t)}catch(e){throw new O(String(e),"ERR_INVALID_PUBLIC_KEY")}}function Oc(t){try{return ge.getPublicKey(t,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}var On=class{_key;constructor(e){Zo(e),this._key=e}verify(e,r){return kc(this._key,r,e)}marshal(){return Uc(this._key)}get bytes(){return de.encode({Type:lt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}async hash(){let e=Lt.digest(this.bytes),r;return se(e)?{bytes:r}=await e:r=e.bytes,r}},Mn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??Oc(e),Kc(this._key),Zo(this._publicKey)}sign(e){return Pc(this._key,e)}get public(){return new On(this._publicKey)}marshal(){return this._key}get bytes(){return ye.encode({Type:lt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return se(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return _t(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return $r(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Zy(t){return new Mn(t)}function Xy(t){return new On(t)}async function Jy(){let t=Dc();return new Mn(t)}var Ie={rsa:Go,ed25519:Mo,secp256k1:Xo};function Jo(t){let e=Object.keys(Ie).join(" / ");return new O(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function jo(t){if(t=t.toLowerCase(),t==="rsa"||t==="ed25519"||t==="secp256k1")return Ie[t];throw Jo(t)}async function jy(t,e){return jo(t).generateKeyPair(e??2048)}async function t1(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 Oo(e)}function e1(t){let e=de.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case lt.RSA:return Ie.rsa.unmarshalRsaPublicKey(r);case lt.Ed25519:return Ie.ed25519.unmarshalEd25519PublicKey(r);case lt.Secp256k1:return Ie.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Jo(e.Type??"unknown")}}function r1(t,e){return e=(e??"rsa").toLowerCase(),jo(e),t.bytes}async function Mc(t){let e=ye.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case lt.RSA:return Ie.rsa.unmarshalRsaPrivateKey(r);case lt.Ed25519:return Ie.ed25519.unmarshalEd25519PrivateKey(r);case lt.Secp256k1:return Ie.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Jo(e.Type??"RSA")}}function n1(t,e){return e=(e??"rsa").toLowerCase(),jo(e),t.bytes}async function i1(t,e){try{let i=await uc(t,e);return await Mc(i)}catch{}let r=Zi.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=Zi.default.asn1.toDer(Zi.default.pki.privateKeyToAsn1(r));return n=xt(n.getBytes(),"ascii"),Ie.rsa.unmarshalRsaPrivateKey(n)}var s1=Rt(Xs(),1),o1=Rt(St(),1);function Fc(){return BigInt(`0x${_t(Er(8),"base16")}`)}var Vc=(t,e)=>{let r=xt(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},qc=t=>Lt.encode(t);var Hc=function(t){return Array.isArray(t)?t:[t]},a1=async t=>{if(t.sequenceNumber==null||t.from==null||t.signature==null)return!1;let e=cn(t.from);return e.publicKey!=null?!0:t.key!=null?(await zn(t.key)).equals(e):!1},zc=async t=>{if(t.from==null)throw new O("RPC message was missing from",Nt.ERR_MISSING_FROM);if(!await a1(t))return{type:"unsigned",topic:t.topic??"",data:t.data??new Uint8Array(0)};let e=cn(t.from),r={type:"signed",from:cn(t.from),topic:t.topic??"",sequenceNumber:c1(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},Vn=t=>t.type==="signed"?{from:t.from.multihash.bytes,data:t.data,sequenceNumber:u1(t.sequenceNumber),topic:t.topic,signature:t.signature,key:t.key}:{data:t.data,topic:t.topic},u1=t=>{let e=t.toString(16);return e.length%2!==0&&(e=`0${e}`),xt(e,"base16")},c1=t=>BigInt(`0x${_t(t,"base16")}`);var Gc=xt("libp2p-pubsub:");async function Wc(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=Gt([Gc,r(Vn(n)).subarray()]),s=await Fn.unmarshalPrivateKey(t.privateKey);return n.signature=await s.sign(i),n.key=t.publicKey,n}async function Yc(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=Gt([Gc,e({...Vn(t),signature:void 0,key:void 0}).subarray()]),n=await f1(t);return Fn.unmarshalPublicKey(n).verify(r,t.signature)}async function f1(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 zn(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 ta=class extends Ar{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=Hc(n),this.enabled=r.enabled!==!1,this.started=!1,this.topics=new Map,this.subscriptions=new Set,this.peers=new fn,this.globalSignaturePolicy=i==="StrictNoSign"?"StrictNoSign":"StrictSign",this.canRelayMessage=s,this.emitSelf=o,this.topicValidators=new Map,this.queue=new Wa({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 oi(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 me("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 zc(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 hn,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 me("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 Vc(e.key,e.sequenceNumber);case"StrictNoSign":return qc(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(Vn)})}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 Yc(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===en.Reject||s===en.Ignore)throw new O("Message validation failed",Nt.ERR_TOPIC_VALIDATOR_REJECT)}}async buildMessage(e){switch(this.globalSignaturePolicy){case"StrictSign":return Wc(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:Fc()};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 me("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 uf(h1);})();
|
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 il(t){return t.replace(/^\s+/,"")}});var V0=ct((qm,F0)=>{var ve=ot();hr();St();var K0=F0.exports=ve.sha256=ve.sha256||{};ve.md.sha256=ve.md.algorithms.sha256=K0;K0.create=function(){O0||sl();var t=null,e=ve.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=ve.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=ve.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),U0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=ve.util.createBuffer();i.putBytes(e.bytes());var s=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,o=s&n.blockLength-1;i.putBytes(Js.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};U0(h,r,i);var l=ve.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 Js=null,O0=!1,M0=null;function sl(){Js="\x80",Js+=ve.util.fillString("\0",64),M0=[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],O0=!0}function U0(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+M0[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 H0=ct((Hm,q0)=>{var we=ot();St();var vi=null;we.util.isNodejs&&!we.options.usePureJavaScript&&!process.versions["node-webkit"]&&(vi=mi());var ol=q0.exports=we.prng=we.prng||{};ol.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=we.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 we.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)),we.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=we.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=we.util.globalScope,l=h.crypto||h.msCrypto;l&&l.getRandomValues&&(f=function(E){return l.getRandomValues(E)});var g=we.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,T=Math.floor(Math.random()*65536);g.length()<c;){w=16807*(T&65535),m=16807*(T>>16),w+=(m&32767)<<16,w+=m>>15,w=(w&2147483647)+(w>>31),T=w&4294967295;for(var y=0;y<3;++y)b=T>>>(y<<3),b^=Math.floor(Math.random()*256),g.putByte(b&255)}return g.getBytes(c)}return vi?(e.seedFile=function(c,f){vi.randomBytes(c,function(h,l){if(h)return f(h);f(null,l.toString())})},e.seedFileSync=function(c){return vi.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 An=ct((zm,js)=>{var Ut=ot();hi();V0();H0();St();(function(){if(Ut.random&&Ut.random.getBytes){js.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,js.exports=Ut.random})(typeof jQuery<"u"?jQuery:null)})()});var W0=ct((Gm,Y0)=>{var Xt=ot();St();var to=[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],z0=[1,2,3,5],al=function(t,e){return t<<e&65535|(t&65535)>>16-e},ul=function(t,e){return(t&65535)>>e|t<<16-e&65535};Y0.exports=Xt.rc2=Xt.rc2||{};Xt.rc2.expandKey=function(t,e){typeof t=="string"&&(t=Xt.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(to[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-s,to[r.at(128-s)&o]),a=127-s;a>=0;a--)r.setAt(a,to[r.at(a+1)^r.at(a+s)]);return r};var G0=function(t,e,r){var n=!1,i=null,s=null,o=null,a,u,c,f,h=[];for(t=Xt.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]=al(p[c],z0[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]=ul(p[c],z0[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=Xt.util.createBuffer(p)),n=!1,i=Xt.util.createBuffer(),s=d||new Xt.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};Xt.rc2.startEncrypting=function(t,e,r){var n=Xt.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};Xt.rc2.createEncryptionCipher=function(t,e){return G0(t,e,!0)};Xt.rc2.startDecrypting=function(t,e,r){var n=Xt.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};Xt.rc2.createDecryptionCipher=function(t,e){return G0(t,e,!1)}});var Si=ct((Ym,eu)=>{var eo=ot();eu.exports=eo.jsbn=eo.jsbn||{};var Pe,cl=0xdeadbeefcafe,Q0=(cl&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))}eo.jsbn.BigInteger=I;function et(){return new I(null)}function fl(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 hl(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 $0(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=$0,Pe=28):Q0&&navigator.appName=="Microsoft Internet Explorer"?(I.prototype.am=hl,Pe=30):Q0&&navigator.appName!="Netscape"?(I.prototype.am=fl,Pe=26):(I.prototype.am=$0,Pe=28);I.prototype.DB=Pe;I.prototype.DM=(1<<Pe)-1;I.prototype.DV=1<<Pe;var ro=52;I.prototype.FV=Math.pow(2,ro);I.prototype.F1=ro-Pe;I.prototype.F2=2*Pe-ro;var ll="0123456789abcdefghijklmnopqrstuvwxyz",wi=new Array,Vr,ne;Vr=48;for(ne=0;ne<=9;++ne)wi[Vr++]=ne;Vr=97;for(ne=10;ne<36;++ne)wi[Vr++]=ne;Vr=65;for(ne=10;ne<36;++ne)wi[Vr++]=ne;function Z0(t){return ll.charAt(t)}function X0(t,e){var r=wi[t.charCodeAt(e)];return r??-1}function pl(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 dl(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 Ze(t){var e=et();return e.fromInt(t),e}function yl(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:X0(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 gl(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function ml(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=Z0(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+=Z0(n));return i?s:"0"}function xl(){var t=et();return I.ZERO.subTo(this,t),t}function bl(){return this.s<0?this.negate():this}function vl(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 Ei(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 wl(){return this.t<=0?0:this.DB*(this.t-1)+Ei(this.data[this.t-1]^this.s&this.DM)}function El(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 Sl(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 Bl(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 Al(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 Il(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 Cl(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 _l(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 Tl(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-Ei(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 Rl(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 Ll(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function Nl(t){return t}function Dl(t){t.divRemTo(this.m,null,t)}function Pl(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function kl(t,e){t.squareTo(e),this.reduce(e)}lr.prototype.convert=Ll;lr.prototype.revert=Nl;lr.prototype.reduce=Dl;lr.prototype.mulTo=Pl;lr.prototype.sqrTo=kl;function Ul(){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 Kl(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 Ol(t){var e=et();return t.copyTo(e),this.reduce(e),e}function Ml(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 Fl(t,e){t.squareTo(e),this.reduce(e)}function Vl(t,e,r){t.multiplyTo(e,r),this.reduce(r)}pr.prototype.convert=Kl;pr.prototype.revert=Ol;pr.prototype.reduce=Ml;pr.prototype.mulTo=Vl;pr.prototype.sqrTo=Fl;function ql(){return(this.t>0?this.data[0]&1:this.s)==0}function Hl(t,e){if(t>4294967295||t<1)return I.ONE;var r=et(),n=et(),i=e.convert(this),s=Ei(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 zl(t,e){var r;return t<256||e.isEven()?r=new lr(e):r=new pr(e),this.exp(t,r)}I.prototype.copyTo=pl;I.prototype.fromInt=dl;I.prototype.fromString=yl;I.prototype.clamp=gl;I.prototype.dlShiftTo=El;I.prototype.drShiftTo=Sl;I.prototype.lShiftTo=Bl;I.prototype.rShiftTo=Al;I.prototype.subTo=Il;I.prototype.multiplyTo=Cl;I.prototype.squareTo=_l;I.prototype.divRemTo=Tl;I.prototype.invDigit=Ul;I.prototype.isEven=ql;I.prototype.exp=Hl;I.prototype.toString=ml;I.prototype.negate=xl;I.prototype.abs=bl;I.prototype.compareTo=vl;I.prototype.bitLength=wl;I.prototype.mod=Rl;I.prototype.modPowInt=zl;I.ZERO=Ze(0);I.ONE=Ze(1);function Gl(){var t=et();return this.copyTo(t),t}function Yl(){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 Wl(){return this.t==0?this.s:this.data[0]<<24>>24}function Ql(){return this.t==0?this.s:this.data[0]<<16>>16}function $l(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Zl(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Xl(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=Ze(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 Jl(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=X0(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 jl(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),no,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 tp(){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 ep(t){return this.compareTo(t)==0}function rp(t){return this.compareTo(t)<0?this:t}function np(t){return this.compareTo(t)>0?this:t}function ip(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 sp(t,e){return t&e}function op(t){var e=et();return this.bitwiseTo(t,sp,e),e}function no(t,e){return t|e}function ap(t){var e=et();return this.bitwiseTo(t,no,e),e}function J0(t,e){return t^e}function up(t){var e=et();return this.bitwiseTo(t,J0,e),e}function j0(t,e){return t&~e}function cp(t){var e=et();return this.bitwiseTo(t,j0,e),e}function fp(){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 hp(t){var e=et();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function lp(t){var e=et();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function pp(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 dp(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+pp(this.data[t]);return this.s<0?this.t*this.DB:-1}function yp(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function gp(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=yp(this.data[r]^e);return t}function mp(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function xp(t,e){var r=I.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function bp(t){return this.changeBit(t,no)}function vp(t){return this.changeBit(t,j0)}function wp(t){return this.changeBit(t,J0)}function Ep(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 Sp(t){var e=et();return this.addTo(t,e),e}function Bp(t){var e=et();return this.subTo(t,e),e}function Ap(t){var e=et();return this.multiplyTo(t,e),e}function Ip(t){var e=et();return this.divRemTo(t,e,null),e}function Cp(t){var e=et();return this.divRemTo(t,null,e),e}function _p(t){var e=et(),r=et();return this.divRemTo(t,e,r),new Array(e,r)}function Tp(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function Rp(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 In(){}function tu(t){return t}function Lp(t,e,r){t.multiplyTo(e,r)}function Np(t,e){t.squareTo(e)}In.prototype.convert=tu;In.prototype.revert=tu;In.prototype.mulTo=Lp;In.prototype.sqrTo=Np;function Dp(t){return this.exp(t,new In)}function Pp(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 kp(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 qr(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 Up(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 Kp(t){return t}function Op(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 Mp(t,e){t.squareTo(e),this.reduce(e)}function Fp(t,e,r){t.multiplyTo(e,r),this.reduce(r)}qr.prototype.convert=Up;qr.prototype.revert=Kp;qr.prototype.reduce=Op;qr.prototype.mulTo=Fp;qr.prototype.sqrTo=Mp;function Vp(t,e){var r=t.bitLength(),n,i=Ze(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 qr(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=Ei(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 qp(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 Hp(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 zp(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return I.ZERO;for(var r=t.clone(),n=this.clone(),i=Ze(1),s=Ze(0),o=Ze(0),a=Ze(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 ce=[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],Gp=(1<<26)/ce[ce.length-1];function Yp(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=ce[ce.length-1]){for(e=0;e<ce.length;++e)if(r.data[0]==ce[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<ce.length;){for(var n=ce[e],i=e+1;i<ce.length&&n<Gp;)n*=ce[i++];for(n=r.modInt(n);e<i;)if(n%ce[e++]==0)return!1}return r.millerRabin(t)}function Wp(t){var e=this.subtract(I.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Qp(),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 Qp(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}I.prototype.chunkSize=$l;I.prototype.toRadix=Xl;I.prototype.fromRadix=Jl;I.prototype.fromNumber=jl;I.prototype.bitwiseTo=ip;I.prototype.changeBit=xp;I.prototype.addTo=Ep;I.prototype.dMultiply=Tp;I.prototype.dAddOffset=Rp;I.prototype.multiplyLowerTo=Pp;I.prototype.multiplyUpperTo=kp;I.prototype.modInt=Hp;I.prototype.millerRabin=Wp;I.prototype.clone=Gl;I.prototype.intValue=Yl;I.prototype.byteValue=Wl;I.prototype.shortValue=Ql;I.prototype.signum=Zl;I.prototype.toByteArray=tp;I.prototype.equals=ep;I.prototype.min=rp;I.prototype.max=np;I.prototype.and=op;I.prototype.or=ap;I.prototype.xor=up;I.prototype.andNot=cp;I.prototype.not=fp;I.prototype.shiftLeft=hp;I.prototype.shiftRight=lp;I.prototype.getLowestSetBit=dp;I.prototype.bitCount=gp;I.prototype.testBit=mp;I.prototype.setBit=bp;I.prototype.clearBit=vp;I.prototype.flipBit=wp;I.prototype.add=Sp;I.prototype.subtract=Bp;I.prototype.multiply=Ap;I.prototype.divide=Ip;I.prototype.remainder=Cp;I.prototype.divideAndRemainder=_p;I.prototype.modPow=Vp;I.prototype.modInverse=zp;I.prototype.pow=Dp;I.prototype.gcd=qp;I.prototype.isProbablePrime=Yp});var ou=ct((Wm,su)=>{var Ee=ot();hr();St();var nu=su.exports=Ee.sha1=Ee.sha1||{};Ee.md.sha1=Ee.md.algorithms.sha1=nu;nu.create=function(){iu||$p();var t=null,e=Ee.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=Ee.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,s){s==="utf8"&&(i=Ee.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),ru(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Ee.util.createBuffer();i.putBytes(e.bytes());var s=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,o=s&n.blockLength-1;i.putBytes(io.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};ru(h,r,i);var l=Ee.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 io=null,iu=!1;function $p(){io="\x80",io+=Ee.util.fillString("\0",64),iu=!0}function ru(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 cu=ct((Qm,uu)=>{var Se=ot();St();An();ou();var au=uu.exports=Se.pkcs1=Se.pkcs1||{};au.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=Se.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=Se.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=Bi(i,a-s.digestLength-1,o),y=Se.util.xorBytes(p,d,p.length),m=Bi(y,s.digestLength,o),w=Se.util.xorBytes(i,m,i.length);return"\0"+w+y};au.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=Se.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=Bi(f,i.digestLength,s),l=Se.util.xorBytes(c,h,c.length),g=Bi(l,o-i.digestLength-1,s),p=Se.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,T=i.digestLength;T<p.length;T++){var E=p.charCodeAt(T),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 Bi(t,e,r){r||(r=Se.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 fu=ct(($m,so)=>{var Xe=ot();St();Si();An();(function(){if(Xe.prime){so.exports=Xe.prime;return}var t=so.exports=Xe.prime=Xe.prime||{},e=Xe.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||Xe.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);Xe.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 Xe.util.estimateCores(function(E,S){E&&(S=2),y=S-1,T()});T();function T(){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 Ii=ct((Zm,mu)=>{var V=ot();Bn();Si();pi();cu();fu();An();St();typeof tt>"u"&&(tt=V.jsbn.BigInteger);var tt,oo=V.util.isNodejs?mi():null,v=V.asn1,ie=V.util;V.pki=V.pki||{};mu.exports=V.pki.rsa=V.rsa=V.rsa||{};var Y=V.pki,Zp=[6,4,2,4,2,4,6,2],Xp={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"}]},Jp={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"}]},jp={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"}]},td=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"}]}]},ed={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"}]},rd=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()},yu=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=gu(t,e,r)):(i=V.util.createBuffer(),i.putBytes(t));for(var o=new tt(i.toHex(),16),a=yu(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=yu(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?Ai(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(id(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Zp[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(hu("generateKeyPair"))return oo.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(lu("generateKey")&&lu("exportKey"))return ie.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:du(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ie.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(pu("generateKey")&&pu("exportKey")){var i=ie.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:du(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var u=a.target.result,c=ie.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(hu("generateKeyPairSync")){var s=oo.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;nd(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 gu(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=Ai(c,r,!0);var f=v.fromDer(c,{parseAllBytes:o._parseAllDigestBytes}),h={},l=[];if(!v.validate(f,ed,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=Ai(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:Ai};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:rd},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,Xp,e,r)&&(t=v.fromDer(V.util.createBuffer(e.privateKey))),e={},r=[],!v.validate(t,Jp,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,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))])};Y.publicKeyFromAsn1=function(t){var e={},r=[];if(v.validate(t,td,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,jp,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,Be(t.n)),v.create(v.Class.UNIVERSAL,v.Type.INTEGER,!1,Be(t.e))])};function gu(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 Ai(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 nd(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 Be(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 id(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 hu(t){return V.util.isNodejs&&typeof oo[t]=="function"}function lu(t){return typeof ie.globalScope<"u"&&typeof ie.globalScope.crypto=="object"&&typeof ie.globalScope.crypto.subtle=="object"&&typeof ie.globalScope.crypto.subtle[t]=="function"}function pu(t){return typeof ie.globalScope<"u"&&typeof ie.globalScope.msCrypto=="object"&&typeof ie.globalScope.msCrypto.subtle=="object"&&typeof ie.globalScope.msCrypto.subtle[t]=="function"}function du(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 Su=ct((Xm,Eu)=>{var U=ot();hi();Bn();_0();hr();pi();Xs();k0();An();W0();Ii();St();typeof xu>"u"&&(xu=U.jsbn.BigInteger);var xu,B=U.asn1,W=U.pki=U.pki||{};Eu.exports=W.pbe=U.pbe=U.pbe||{};var dr=W.oids,sd={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"}]},od={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"}]}]},ad={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=wu(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=ud(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 T=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[a,B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,u)]);return T};W.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!B.validate(t,sd,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 T=Math.ceil(i/u),E=1;E<=T;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,od,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=vu(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,ad,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=vu(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=[bu(n,t+e)],s=16,o=1;s<r;++o,s+=16)i.push(bu(n,i[o-1]+t+e));return i.join("").substr(0,r)};function bu(t,e){return t.start().update(e).digest().getBytes()}function vu(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 wu(e)}function wu(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 ud(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 yc=ct((Wb,dc)=>{var pt=ot();hr();St();var Pn=dc.exports=pt.sha512=pt.sha512||{};pt.md.sha512=pt.md.algorithms.sha512=Pn;var lc=pt.sha384=pt.sha512.sha384=pt.sha512.sha384||{};lc.create=function(){return Pn.create("SHA-384")};pt.md.sha384=pt.md.algorithms.sha384=lc;pt.sha512.sha256=pt.sha512.sha256||{create:function(){return Pn.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 Pn.create("SHA-512/224")}};pt.md["sha512/224"]=pt.md.algorithms["sha512/224"]=pt.sha512.sha224;Pn.create=function(t){if(pc||Cy(),typeof t>"u"&&(t="SHA-512"),!(t in wr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=wr[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),hc(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(Vo.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);hc(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 Vo=null,pc=!1,qo=null,wr=null;function Cy(){Vo="\x80",Vo+=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]],wr={},wr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],wr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],wr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],wr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],pc=!0}function hc(t,e,r){for(var n,i,s,o,a,u,c,f,h,l,g,p,d,y,m,w,b,T,E,S,L,N,G,z,q,X,at,Kt,C,P,R,D,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)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],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=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|T&(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=T,b=m,T=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,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 h1={};It(h1,{PubSubBaseProtocol:()=>ta});var p1=Symbol.for("@libp2p/connection");var y1=Symbol.for("@libp2p/content-routing");var x1=Symbol.for("@libp2p/peer-discovery");var fa=Symbol.for("@libp2p/peer-id");var w1=Symbol.for("@libp2p/peer-routing");var en;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(en||(en={}));var A1=Symbol.for("@libp2p/transport");var ha;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(ha||(ha={}));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 Ar=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 me(e,r))}},Ji=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},me=globalThis.CustomEvent??Ji;var ns={};It(ns,{base58btc:()=>Wt,base58flickr:()=>df});function cf(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,T=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*T[L]>>>0,T[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&&T[N]===0;)N++;for(var G=u.repeat(d);N<b;++N)G+=t.charAt(T[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 T=r[p.charCodeAt(d)];if(T===255)return;for(var E=0,S=w-1;(T!==0||E<m)&&S!==-1;S--,E++)T+=a*b[S]>>>0,b[S]=T%256>>>0,T=T/256>>>0;if(T!==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 ff=cf,hf=ff,la=hf;var rg=new Uint8Array(0);var pa=(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},_e=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 da=t=>new TextEncoder().encode(t),ya=t=>new TextDecoder().decode(t);var ji=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")}},ts=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 ma(this,e)}},es=class{constructor(e){this.decoders=e}or(e){return ma(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`)}},ma=(t,e)=>new es({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),rs=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new ji(e,r,n),this.decoder=new ts(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Ir=({name:t,prefix:e,encode:r,decode:n})=>new rs(t,e,r,n),qe=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=la(r,e);return Ir({prefix:t,name:e,encode:n,decode:s=>_e(i(s))})},lf=(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},pf=(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},vt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Ir({prefix:e,name:t,encode(i){return pf(i,n,r)},decode(i){return lf(i,n,r,t)}});var Wt=qe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),df=qe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var is={};It(is,{base10:()=>yf});var yf=qe({prefix:"9",name:"base10",alphabet:"0123456789"});var ss={};It(ss,{base16:()=>gf,base16upper:()=>mf});var gf=vt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),mf=vt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var os={};It(os,{base2:()=>xf});var xf=vt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var as={};It(as,{base256emoji:()=>Sf});var xa=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}"),bf=xa.reduce((t,e,r)=>(t[r]=e,t),[]),vf=xa.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function wf(t){return t.reduce((e,r)=>(e+=bf[r],e),"")}function Ef(t){let e=[];for(let r of t){let n=vf[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Sf=Ir({prefix:"\u{1F680}",name:"base256emoji",encode:wf,decode:Ef});var us={};It(us,{base32:()=>Cr,base32hex:()=>Cf,base32hexpad:()=>Tf,base32hexpadupper:()=>Rf,base32hexupper:()=>_f,base32pad:()=>Af,base32padupper:()=>If,base32upper:()=>Bf,base32z:()=>Lf});var Cr=vt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Bf=vt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Af=vt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),If=vt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Cf=vt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),_f=vt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Tf=vt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Rf=vt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Lf=vt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var cs={};It(cs,{base36:()=>Nf,base36upper:()=>Df});var Nf=qe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Df=qe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var fs={};It(fs,{base64:()=>rn,base64pad:()=>Pf,base64url:()=>kf,base64urlpad:()=>Uf});var rn=vt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Pf=vt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),kf=vt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Uf=vt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var hs={};It(hs,{base8:()=>Kf});var Kf=vt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ls={};It(ls,{identity:()=>Of});var Of=Ir({prefix:"\0",name:"identity",encode:t=>ya(t),decode:t=>da(t)});var mg=new TextEncoder,xg=new TextDecoder;var ds={};It(ds,{identity:()=>He});var Vf=wa,ba=128,qf=127,Hf=~qf,zf=Math.pow(2,31);function wa(t,e,r){e=e||[],r=r||0;for(var n=r;t>=zf;)e[r++]=t&255|ba,t/=128;for(;t&Hf;)e[r++]=t&255|ba,t>>>=7;return e[r]=t|0,wa.bytes=r-n+1,e}var Gf=ps,Yf=128,va=127;function ps(t,n){var r=0,n=n||0,i=0,s=n,o,a=t.length;do{if(s>=a)throw ps.bytes=0,new RangeError("Could not decode varint");o=t[s++],r+=i<28?(o&va)<<i:(o&va)*Math.pow(2,i),i+=7}while(o>=Yf);return ps.bytes=s-n,r}var Wf=Math.pow(2,7),Qf=Math.pow(2,14),$f=Math.pow(2,21),Zf=Math.pow(2,28),Xf=Math.pow(2,35),Jf=Math.pow(2,42),jf=Math.pow(2,49),th=Math.pow(2,56),eh=Math.pow(2,63),rh=function(t){return t<Wf?1:t<Qf?2:t<$f?3:t<Zf?4:t<Xf?5:t<Jf?6:t<jf?7:t<th?8:t<eh?9:10},nh={encode:Vf,decode:Gf,encodingLength:rh},ih=nh,nn=ih;var sn=(t,e=0)=>[nn.decode(t,e),nn.decode.bytes],_r=(t,e,r=0)=>(nn.encode(t,e,r),e),Tr=t=>nn.encodingLength(t);var xe=(t,e)=>{let r=e.byteLength,n=Tr(t),i=n+Tr(r),s=new Uint8Array(i+r);return _r(t,s,0),_r(r,s,n),s.set(e,i),new Rr(t,r,e,s)},on=t=>{let e=_e(t),[r,n]=sn(e),[i,s]=sn(e.subarray(n)),o=e.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new Rr(r,i,o,e)},Ea=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&pa(t.bytes,r.bytes)}},Rr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Sa=0,sh="identity",Ba=_e,oh=t=>xe(Sa,Ba(t)),He={code:Sa,name:sh,encode:Ba,digest:oh};var ms={};It(ms,{sha256:()=>Lt,sha512:()=>ah});var gs=({name:t,code:e,encode:r})=>new ys(t,e,r),ys=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?xe(this.code,r):r.then(n=>xe(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Ia=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Lt=gs({name:"sha2-256",code:18,encode:Ia("SHA-256")}),ah=gs({name:"sha2-512",code:19,encode:Ia("SHA-512")});var Ca=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return ch(r,xs(t),e||Wt.encoder);default:return fh(r,xs(t),e||Cr.encoder)}};var _a=new WeakMap,xs=t=>{let e=_a.get(t);if(e==null){let r=new Map;return _a.set(t,r),r}return e},or=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!==an)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==hh)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=xe(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&&Ea(e.multihash,n.multihash)}toString(e){return Ca(this,e)}toJSON(){return{"/":Ca(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||Ta(n,i,s.bytes))}else if(r[lh]===!0){let{version:n,multihash:i,code:s}=r,o=on(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!==an)throw new Error(`Version 0 CID must use dag-pb (code: ${an}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=Ta(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,an,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=_e(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 Rr(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]=sn(e.subarray(r));return r+=l,h},i=n(),s=an;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]=uh(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 xs(s).set(n,e),s}},uh=(t,e)=>{switch(t[0]){case"Q":{let r=e||Wt;return[Wt.prefix,r.decode(`${Wt.prefix}${t}`)]}case Wt.prefix:{let r=e||Wt;return[Wt.prefix,r.decode(t)]}case Cr.prefix:{let r=e||Cr;return[Cr.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)]}}},ch=(t,e,r)=>{let{prefix:n}=r;if(n!==Wt.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},fh=(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},an=112,hh=18,Ta=(t,e,r)=>{let n=Tr(t),i=n+Tr(e),s=new Uint8Array(i+r.byteLength);return _r(t,s,0),_r(e,s,n),s.set(r,i),s},lh=Symbol.for("@ipld/js-cid/CID");var Nr={...ls,...os,...hs,...is,...ss,...us,...cs,...ns,...fs,...as},Pg={...ms,...ds};function Vt(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 ph=Symbol.for("nodejs.util.inspect.custom"),Ra=Object.values(Nr).map(t=>t.decoder).reduce((t,e)=>t.or(e),Nr.identity.decoder),La=114,bs=36,vs=37,un=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()})`}[fa]=!0;toString(){return this.string==null&&(this.string=Wt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return or.createV1(La,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Vt(this.multihash.bytes,e);if(typeof e=="string")return Ct(e).equals(this);if(e?.multihash?.bytes!=null)return Vt(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[ph](){return`PeerId(${this.toString()})`}},Dr=class extends un{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Pr=class extends un{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},kr=class extends un{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Ct(t,e){if(e=e??Ra,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=on(Wt.decode(`z${t}`));return t.startsWith("12D")?new Pr({multihash:r}):t.startsWith("16U")?new kr({multihash:r}):new Dr({multihash:r})}return cn(Ra.decode(t))}function cn(t){try{let e=on(t);if(e.code===He.code){if(e.digest.length===bs)return new Pr({multihash:e});if(e.digest.length===vs)return new kr({multihash:e})}if(e.code===Lt.code)return new Dr({multihash:e})}catch{return dh(or.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function dh(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==La)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Lt.code)return new Dr({multihash:t.multihash});if(e.code===He.code){if(e.digest.length===bs)return new Pr({multihash:t.multihash});if(e.digest.length===vs)return new kr({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function zn(t,e){return t.length===bs?new Pr({multihash:xe(He.code,t),privateKey:e}):t.length===vs?new kr({multihash:xe(He.code,t),privateKey:e}):new Dr({multihash:await Lt.digest(t),publicKey:t,privateKey:e})}function Te(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 fn=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){this.map.delete(e.toString())}entries(){return Te(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 Te(this.map.keys(),e=>Ct(e))}values(){return this.map.values()}get size(){return this.map.size}};var hn=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 Te(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 Te(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 ws=class t{list;constructor(e){if(this.list=[],e!=null)for(let r of e)this.list.push(r.toString())}[Symbol.iterator](){return Te(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 Te(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}get length(){return this.list.length}};function Gn(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var Yn=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}},Ur=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Yn(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 Yn(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 Es=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Kr(t={}){return yh(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 yh(t,e){e=e??{};let r=e.onEnd,n=new Ur,i,s,o,a=Gn(),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=Gn()})}},c=y=>s!=null?s(y):(n.push(y),i),f=y=>(n=new Ur,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 Ur,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((T,E)=>{b=()=>{E(new Es)},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 gh(t){return t[Symbol.asyncIterator]!=null}function mh(...t){let e=[];for(let r of t)gh(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Kr({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 Na=mh;function ln(t,...e){if(t==null)throw new Error("Empty pipeline");if(Ss(t)){let n=t;t=()=>n.source}else if(Pa(t)||Da(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Ss(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++)Ss(r[n])&&(r[n]=bh(r[n]));return xh(...r)}var xh=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},Da=t=>t?.[Symbol.asyncIterator]!=null,Pa=t=>t?.[Symbol.iterator]!=null,Ss=t=>t==null?!1:t.sink!=null&&t.source!=null,bh=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Kr({objectMode:!0});r.then(()=>{n.end()},o=>{n.end(o)});let i,s=t.source;if(Da(s))i=async function*(){yield*s,n.end()};else if(Pa(s))i=function*(){yield*s,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Na(n,i())}return t.source};var As=Rt(Ua(),1);var dn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Is=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ka=t=>globalThis.DOMException===void 0?new Is(t):new DOMException(t),Oa=t=>{let e=t.reason===void 0?Ka("This operation was aborted."):t.reason;return e instanceof Error?e:Ka(e)};function Cs(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(Oa(u)),u.addEventListener("abort",()=>{a(Oa(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 _s(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 ar=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,Ts=class{constructor(){Re.set(this,[])}enqueue(e,r){r={priority:0,...r};let n={priority:r.priority,run:e};if(this.size&&ar(this,Re,"f")[this.size-1].priority>=r.priority){ar(this,Re,"f").push(n);return}let i=_s(ar(this,Re,"f"),n,(s,o)=>o.priority-s.priority);ar(this,Re,"f").splice(i,0,n)}dequeue(){let e=ar(this,Re,"f").shift();return e?.run}filter(e){return ar(this,Re,"f").filter(r=>r.priority===e.priority).map(r=>r.run)}get size(){return ar(this,Re,"f").length}};Re=new WeakMap;var Ma=Ts;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)},Et,gn,mn,Ge,jn,xn,Qn,ae,yn,jt,$n,te,bn,ze,Zn,Fa,Va,za,qa,Ha,Xn,Rs,Ls,ti,Ga,Jn,ei=class extends Error{},Ns=class extends As.default{constructor(e){var r,n,i,s;if(super(),Et.add(this),gn.set(this,void 0),mn.set(this,void 0),Ge.set(this,0),jn.set(this,void 0),xn.set(this,void 0),Qn.set(this,0),ae.set(this,void 0),yn.set(this,void 0),jt.set(this,void 0),$n.set(this,void 0),te.set(this,0),bn.set(this,void 0),ze.set(this,void 0),Zn.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:Ma,...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,jn,e.intervalCap,"f"),mt(this,xn,e.interval,"f"),mt(this,jt,new e.queueClass,"f"),mt(this,$n,e.queueClass,"f"),this.concurrency=e.concurrency,this.timeout=e.timeout,mt(this,Zn,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,Et,"m",ti).call(this)}async add(e,r={}){return r={timeout:this.timeout,throwOnTimeout:M(this,Zn,"f"),...r},new Promise((n,i)=>{M(this,jt,"f").enqueue(async()=>{var s,o,a;mt(this,te,(o=M(this,te,"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 ei("The task was aborted.");let u=e({signal:r.signal});r.timeout&&(u=Cs(Promise.resolve(u),r.timeout)),r.signal&&(u=Promise.race([u,M(this,Et,"m",Ga).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,Et,"m",za).call(this)}},r),this.emit("add"),M(this,Et,"m",Xn).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,Et,"m",ti).call(this),this):this}pause(){mt(this,ze,!0,"f")}clear(){mt(this,jt,new(M(this,$n,"f")),"f")}async onEmpty(){M(this,jt,"f").size!==0&&await M(this,Et,"m",Jn).call(this,"empty")}async onSizeLessThan(e){M(this,jt,"f").size<e||await M(this,Et,"m",Jn).call(this,"next",()=>M(this,jt,"f").size<e)}async onIdle(){M(this,te,"f")===0&&M(this,jt,"f").size===0||await M(this,Et,"m",Jn).call(this,"idle")}get size(){return M(this,jt,"f").size}sizeBy(e){return M(this,jt,"f").filter(e).length}get pending(){return M(this,te,"f")}get isPaused(){return M(this,ze,"f")}};gn=new WeakMap,mn=new WeakMap,Ge=new WeakMap,jn=new WeakMap,xn=new WeakMap,Qn=new WeakMap,ae=new WeakMap,yn=new WeakMap,jt=new WeakMap,$n=new WeakMap,te=new WeakMap,bn=new WeakMap,ze=new WeakMap,Zn=new WeakMap,Et=new WeakSet,Fa=function(){return M(this,mn,"f")||M(this,Ge,"f")<M(this,jn,"f")},Va=function(){return M(this,te,"f")<M(this,bn,"f")},za=function(){var e;mt(this,te,(e=M(this,te,"f"),e--,e),"f"),M(this,Et,"m",Xn).call(this),this.emit("next")},qa=function(){M(this,Et,"m",Ls).call(this),M(this,Et,"m",Rs).call(this),mt(this,yn,void 0,"f")},Ha=function(){let e=Date.now();if(M(this,ae,"f")===void 0){let r=M(this,Qn,"f")-e;if(r<0)mt(this,Ge,M(this,gn,"f")?M(this,te,"f"):0,"f");else return M(this,yn,"f")===void 0&&mt(this,yn,setTimeout(()=>{M(this,Et,"m",qa).call(this)},r),"f"),!0}return!1},Xn=function(){if(M(this,jt,"f").size===0)return M(this,ae,"f")&&clearInterval(M(this,ae,"f")),mt(this,ae,void 0,"f"),this.emit("empty"),M(this,te,"f")===0&&this.emit("idle"),!1;if(!M(this,ze,"f")){let e=!M(this,Et,"a",Ha);if(M(this,Et,"a",Fa)&&M(this,Et,"a",Va)){let r=M(this,jt,"f").dequeue();return r?(this.emit("active"),r(),e&&M(this,Et,"m",Rs).call(this),!0):!1}}return!1},Rs=function(){M(this,mn,"f")||M(this,ae,"f")!==void 0||(mt(this,ae,setInterval(()=>{M(this,Et,"m",Ls).call(this)},M(this,xn,"f")),"f"),mt(this,Qn,Date.now()+M(this,xn,"f"),"f"))},Ls=function(){M(this,Ge,"f")===0&&M(this,te,"f")===0&&M(this,ae,"f")&&(clearInterval(M(this,ae,"f")),mt(this,ae,void 0,"f")),mt(this,Ge,M(this,gn,"f")?M(this,te,"f"):0,"f"),M(this,Et,"m",ti).call(this)},ti=function(){for(;M(this,Et,"m",Xn).call(this););},Ga=async function(e){return new Promise((r,n)=>{e.addEventListener("abort",()=>{n(new ei("The task was aborted."))},{once:!0})})},Jn=async function(e,r){return new Promise(n=>{let i=()=>{r&&!r()||(this.off(e,i),n())};this.on(e,i)})};var Ya=Ns;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 Wa(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 Qa(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function $a(t,e){let r=Wa(t).return?.();Qa(r)&&r.catch(n=>{e.error("could not cause iterator to return",n)})}function Ye(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Le(t=0){return globalThis.Buffer?.alloc!=null?Ye(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Ht(t=0){return globalThis.Buffer?.allocUnsafe!=null?Ye(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var Eh=Math.pow(2,7),Sh=Math.pow(2,14),Bh=Math.pow(2,21),Ds=Math.pow(2,28),Ps=Math.pow(2,35),ks=Math.pow(2,42),Us=Math.pow(2,49),nt=128,zt=127;function ur(t){if(t<Eh)return 1;if(t<Sh)return 2;if(t<Bh)return 3;if(t<Ds)return 4;if(t<Ps)return 5;if(t<ks)return 6;if(t<Us)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Ah(t,e,r=0){switch(ur(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 Ih(t,e,r=0){switch(ur(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 Ch(t,e){let r=t[e],n=0;if(n+=r&zt,r<nt||(r=t[e+1],n+=(r&zt)<<7,r<nt)||(r=t[e+2],n+=(r&zt)<<14,r<nt)||(r=t[e+3],n+=(r&zt)<<21,r<nt)||(r=t[e+4],n+=(r&zt)*Ds,r<nt)||(r=t[e+5],n+=(r&zt)*Ps,r<nt)||(r=t[e+6],n+=(r&zt)*ks,r<nt)||(r=t[e+7],n+=(r&zt)*Us,r<nt))return n;throw new RangeError("Could not decode varint")}function _h(t,e){let r=t.get(e),n=0;if(n+=r&zt,r<nt||(r=t.get(e+1),n+=(r&zt)<<7,r<nt)||(r=t.get(e+2),n+=(r&zt)<<14,r<nt)||(r=t.get(e+3),n+=(r&zt)<<21,r<nt)||(r=t.get(e+4),n+=(r&zt)*Ds,r<nt)||(r=t.get(e+5),n+=(r&zt)*Ps,r<nt)||(r=t.get(e+6),n+=(r&zt)*ks,r<nt)||(r=t.get(e+7),n+=(r&zt)*Us,r<nt))return n;throw new RangeError("Could not decode varint")}function Za(t,e,r=0){return e==null&&(e=Ht(ur(t))),e instanceof Uint8Array?Ah(t,e,r):Ih(t,e,r)}function Xa(t,e=0){return t instanceof Uint8Array?Ch(t,e):_h(t,e)}function Gt(t,e){if(globalThis.Buffer!=null)return Ye(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,s)=>i+s.length,0));let r=Ht(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return Ye(r)}var t0=Symbol.for("@achingbrain/uint8arraylist");function ja(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 ri(t){return!!t?.[t0]}var We=class t{bufs;length;[t0]=!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(ri(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...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(ri(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=ja(this.bufs,e);return r.buf[r.index]}set(e,r){let n=ja(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(ri(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 Gt(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:Gt(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(!ri(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=Ht(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=Ht(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(!Vt(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 ni(t){return t[Symbol.asyncIterator]!=null}var ii=t=>{let e=ur(t),r=Ht(e);return Za(t,r),ii.bytes=e,r};ii.bytes=0;function si(t,e){e=e??{};let r=e.lengthEncoder??ii;function*n(i){let s=r(i.byteLength);s instanceof Uint8Array?yield s:yield*s,i instanceof Uint8Array?yield i:yield*i}return ni(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}si.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??ii;return new We(r(t.byteLength),t)};var Or=Rt(n0(),1);var Rh=8,Lh=1024*1024*4,cr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(cr||(cr={}));var Ks=t=>{let e=Xa(t);return Ks.bytes=ur(e),e};Ks.bytes=0;function vn(t,e){let r=new We,n=cr.LENGTH,i=-1,s=e?.lengthDecoder??Ks,o=e?.maxLengthLength??Rh,a=e?.maxDataLength??Lh;function*u(){for(;r.byteLength>0;){if(n===cr.LENGTH)try{if(i=s(r),i<0)throw(0,Or.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Or.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=cr.DATA}catch(c){if(c instanceof RangeError){if(r.byteLength>o)throw(0,Or.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw c}if(n===cr.DATA){if(r.byteLength<i)break;let c=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(c),yield c,n=cr.LENGTH}}}return ni(t)?async function*(){for await(let c of t)r.append(c),yield*u();if(r.byteLength>0)throw(0,Or.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,Or.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}vn.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 vn(n,{...e??{},onLength:s=>{r=s}})};var oi=class extends Ar{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 We(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=ln(this._rawInboundStream,n=>vn(n)),this.dispatchEvent(new me("stream:inbound")),this.inboundStream}async attachOutboundStream(e){let r=this.outboundStream;return this.outboundStream!=null&&this.outboundStream.end(),this._rawOutboundStream=e,this.outboundStream=Kr({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 me("close"))}}),ln(this.outboundStream,n=>si(n),this._rawOutboundStream).catch(n=>{this.log.error(n)}),r==null&&this.dispatchEvent(new me("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 me("close")))}};var Em=Rt(hi(),1),Vh=Rt(ot(),1);function b0(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var x0=b0("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),$s=b0("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=Ht(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Fh={utf8:x0,"utf-8":x0,hex:Nr.base16,latin1:$s,ascii:$s,binary:$s,...Nr},li=Fh;function xt(t,e="utf8"){let r=li[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Ye(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function _t(t,e="utf8"){let r=li[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 v0={SHA1:20,SHA256:32,SHA512:64};var zh={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"},Gh=async(t,e)=>{let r=await Bt.get().subtle.sign({name:"HMAC"},t,e);return new Uint8Array(r,0,r.byteLength)};async function w0(t,e){let r=zh[t],n=await Bt.get().subtle.importKey("raw",e,{name:"HMAC",hash:{name:r}},!1,["sign"]);return{async digest(i){return Gh(n,i)},length:v0[t]}}var Fn={};It(Fn,{generateEphemeralKeyPair:()=>ac,generateKeyPair:()=>jy,generateKeyPairFromSeed:()=>t1,importKey:()=>i1,keyStretcher:()=>fc,keysPBM:()=>Xr,marshalPrivateKey:()=>n1,marshalPublicKey:()=>r1,supportedKeys:()=>Ie,unmarshalPrivateKey:()=>Mc,unmarshalPublicKey:()=>e1});var Xv=Rt(Bn(),1),Jv=Rt(Su(),1);var Zi=Rt(ot(),1);var Mo={};It(Mo,{Ed25519PrivateKey:()=>vr,Ed25519PublicKey:()=>Dn,generateKeyPair:()=>Sy,generateKeyPairFromSeed:()=>Oo,unmarshalEd25519PrivateKey:()=>wy,unmarshalEd25519PublicKey:()=>Ey});var Jm=Rt(St(),1),jm=Rt(Si(),1),Bu=Rt(ot(),1);function fe(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=Gt([new Uint8Array(e-r.length),r])}return _t(r,"base64url")}function ee(t){let e=Ci(t);return new Bu.default.jsbn.BigInteger(_t(e,"base16"),16)}function Ci(t,e){let r=xt(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=Gt([new Uint8Array(e-r.length),r])}return r}function se(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function Au(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function ao(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 Iu(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Au(t.outputLen),Au(t.blockLen)}function Hr(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 Cu(t,e){ao(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var _i=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var _u=t=>t instanceof Uint8Array;var Ti=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),he=(t,e)=>t<<32-e|t>>>e,cd=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!cd)throw new Error("Non little-endian hardware is not supported");function uo(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Cn(t){if(typeof t=="string"&&(t=uo(t)),!_u(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function Ri(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!_u(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var zr=class{clone(){return this._cloneInto()}},ax={}.toString;function Li(t){let e=n=>t().update(Cn(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function Gr(t=32){if(_i&&typeof _i.getRandomValues=="function")return _i.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function fd(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),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 Yr=class extends zr{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=Ti(this.buffer)}update(e){Hr(this);let{view:r,buffer:n,blockLen:i}=this;e=Cn(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=Ti(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){Hr(this),Cu(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;fd(n,i-8,BigInt(this.length*8),s),this.process(n,0);let a=Ti(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 Ni=BigInt(4294967295),co=BigInt(32);function Tu(t,e=!1){return e?{h:Number(t&Ni),l:Number(t>>co&Ni)}:{h:Number(t>>co&Ni)|0,l:Number(t&Ni)|0}}function hd(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}=Tu(t[i],e);[r[i],n[i]]=[s,o]}return[r,n]}var ld=(t,e)=>BigInt(t>>>0)<<co|BigInt(e>>>0),pd=(t,e,r)=>t>>>r,dd=(t,e,r)=>t<<32-r|e>>>r,yd=(t,e,r)=>t>>>r|e<<32-r,gd=(t,e,r)=>t<<32-r|e>>>r,md=(t,e,r)=>t<<64-r|e>>>r-32,xd=(t,e,r)=>t>>>r-32|e<<64-r,bd=(t,e)=>e,vd=(t,e)=>t,wd=(t,e,r)=>t<<r|e>>>32-r,Ed=(t,e,r)=>e<<r|t>>>32-r,Sd=(t,e,r)=>e<<r-32|t>>>64-r,Bd=(t,e,r)=>t<<r-32|e>>>64-r;function Ad(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Id=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Cd=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,_d=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Td=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Rd=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Ld=(t,e,r,n,i,s)=>e+r+n+i+s+(t/2**32|0)|0;var Nd={fromBig:Tu,split:hd,toBig:ld,shrSH:pd,shrSL:dd,rotrSH:yd,rotrSL:gd,rotrBH:md,rotrBL:xd,rotr32H:bd,rotr32L:vd,rotlSH:wd,rotlSL:Ed,rotlBH:Sd,rotlBL:Bd,add:Ad,add3L:Id,add3H:Cd,add4L:_d,add4H:Td,add5H:Ld,add5L:Rd},Q=Nd;var[Dd,Pd]=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))),Je=new Uint32Array(80),je=new Uint32Array(80),fo=class extends Yr{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)Je[b]=e.getUint32(r),je[b]=e.getUint32(r+=4);for(let b=16;b<80;b++){let T=Je[b-15]|0,E=je[b-15]|0,S=Q.rotrSH(T,E,1)^Q.rotrSH(T,E,8)^Q.shrSH(T,E,7),L=Q.rotrSL(T,E,1)^Q.rotrSL(T,E,8)^Q.shrSL(T,E,7),N=Je[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,Je[b-7],Je[b-16]);Je[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 T=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,Pd[b],je[b]),G=Q.add5H(N,m,T,S,Dd[b],Je[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(){Je.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 ho=Li(()=>new fo);var ki={};It(ki,{bitGet:()=>Vd,bitLen:()=>Fd,bitMask:()=>_n,bitSet:()=>qd,bytesToHex:()=>ke,bytesToNumberBE:()=>Ue,bytesToNumberLE:()=>tr,concatBytes:()=>Ke,createHmacDrbg:()=>yo,ensureBytes:()=>wt,equalBytes:()=>Od,hexToBytes:()=>yr,hexToNumber:()=>po,numberToBytesBE:()=>er,numberToBytesLE:()=>gr,numberToHexUnpadded:()=>Nu,numberToVarBytesBE:()=>Kd,utf8ToBytes:()=>Md,validateObject:()=>Ae});var Lu=BigInt(0),Di=BigInt(1),kd=BigInt(2),Pi=t=>t instanceof Uint8Array,Ud=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function ke(t){if(!Pi(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Ud[t[r]];return e}function Nu(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function po(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 po(ke(t))}function tr(t){if(!Pi(t))throw new Error("Uint8Array expected");return po(ke(Uint8Array.from(t).reverse()))}function er(t,e){return yr(t.toString(16).padStart(e*2,"0"))}function gr(t,e){return er(t,e).reverse()}function Kd(t){return yr(Nu(t))}function wt(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(Pi(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(!Pi(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Od(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 Md(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Fd(t){let e;for(e=0;t>Lu;t>>=Di,e+=1);return e}function Vd(t,e){return t>>BigInt(e)&Di}var qd=(t,e,r)=>t|(r?Di:Lu)<<BigInt(e),_n=t=>(kd<<BigInt(t-1))-Di,lo=t=>new Uint8Array(t),Ru=t=>Uint8Array.from(t);function yo(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=lo(t),i=lo(t),s=0,o=()=>{n.fill(1),i.fill(0),s=0},a=(...h)=>r(i,n,...h),u=(h=lo())=>{i=a(Ru([0]),h),n=a(),h.length!==0&&(i=a(Ru([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 Hd={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 Ae(t,e,r={}){let n=(i,s,o)=>{let a=Hd[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 Dt=BigInt(0),yt=BigInt(1),mr=BigInt(2),zd=BigInt(3),go=BigInt(4),Du=BigInt(5),Pu=BigInt(8),Gd=BigInt(9),Yd=BigInt(16);function ut(t,e){let r=t%e;return r>=Dt?r:e+r}function Wd(t,e,r){if(r<=Dt||e<Dt)throw new Error("Expected power/modulo > 0");if(r===yt)return Dt;let n=yt;for(;e>Dt;)e&yt&&(n=n*t%r),t=t*t%r,e>>=yt;return n}function gt(t,e,r){let n=t;for(;e-- >Dt;)n*=n,n%=r;return n}function Ui(t,e){if(t===Dt||e<=Dt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ut(t,e),n=e,i=Dt,s=yt,o=yt,a=Dt;for(;r!==Dt;){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 Qd(t){let e=(t-yt)/mr,r,n,i;for(r=t-yt,n=0;r%mr===Dt;r/=mr,n++);for(i=mr;i<t&&Wd(i,e,t)!==t-yt;i++);if(n===1){let o=(t+yt)/go;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 $d(t){if(t%go===zd){let e=(t+yt)/go;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%Pu===Du){let e=(t-Du)/Pu;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%Yd,Qd(t)}var ku=(t,e)=>(ut(t,e)&yt)===yt,Zd=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function mo(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Zd.reduce((n,i)=>(n[i]="function",n),e);return Ae(t,r)}function Xd(t,e,r){if(r<Dt)throw new Error("Expected power > 0");if(r===Dt)return t.ONE;if(r===yt)return e;let n=t.ONE,i=e;for(;r>Dt;)r&yt&&(n=t.mul(n,i)),i=t.sqr(i),r>>=yt;return n}function Jd(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 xo(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ki(t,e,r=!1,n={}){if(t<=Dt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:s}=xo(t,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");let o=$d(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:s,MASK:_n(i),ZERO:Dt,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 Dt<=u&&u<t},is0:u=>u===Dt,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)=>Xd(a,u,c),div:(u,c)=>ut(u*Ui(c,t),t),sqrN:u=>u*u,addN:(u,c)=>u+c,subN:(u,c)=>u-c,mulN:(u,c)=>u*c,inv:u=>Ui(u,t),sqrt:n.sqrt||(u=>o(a,u)),invertBatch:u=>Jd(a,u),cmov:(u,c,f)=>f?c:u,toBytes:u=>r?gr(u,s):er(u,s),fromBytes:u=>{if(u.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${u.length}`);return r?tr(u):Ue(u)}});return Object.freeze(a)}function Uu(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 Ku(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=Ku(t);return e+Math.ceil(e/2)}function Ou(t,e,r=!1){let n=t.length,i=Ku(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):tr(t),a=ut(o,e-yt)+yt;return r?gr(a,i):er(a,i)}var ty=BigInt(0),vo=BigInt(1);function Oi(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>ty;)s&vo&&(o=o.add(a)),a=a.double(),s>>=vo;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+=vo);let m=d,w=d+Math.abs(y)-1,b=p%2!==0,T=y<0;y===0?f=f.add(r(b,s[m])):c=c.add(r(T,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 Tn(t){return mo(t.Fp),Ae(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...xo(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var le=BigInt(0),re=BigInt(1),Mi=BigInt(2),ey=BigInt(8),ry={zip215:!0};function ny(t){let e=Tn(t);return Ae(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Fi(t){let e=ny(t),{Fp:r,n,prehash:i,hash:s,randomBytes:o,nByteLength:a,h:u}=e,c=Mi<<BigInt(a*8)-re,f=r.create,h=e.uvRatio||((D,A)=>{try{return{isValid:!0,value:r.sqrt(D*r.inv(A))}}catch{return{isValid:!1,value:le}}}),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"&&le<D,d=(D,A)=>p(D)&&p(A)&&D<A,y=D=>D===le||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===le?D:m(D,n)}let b=new Map;function T(D){if(!(D 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,re,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),bt=f(st*A),Ot=f(rt*f(bt+j)),Mt=f(At+f(K*f(st*j)));if(Ot!==Mt)throw new Error("bad point: equation left != right (1)");let Tt=f(F*H),Ft=f($*J);if(Tt!==Ft)throw new Error("bad point: equation left != right (2)")}equals(A){T(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),bt=f(J*H);return j===rt&&At===bt}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(Mi*f(H*H)),j=f(A*$),rt=K+F,At=f(f(rt*rt)-$-J),bt=j+J,Ot=bt-st,Mt=j-J,Tt=f(At*Ot),Ft=f(bt*Mt),Ce=f(At*Mt),sr=f(Ot*bt);return new E(Tt,Ft,sr,Ce)}add(A){T(A);let{a:K,d:F}=e,{ex:H,ey:$,ez:J,et:st}=this,{ex:j,ey:rt,ez:At,et:bt}=A;if(K===BigInt(-1)){let ra=f(($-H)*(rt+j)),na=f(($+H)*(rt-j)),Xi=f(na-ra);if(Xi===le)return this.double();let ia=f(J*Mi*bt),sa=f(st*Mi*At),oa=sa+ia,aa=na+ra,ua=sa-ia,Jc=f(oa*Xi),jc=f(aa*ua),tf=f(oa*ua),ef=f(Xi*aa);return new E(Jc,jc,ef,tf)}let Ot=f(H*j),Mt=f($*rt),Tt=f(st*F*bt),Ft=f(J*At),Ce=f((H+$)*(j+rt)-Ot-Mt),sr=Ft-Tt,tn=Ft+Tt,ea=f(Mt-K*Ot),Qc=f(Ce*sr),$c=f(tn*ea),Zc=f(Ce*ea),Xc=f(sr*tn);return new E(Qc,$c,Xc,Zc)}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===le?L:this.equals(L)||K===re?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=$?ey:r.inv(H));let J=f(K*A),st=f(F*A),j=f(H*A);if($)return{x:le,y:re};if(j!==re)throw new Error("invZ was invalid");return{x:J,y:st}}clearCofactor(){let{h:A}=e;return A===re?this:this.multiplyUnsafe(A)}static fromHex(A,K=!1){let{d:F,a:H}=e,$=r.BYTES;A=wt("pointHex",A,$);let J=A.slice(),st=A[$-1];J[$-1]=st&-129;let j=tr(J);j===le||(K?m(j,c):m(j,r.ORDER));let rt=f(j*j),At=f(rt-re),bt=f(F*rt-H),{isValid:Ot,value:Mt}=h(At,bt);if(!Ot)throw new Error("Point.fromHex: invalid y coordinate");let Tt=(Mt&re)===re,Ft=(st&128)!==0;if(!K&&Mt===le&&Ft)throw new Error("Point.fromHex: x=0 and x_0=1");return Ft!==Tt&&(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&re?128:0,F}toHex(){return ke(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,re,f(e.Gx*e.Gy)),E.ZERO=new E(le,re,re,le);let{BASE:S,ZERO:L}=E,N=Oi(E,a*8);function G(D){return ut(D,n)}function z(D){return G(tr(D))}function q(D){let A=a;D=wt("private key",D,A);let K=wt("hashed private key",s(D),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(D){return q(D).pointBytes}function at(D=new Uint8Array,...A){let K=Ke(...A);return z(s(g(K,wt("context",D),!!i)))}function Kt(D,A,K={}){D=wt("message",D),i&&(D=i(D));let{prefix:F,scalar:H,pointBytes:$}=q(A),J=at(K.context,F,D),st=S.multiply(J).toRawBytes(),j=at(K.context,st,$,D),rt=G(J+j*H);w(rt);let At=Ke(st,gr(rt,r.BYTES));return wt("result",At,a*2)}let C=ry;function P(D,A,K,F=C){let{context:H,zip215:$}=F,J=r.BYTES;D=wt("signature",D,2*J),A=wt("message",A),i&&(A=i(A));let st=tr(D.slice(J,2*J)),j,rt,At;try{j=E.fromHex(K,$),rt=E.fromHex(D.slice(0,J),$),At=S.multiplyUnsafe(st)}catch{return!1}if(!$&&j.isSmallOrder())return!1;let bt=at(H,rt.toRawBytes(),j.toRawBytes(),A);return rt.add(j.multiplyUnsafe(bt)).subtract(At).clearCofactor().equals(E.ZERO)}return S._setWindowSize(8),{CURVE:e,getPublicKey:X,sign:Kt,verify:P,ExtendedPoint:E,utils:{getExtendedPublicKey:q,randomPrivateKey:()=>o(r.BYTES),precompute(D=8,A=E.BASE){return A._setWindowSize(D),A.multiply(BigInt(3)),A}}}}var Eo=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Mu=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Tx=BigInt(0),iy=BigInt(1),wo=BigInt(2),sy=BigInt(5),Fu=BigInt(10),oy=BigInt(20),ay=BigInt(40),Vu=BigInt(80);function uy(t){let e=Eo,n=t*t%e*t%e,i=gt(n,wo,e)*n%e,s=gt(i,iy,e)*t%e,o=gt(s,sy,e)*s%e,a=gt(o,Fu,e)*o%e,u=gt(a,oy,e)*a%e,c=gt(u,ay,e)*u%e,f=gt(c,Vu,e)*c%e,h=gt(f,Vu,e)*c%e,l=gt(h,Fu,e)*o%e;return{pow_p_5_8:gt(l,wo,e)*t%e,b2:n}}function cy(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function fy(t,e){let r=Eo,n=ut(e*e*e,r),i=ut(n*n*e,r),s=uy(t*i).pow_p_5_8,o=ut(t*n*s,r),a=ut(e*o*o,r),u=o,c=ut(o*Mu,r),f=a===t,h=a===ut(-t,r),l=a===ut(-t*Mu,r);return f&&(o=u),(h||l)&&(o=c),ku(o,r)&&(o=ut(-o,r)),{isValid:f||h,value:o}}var Oe=Ki(Eo,void 0,!0),So={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Oe,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:ho,randomBytes:Gr,adjustScalarBytes:cy,uvRatio:fy},Wr=Fi(So);function qu(t,e,r){if(e.length>255)throw new Error("Context is too big");return Ri(uo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Rx=Fi({...So,domain:qu}),Lx=Fi({...So,domain:qu,prehash:ho});var hy=(Oe.ORDER+BigInt(3))/BigInt(8),Nx=Oe.pow(wo,hy),Dx=Oe.sqrt(Oe.neg(Oe.ONE)),Px=(Oe.ORDER-BigInt(5))/BigInt(8),kx=BigInt(486662);var Ux=Uu(Oe,Oe.neg(BigInt(486664)));var Kx=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),Ox=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),Mx=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),Fx=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Vx=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Qr=32,Me=64,Vi=32;function Hu(){let t=Wr.utils.randomPrivateKey(),e=Wr.getPublicKey(t);return{privateKey:Wu(t,e),publicKey:e}}function zu(t){if(t.length!==Vi)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=Wr.getPublicKey(e);return{privateKey:Wu(e,r),publicKey:r}}function Gu(t,e){let r=t.subarray(0,Vi);return Wr.sign(e instanceof Uint8Array?e:e.subarray(),r)}function Yu(t,e,r){return Wr.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function Wu(t,e){let r=new Uint8Array(Me);for(let n=0;n<Vi;n++)r[n]=t[n],r[Vi+n]=e[n];return r}var Bo={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function qi(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=xt(l));let y;if(l.length===0){y=await a.subtle.importKey("jwk",Bo,{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",Bo,{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 Gt([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=xt(l));let m;if(l.length===0)try{let b={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},T=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,T,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",Bo,{name:"AES-GCM"},!0,["decrypt"])}else{let b={name:"PBKDF2",salt:g,iterations:o,hash:{name:i}},T=await a.subtle.importKey("raw",l,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,T,{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 $r(t,e){let n=await qi().encrypt(t,e);return rn.encode(n)}var Xr={};It(Xr,{KeyType:()=>lt,PrivateKey:()=>ye,PublicKey:()=>de});var Ao=new Float32Array([-0]),rr=new Uint8Array(Ao.buffer);function $u(t,e,r){Ao[0]=t,e[r]=rr[0],e[r+1]=rr[1],e[r+2]=rr[2],e[r+3]=rr[3]}function Zu(t,e){return rr[0]=t[e],rr[1]=t[e+1],rr[2]=t[e+2],rr[3]=t[e+3],Ao[0]}var Io=new Float64Array([-0]),Yt=new Uint8Array(Io.buffer);function Xu(t,e,r){Io[0]=t,e[r]=Yt[0],e[r+1]=Yt[1],e[r+2]=Yt[2],e[r+3]=Yt[3],e[r+4]=Yt[4],e[r+5]=Yt[5],e[r+6]=Yt[6],e[r+7]=Yt[7]}function Ju(t,e){return Yt[0]=t[e],Yt[1]=t[e+1],Yt[2]=t[e+2],Yt[3]=t[e+3],Yt[4]=t[e+4],Yt[5]=t[e+5],Yt[6]=t[e+6],Yt[7]=t[e+7],Io[0]}var py=BigInt(Number.MAX_SAFE_INTEGER),dy=BigInt(Number.MIN_SAFE_INTEGER),Jt=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<py&&e>dy)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>ju&&(i=0n,++n>ju&&(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 Jt(0,0);xr.toBigInt=function(){return 0n};xr.zzEncode=xr.zzDecode=function(){return this};xr.length=function(){return 1};var ju=4294967296n;function tc(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 ec(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 Co(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 pe(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function Hi(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var _o=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,pe(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 pe(this,4);return Hi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw pe(this,4);return Hi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw pe(this,4);let e=Zu(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw pe(this,4);let e=Ju(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 pe(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return ec(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw pe(this,e);this.pos+=e}else do if(this.pos>=this.len)throw pe(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 Jt(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 pe(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 pe(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 pe(this,8);let e=Hi(this.buf,this.pos+=4),r=Hi(this.buf,this.pos+=4);return new Jt(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 To(t){return new _o(t instanceof Uint8Array?t:t.subarray())}function zi(t,e){let r=To(t);return e.decode(r)}function Ro(t){let e=t??8192,r=e>>>1,n,i=e;return function(o){if(o<1||o>r)return Ht(o);i+o>e&&(n=Ht(e),i=0);let a=n.subarray(i,i+=o);return i&7&&(i=(i|7)+1),a}}var br=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function Lo(){}var Do=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},yy=Ro();function gy(t){return globalThis.Buffer!=null?Ht(t):yy(t)}var Nn=class{len;head;tail;states;constructor(){this.len=0,this.head=new br(Lo,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new br(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new Po((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(Rn,10,Jt.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=Jt.fromBigInt(e);return this._push(Rn,r.length(),r)}uint64Number(e){let r=Jt.fromNumber(e);return this._push(Rn,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=Jt.fromBigInt(e).zzEncode();return this._push(Rn,r.length(),r)}sint64Number(e){let r=Jt.fromNumber(e).zzEncode();return this._push(Rn,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(No,1,e?1:0)}fixed32(e){return this._push(Ln,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=Jt.fromBigInt(e);return this._push(Ln,4,r.lo)._push(Ln,4,r.hi)}fixed64Number(e){let r=Jt.fromNumber(e);return this._push(Ln,4,r.lo)._push(Ln,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($u,4,e)}double(e){return this._push(Xu,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(No,1,0):this.uint32(r)._push(xy,r,e)}string(e){let r=tc(e);return r!==0?this.uint32(r)._push(Co,r,e):this._push(No,1,0)}fork(){return this.states=new Do(this),this.head=this.tail=new br(Lo,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 br(Lo,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=gy(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function No(t,e,r){e[r]=t&255}function my(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var Po=class extends br{next;constructor(e,r){super(my,e,r),this.next=void 0}};function Rn(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 Ln(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 xy(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Nn.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(by,e,t),this},Nn.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(vy,e,t),this});function by(t,e,r){e.set(t,r)}function vy(t,e,r){t.length<40?Co(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(xt(t),r)}function ko(){return new Nn}function Gi(t,e){let r=ko();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Zr;(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"})(Zr||(Zr={}));function Yi(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function Uo(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 Yi("enum",Zr.VARINT,r,n)}function Wi(t,e){return Yi("message",Zr.LENGTH_DELIMITED,t,e)}var lt;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(lt||(lt={}));var Ko;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(Ko||(Ko={}));(function(t){t.codec=()=>Uo(Ko)})(lt||(lt={}));var de;(function(t){let e;t.codec=()=>(e==null&&(e=Wi((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=>Gi(r,t.codec()),t.decode=r=>zi(r,t.codec())})(de||(de={}));var ye;(function(t){let e;t.codec=()=>(e==null&&(e=Wi((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=>Gi(r,t.codec()),t.decode=r=>zi(r,t.codec())})(ye||(ye={}));var Dn=class{_key;constructor(e){this._key=Jr(e,Qr)}verify(e,r){return Yu(this._key,r,e)}marshal(){return this._key}get bytes(){return de.encode({Type:lt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return se(e)?e.then(({bytes:r})=>r):e.bytes}},vr=class{_key;_publicKey;constructor(e,r){this._key=Jr(e,Me),this._publicKey=Jr(r,Qr)}sign(e){return Gu(this._key,e)}get public(){return new Dn(this._publicKey)}marshal(){return this._key}get bytes(){return ye.encode({Type:lt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}async hash(){let e=Lt.digest(this.bytes),r;return se(e)?{bytes:r}=await e:r=e.bytes,r}async id(){let e=He.digest(this.public.bytes);return Wt.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return $r(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function wy(t){if(t.length>Me){t=Jr(t,Me+Qr);let n=t.subarray(0,Me),i=t.subarray(Me,t.length);return new vr(n,i)}t=Jr(t,Me);let e=t.subarray(0,Me),r=t.subarray(Qr);return new vr(e,r)}function Ey(t){return t=Jr(t,Qr),new Dn(t)}async function Sy(){let{privateKey:t,publicKey:e}=Hu();return new vr(t,e)}async function Oo(t){let{privateKey:e,publicKey:r}=zu(t);return new vr(e,r)}function Jr(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 nc={"P-256":256,"P-384":384,"P-521":521},By=Object.keys(nc),Fo=By.join(" / ");async function ic(t){if(t!=="P-256"&&t!=="P-384"&&t!=="P-521")throw new O(`Unknown curve: ${t}. Must be ${Fo}`,"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",Iy(t,o),{name:"ECDH",namedCurve:t},!1,["deriveBits"]):a=e.privateKey;let u=await Bt.get().subtle.importKey("jwk",oc(t,s),{name:"ECDH",namedCurve:t},!1,[]),c=await Bt.get().subtle.deriveBits({name:"ECDH",namedCurve:t,public:u},a,nc[t]);return new Uint8Array(c,0,c.byteLength)},n=await Bt.get().subtle.exportKey("jwk",e.publicKey);return{key:Ay(n),genSharedKey:r}}var sc={"P-256":32,"P-384":48,"P-521":66};function Ay(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 ${Fo}`,"ERR_INVALID_CURVE");let e=sc[t.crv];return Gt([Uint8Array.from([4]),Ci(t.x,e),Ci(t.y,e)],1+e*2)}function oc(t,e){if(t!=="P-256"&&t!=="P-384"&&t!=="P-521")throw new O(`Unknown curve: ${t}. Must be ${Fo}`,"ERR_INVALID_CURVE");let r=sc[t];if(!Vt(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:_t(e.subarray(1,r+1),"base64url"),y:_t(e.subarray(1+r),"base64url"),ext:!0}}var Iy=(t,e)=>({...oc(t,e.public),d:_t(e.private,"base64url")});var ac=ic;async function uc(t,e){let r=rn.decode(t);return qi().decrypt(r,e)}var cc={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,keySize:32}};async function fc(t,e,r){let n=cc[t];if(n==null){let w=Object.keys(cc).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=xt("key expansion"),u=2*(s+i+o),c=await w0(e,r),f=await c.digest(a),h=[],l=0;for(;l<u;){let w=await c.digest(Gt([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=Gt(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 Go={};It(Go,{MAX_KEY_SIZE:()=>Kn,RsaPrivateKey:()=>jr,RsaPublicKey:()=>Un,fromJwk:()=>Uy,generateKeyPair:()=>Ky,unmarshalRsaPrivateKey:()=>Py,unmarshalRsaPublicKey:()=>ky});var kn=Rt(ot(),1);var yv=Rt(yc(),1);function Er(t){if(isNaN(t)||t<=0)throw new O("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Gr(t)}var Xb=Rt(Ii(),1),Ho=Rt(ot(),1);function gc(t,e){return e.map(r=>ee(t[r]))}function mc(t){return Ho.default.pki.setRsaPrivateKey(...gc(t,["n","e","d","p","q","dp","dq","qi"]))}function xc(t){return Ho.default.pki.setRsaPublicKey(...gc(t,["n","e"]))}var Sr={};It(Sr,{jwkToPkcs1:()=>Ty,jwkToPkix:()=>Ly,pkcs1ToJwk:()=>_y,pkixToJwk:()=>Ry});var tv=Rt(Bn(),1),ev=Rt(Ii(),1);var Fe=Rt(ot(),1);function _y(t){let e=Fe.default.asn1.fromDer(_t(t,"ascii")),r=Fe.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:fe(r.n),e:fe(r.e),d:fe(r.d),p:fe(r.p),q:fe(r.q),dp:fe(r.dP),dq:fe(r.dQ),qi:fe(r.qInv),alg:"RS256"}}function Ty(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:ee(t.n),e:ee(t.e),d:ee(t.d),p:ee(t.p),q:ee(t.q),dP:ee(t.dp),dQ:ee(t.dq),qInv:ee(t.qi)});return xt(Fe.default.asn1.toDer(e).getBytes(),"ascii")}function Ry(t){let e=Fe.default.asn1.fromDer(_t(t,"ascii")),r=Fe.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:fe(r.n),e:fe(r.e)}}function Ly(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:ee(t.n),e:ee(t.e)});return xt(Fe.default.asn1.toDer(e).getBytes(),"ascii")}async function bc(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 Ec(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 Ny(t)],n=await Ec({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function vc(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 wc(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 Ec(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 Ny(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 Sc(t,e,r,n){let i=e?xc(t):mc(t),s=_t(r instanceof Uint8Array?r:r.subarray(),"ascii"),o=n(s,i);return xt(o,"ascii")}function Bc(t,e){return Sc(t,!0,e,(r,n)=>n.encrypt(r))}function Ac(t,e){return Sc(t,!1,e,(r,n)=>n.decrypt(r))}function Qi(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 xt(t.n,"base64url").length*8}var Kn=8192,Un=class{_key;constructor(e){this._key=e}verify(e,r){return wc(this._key,r,e)}marshal(){return Sr.jwkToPkix(this._key)}get bytes(){return de.encode({Type:lt.RSA,Data:this.marshal()}).subarray()}encrypt(e){return Bc(this._key,e)}equals(e){return Vt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return se(e)?e.then(({bytes:r})=>r):e.bytes}},jr=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return Er(16)}sign(e){return vc(this._key,e)}get public(){if(this._publicKey==null)throw new O("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Un(this._publicKey)}decrypt(e){return Ac(this._key,e)}marshal(){return Sr.jwkToPkcs1(this._key)}get bytes(){return ye.encode({Type:lt.RSA,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return se(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return _t(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 $r(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Py(t){let e=Sr.pkcs1ToJwk(t);if(Qi(e)>Kn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await zo(e);return new jr(r.privateKey,r.publicKey)}function ky(t){let e=Sr.pkixToJwk(t);if(Qi(e)>Kn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Un(e)}async function Uy(t){if(Qi(t)>Kn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await zo(t);return new jr(e.privateKey,e.publicKey)}async function Ky(t){if(t>Kn)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await bc(t);return new jr(e.privateKey,e.publicKey)}var Xo={};It(Xo,{Secp256k1PrivateKey:()=>Mn,Secp256k1PublicKey:()=>On,generateKeyPair:()=>Jy,unmarshalSecp256k1PrivateKey:()=>Zy,unmarshalSecp256k1PublicKey:()=>Xy});var Oy=(t,e,r)=>t&e^~t&r,My=(t,e,r)=>t&e^t&r^e&r,Fy=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),nr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ir=new Uint32Array(64),Yo=class extends Yr{constructor(){super(64,32,8,!1),this.A=nr[0]|0,this.B=nr[1]|0,this.C=nr[2]|0,this.D=nr[3]|0,this.E=nr[4]|0,this.F=nr[5]|0,this.G=nr[6]|0,this.H=nr[7]|0}get(){let{A: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)ir[h]=e.getUint32(r,!1);for(let h=16;h<64;h++){let l=ir[h-15],g=ir[h-2],p=he(l,7)^he(l,18)^l>>>3,d=he(g,17)^he(g,19)^g>>>10;ir[h]=d+ir[h-7]+p+ir[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=he(a,6)^he(a,11)^he(a,25),g=f+l+Oy(a,u,c)+Fy[h]+ir[h]|0,d=(he(n,2)^he(n,13)^he(n,22))+My(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(){ir.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Ic=Li(()=>new Yo);function Vy(t){let e=Tn(t);Ae(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:qy,hexToBytes:Hy}=ki,Br={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Br;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:qy(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Br,r=typeof t=="string"?Hy(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}=Br._parseInt(r.subarray(2)),{d:o,l:a}=Br._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),oe=BigInt(1),Av=BigInt(2),Cc=BigInt(3),Iv=BigInt(4);function zy(t){let e=Vy(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(wt("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(wt("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:T,pz:E}=d,S=r.eql(r.mul(y,E),r.mul(b,w)),L=r.eql(r.mul(m,E),r.mul(T,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,Cc),{px:w,py:b,pz:T}=this,E=r.ZERO,S=r.ZERO,L=r.ZERO,N=r.mul(w,w),G=r.mul(b,b),z=r.mul(T,T),q=r.mul(w,b);return q=r.add(q,q),L=r.mul(w,T),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,T),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:T,pz:E}=d,S=r.ZERO,L=r.ZERO,N=r.ZERO,G=e.a,z=r.mul(e.b,Cc),q=r.mul(y,b),X=r.mul(m,T),at=r.mul(w,E),Kt=r.add(y,m),C=r.add(b,T);Kt=r.mul(Kt,C),C=r.add(q,X),Kt=r.sub(Kt,C),C=r.add(y,w);let P=r.add(b,E);return C=r.mul(C,P),P=r.add(q,at),C=r.sub(C,P),P=r.add(m,w),S=r.add(T,E),P=r.mul(P,S),S=r.add(X,at),P=r.sub(P,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(P,C),S=r.mul(Kt,S),S=r.sub(S,q),q=r.mul(Kt,X),N=r.mul(P,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===oe)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,d);let{k1neg:w,k1:b,k2neg:T,k2:E}=m.splitScalar(d),S=y,L=y,N=this;for(;b>Ve||E>Ve;)b&oe&&(S=S.add(N)),E&oe&&(L=L.add(N)),N=N.double(),b>>=oe,E>>=oe;return w&&(S=S.negate()),T&&(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:T,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(T,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:T,f:E}=this.wNAF(y);m=T,w=E}return h.normalizeZ([m,w])[0]}multiplyAndAddUnsafe(d,y,m){let w=h.BASE,b=(E,S)=>S===Ve||S===oe||!E.equals(w)?E.multiplyUnsafe(S):E.multiply(S),T=b(this,y).add(b(d,m));return T.is0()?void 0:T}toAffine(d){let{px:y,py:m,pz:w}=this,b=this.is0();d==null&&(d=b?r.ONE:r.inv(w));let T=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:T,y:E}}isTorsionFree(){let{h:d,isTorsionFree:y}=e;if(d===oe)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===oe?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=Oi(h,e.endo?Math.ceil(l/2):l);return{CURVE:e,ProjectivePoint:h,normPrivateKeyToScalar:u,weierstrassEquation:s,isWithinCurveOrder:o}}function Gy(t){let e=Tn(t);return Ae(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function _c(t){let e=Gy(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 Ui(C,n)}let{ProjectivePoint:c,normPrivateKeyToScalar:f,weierstrassEquation:h,isWithinCurveOrder:l}=zy({...e,toBytes(C,P,R){let D=P.toAffine(),A=r.toBytes(D.x),K=Ke;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=Ue(D);if(!o(A))throw new Error("Point is not on curve");let K=h(A),F=r.sqrt(K),H=(F&oe)===oe;return(R&1)===1!==H&&(F=r.neg(F)),{x:A,y:F}}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=>ke(er(C,e.nByteLength));function p(C){let P=n>>oe;return C>P}function d(C){return p(C)?a(-C):C}let y=(C,P,R)=>Ue(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=wt("compactSignature",P,R*2),new m(y(P,0,R),y(P,R,2*R))}static fromDER(P){let{r:R,s:D}=Br.toSig(wt("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(wt("msgHash",P));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(D*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 Br.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 Ou(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 T(C){let P=C instanceof Uint8Array,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(T(C))throw new Error("first arg must be private key");if(!T(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=Ue(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=_n(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 er(C,e.nByteLength)}function z(C,P,R=q){if(["recovered","canonical"].some(bt=>bt in R))throw new Error("sign() legacy options not supported");let{hash:D,randomBytes:A}=e,{lowS:K,prehash:F,extraEntropy:H}=R;K==null&&(K=!0),C=wt("msgHash",C),F&&(C=wt("prehashed msgHash",D(C)));let $=L(C),J=f(P),st=[G(J),G($)];if(H!=null){let bt=H===!0?A(r.BYTES):H;st.push(wt("extraEntropy",bt))}let j=Ke(...st),rt=$;function At(bt){let Ot=S(bt);if(!l(Ot))return;let Mt=u(Ot),Tt=c.BASE.multiply(Ot).toAffine(),Ft=a(Tt.x);if(Ft===Ve)return;let Ce=a(Mt*a(rt+Ft*J));if(Ce===Ve)return;let sr=(Tt.x===Ft?0:2)|Number(Tt.y&oe),tn=Ce;return K&&p(Ce)&&(tn=d(Ce),sr^=1),new m(Ft,tn,sr)}return{seed:j,k2sig:At}}let q={lowS:e.lowS,prehash:!1},X={lowS:e.lowS,prehash:!1};function at(C,P,R=q){let{seed:D,k2sig:A}=z(C,P,R),K=e;return yo(K.hash.outputLen,K.nByteLength,K.hmac)(D,A)}c.BASE._setWindowSize(8);function Kt(C,P,R,D=X){let A=C;if(P=wt("msgHash",P),R=wt("publicKey",R),"strict"in D)throw new Error("options.strict was renamed to lowS");let{lowS:K,prehash:F}=D,H,$;try{if(typeof A=="string"||A instanceof Uint8Array)try{H=m.fromDER(A)}catch(Tt){if(!(Tt instanceof Br.Err))throw Tt;H=m.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:Tt,s:Ft}=A;H=new m(Tt,Ft)}else throw new Error("PARSE");$=c.fromHex(R)}catch(Tt){if(Tt.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(K&&H.hasHighS())return!1;F&&(P=e.hash(P));let{r:J,s:st}=H,j=L(P),rt=u(st),At=a(j*rt),bt=a(J*rt),Ot=c.BASE.multiplyAndAddUnsafe($,At,bt)?.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 $i=class extends zr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Iu(e);let n=Cn(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 Hr(this),this.iHash.update(e),this}digestInto(e){Hr(this),ao(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()}},Wo=(t,e,r)=>new $i(t,e).update(r).digest();Wo.create=(t,e)=>new $i(t,e);function Yy(t){return{hash:t,hmac:(e,...r)=>Wo(t,e,Ri(...r)),randomBytes:Gr}}function Tc(t,e){let r=n=>_c({...t,...Yy(n)});return Object.freeze({...r(e),create:r})}var Nc=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Rc=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Wy=BigInt(1),Qo=BigInt(2),Lc=(t,e)=>(t+e/Qo)/e;function Qy(t){let e=Nc,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,Qo,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,T=gt(b,o,e)*p%e,E=gt(T,n,e)*c%e,S=gt(E,Qo,e);if(!$o.eql($o.sqr(S),t))throw new Error("Cannot find square root");return S}var $o=Ki(Nc,void 0,void 0,{sqrt:Qy}),ge=Tc({a:BigInt(0),b:BigInt(7),Fp:$o,n:Rc,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=Rc,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Wy*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=r,o=BigInt("0x100000000000000000000000000000000"),a=Lc(s*t,e),u=Lc(-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}}}},Ic),Ov=BigInt(0);var Mv=ge.ProjectivePoint;function Dc(){return ge.utils.randomPrivateKey()}function Pc(t,e){let r=Lt.digest(e instanceof Uint8Array?e:e.subarray());if(se(r))return r.then(({digest:n})=>ge.sign(n,t).toDERRawBytes()).catch(n=>{throw new O(String(n),"ERR_INVALID_INPUT")});try{return ge.sign(r.digest,t).toDERRawBytes()}catch(n){throw new O(String(n),"ERR_INVALID_INPUT")}}function kc(t,e,r){let n=Lt.digest(r instanceof Uint8Array?r:r.subarray());if(se(n))return n.then(({digest:i})=>ge.verify(e,i,t)).catch(i=>{throw new O(String(i),"ERR_INVALID_INPUT")});try{return ge.verify(e,n.digest,t)}catch(i){throw new O(String(i),"ERR_INVALID_INPUT")}}function Uc(t){return ge.ProjectivePoint.fromHex(t).toRawBytes(!0)}function Kc(t){try{ge.getPublicKey(t,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}function Zo(t){try{ge.ProjectivePoint.fromHex(t)}catch(e){throw new O(String(e),"ERR_INVALID_PUBLIC_KEY")}}function Oc(t){try{return ge.getPublicKey(t,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}var On=class{_key;constructor(e){Zo(e),this._key=e}verify(e,r){return kc(this._key,r,e)}marshal(){return Uc(this._key)}get bytes(){return de.encode({Type:lt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}async hash(){let e=Lt.digest(this.bytes),r;return se(e)?{bytes:r}=await e:r=e.bytes,r}},Mn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??Oc(e),Kc(this._key),Zo(this._publicKey)}sign(e){return Pc(this._key,e)}get public(){return new On(this._publicKey)}marshal(){return this._key}get bytes(){return ye.encode({Type:lt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Vt(this.bytes,e.bytes)}hash(){let e=Lt.digest(this.bytes);return se(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return _t(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return $r(this.bytes,e);throw new O(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Zy(t){return new Mn(t)}function Xy(t){return new On(t)}async function Jy(){let t=Dc();return new Mn(t)}var Ie={rsa:Go,ed25519:Mo,secp256k1:Xo};function Jo(t){let e=Object.keys(Ie).join(" / ");return new O(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function jo(t){if(t=t.toLowerCase(),t==="rsa"||t==="ed25519"||t==="secp256k1")return Ie[t];throw Jo(t)}async function jy(t,e){return jo(t).generateKeyPair(e??2048)}async function t1(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 Oo(e)}function e1(t){let e=de.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case lt.RSA:return Ie.rsa.unmarshalRsaPublicKey(r);case lt.Ed25519:return Ie.ed25519.unmarshalEd25519PublicKey(r);case lt.Secp256k1:return Ie.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Jo(e.Type??"unknown")}}function r1(t,e){return e=(e??"rsa").toLowerCase(),jo(e),t.bytes}async function Mc(t){let e=ye.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case lt.RSA:return Ie.rsa.unmarshalRsaPrivateKey(r);case lt.Ed25519:return Ie.ed25519.unmarshalEd25519PrivateKey(r);case lt.Secp256k1:return Ie.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Jo(e.Type??"RSA")}}function n1(t,e){return e=(e??"rsa").toLowerCase(),jo(e),t.bytes}async function i1(t,e){try{let i=await uc(t,e);return await Mc(i)}catch{}let r=Zi.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=Zi.default.asn1.toDer(Zi.default.pki.privateKeyToAsn1(r));return n=xt(n.getBytes(),"ascii"),Ie.rsa.unmarshalRsaPrivateKey(n)}var s1=Rt(Xs(),1),o1=Rt(St(),1);function Fc(){return BigInt(`0x${_t(Er(8),"base16")}`)}var Vc=(t,e)=>{let r=xt(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},qc=t=>Lt.encode(t);var Hc=function(t){return Array.isArray(t)?t:[t]},a1=async t=>{if(t.sequenceNumber==null||t.from==null||t.signature==null)return!1;let e=cn(t.from);return e.publicKey!=null?!0:t.key!=null?(await zn(t.key)).equals(e):!1},zc=async t=>{if(t.from==null)throw new O("RPC message was missing from",Nt.ERR_MISSING_FROM);if(!await a1(t))return{type:"unsigned",topic:t.topic??"",data:t.data??new Uint8Array(0)};let e=cn(t.from),r={type:"signed",from:cn(t.from),topic:t.topic??"",sequenceNumber:c1(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},Vn=t=>t.type==="signed"?{from:t.from.multihash.bytes,data:t.data,sequenceNumber:u1(t.sequenceNumber),topic:t.topic,signature:t.signature,key:t.key}:{data:t.data,topic:t.topic},u1=t=>{let e=t.toString(16);return e.length%2!==0&&(e=`0${e}`),xt(e,"base16")},c1=t=>BigInt(`0x${_t(t,"base16")}`);var Gc=xt("libp2p-pubsub:");async function Yc(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=Gt([Gc,r(Vn(n)).subarray()]),s=await Fn.unmarshalPrivateKey(t.privateKey);return n.signature=await s.sign(i),n.key=t.publicKey,n}async function Wc(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=Gt([Gc,e({...Vn(t),signature:void 0,key:void 0}).subarray()]),n=await f1(t);return Fn.unmarshalPublicKey(n).verify(r,t.signature)}async function f1(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 zn(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 ta=class extends Ar{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=Hc(n),this.enabled=r.enabled!==!1,this.started=!1,this.topics=new Map,this.subscriptions=new Set,this.peers=new fn,this.globalSignaturePolicy=i==="StrictNoSign"?"StrictNoSign":"StrictSign",this.canRelayMessage=s,this.emitSelf=o,this.topicValidators=new Map,this.queue=new Ya({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 oi(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 me("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 zc(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 hn,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 me("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 Vc(e.key,e.sequenceNumber);case"StrictNoSign":return qc(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(Vn)})}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 Wc(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===en.Reject||s===en.Ignore)throw new O("Message validation failed",Nt.ERR_TOPIC_VALIDATOR_REJECT)}}async buildMessage(e){switch(this.globalSignaturePolicy){case"StrictSign":return Yc(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:Fc()};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 me("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 uf(h1);})();
|
16
16
|
/*! Bundled license information:
|
17
17
|
|
18
18
|
@noble/hashes/esm/utils.js:
|