@libp2p/identify 1.0.0 → 1.0.1-561797a89
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +7 -7
- package/dist/src/index.d.ts +1 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js.map +1 -1
- package/package.json +7 -7
- package/src/index.ts +1 -2
- package/dist/typedoc-urls.json +0 -12
package/dist/index.min.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PIdentify = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var Libp2PIdentify=(()=>{var
|
|
3
|
-
`)}return n};go.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=qa[e];if(!r){r=qa[e]=[];for(var n=0;n<e.length;++n)r[e.charCodeAt(n)]=n}t=t.replace(/\s/g,"");for(var i=e.length,o=e.charAt(0),s=[0],n=0;n<t.length;n++){var a=r[t.charCodeAt(n)];if(a===void 0)return;for(var c=0,f=a;c<s.length;++c)f+=s[c]*i,s[c]=f&255,f>>=8;for(;f>0;)s.push(f&255),f>>=8}for(var u=0;t[u]===o&&u<t.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function Dl(t,e){var r=0,n=e.length,i=e.charAt(0),o=[0];for(r=0;r<t.length();++r){for(var s=0,a=t.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;t.at(r)===0&&r<t.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=e[o[r]];return c}});var It=ut((bx,$a)=>{var Ga=ct(),Wa=za(),x=$a.exports=Ga.util=Ga.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(c){if(c.source===window&&c.data===t){c.stopPropagation();var f=e.slice();e.length=0,f.forEach(function(u){u()})}};var s=a,t="forge.setImmediate",e=[];x.setImmediate=function(c){e.push(c),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 c=e.slice();e.length=0,c.forEach(function(f){f()})}).observe(i,{attributes:!0});var o=x.setImmediate;x.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(e.push(c),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 cn(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}x.ByteBuffer=xo;function xo(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 xo||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}x.ByteStringBuffer=xo;var Pl=4096;x.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>Pl&&(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){cn(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){cn(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 kl(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=kl;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 o;if(e==="hex")return this.accommodate(Math.ceil(t.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.hex.decode(t,o,this.write),this;if(e==="base64")return this.accommodate(Math.ceil(t.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.base64.decode(t,o,this.write),this;if(e==="utf8"&&(t=x.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=x.binary.raw.decode(o),this;if(e==="utf16")return this.accommodate(t.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=x.text.utf16.encode(o),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){cn(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 cn(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){cn(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="",o="",s=0,a=0;r>0;--r,++s)i=t.charCodeAt(s)^e.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,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 Ze="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Qe=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],Ya="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";x.encode64=function(t,e){for(var r="",n="",i,o,s,a=0;a<t.length;)i=t.charCodeAt(a++),o=t.charCodeAt(a++),s=t.charCodeAt(a++),r+=Ze.charAt(i>>2),r+=Ze.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Ze.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Ze.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
|
4
|
-
`,r=r.substr(e));return n+=r,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,o,s,a,c=0,f=r;c<t.length;)i=Qe[t.charCodeAt(c++)-43],o=Qe[t.charCodeAt(c++)-43],s=Qe[t.charCodeAt(c++)-43],a=Qe[t.charCodeAt(c++)-43],n[f++]=i<<2|o>>4,s!==64&&(n[f++]=(o&15)<<4|s>>2,a!==64&&(n[f++]=(s&3)<<6|a));return e?f-r:n.subarray(0,f)};x.binary.base58.encode=function(t,e){return x.binary.baseN.encode(t,Ya,e)};x.binary.base58.decode=function(t,e){return x.binary.baseN.decode(t,Ya,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,o=0;o<t.length;++o)n[i++]=t.charCodeAt(o);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 o=r,s=r,a=0;a<t.length;++a)i[s++]=t.charCodeAt(a),o+=2;return e?o-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 mo=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}},bo=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},Ul=function(t,e,r,n){var i=bo(t,e);i===null&&(i={}),i[r]=n,mo(t,e,i)},Ol=function(t,e,r){var n=bo(t,e);return n!==null&&(n=r in n?n[r]:null),n},Kl=function(t,e,r){var n=bo(t,e);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),mo(t,e,n)}},Ml=function(t,e){mo(t,e,null)},Kn=function(t,e,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(e[0]===null)throw new Error("Flash local storage not available.");n=t.apply(this,e),o=i==="flash"}(i==="web"||i==="both")&&(e[0]=localStorage,n=t.apply(this,e),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};x.setItem=function(t,e,r,n,i){Kn(Ul,arguments,i)};x.getItem=function(t,e,r,n){return Kn(Ol,arguments,n)};x.removeItem=function(t,e,r,n){Kn(Kl,arguments,n)};x.clearItems=function(t,e,r){Kn(Ml,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,o=[],s=0;r=e.exec(t);){n=t.substring(s,e.lastIndex-2),n.length>0&&o.push(n),s=e.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(t.substring(s)),o.join("")};x.formatNumber=function(t,e,r,n){var i=t,o=isNaN(e=Math.abs(e))?2:e,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",f=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",u=f.length>3?f.length%3:0;return c+(u?f.substr(0,u)+a:"")+f.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-f).toFixed(o).slice(2):"")};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(s){return s.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 o=x.hexToBytes(t[i]);o.length<2&&n.putByte(0),n.putBytes(o)}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 o=x.bytesToHex(t[i]+t[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=e.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}e.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(e.splice(c.start,c.end-c.start+1,""),c.start===0&&e.unshift(""),c.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(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var f=Math.floor(s.reduce(function(u,l){return u+l},0)/s.length);return x.cores=Math.max(1,f),URL.revokeObjectURL(r),e(null,x.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(h){if(f.push(h.data),f.length===s){for(var y=0;y<s;++y)c[y].terminate();a(null,f)}}),c.push(l)}for(var u=0;u<s;++u)c[u].postMessage(u)}function o(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],h=0;h<s;++h)if(f!==h){var y=a[h];(u.st>y.st&&u.st<y.et||y.st>u.st&&y.st<u.et)&&l.push(h)}return c.reduce(function(d,p){return Math.max(d,p.length)},0)}}});var Mn=ut((vx,Za)=>{var fn=ct();fn.pki=fn.pki||{};var vo=Za.exports=fn.pki.oids=fn.oids=fn.oids||{};function T(t,e){vo[t]=e,vo[e]=t}function rt(t,e){vo[t]=e}T("1.2.840.113549.1.1.1","rsaEncryption");T("1.2.840.113549.1.1.4","md5WithRSAEncryption");T("1.2.840.113549.1.1.5","sha1WithRSAEncryption");T("1.2.840.113549.1.1.7","RSAES-OAEP");T("1.2.840.113549.1.1.8","mgf1");T("1.2.840.113549.1.1.9","pSpecified");T("1.2.840.113549.1.1.10","RSASSA-PSS");T("1.2.840.113549.1.1.11","sha256WithRSAEncryption");T("1.2.840.113549.1.1.12","sha384WithRSAEncryption");T("1.2.840.113549.1.1.13","sha512WithRSAEncryption");T("1.3.101.112","EdDSA25519");T("1.2.840.10040.4.3","dsa-with-sha1");T("1.3.14.3.2.7","desCBC");T("1.3.14.3.2.26","sha1");T("1.3.14.3.2.29","sha1WithRSASignature");T("2.16.840.1.101.3.4.2.1","sha256");T("2.16.840.1.101.3.4.2.2","sha384");T("2.16.840.1.101.3.4.2.3","sha512");T("2.16.840.1.101.3.4.2.4","sha224");T("2.16.840.1.101.3.4.2.5","sha512-224");T("2.16.840.1.101.3.4.2.6","sha512-256");T("1.2.840.113549.2.2","md2");T("1.2.840.113549.2.5","md5");T("1.2.840.113549.1.7.1","data");T("1.2.840.113549.1.7.2","signedData");T("1.2.840.113549.1.7.3","envelopedData");T("1.2.840.113549.1.7.4","signedAndEnvelopedData");T("1.2.840.113549.1.7.5","digestedData");T("1.2.840.113549.1.7.6","encryptedData");T("1.2.840.113549.1.9.1","emailAddress");T("1.2.840.113549.1.9.2","unstructuredName");T("1.2.840.113549.1.9.3","contentType");T("1.2.840.113549.1.9.4","messageDigest");T("1.2.840.113549.1.9.5","signingTime");T("1.2.840.113549.1.9.6","counterSignature");T("1.2.840.113549.1.9.7","challengePassword");T("1.2.840.113549.1.9.8","unstructuredAddress");T("1.2.840.113549.1.9.14","extensionRequest");T("1.2.840.113549.1.9.20","friendlyName");T("1.2.840.113549.1.9.21","localKeyId");T("1.2.840.113549.1.9.22.1","x509Certificate");T("1.2.840.113549.1.12.10.1.1","keyBag");T("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");T("1.2.840.113549.1.12.10.1.3","certBag");T("1.2.840.113549.1.12.10.1.4","crlBag");T("1.2.840.113549.1.12.10.1.5","secretBag");T("1.2.840.113549.1.12.10.1.6","safeContentsBag");T("1.2.840.113549.1.5.13","pkcs5PBES2");T("1.2.840.113549.1.5.12","pkcs5PBKDF2");T("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");T("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");T("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");T("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");T("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");T("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");T("1.2.840.113549.2.7","hmacWithSHA1");T("1.2.840.113549.2.8","hmacWithSHA224");T("1.2.840.113549.2.9","hmacWithSHA256");T("1.2.840.113549.2.10","hmacWithSHA384");T("1.2.840.113549.2.11","hmacWithSHA512");T("1.2.840.113549.3.7","des-EDE3-CBC");T("2.16.840.1.101.3.4.1.2","aes128-CBC");T("2.16.840.1.101.3.4.1.22","aes192-CBC");T("2.16.840.1.101.3.4.1.42","aes256-CBC");T("2.5.4.3","commonName");T("2.5.4.4","surname");T("2.5.4.5","serialNumber");T("2.5.4.6","countryName");T("2.5.4.7","localityName");T("2.5.4.8","stateOrProvinceName");T("2.5.4.9","streetAddress");T("2.5.4.10","organizationName");T("2.5.4.11","organizationalUnitName");T("2.5.4.12","title");T("2.5.4.13","description");T("2.5.4.15","businessCategory");T("2.5.4.17","postalCode");T("2.5.4.42","givenName");T("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");T("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");T("2.16.840.1.113730.1.1","nsCertType");T("2.16.840.1.113730.1.13","nsComment");rt("2.5.29.1","authorityKeyIdentifier");rt("2.5.29.2","keyAttributes");rt("2.5.29.3","certificatePolicies");rt("2.5.29.4","keyUsageRestriction");rt("2.5.29.5","policyMapping");rt("2.5.29.6","subtreesConstraint");rt("2.5.29.7","subjectAltName");rt("2.5.29.8","issuerAltName");rt("2.5.29.9","subjectDirectoryAttributes");rt("2.5.29.10","basicConstraints");rt("2.5.29.11","nameConstraints");rt("2.5.29.12","policyConstraints");rt("2.5.29.13","basicConstraints");T("2.5.29.14","subjectKeyIdentifier");T("2.5.29.15","keyUsage");rt("2.5.29.16","privateKeyUsagePeriod");T("2.5.29.17","subjectAltName");T("2.5.29.18","issuerAltName");T("2.5.29.19","basicConstraints");rt("2.5.29.20","cRLNumber");rt("2.5.29.21","cRLReason");rt("2.5.29.22","expirationDate");rt("2.5.29.23","instructionCode");rt("2.5.29.24","invalidityDate");rt("2.5.29.25","cRLDistributionPoints");rt("2.5.29.26","issuingDistributionPoint");rt("2.5.29.27","deltaCRLIndicator");rt("2.5.29.28","issuingDistributionPoint");rt("2.5.29.29","certificateIssuer");rt("2.5.29.30","nameConstraints");T("2.5.29.31","cRLDistributionPoints");T("2.5.29.32","certificatePolicies");rt("2.5.29.33","policyMappings");rt("2.5.29.34","policyConstraints");T("2.5.29.35","authorityKeyIdentifier");rt("2.5.29.36","policyConstraints");T("2.5.29.37","extKeyUsage");rt("2.5.29.46","freshestCRL");rt("2.5.29.54","inhibitAnyPolicy");T("1.3.6.1.4.1.11129.2.4.2","timestampList");T("1.3.6.1.5.5.7.1.1","authorityInfoAccess");T("1.3.6.1.5.5.7.3.1","serverAuth");T("1.3.6.1.5.5.7.3.2","clientAuth");T("1.3.6.1.5.5.7.3.3","codeSigning");T("1.3.6.1.5.5.7.3.4","emailProtection");T("1.3.6.1.5.5.7.3.8","timeStamping")});var ln=ut((wx,Xa)=>{var dt=ct();It();Mn();var k=Xa.exports=dt.asn1=dt.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(dt.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:t,type:e,constructed:r,composed:r||dt.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(dt.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(dt.util.isArray(t)){if(!dt.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 un(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 Vl=function(t,e){var r=t.getByte();if(e--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;un(t,e,o),n=t.getInt(o<<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=dt.util.createBuffer(t));var r=t.length(),n=Vn(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 Vn(t,e,r,n){var i;un(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=Vl(t,e);if(e-=i-t.length(),c!==void 0&&c>e){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=t.length(),f.remaining=e,f.requested=c,f}c=e}var u,l,h=(o&32)===32;if(h)if(u=[],c===void 0)for(;;){if(un(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),u.push(Vn(t,e,r+1,n)),e-=i-t.length()}else for(;c>0;)i=t.length(),u.push(Vn(t,c,r+1,n)),e-=i-t.length(),c-=i-t.length();if(u===void 0&&s===k.Class.UNIVERSAL&&a===k.Type.BITSTRING&&(l=t.bytes(c)),u===void 0&&n.decodeBitStrings&&s===k.Class.UNIVERSAL&&a===k.Type.BITSTRING&&c>1){var y=t.read,d=e,p=0;if(a===k.Type.BITSTRING&&(un(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var g={strict:!0,decodeBitStrings:!0},m=Vn(t,e,r+1,g),w=i-t.length();e-=w,a==k.Type.BITSTRING&&w++;var v=m.tagClass;w===c&&(v===k.Class.UNIVERSAL||v===k.Class.CONTEXT_SPECIFIC)&&(u=[m])}catch{}u===void 0&&(t.read=y,e=d)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=e}if(a===k.Type.BMPSTRING)for(u="";c>0;c-=2)un(t,e,2),u+=String.fromCharCode(t.getInt16()),e-=2;else u=t.getBytes(c),e-=c}var R=l===void 0?null:{bitStringContents:l};return k.create(s,a,h,u,R)}k.toDer=function(t){var e=dt.util.createBuffer(),r=t.tagClass|t.type,n=dt.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 o=0;o<t.value.length;++o)t.value[o]!==void 0&&n.putBuffer(k.toDer(t.value[o]))}else if(t.type===k.Type.BMPSTRING)for(var o=0;o<t.value.length;++o)n.putInt16(t.value.charCodeAt(o));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 s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);e.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)e.putByte(a.charCodeAt(o))}return e.putBuffer(n),e};k.oidToDer=function(t){var e=t.split("."),r=dt.util.createBuffer();r.putByte(40*parseInt(e[0],10)+parseInt(e[1],10));for(var n,i,o,s,a=2;a<e.length;++a){n=!0,i=[],o=parseInt(e[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};k.derToOid=function(t){var e;typeof t=="string"&&(t=dt.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),o=parseInt(t.substr(6,2),10),s=parseInt(t.substr(8,2),10),a=0;if(t.length>11){var c=t.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(t.substr(10,2),10),f+=2)}if(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,0),f&&(c=t.charAt(f),c==="+"||c==="-")){var u=parseInt(t.substr(f+1,2),10),l=parseInt(t.substr(f+4,2),10),h=u*60+l;h*=6e4,c==="+"?e.setTime(+e-h):e.setTime(+e+h)}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),o=parseInt(t.substr(8,2),10),s=parseInt(t.substr(10,2),10),a=parseInt(t.substr(12,2),10),c=0,f=0,u=!1;t.charAt(t.length-1)==="Z"&&(u=!0);var l=t.length-5,h=t.charAt(l);if(h==="+"||h==="-"){var y=parseInt(t.substr(l+1,2),10),d=parseInt(t.substr(l+4,2),10);f=y*60+d,f*=6e4,h==="+"&&(f*=-1),u=!0}return t.charAt(14)==="."&&(c=parseFloat(t.substr(14),10)*1e3),u?(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,c),e.setTime(+e+f)):(e.setFullYear(r,n,i),e.setHours(o,s,a,c)),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=dt.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=dt.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&&dt.util.isArray(e.value))for(var o=0,s=0;i&&s<e.value.length;++s)i=e.value[s].optional||!1,t.value[o]&&(i=k.validate(t.value[o],e.value[s],r,n),i?++o:e.value[s].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 c=t.bitStringContents.charCodeAt(0);if(c!==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 Qa=/[^\\u0000-\\u00ff]/;k.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
|
|
2
|
+
"use strict";var Libp2PIdentify=(()=>{var vu=Object.create;var Pn=Object.defineProperty;var wu=Object.getOwnPropertyDescriptor;var Eu=Object.getOwnPropertyNames;var Su=Object.getPrototypeOf,Bu=Object.prototype.hasOwnProperty;var ut=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Nt=(t,e)=>{for(var r in e)Pn(t,r,{get:e[r],enumerable:!0})},ca=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Eu(e))!Bu.call(t,i)&&i!==r&&Pn(t,i,{get:()=>e[i],enumerable:!(n=wu(e,i))||n.enumerable});return t};var Gt=(t,e,r)=>(r=t!=null?vu(Su(t)):{},ca(e||!t||!t.__esModule?Pn(r,"default",{value:t,enumerable:!0}):r,t)),Au=t=>ca(Pn({},"__esModule",{value:!0}),t);var ct=ut((mm,Va)=>{Va.exports={options:{usePureJavaScript:!1}}});var Ha=ut((xm,qa)=>{var yo={};qa.exports=yo;var Fa={};yo.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=Nl(t,e);else{var i=0,o=e.length,s=e.charAt(0),a=[0];for(i=0;i<t.length;++i){for(var c=0,f=t[i];c<a.length;++c)f+=a[c]<<8,a[c]=f%o,f=f/o|0;for(;f>0;)a.push(f%o),f=f/o|0}for(i=0;t[i]===0&&i<t.length-1;++i)n+=s;for(i=a.length-1;i>=0;--i)n+=e[a[i]]}if(r){var u=new RegExp(".{1,"+r+"}","g");n=n.match(u).join(`\r
|
|
3
|
+
`)}return n};yo.decode=function(t,e){if(typeof t!="string")throw new TypeError('"input" must be a string.');if(typeof e!="string")throw new TypeError('"alphabet" must be a string.');var r=Fa[e];if(!r){r=Fa[e]=[];for(var n=0;n<e.length;++n)r[e.charCodeAt(n)]=n}t=t.replace(/\s/g,"");for(var i=e.length,o=e.charAt(0),s=[0],n=0;n<t.length;n++){var a=r[t.charCodeAt(n)];if(a===void 0)return;for(var c=0,f=a;c<s.length;++c)f+=s[c]*i,s[c]=f&255,f>>=8;for(;f>0;)s.push(f&255),f>>=8}for(var u=0;t[u]===o&&u<t.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function Nl(t,e){var r=0,n=e.length,i=e.charAt(0),o=[0];for(r=0;r<t.length();++r){for(var s=0,a=t.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;t.at(r)===0&&r<t.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=e[o[r]];return c}});var It=ut((bm,Ya)=>{var za=ct(),Ga=Ha(),m=Ya.exports=za.util=za.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){m.nextTick=process.nextTick,typeof setImmediate=="function"?m.setImmediate=setImmediate:m.setImmediate=m.nextTick;return}if(typeof setImmediate=="function"){m.setImmediate=function(){return setImmediate.apply(void 0,arguments)},m.nextTick=function(a){return setImmediate(a)};return}if(m.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===t){c.stopPropagation();var f=e.slice();e.length=0,f.forEach(function(u){u()})}};var s=a,t="forge.setImmediate",e=[];m.setImmediate=function(c){e.push(c),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 c=e.slice();e.length=0,c.forEach(function(f){f()})}).observe(i,{attributes:!0});var o=m.setImmediate;m.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(e.push(c),e.length===1&&i.setAttribute("a",n=!n))}}m.nextTick=m.setImmediate})();m.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;m.globalScope=function(){return m.isNodejs?globalThis:typeof self>"u"?window:self}();m.isArray=Array.isArray||function(t){return Object.prototype.toString.call(t)==="[object Array]"};m.isArrayBuffer=function(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer};m.isArrayBufferView=function(t){return t&&m.isArrayBuffer(t.buffer)&&t.byteLength!==void 0};function cn(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}m.ByteBuffer=go;function go(t){if(this.data="",this.read=0,typeof t=="string")this.data=t;else if(m.isArrayBuffer(t)||m.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 go||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}m.ByteStringBuffer=go;var Dl=4096;m.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>Dl&&(this.data.substr(0,1),this._constructedStringLength=0)};m.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};m.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};m.ByteStringBuffer.prototype.putByte=function(t){return this.putBytes(String.fromCharCode(t))};m.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};m.ByteStringBuffer.prototype.putBytes=function(t){return this.data+=t,this._optimizeConstructedString(t.length),this};m.ByteStringBuffer.prototype.putString=function(t){return this.putBytes(m.encodeUtf8(t))};m.ByteStringBuffer.prototype.putInt16=function(t){return this.putBytes(String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};m.ByteStringBuffer.prototype.putInt24=function(t){return this.putBytes(String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};m.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))};m.ByteStringBuffer.prototype.putInt16Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255))};m.ByteStringBuffer.prototype.putInt24Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255))};m.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))};m.ByteStringBuffer.prototype.putInt=function(t,e){cn(e);var r="";do e-=8,r+=String.fromCharCode(t>>e&255);while(e>0);return this.putBytes(r)};m.ByteStringBuffer.prototype.putSignedInt=function(t,e){return t<0&&(t+=2<<e-1),this.putInt(t,e)};m.ByteStringBuffer.prototype.putBuffer=function(t){return this.putBytes(t.getBytes())};m.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};m.ByteStringBuffer.prototype.getInt16=function(){var t=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,t};m.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};m.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};m.ByteStringBuffer.prototype.getInt16Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,t};m.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};m.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};m.ByteStringBuffer.prototype.getInt=function(t){cn(t);var e=0;do e=(e<<8)+this.data.charCodeAt(this.read++),t-=8;while(t>0);return e};m.ByteStringBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};m.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};m.ByteStringBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};m.ByteStringBuffer.prototype.at=function(t){return this.data.charCodeAt(this.read+t)};m.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};m.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};m.ByteStringBuffer.prototype.copy=function(){var t=m.createBuffer(this.data);return t.read=this.read,t};m.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};m.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};m.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};m.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};m.ByteStringBuffer.prototype.toString=function(){return m.decodeUtf8(this.bytes())};function Pl(t,e){e=e||{},this.read=e.readOffset||0,this.growSize=e.growSize||1024;var r=m.isArrayBuffer(t),n=m.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)}m.DataBuffer=Pl;m.DataBuffer.prototype.length=function(){return this.write-this.read};m.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};m.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};m.DataBuffer.prototype.putByte=function(t){return this.accommodate(1),this.data.setUint8(this.write++,t),this};m.DataBuffer.prototype.fillWithByte=function(t,e){this.accommodate(e);for(var r=0;r<e;++r)this.data.setUint8(t);return this};m.DataBuffer.prototype.putBytes=function(t,e){if(m.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(m.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 m.DataBuffer||typeof t=="object"&&typeof t.read=="number"&&typeof t.write=="number"&&m.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 m.ByteStringBuffer&&(t=t.data,e="binary"),e=e||"binary",typeof t=="string"){var o;if(e==="hex")return this.accommodate(Math.ceil(t.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=m.binary.hex.decode(t,o,this.write),this;if(e==="base64")return this.accommodate(Math.ceil(t.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=m.binary.base64.decode(t,o,this.write),this;if(e==="utf8"&&(t=m.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=m.binary.raw.decode(o),this;if(e==="utf16")return this.accommodate(t.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=m.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+e)}throw Error("Invalid parameter: "+t)};m.DataBuffer.prototype.putBuffer=function(t){return this.putBytes(t),t.clear(),this};m.DataBuffer.prototype.putString=function(t){return this.putBytes(t,"utf16")};m.DataBuffer.prototype.putInt16=function(t){return this.accommodate(2),this.data.setInt16(this.write,t),this.write+=2,this};m.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};m.DataBuffer.prototype.putInt32=function(t){return this.accommodate(4),this.data.setInt32(this.write,t),this.write+=4,this};m.DataBuffer.prototype.putInt16Le=function(t){return this.accommodate(2),this.data.setInt16(this.write,t,!0),this.write+=2,this};m.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};m.DataBuffer.prototype.putInt32Le=function(t){return this.accommodate(4),this.data.setInt32(this.write,t,!0),this.write+=4,this};m.DataBuffer.prototype.putInt=function(t,e){cn(e),this.accommodate(e/8);do e-=8,this.data.setInt8(this.write++,t>>e&255);while(e>0);return this};m.DataBuffer.prototype.putSignedInt=function(t,e){return cn(e),this.accommodate(e/8),t<0&&(t+=2<<e-1),this.putInt(t,e)};m.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};m.DataBuffer.prototype.getInt16=function(){var t=this.data.getInt16(this.read);return this.read+=2,t};m.DataBuffer.prototype.getInt24=function(){var t=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,t};m.DataBuffer.prototype.getInt32=function(){var t=this.data.getInt32(this.read);return this.read+=4,t};m.DataBuffer.prototype.getInt16Le=function(){var t=this.data.getInt16(this.read,!0);return this.read+=2,t};m.DataBuffer.prototype.getInt24Le=function(){var t=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,t};m.DataBuffer.prototype.getInt32Le=function(){var t=this.data.getInt32(this.read,!0);return this.read+=4,t};m.DataBuffer.prototype.getInt=function(t){cn(t);var e=0;do e=(e<<8)+this.data.getInt8(this.read++),t-=8;while(t>0);return e};m.DataBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};m.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};m.DataBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};m.DataBuffer.prototype.at=function(t){return this.data.getUint8(this.read+t)};m.DataBuffer.prototype.setAt=function(t,e){return this.data.setUint8(t,e),this};m.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};m.DataBuffer.prototype.copy=function(){return new m.DataBuffer(this)};m.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};m.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};m.DataBuffer.prototype.truncate=function(t){return this.write=Math.max(0,this.length()-t),this.read=Math.min(this.read,this.write),this};m.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};m.DataBuffer.prototype.toString=function(t){var e=new Uint8Array(this.data,this.read,this.length());if(t=t||"utf8",t==="binary"||t==="raw")return m.binary.raw.encode(e);if(t==="hex")return m.binary.hex.encode(e);if(t==="base64")return m.binary.base64.encode(e);if(t==="utf8")return m.text.utf8.decode(e);if(t==="utf16")return m.text.utf16.decode(e);throw new Error("Invalid encoding: "+t)};m.createBuffer=function(t,e){return e=e||"raw",t!==void 0&&e==="utf8"&&(t=m.encodeUtf8(t)),new m.ByteBuffer(t)};m.fillString=function(t,e){for(var r="";e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return r};m.xorBytes=function(t,e,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=t.charCodeAt(s)^e.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};m.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};m.bytesToHex=function(t){return m.createBuffer(t).toHex()};m.int32ToBytes=function(t){return String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255)};var Ze="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Qe=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],Wa="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";m.encode64=function(t,e){for(var r="",n="",i,o,s,a=0;a<t.length;)i=t.charCodeAt(a++),o=t.charCodeAt(a++),s=t.charCodeAt(a++),r+=Ze.charAt(i>>2),r+=Ze.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Ze.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Ze.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
|
4
|
+
`,r=r.substr(e));return n+=r,n};m.decode64=function(t){t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var e="",r,n,i,o,s=0;s<t.length;)r=Qe[t.charCodeAt(s++)-43],n=Qe[t.charCodeAt(s++)-43],i=Qe[t.charCodeAt(s++)-43],o=Qe[t.charCodeAt(s++)-43],e+=String.fromCharCode(r<<2|n>>4),i!==64&&(e+=String.fromCharCode((n&15)<<4|i>>2),o!==64&&(e+=String.fromCharCode((i&3)<<6|o)));return e};m.encodeUtf8=function(t){return unescape(encodeURIComponent(t))};m.decodeUtf8=function(t){return decodeURIComponent(escape(t))};m.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:Ga.encode,decode:Ga.decode}};m.binary.raw.encode=function(t){return String.fromCharCode.apply(null,t)};m.binary.raw.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,o=0;o<t.length;++o)n[i++]=t.charCodeAt(o);return e?i-r:n};m.binary.hex.encode=m.bytesToHex;m.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,o=r;for(t.length&1&&(i=1,n[o++]=parseInt(t[0],16));i<t.length;i+=2)n[o++]=parseInt(t.substr(i,2),16);return e?o-r:n};m.binary.base64.encode=function(t,e){for(var r="",n="",i,o,s,a=0;a<t.byteLength;)i=t[a++],o=t[a++],s=t[a++],r+=Ze.charAt(i>>2),r+=Ze.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Ze.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Ze.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
|
5
|
+
`,r=r.substr(e));return n+=r,n};m.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,o,s,a,c=0,f=r;c<t.length;)i=Qe[t.charCodeAt(c++)-43],o=Qe[t.charCodeAt(c++)-43],s=Qe[t.charCodeAt(c++)-43],a=Qe[t.charCodeAt(c++)-43],n[f++]=i<<2|o>>4,s!==64&&(n[f++]=(o&15)<<4|s>>2,a!==64&&(n[f++]=(s&3)<<6|a));return e?f-r:n.subarray(0,f)};m.binary.base58.encode=function(t,e){return m.binary.baseN.encode(t,Wa,e)};m.binary.base58.decode=function(t,e){return m.binary.baseN.decode(t,Wa,e)};m.text={utf8:{},utf16:{}};m.text.utf8.encode=function(t,e,r){t=m.encodeUtf8(t);var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,o=0;o<t.length;++o)n[i++]=t.charCodeAt(o);return e?i-r:n};m.text.utf8.decode=function(t){return m.decodeUtf8(String.fromCharCode.apply(null,t))};m.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 o=r,s=r,a=0;a<t.length;++a)i[s++]=t.charCodeAt(a),o+=2;return e?o-r:n};m.text.utf16.decode=function(t){return String.fromCharCode.apply(null,new Uint16Array(t.buffer))};m.deflate=function(t,e,r){if(e=m.decode64(t.deflate(m.encode64(e)).rval),r){var n=2,i=e.charCodeAt(1);i&32&&(n=6),e=e.substring(n,e.length-4)}return e};m.inflate=function(t,e,r){var n=t.inflate(m.encode64(e)).rval;return n===null?null:m.decode64(n)};var mo=function(t,e,r){if(!t)throw new Error("WebStorage not available.");var n;if(r===null?n=t.removeItem(e):(r=m.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}},xo=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(m.decode64(r))),r},kl=function(t,e,r,n){var i=xo(t,e);i===null&&(i={}),i[r]=n,mo(t,e,i)},Ul=function(t,e,r){var n=xo(t,e);return n!==null&&(n=r in n?n[r]:null),n},Ol=function(t,e,r){var n=xo(t,e);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),mo(t,e,n)}},Kl=function(t,e){mo(t,e,null)},Kn=function(t,e,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(e[0]===null)throw new Error("Flash local storage not available.");n=t.apply(this,e),o=i==="flash"}(i==="web"||i==="both")&&(e[0]=localStorage,n=t.apply(this,e),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};m.setItem=function(t,e,r,n,i){Kn(kl,arguments,i)};m.getItem=function(t,e,r,n){return Kn(Ul,arguments,n)};m.removeItem=function(t,e,r,n){Kn(Ol,arguments,n)};m.clearItems=function(t,e,r){Kn(Kl,arguments,r)};m.isEmpty=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0};m.format=function(t){for(var e=/%./g,r,n,i=0,o=[],s=0;r=e.exec(t);){n=t.substring(s,e.lastIndex-2),n.length>0&&o.push(n),s=e.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(t.substring(s)),o.join("")};m.formatNumber=function(t,e,r,n){var i=t,o=isNaN(e=Math.abs(e))?2:e,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",f=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",u=f.length>3?f.length%3:0;return c+(u?f.substr(0,u)+a:"")+f.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-f).toFixed(o).slice(2):"")};m.formatSize=function(t){return t>=1073741824?t=m.formatNumber(t/1073741824,2,".","")+" GiB":t>=1048576?t=m.formatNumber(t/1048576,2,".","")+" MiB":t>=1024?t=m.formatNumber(t/1024,0)+" KiB":t=m.formatNumber(t,0)+" bytes",t};m.bytesFromIP=function(t){return t.indexOf(".")!==-1?m.bytesFromIPv4(t):t.indexOf(":")!==-1?m.bytesFromIPv6(t):null};m.bytesFromIPv4=function(t){if(t=t.split("."),t.length!==4)return null;for(var e=m.createBuffer(),r=0;r<t.length;++r){var n=parseInt(t[r],10);if(isNaN(n))return null;e.putByte(n)}return e.getBytes()};m.bytesFromIPv6=function(t){var e=0;t=t.split(":").filter(function(s){return s.length===0&&++e,!0});for(var r=(8-t.length+e)*2,n=m.createBuffer(),i=0;i<8;++i){if(!t[i]||t[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=m.hexToBytes(t[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};m.bytesToIP=function(t){return t.length===4?m.bytesToIPv4(t):t.length===16?m.bytesToIPv6(t):null};m.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(".")};m.bytesToIPv6=function(t){if(t.length!==16)return null;for(var e=[],r=[],n=0,i=0;i<t.length;i+=2){for(var o=m.bytesToHex(t[i]+t[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=e.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}e.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(e.splice(c.start,c.end-c.start+1,""),c.start===0&&e.unshift(""),c.end===7&&e.push(""))}return e.join(":")};m.estimateCores=function(t,e){if(typeof t=="function"&&(e=t,t={}),t=t||{},"cores"in m&&!t.update)return e(null,m.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return m.cores=navigator.hardwareConcurrency,e(null,m.cores);if(typeof Worker>"u")return m.cores=1,e(null,m.cores);if(typeof Blob>"u")return m.cores=2,e(null,m.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var f=Math.floor(s.reduce(function(u,l){return u+l},0)/s.length);return m.cores=Math.max(1,f),URL.revokeObjectURL(r),e(null,m.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(h){if(f.push(h.data),f.length===s){for(var y=0;y<s;++y)c[y].terminate();a(null,f)}}),c.push(l)}for(var u=0;u<s;++u)c[u].postMessage(u)}function o(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],h=0;h<s;++h)if(f!==h){var y=a[h];(u.st>y.st&&u.st<y.et||y.st>u.st&&y.st<u.et)&&l.push(h)}return c.reduce(function(d,p){return Math.max(d,p.length)},0)}}});var Mn=ut((vm,$a)=>{var fn=ct();fn.pki=fn.pki||{};var bo=$a.exports=fn.pki.oids=fn.oids=fn.oids||{};function T(t,e){bo[t]=e,bo[e]=t}function rt(t,e){bo[t]=e}T("1.2.840.113549.1.1.1","rsaEncryption");T("1.2.840.113549.1.1.4","md5WithRSAEncryption");T("1.2.840.113549.1.1.5","sha1WithRSAEncryption");T("1.2.840.113549.1.1.7","RSAES-OAEP");T("1.2.840.113549.1.1.8","mgf1");T("1.2.840.113549.1.1.9","pSpecified");T("1.2.840.113549.1.1.10","RSASSA-PSS");T("1.2.840.113549.1.1.11","sha256WithRSAEncryption");T("1.2.840.113549.1.1.12","sha384WithRSAEncryption");T("1.2.840.113549.1.1.13","sha512WithRSAEncryption");T("1.3.101.112","EdDSA25519");T("1.2.840.10040.4.3","dsa-with-sha1");T("1.3.14.3.2.7","desCBC");T("1.3.14.3.2.26","sha1");T("1.3.14.3.2.29","sha1WithRSASignature");T("2.16.840.1.101.3.4.2.1","sha256");T("2.16.840.1.101.3.4.2.2","sha384");T("2.16.840.1.101.3.4.2.3","sha512");T("2.16.840.1.101.3.4.2.4","sha224");T("2.16.840.1.101.3.4.2.5","sha512-224");T("2.16.840.1.101.3.4.2.6","sha512-256");T("1.2.840.113549.2.2","md2");T("1.2.840.113549.2.5","md5");T("1.2.840.113549.1.7.1","data");T("1.2.840.113549.1.7.2","signedData");T("1.2.840.113549.1.7.3","envelopedData");T("1.2.840.113549.1.7.4","signedAndEnvelopedData");T("1.2.840.113549.1.7.5","digestedData");T("1.2.840.113549.1.7.6","encryptedData");T("1.2.840.113549.1.9.1","emailAddress");T("1.2.840.113549.1.9.2","unstructuredName");T("1.2.840.113549.1.9.3","contentType");T("1.2.840.113549.1.9.4","messageDigest");T("1.2.840.113549.1.9.5","signingTime");T("1.2.840.113549.1.9.6","counterSignature");T("1.2.840.113549.1.9.7","challengePassword");T("1.2.840.113549.1.9.8","unstructuredAddress");T("1.2.840.113549.1.9.14","extensionRequest");T("1.2.840.113549.1.9.20","friendlyName");T("1.2.840.113549.1.9.21","localKeyId");T("1.2.840.113549.1.9.22.1","x509Certificate");T("1.2.840.113549.1.12.10.1.1","keyBag");T("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");T("1.2.840.113549.1.12.10.1.3","certBag");T("1.2.840.113549.1.12.10.1.4","crlBag");T("1.2.840.113549.1.12.10.1.5","secretBag");T("1.2.840.113549.1.12.10.1.6","safeContentsBag");T("1.2.840.113549.1.5.13","pkcs5PBES2");T("1.2.840.113549.1.5.12","pkcs5PBKDF2");T("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");T("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");T("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");T("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");T("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");T("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");T("1.2.840.113549.2.7","hmacWithSHA1");T("1.2.840.113549.2.8","hmacWithSHA224");T("1.2.840.113549.2.9","hmacWithSHA256");T("1.2.840.113549.2.10","hmacWithSHA384");T("1.2.840.113549.2.11","hmacWithSHA512");T("1.2.840.113549.3.7","des-EDE3-CBC");T("2.16.840.1.101.3.4.1.2","aes128-CBC");T("2.16.840.1.101.3.4.1.22","aes192-CBC");T("2.16.840.1.101.3.4.1.42","aes256-CBC");T("2.5.4.3","commonName");T("2.5.4.4","surname");T("2.5.4.5","serialNumber");T("2.5.4.6","countryName");T("2.5.4.7","localityName");T("2.5.4.8","stateOrProvinceName");T("2.5.4.9","streetAddress");T("2.5.4.10","organizationName");T("2.5.4.11","organizationalUnitName");T("2.5.4.12","title");T("2.5.4.13","description");T("2.5.4.15","businessCategory");T("2.5.4.17","postalCode");T("2.5.4.42","givenName");T("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");T("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");T("2.16.840.1.113730.1.1","nsCertType");T("2.16.840.1.113730.1.13","nsComment");rt("2.5.29.1","authorityKeyIdentifier");rt("2.5.29.2","keyAttributes");rt("2.5.29.3","certificatePolicies");rt("2.5.29.4","keyUsageRestriction");rt("2.5.29.5","policyMapping");rt("2.5.29.6","subtreesConstraint");rt("2.5.29.7","subjectAltName");rt("2.5.29.8","issuerAltName");rt("2.5.29.9","subjectDirectoryAttributes");rt("2.5.29.10","basicConstraints");rt("2.5.29.11","nameConstraints");rt("2.5.29.12","policyConstraints");rt("2.5.29.13","basicConstraints");T("2.5.29.14","subjectKeyIdentifier");T("2.5.29.15","keyUsage");rt("2.5.29.16","privateKeyUsagePeriod");T("2.5.29.17","subjectAltName");T("2.5.29.18","issuerAltName");T("2.5.29.19","basicConstraints");rt("2.5.29.20","cRLNumber");rt("2.5.29.21","cRLReason");rt("2.5.29.22","expirationDate");rt("2.5.29.23","instructionCode");rt("2.5.29.24","invalidityDate");rt("2.5.29.25","cRLDistributionPoints");rt("2.5.29.26","issuingDistributionPoint");rt("2.5.29.27","deltaCRLIndicator");rt("2.5.29.28","issuingDistributionPoint");rt("2.5.29.29","certificateIssuer");rt("2.5.29.30","nameConstraints");T("2.5.29.31","cRLDistributionPoints");T("2.5.29.32","certificatePolicies");rt("2.5.29.33","policyMappings");rt("2.5.29.34","policyConstraints");T("2.5.29.35","authorityKeyIdentifier");rt("2.5.29.36","policyConstraints");T("2.5.29.37","extKeyUsage");rt("2.5.29.46","freshestCRL");rt("2.5.29.54","inhibitAnyPolicy");T("1.3.6.1.4.1.11129.2.4.2","timestampList");T("1.3.6.1.5.5.7.1.1","authorityInfoAccess");T("1.3.6.1.5.5.7.3.1","serverAuth");T("1.3.6.1.5.5.7.3.2","clientAuth");T("1.3.6.1.5.5.7.3.3","codeSigning");T("1.3.6.1.5.5.7.3.4","emailProtection");T("1.3.6.1.5.5.7.3.8","timeStamping")});var ln=ut((wm,Qa)=>{var dt=ct();It();Mn();var k=Qa.exports=dt.asn1=dt.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(dt.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:t,type:e,constructed:r,composed:r||dt.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(dt.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(dt.util.isArray(t)){if(!dt.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 un(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 Ml=function(t,e){var r=t.getByte();if(e--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;un(t,e,o),n=t.getInt(o<<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=dt.util.createBuffer(t));var r=t.length(),n=Vn(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 Vn(t,e,r,n){var i;un(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=Ml(t,e);if(e-=i-t.length(),c!==void 0&&c>e){if(n.strict){var f=new Error("Too few bytes to read ASN.1 value.");throw f.available=t.length(),f.remaining=e,f.requested=c,f}c=e}var u,l,h=(o&32)===32;if(h)if(u=[],c===void 0)for(;;){if(un(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),u.push(Vn(t,e,r+1,n)),e-=i-t.length()}else for(;c>0;)i=t.length(),u.push(Vn(t,c,r+1,n)),e-=i-t.length(),c-=i-t.length();if(u===void 0&&s===k.Class.UNIVERSAL&&a===k.Type.BITSTRING&&(l=t.bytes(c)),u===void 0&&n.decodeBitStrings&&s===k.Class.UNIVERSAL&&a===k.Type.BITSTRING&&c>1){var y=t.read,d=e,p=0;if(a===k.Type.BITSTRING&&(un(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var g={strict:!0,decodeBitStrings:!0},x=Vn(t,e,r+1,g),w=i-t.length();e-=w,a==k.Type.BITSTRING&&w++;var v=x.tagClass;w===c&&(v===k.Class.UNIVERSAL||v===k.Class.CONTEXT_SPECIFIC)&&(u=[x])}catch{}u===void 0&&(t.read=y,e=d)}if(u===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=e}if(a===k.Type.BMPSTRING)for(u="";c>0;c-=2)un(t,e,2),u+=String.fromCharCode(t.getInt16()),e-=2;else u=t.getBytes(c),e-=c}var R=l===void 0?null:{bitStringContents:l};return k.create(s,a,h,u,R)}k.toDer=function(t){var e=dt.util.createBuffer(),r=t.tagClass|t.type,n=dt.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 o=0;o<t.value.length;++o)t.value[o]!==void 0&&n.putBuffer(k.toDer(t.value[o]))}else if(t.type===k.Type.BMPSTRING)for(var o=0;o<t.value.length;++o)n.putInt16(t.value.charCodeAt(o));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 s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);e.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)e.putByte(a.charCodeAt(o))}return e.putBuffer(n),e};k.oidToDer=function(t){var e=t.split("."),r=dt.util.createBuffer();r.putByte(40*parseInt(e[0],10)+parseInt(e[1],10));for(var n,i,o,s,a=2;a<e.length;++a){n=!0,i=[],o=parseInt(e[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};k.derToOid=function(t){var e;typeof t=="string"&&(t=dt.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),o=parseInt(t.substr(6,2),10),s=parseInt(t.substr(8,2),10),a=0;if(t.length>11){var c=t.charAt(10),f=10;c!=="+"&&c!=="-"&&(a=parseInt(t.substr(10,2),10),f+=2)}if(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,0),f&&(c=t.charAt(f),c==="+"||c==="-")){var u=parseInt(t.substr(f+1,2),10),l=parseInt(t.substr(f+4,2),10),h=u*60+l;h*=6e4,c==="+"?e.setTime(+e-h):e.setTime(+e+h)}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),o=parseInt(t.substr(8,2),10),s=parseInt(t.substr(10,2),10),a=parseInt(t.substr(12,2),10),c=0,f=0,u=!1;t.charAt(t.length-1)==="Z"&&(u=!0);var l=t.length-5,h=t.charAt(l);if(h==="+"||h==="-"){var y=parseInt(t.substr(l+1,2),10),d=parseInt(t.substr(l+4,2),10);f=y*60+d,f*=6e4,h==="+"&&(f*=-1),u=!0}return t.charAt(14)==="."&&(c=parseFloat(t.substr(14),10)*1e3),u?(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,c),e.setTime(+e+f)):(e.setFullYear(r,n,i),e.setHours(o,s,a,c)),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=dt.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=dt.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&&dt.util.isArray(e.value))for(var o=0,s=0;i&&s<e.value.length;++s)i=e.value[s].optional||!1,t.value[o]&&(i=k.validate(t.value[o],e.value[s],r,n),i?++o:e.value[s].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 c=t.bitStringContents.charCodeAt(0);if(c!==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 Za=/[^\\u0000-\\u00ff]/;k.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
|
|
6
6
|
`);for(var i="",o=0;o<e*r;++o)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 s=0,a="",o=0;o<t.value.length;++o)t.value[o]!==void 0&&(s+=1,a+=k.prettyPrint(t.value[o],e+1,r),o+1<t.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",t.type===k.Type.OID){var c=k.derToOid(t.value);n+=c,dt.pki&&dt.pki.oids&&c in dt.pki.oids&&(n+=" ("+dt.pki.oids[c]+") ")}if(t.type===k.Type.INTEGER)try{n+=k.derToInteger(t.value)}catch{n+="0x"+dt.util.bytesToHex(t.value)}else if(t.type===k.Type.BITSTRING){if(t.value.length>1?n+="0x"+dt.util.bytesToHex(t.value.slice(1)):n+="(none)",t.value.length>0){var f=t.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(t.type===k.Type.OCTETSTRING)Qa.test(t.value)||(n+="("+t.value+") "),n+="0x"+dt.util.bytesToHex(t.value);else if(t.type===k.Type.UTF8)try{n+=dt.util.decodeUtf8(t.value)}catch(u){if(u.message==="URI malformed")n+="0x"+dt.util.bytesToHex(t.value)+" (malformed UTF8)";else throw u}else t.type===k.Type.PRINTABLESTRING||t.type===k.Type.IA5String?n+=t.value:Qa.test(t.value)?n+="0x"+dt.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var Eo=ut((Ex,Ja)=>{var Dt=ct();It();Ja.exports=Dt.cipher=Dt.cipher||{};Dt.cipher.algorithms=Dt.cipher.algorithms||{};Dt.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Dt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Dt.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Dt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Dt.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Dt.cipher.algorithms[t]=e};Dt.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Dt.cipher.algorithms?Dt.cipher.algorithms[t]:null};var wo=Dt.cipher.BlockCipher=function(t){this.algorithm=t.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=t.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=t.decrypt,this.algorithm.initialize(t)};wo.prototype.start=function(t){t=t||{};var e={};for(var r in t)e[r]=t[r];e.decrypt=this._decrypt,this._finish=!1,this._input=Dt.util.createBuffer(),this.output=t.output||Dt.util.createBuffer(),this.mode.start(e)};wo.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()};wo.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 Bo=ut((Sx,ja)=>{var Pt=ct();It();Pt.cipher=Pt.cipher||{};var Z=ja.exports=Pt.cipher.modes=Pt.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=Fn(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=Pt.util.createBuffer(),this._partialBytes=0};Z.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Fn(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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>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),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>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),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!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=Pt.util.createBuffer(),this._partialBytes=0};Z.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Fn(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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>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),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!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=Pt.util.createBuffer(),this._partialBytes=0};Z.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Fn(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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}qn(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=Pt.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=Pt.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=Pt.util.createBuffer(t.additionalData):r=Pt.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=Pt.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(So(n*8)))}this._inBlock=this._j0.slice(0),qn(this._inBlock),this._partialBytes=0,r=Pt.util.createBuffer(r),this._aDataLength=So(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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.read-=this.blockSize,e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),qn(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),qn(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=Pt.util.createBuffer();var n=this._aDataLength.concat(So(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),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 o=t[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};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,o=this._m[r][i];e[0]^=o[0],e[1]^=o[1],e[2]^=o[2],e[3]^=o[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,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,f=(n-1-s%n)*e;a[c]=1<<e-1<<f,o[s]=this.generateSubHashTable(this.multiply(a,t),e)}return o};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 o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var f=i[o^n];i[o]=[t[0]^f[0],t[1]^f[1],t[2]^f[2],t[3]^f[3]]}return i};function Fn(t,e){if(typeof t=="string"&&(t=Pt.util.createBuffer(t)),Pt.util.isArray(t)&&t.length>4){var r=t;t=Pt.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(!Pt.util.isArray(t)){for(var i=[],o=e/4,n=0;n<o;++n)i.push(t.getInt32());t=i}return t}function qn(t){t[t.length-1]=t[t.length-1]+1&4294967295}function So(t){return[t/4294967296|0,t&4294967295]}});var To=ut((Bx,n0)=>{var ht=ct();Eo();Bo();It();n0.exports=ht.aes=ht.aes||{};ht.aes.startEncrypting=function(t,e,r,n){var i=Hn({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};ht.aes.createEncryptionCipher=function(t,e){return Hn({key:t,output:null,decrypt:!1,mode:e})};ht.aes.startDecrypting=function(t,e,r,n){var i=Hn({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};ht.aes.createDecryptionCipher=function(t,e){return Hn({key:t,output:null,decrypt:!0,mode:e})};ht.aes.Algorithm=function(t,e){Co||e0();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return Io(r._w,n,i,!1)},decrypt:function(n,i){return Io(r._w,n,i,!0)}}}),r._init=!1};ht.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=ht.util.createBuffer(e);else if(ht.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=ht.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!ht.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(!ht.util.isArray(e)||!(e.length===4||e.length===6||e.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=r0(e,t.decrypt&&!s),this._init=!0}};ht.aes._expandKey=function(t,e){return Co||e0(),r0(t,e)};ht.aes._updateBlock=Io;Or("AES-ECB",ht.cipher.modes.ecb);Or("AES-CBC",ht.cipher.modes.cbc);Or("AES-CFB",ht.cipher.modes.cfb);Or("AES-OFB",ht.cipher.modes.ofb);Or("AES-CTR",ht.cipher.modes.ctr);Or("AES-GCM",ht.cipher.modes.gcm);function Or(t,e){var r=function(){return new ht.aes.Algorithm(t,e)};ht.cipher.registerAlgorithm(t,r)}var Co=!1,Ur=4,Wt,Ao,t0,hr,ce;function e0(){Co=!0,t0=[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;Wt=new Array(256),Ao=new Array(256),hr=new Array(4),ce=new Array(4);for(var e=0;e<4;++e)hr[e]=new Array(256),ce[e]=new Array(256);for(var r=0,n=0,i,o,s,a,c,f,u,e=0;e<256;++e){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Wt[r]=a,Ao[a]=r,c=t[a],i=t[r],o=t[i],s=t[o],f=c<<24^a<<16^a<<8^(a^c),u=(i^o^s)<<24^(r^s)<<16^(r^o^s)<<8^(r^i^s);for(var l=0;l<4;++l)hr[l][r]=f,ce[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=i^t[t[t[i^s]]],n^=t[t[n]])}}function r0(t,e){for(var r=t.slice(0),n,i=1,o=r.length,s=o+6+1,a=Ur*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Wt[n>>>16&255]<<24^Wt[n>>>8&255]<<16^Wt[n&255]<<8^Wt[n>>>24]^t0[i]<<24,i++):o>6&&c%o===4&&(n=Wt[n>>>24]<<24^Wt[n>>>16&255]<<16^Wt[n>>>8&255]<<8^Wt[n&255]),r[c]=r[c-o]^n;if(e){var f,u=ce[0],l=ce[1],h=ce[2],y=ce[3],d=r.slice(0);a=r.length;for(var c=0,p=a-Ur;c<a;c+=Ur,p-=Ur)if(c===0||c===a-Ur)d[c]=r[p],d[c+1]=r[p+3],d[c+2]=r[p+2],d[c+3]=r[p+1];else for(var g=0;g<Ur;++g)f=r[p+g],d[c+(3&-g)]=u[Wt[f>>>24]]^l[Wt[f>>>16&255]]^h[Wt[f>>>8&255]]^y[Wt[f&255]];r=d}return r}function Io(t,e,r,n){var i=t.length/4-1,o,s,a,c,f;n?(o=ce[0],s=ce[1],a=ce[2],c=ce[3],f=Ao):(o=hr[0],s=hr[1],a=hr[2],c=hr[3],f=Wt);var u,l,h,y,d,p,g;u=e[0]^t[0],l=e[n?3:1]^t[1],h=e[2]^t[2],y=e[n?1:3]^t[3];for(var m=3,w=1;w<i;++w)d=o[u>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[y&255]^t[++m],p=o[l>>>24]^s[h>>>16&255]^a[y>>>8&255]^c[u&255]^t[++m],g=o[h>>>24]^s[y>>>16&255]^a[u>>>8&255]^c[l&255]^t[++m],y=o[y>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[h&255]^t[++m],u=d,l=p,h=g;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[h>>>8&255]<<8^f[y&255]^t[++m],r[n?3:1]=f[l>>>24]<<24^f[h>>>16&255]<<16^f[y>>>8&255]<<8^f[u&255]^t[++m],r[2]=f[h>>>24]<<24^f[y>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^t[++m],r[n?1:3]=f[y>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[h&255]^t[++m]}function Hn(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=ht.cipher.createDecipher(r,t.key):n=ht.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof ht.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var s0=ut((Ax,o0)=>{var yt=ct();Eo();Bo();It();o0.exports=yt.des=yt.des||{};yt.des.startEncrypting=function(t,e,r,n){var i=zn({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};yt.des.createEncryptionCipher=function(t,e){return zn({key:t,output:null,decrypt:!1,mode:e})};yt.des.startDecrypting=function(t,e,r,n){var i=zn({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};yt.des.createDecryptionCipher=function(t,e){return zn({key:t,output:null,decrypt:!0,mode:e})};yt.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};yt.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=yt.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=Zl(e),this._init=!0}};ve("DES-ECB",yt.cipher.modes.ecb);ve("DES-CBC",yt.cipher.modes.cbc);ve("DES-CFB",yt.cipher.modes.cfb);ve("DES-OFB",yt.cipher.modes.ofb);ve("DES-CTR",yt.cipher.modes.ctr);ve("3DES-ECB",yt.cipher.modes.ecb);ve("3DES-CBC",yt.cipher.modes.cbc);ve("3DES-CFB",yt.cipher.modes.cfb);ve("3DES-OFB",yt.cipher.modes.ofb);ve("3DES-CTR",yt.cipher.modes.ctr);function ve(t,e){var r=function(){return new yt.des.Algorithm(t,e)};yt.cipher.registerAlgorithm(t,r)}var Fl=[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],ql=[-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],Hl=[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],zl=[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],Gl=[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],Wl=[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],Yl=[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],$l=[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 Zl(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],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],h=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],y=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],d=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=t.length()>8?3:1,g=[],m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],w=0,v,R=0;R<p;R++){var E=t.getInt32(),S=t.getInt32();v=(E>>>4^S)&252645135,S^=v,E^=v<<4,v=(S>>>-16^E)&65535,E^=v,S^=v<<-16,v=(E>>>2^S)&858993459,S^=v,E^=v<<2,v=(S>>>-16^E)&65535,E^=v,S^=v<<-16,v=(E>>>1^S)&1431655765,S^=v,E^=v<<1,v=(S>>>8^E)&16711935,E^=v,S^=v<<8,v=(E>>>1^S)&1431655765,S^=v,E^=v<<1,v=E<<8|S>>>20&240,E=S<<24|S<<8&16711680|S>>>8&65280|S>>>24&240,S=v;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]|o[E>>>12&15]|s[E>>>8&15]|a[E>>>4&15],z=c[S>>>28]|f[S>>>24&15]|u[S>>>20&15]|l[S>>>16&15]|h[S>>>12&15]|y[S>>>8&15]|d[S>>>4&15];v=(z>>>16^N)&65535,g[w++]=N^v,g[w++]=z^v<<16}}return g}function i0(t,e,r,n){var i=t.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=e[0],c=e[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var f=0;f<i;f+=3){for(var u=o[f+1],l=o[f+2],h=o[f];h!=u;h+=l){var y=c^t[h],d=(c>>>4|c<<28)^t[h+1];s=a,a=c,c=s^(ql[y>>>24&63]|zl[y>>>16&63]|Wl[y>>>8&63]|$l[y&63]|Fl[d>>>24&63]|Hl[d>>>16&63]|Gl[d>>>8&63]|Yl[d&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function zn(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=yt.cipher.createDecipher(r,t.key):n=yt.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof yt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var dr=ut((Ix,a0)=>{var Gn=ct();a0.exports=Gn.md=Gn.md||{};Gn.md.algorithms=Gn.md.algorithms||{}});var f0=ut((Cx,c0)=>{var Pe=ct();dr();It();var Ql=c0.exports=Pe.hmac=Pe.hmac||{};Ql.create=function(){var t=null,e=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in Pe.md.algorithms)e=Pe.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else e=o;if(s===null)s=t;else{if(typeof s=="string")s=Pe.util.createBuffer(s);else if(Pe.util.isArray(s)){var a=s;s=Pe.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var f=s.length();f>e.blockLength&&(e.start(),e.update(s.bytes()),s=e.digest()),r=Pe.util.createBuffer(),n=Pe.util.createBuffer(),f=s.length();for(var c=0;c<f;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(f<e.blockLength)for(var a=e.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);t=s,r=r.bytes(),n=n.bytes()}e.start(),e.update(r)},i.update=function(o){e.update(o)},i.getMac=function(){var o=e.digest().bytes();return e.start(),e.update(n),e.update(o),e.digest()},i.digest=i.getMac,i}});var Wn=ut(()=>{});var l0=ut((Rx,u0)=>{var Yt=ct();f0();dr();It();var Xl=Yt.pkcs5=Yt.pkcs5||{},ke;Yt.util.isNodejs&&!Yt.options.usePureJavaScript&&(ke=Wn());u0.exports=Yt.pbkdf2=Xl.pbkdf2=function(t,e,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Yt.util.isNodejs&&!Yt.options.usePureJavaScript&&ke.pbkdf2&&(i===null||typeof i!="object")&&(ke.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),o?ke.pbkdf2Sync.length===4?ke.pbkdf2(t,e,r,n,function(v,R){if(v)return o(v);o(null,R.toString("binary"))}):ke.pbkdf2(t,e,r,n,i,function(v,R){if(v)return o(v);o(null,R.toString("binary"))}):ke.pbkdf2Sync.length===4?ke.pbkdf2Sync(t,e,r,n).toString("binary"):ke.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Yt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Yt.md[i].create()}var s=i.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(o)return o(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=Yt.hmac.create();u.start(i,t);var l="",h,y,d;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(e),u.update(Yt.util.int32ToBytes(p)),h=d=u.digest().getBytes();for(var g=2;g<=r;++g)u.start(null,null),u.update(d),y=u.digest().getBytes(),h=Yt.util.xorBytes(h,y,s),d=y;l+=p<c?h:h.substr(0,f)}return l}var p=1,g;function m(){if(p>c)return o(null,l);u.start(null,null),u.update(e),u.update(Yt.util.int32ToBytes(p)),h=d=u.digest().getBytes(),g=2,w()}function w(){if(g<=r)return u.start(null,null),u.update(d),y=u.digest().getBytes(),h=Yt.util.xorBytes(h,y,s),d=y,++g,Yt.util.setImmediate(w);l+=p<c?h:h.substr(0,f),++p,m()}m()}});var p0=ut((Lx,d0)=>{var $n=ct();It();var h0=d0.exports=$n.pem=$n.pem||{};h0.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
|
|
8
|
+
`,t.composed){for(var s=0,a="",o=0;o<t.value.length;++o)t.value[o]!==void 0&&(s+=1,a+=k.prettyPrint(t.value[o],e+1,r),o+1<t.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",t.type===k.Type.OID){var c=k.derToOid(t.value);n+=c,dt.pki&&dt.pki.oids&&c in dt.pki.oids&&(n+=" ("+dt.pki.oids[c]+") ")}if(t.type===k.Type.INTEGER)try{n+=k.derToInteger(t.value)}catch{n+="0x"+dt.util.bytesToHex(t.value)}else if(t.type===k.Type.BITSTRING){if(t.value.length>1?n+="0x"+dt.util.bytesToHex(t.value.slice(1)):n+="(none)",t.value.length>0){var f=t.value.charCodeAt(0);f==1?n+=" (1 unused bit shown)":f>1&&(n+=" ("+f+" unused bits shown)")}}else if(t.type===k.Type.OCTETSTRING)Za.test(t.value)||(n+="("+t.value+") "),n+="0x"+dt.util.bytesToHex(t.value);else if(t.type===k.Type.UTF8)try{n+=dt.util.decodeUtf8(t.value)}catch(u){if(u.message==="URI malformed")n+="0x"+dt.util.bytesToHex(t.value)+" (malformed UTF8)";else throw u}else t.type===k.Type.PRINTABLESTRING||t.type===k.Type.IA5String?n+=t.value:Za.test(t.value)?n+="0x"+dt.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var wo=ut((Em,Xa)=>{var Dt=ct();It();Xa.exports=Dt.cipher=Dt.cipher||{};Dt.cipher.algorithms=Dt.cipher.algorithms||{};Dt.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Dt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Dt.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Dt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Dt.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Dt.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Dt.cipher.algorithms[t]=e};Dt.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Dt.cipher.algorithms?Dt.cipher.algorithms[t]:null};var vo=Dt.cipher.BlockCipher=function(t){this.algorithm=t.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=t.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=t.decrypt,this.algorithm.initialize(t)};vo.prototype.start=function(t){t=t||{};var e={};for(var r in t)e[r]=t[r];e.decrypt=this._decrypt,this._finish=!1,this._input=Dt.util.createBuffer(),this.output=t.output||Dt.util.createBuffer(),this.mode.start(e)};vo.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()};vo.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 So=ut((Sm,Ja)=>{var Pt=ct();It();Pt.cipher=Pt.cipher||{};var Z=Ja.exports=Pt.cipher.modes=Pt.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=Fn(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=Pt.util.createBuffer(),this._partialBytes=0};Z.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Fn(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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>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),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>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),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!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=Pt.util.createBuffer(),this._partialBytes=0};Z.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Fn(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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>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),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!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=Pt.util.createBuffer(),this._partialBytes=0};Z.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Fn(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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}qn(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=Pt.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=Pt.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=Pt.util.createBuffer(t.additionalData):r=Pt.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=Pt.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(Eo(n*8)))}this._inBlock=this._j0.slice(0),qn(this._inBlock),this._partialBytes=0,r=Pt.util.createBuffer(r),this._aDataLength=Eo(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 o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.read-=this.blockSize,e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),qn(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),qn(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=Pt.util.createBuffer();var n=this._aDataLength.concat(Eo(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),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 o=t[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};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,o=this._m[r][i];e[0]^=o[0],e[1]^=o[1],e[2]^=o[2],e[3]^=o[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,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,f=(n-1-s%n)*e;a[c]=1<<e-1<<f,o[s]=this.generateSubHashTable(this.multiply(a,t),e)}return o};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 o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var f=i[o^n];i[o]=[t[0]^f[0],t[1]^f[1],t[2]^f[2],t[3]^f[3]]}return i};function Fn(t,e){if(typeof t=="string"&&(t=Pt.util.createBuffer(t)),Pt.util.isArray(t)&&t.length>4){var r=t;t=Pt.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(!Pt.util.isArray(t)){for(var i=[],o=e/4,n=0;n<o;++n)i.push(t.getInt32());t=i}return t}function qn(t){t[t.length-1]=t[t.length-1]+1&4294967295}function Eo(t){return[t/4294967296|0,t&4294967295]}});var Co=ut((Bm,r0)=>{var ht=ct();wo();So();It();r0.exports=ht.aes=ht.aes||{};ht.aes.startEncrypting=function(t,e,r,n){var i=Hn({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};ht.aes.createEncryptionCipher=function(t,e){return Hn({key:t,output:null,decrypt:!1,mode:e})};ht.aes.startDecrypting=function(t,e,r,n){var i=Hn({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};ht.aes.createDecryptionCipher=function(t,e){return Hn({key:t,output:null,decrypt:!0,mode:e})};ht.aes.Algorithm=function(t,e){Io||t0();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return Ao(r._w,n,i,!1)},decrypt:function(n,i){return Ao(r._w,n,i,!0)}}}),r._init=!1};ht.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=ht.util.createBuffer(e);else if(ht.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=ht.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!ht.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(!ht.util.isArray(e)||!(e.length===4||e.length===6||e.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=e0(e,t.decrypt&&!s),this._init=!0}};ht.aes._expandKey=function(t,e){return Io||t0(),e0(t,e)};ht.aes._updateBlock=Ao;Or("AES-ECB",ht.cipher.modes.ecb);Or("AES-CBC",ht.cipher.modes.cbc);Or("AES-CFB",ht.cipher.modes.cfb);Or("AES-OFB",ht.cipher.modes.ofb);Or("AES-CTR",ht.cipher.modes.ctr);Or("AES-GCM",ht.cipher.modes.gcm);function Or(t,e){var r=function(){return new ht.aes.Algorithm(t,e)};ht.cipher.registerAlgorithm(t,r)}var Io=!1,Ur=4,Wt,Bo,ja,hr,ce;function t0(){Io=!0,ja=[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;Wt=new Array(256),Bo=new Array(256),hr=new Array(4),ce=new Array(4);for(var e=0;e<4;++e)hr[e]=new Array(256),ce[e]=new Array(256);for(var r=0,n=0,i,o,s,a,c,f,u,e=0;e<256;++e){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,Wt[r]=a,Bo[a]=r,c=t[a],i=t[r],o=t[i],s=t[o],f=c<<24^a<<16^a<<8^(a^c),u=(i^o^s)<<24^(r^s)<<16^(r^o^s)<<8^(r^i^s);for(var l=0;l<4;++l)hr[l][r]=f,ce[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=i^t[t[t[i^s]]],n^=t[t[n]])}}function e0(t,e){for(var r=t.slice(0),n,i=1,o=r.length,s=o+6+1,a=Ur*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=Wt[n>>>16&255]<<24^Wt[n>>>8&255]<<16^Wt[n&255]<<8^Wt[n>>>24]^ja[i]<<24,i++):o>6&&c%o===4&&(n=Wt[n>>>24]<<24^Wt[n>>>16&255]<<16^Wt[n>>>8&255]<<8^Wt[n&255]),r[c]=r[c-o]^n;if(e){var f,u=ce[0],l=ce[1],h=ce[2],y=ce[3],d=r.slice(0);a=r.length;for(var c=0,p=a-Ur;c<a;c+=Ur,p-=Ur)if(c===0||c===a-Ur)d[c]=r[p],d[c+1]=r[p+3],d[c+2]=r[p+2],d[c+3]=r[p+1];else for(var g=0;g<Ur;++g)f=r[p+g],d[c+(3&-g)]=u[Wt[f>>>24]]^l[Wt[f>>>16&255]]^h[Wt[f>>>8&255]]^y[Wt[f&255]];r=d}return r}function Ao(t,e,r,n){var i=t.length/4-1,o,s,a,c,f;n?(o=ce[0],s=ce[1],a=ce[2],c=ce[3],f=Bo):(o=hr[0],s=hr[1],a=hr[2],c=hr[3],f=Wt);var u,l,h,y,d,p,g;u=e[0]^t[0],l=e[n?3:1]^t[1],h=e[2]^t[2],y=e[n?1:3]^t[3];for(var x=3,w=1;w<i;++w)d=o[u>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[y&255]^t[++x],p=o[l>>>24]^s[h>>>16&255]^a[y>>>8&255]^c[u&255]^t[++x],g=o[h>>>24]^s[y>>>16&255]^a[u>>>8&255]^c[l&255]^t[++x],y=o[y>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[h&255]^t[++x],u=d,l=p,h=g;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[h>>>8&255]<<8^f[y&255]^t[++x],r[n?3:1]=f[l>>>24]<<24^f[h>>>16&255]<<16^f[y>>>8&255]<<8^f[u&255]^t[++x],r[2]=f[h>>>24]<<24^f[y>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^t[++x],r[n?1:3]=f[y>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[h&255]^t[++x]}function Hn(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=ht.cipher.createDecipher(r,t.key):n=ht.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof ht.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var o0=ut((Am,i0)=>{var yt=ct();wo();So();It();i0.exports=yt.des=yt.des||{};yt.des.startEncrypting=function(t,e,r,n){var i=zn({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};yt.des.createEncryptionCipher=function(t,e){return zn({key:t,output:null,decrypt:!1,mode:e})};yt.des.startDecrypting=function(t,e,r,n){var i=zn({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};yt.des.createDecryptionCipher=function(t,e){return zn({key:t,output:null,decrypt:!0,mode:e})};yt.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return n0(r._keys,n,i,!1)},decrypt:function(n,i){return n0(r._keys,n,i,!0)}}}),r._init=!1};yt.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=yt.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=$l(e),this._init=!0}};ve("DES-ECB",yt.cipher.modes.ecb);ve("DES-CBC",yt.cipher.modes.cbc);ve("DES-CFB",yt.cipher.modes.cfb);ve("DES-OFB",yt.cipher.modes.ofb);ve("DES-CTR",yt.cipher.modes.ctr);ve("3DES-ECB",yt.cipher.modes.ecb);ve("3DES-CBC",yt.cipher.modes.cbc);ve("3DES-CFB",yt.cipher.modes.cfb);ve("3DES-OFB",yt.cipher.modes.ofb);ve("3DES-CTR",yt.cipher.modes.ctr);function ve(t,e){var r=function(){return new yt.des.Algorithm(t,e)};yt.cipher.registerAlgorithm(t,r)}var Vl=[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],Fl=[-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],ql=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],Hl=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],zl=[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],Gl=[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],Wl=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],Yl=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];function $l(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],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],h=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],y=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],d=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=t.length()>8?3:1,g=[],x=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],w=0,v,R=0;R<p;R++){var E=t.getInt32(),S=t.getInt32();v=(E>>>4^S)&252645135,S^=v,E^=v<<4,v=(S>>>-16^E)&65535,E^=v,S^=v<<-16,v=(E>>>2^S)&858993459,S^=v,E^=v<<2,v=(S>>>-16^E)&65535,E^=v,S^=v<<-16,v=(E>>>1^S)&1431655765,S^=v,E^=v<<1,v=(S>>>8^E)&16711935,E^=v,S^=v<<8,v=(E>>>1^S)&1431655765,S^=v,E^=v<<1,v=E<<8|S>>>20&240,E=S<<24|S<<8&16711680|S>>>8&65280|S>>>24&240,S=v;for(var L=0;L<x.length;++L){x[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]|o[E>>>12&15]|s[E>>>8&15]|a[E>>>4&15],z=c[S>>>28]|f[S>>>24&15]|u[S>>>20&15]|l[S>>>16&15]|h[S>>>12&15]|y[S>>>8&15]|d[S>>>4&15];v=(z>>>16^N)&65535,g[w++]=N^v,g[w++]=z^v<<16}}return g}function n0(t,e,r,n){var i=t.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=e[0],c=e[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var f=0;f<i;f+=3){for(var u=o[f+1],l=o[f+2],h=o[f];h!=u;h+=l){var y=c^t[h],d=(c>>>4|c<<28)^t[h+1];s=a,a=c,c=s^(Fl[y>>>24&63]|Hl[y>>>16&63]|Gl[y>>>8&63]|Yl[y&63]|Vl[d>>>24&63]|ql[d>>>16&63]|zl[d>>>8&63]|Wl[d&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function zn(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=yt.cipher.createDecipher(r,t.key):n=yt.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof yt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var dr=ut((Im,s0)=>{var Gn=ct();s0.exports=Gn.md=Gn.md||{};Gn.md.algorithms=Gn.md.algorithms||{}});var c0=ut((Cm,a0)=>{var Pe=ct();dr();It();var Zl=a0.exports=Pe.hmac=Pe.hmac||{};Zl.create=function(){var t=null,e=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in Pe.md.algorithms)e=Pe.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else e=o;if(s===null)s=t;else{if(typeof s=="string")s=Pe.util.createBuffer(s);else if(Pe.util.isArray(s)){var a=s;s=Pe.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var f=s.length();f>e.blockLength&&(e.start(),e.update(s.bytes()),s=e.digest()),r=Pe.util.createBuffer(),n=Pe.util.createBuffer(),f=s.length();for(var c=0;c<f;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(f<e.blockLength)for(var a=e.blockLength-f,c=0;c<a;++c)r.putByte(54),n.putByte(92);t=s,r=r.bytes(),n=n.bytes()}e.start(),e.update(r)},i.update=function(o){e.update(o)},i.getMac=function(){var o=e.digest().bytes();return e.start(),e.update(n),e.update(o),e.digest()},i.digest=i.getMac,i}});var Wn=ut(()=>{});var u0=ut((Rm,f0)=>{var Yt=ct();c0();dr();It();var Ql=Yt.pkcs5=Yt.pkcs5||{},ke;Yt.util.isNodejs&&!Yt.options.usePureJavaScript&&(ke=Wn());f0.exports=Yt.pbkdf2=Ql.pbkdf2=function(t,e,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),Yt.util.isNodejs&&!Yt.options.usePureJavaScript&&ke.pbkdf2&&(i===null||typeof i!="object")&&(ke.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),o?ke.pbkdf2Sync.length===4?ke.pbkdf2(t,e,r,n,function(v,R){if(v)return o(v);o(null,R.toString("binary"))}):ke.pbkdf2(t,e,r,n,i,function(v,R){if(v)return o(v);o(null,R.toString("binary"))}):ke.pbkdf2Sync.length===4?ke.pbkdf2Sync(t,e,r,n).toString("binary"):ke.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in Yt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=Yt.md[i].create()}var s=i.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(o)return o(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=Yt.hmac.create();u.start(i,t);var l="",h,y,d;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(e),u.update(Yt.util.int32ToBytes(p)),h=d=u.digest().getBytes();for(var g=2;g<=r;++g)u.start(null,null),u.update(d),y=u.digest().getBytes(),h=Yt.util.xorBytes(h,y,s),d=y;l+=p<c?h:h.substr(0,f)}return l}var p=1,g;function x(){if(p>c)return o(null,l);u.start(null,null),u.update(e),u.update(Yt.util.int32ToBytes(p)),h=d=u.digest().getBytes(),g=2,w()}function w(){if(g<=r)return u.start(null,null),u.update(d),y=u.digest().getBytes(),h=Yt.util.xorBytes(h,y,s),d=y,++g,Yt.util.setImmediate(w);l+=p<c?h:h.substr(0,f),++p,x()}x()}});var d0=ut((Lm,h0)=>{var $n=ct();It();var l0=h0.exports=$n.pem=$n.pem||{};l0.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+=Yn(n)),t.contentDomain&&(n={name:"Content-Domain",values:[t.contentDomain]},r+=Yn(n)),t.dekInfo&&(n={name:"DEK-Info",values:[t.dekInfo.algorithm]},t.dekInfo.parameters&&n.values.push(t.dekInfo.parameters),r+=Yn(n)),t.headers)for(var i=0;i<t.headers.length;++i)r+=Yn(t.headers[i]);return t.procType&&(r+=`\r
|
|
10
10
|
`),r+=$n.util.encode64(t.body,e.maxline||64)+`\r
|
|
11
11
|
`,r+="-----END "+t.type+`-----\r
|
|
12
|
-
`,r};
|
|
12
|
+
`,r};l0.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/,o;o=r.exec(t),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:$n.util.decode64(o[3])};if(e.push(a),!!o[2]){for(var c=o[2].split(i),f=0;o&&f<c.length;){for(var u=c[f].replace(/\s+$/,""),l=f+1;l<c.length;++l){var h=c[l];if(!/\s/.test(h[0]))break;u+=h,f=l}if(o=u.match(n),o){for(var y={name:o[1],values:[]},d=o[2].split(","),p=0;p<d.length;++p)y.values.push(Xl(d[p]));if(a.procType)if(!a.contentDomain&&y.name==="Content-Domain")a.contentDomain=d[0]||"";else if(!a.dekInfo&&y.name==="DEK-Info"){if(y.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:d[0],parameters:d[1]||null}}else a.headers.push(y);else{if(y.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(y.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:d[0],type:d[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(e.length===0)throw new Error("Invalid PEM formatted message.");return e};function Yn(t){for(var e=t.name+": ",r=[],n=function(c,f){return" "+f},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 o=0,s=-1,i=0;i<e.length;++i,++o)if(o>65&&s!==-1){var a=e[s];a===","?(++s,e=e.substr(0,s)+`\r
|
|
14
14
|
`+e.substr(s)):e=e.substr(0,s)+`\r
|
|
15
|
-
`+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function Jl(t){return t.replace(/^\s+/,"")}});var v0=ut((Nx,b0)=>{var we=ct();dr();It();var g0=b0.exports=we.sha256=we.sha256||{};we.md.sha256=we.md.algorithms.sha256=g0;g0.create=function(){x0||jl();var t=null,e=we.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=we.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,o){o==="utf8"&&(i=we.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),y0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=we.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(_o.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};y0(l,r,i);var h=we.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var _o=null,x0=!1,m0=null;function jl(){_o="\x80",_o+=we.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],x0=!0}function y0(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,m,w=r.length();w>=64;){for(f=0;f<16;++f)e[f]=r.getInt32();for(;f<64;++f)n=e[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[f]=n+e[f-7]+i+e[f-16]|0;for(u=t.h0,l=t.h1,h=t.h2,y=t.h3,d=t.h4,p=t.h5,g=t.h6,m=t.h7,f=0;f<64;++f)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=g^d&(p^g),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|h&(u^l),n=m+s+a+m0[f]+e[f],i=o+c,m=g,g=p,p=d,d=y+n>>>0,y=h,h=l,l=u,u=n+i>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+y|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+g|0,t.h7=t.h7+m|0,w-=64}}});var E0=ut((Dx,w0)=>{var Ee=ct();It();var Zn=null;Ee.util.isNodejs&&!Ee.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Zn=Wn());var th=w0.exports=Ee.prng=Ee.prng||{};th.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(f,u){if(!u)return e.generateSync(f);var l=e.plugin.cipher,h=e.plugin.increment,y=e.plugin.formatKey,d=e.plugin.formatSeed,p=Ee.util.createBuffer();e.key=null,g();function g(m){if(m)return u(m);if(p.length()>=f)return u(null,p.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return Ee.util.nextTick(function(){o(g)});var w=l(e.key,e.seed);e.generated+=w.length,p.putBytes(w),e.key=y(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Ee.util.setImmediate(g)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,y=e.plugin.formatSeed;e.key=null;for(var d=Ee.util.createBuffer();d.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=u(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(u(e.key,l(e.seed))),e.seed=y(u(e.key,e.seed))}return d.getBytes(f)};function o(f){if(e.pools[0].messageLength>=32)return a(),f();var u=32-e.pools[0].messageLength<<5;e.seedFile(u,function(l,h){if(l)return f(l);e.collect(h),a(),f()})}function s(){if(e.pools[0].messageLength>=32)return a();var f=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(f)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var f=e.plugin.md.create();f.update(e.keyBytes);for(var u=1,l=0;l<32;++l)e.reseeds%u===0&&(f.update(e.pools[l].digest().getBytes()),e.pools[l].start()),u=u<<1;e.keyBytes=f.digest().getBytes(),f.start(),f.update(e.keyBytes);var h=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(f){var u=null,l=Ee.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(E){return h.getRandomValues(E)});var y=Ee.util.createBuffer();if(u)for(;y.length()<f;){var d=Math.max(1,Math.min(f-y.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{u(p);for(var g=0;g<p.length;++g)y.putInt32(p[g])}catch(E){if(!(typeof QuotaExceededError<"u"&&E instanceof QuotaExceededError))throw E}}if(y.length()<f)for(var m,w,v,R=Math.floor(Math.random()*65536);y.length()<f;){w=16807*(R&65535),m=16807*(R>>16),w+=(m&32767)<<16,w+=m>>15,w=(w&2147483647)+(w>>31),R=w&4294967295;for(var g=0;g<3;++g)v=R>>>(g<<3),v^=Math.floor(Math.random()*256),y.putByte(v&255)}return y.getBytes(f)}return Zn?(e.seedFile=function(f,u){Zn.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},e.seedFileSync=function(f){return Zn.randomBytes(f).toString()}):(e.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},e.seedFileSync=c),e.collect=function(f){for(var u=f.length,l=0;l<u;++l)e.pools[e.pool].update(f.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(f,u){for(var l="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,h){function y(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",y),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",y),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var h=l.data;h.forge&&h.forge.prng&&e.seedFile(h.forge.prng.needed,function(y,d){f.postMessage({forge:{prng:{err:y,bytes:d}}})})};f.addEventListener("message",u)}},e}});var hn=ut((Px,Ro)=>{var kt=ct();To();v0();E0();It();(function(){if(kt.random&&kt.random.getBytes){Ro.exports=kt.random;return}(function(t){var e={},r=new Array(4),n=kt.util.createBuffer();e.formatKey=function(l){var h=kt.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),kt.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=kt.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return kt.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=kt.md.sha256;function i(){var l=kt.prng.create(e);return l.getBytes=function(h,y){return l.generate(h,y)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),kt.options.usePureJavaScript||!kt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!kt.random)kt.random=o;else for(var u in o)kt.random[u]=o[u];kt.random.createInstance=i,Ro.exports=kt.random})(typeof jQuery<"u"?jQuery:null)})()});var I0=ut((kx,A0)=>{var $t=ct();It();var Lo=[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],S0=[1,2,3,5],eh=function(t,e){return t<<e&65535|(t&65535)>>16-e},rh=function(t,e){return(t&65535)>>e|t<<16-e&65535};A0.exports=$t.rc2=$t.rc2||{};$t.rc2.expandKey=function(t,e){typeof t=="string"&&(t=$t.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(Lo[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Lo[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Lo[r.at(a+1)^r.at(a+o)]);return r};var B0=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(t=$t.rc2.expandKey(t,e),f=0;f<64;f++)l.push(t.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=eh(d[f],S0[f]),u++},c=function(d){for(f=0;f<4;f++)d[f]+=l[d[(f+3)%4]&63]}):(a=function(d){for(f=3;f>=0;f--)d[f]=rh(d[f],S0[f]),d[f]-=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),u--},c=function(d){for(f=3;f>=0;f--)d[f]-=l[d[(f+3)%4]&63]});var h=function(d){var p=[];for(f=0;f<4;f++){var g=i.getInt16Le();s!==null&&(r?g^=s.getInt16Le():s.putInt16Le(g)),p.push(g&65535)}u=r?0:63;for(var m=0;m<d.length;m++)for(var w=0;w<d[m][0];w++)d[m][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},y=null;return y={start:function(d,p){d&&typeof d=="string"&&(d=$t.util.createBuffer(d)),n=!1,i=$t.util.createBuffer(),o=p||new $t.util.createBuffer,s=d,y.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var g=i.length()===8?8:8-i.length();i.fillWithByte(g,g)}if(p&&(n=!0,y.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),w=o.at(m-1);w>m?p=!1:o.truncate(w)}return p}},y};$t.rc2.startEncrypting=function(t,e,r){var n=$t.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};$t.rc2.createEncryptionCipher=function(t,e){return B0(t,e,!0)};$t.rc2.startDecrypting=function(t,e,r){var n=$t.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};$t.rc2.createDecryptionCipher=function(t,e){return B0(t,e,!1)}});var Jn=ut((Ux,P0)=>{var No=ct();P0.exports=No.jsbn=No.jsbn||{};var Ue,nh=0xdeadbeefcafe,C0=(nh&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))}No.jsbn.BigInteger=I;function tt(){return new I(null)}function ih(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function oh(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,f=this.data[t++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function T0(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,f=this.data[t++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(I.prototype.am=T0,Ue=28):C0&&navigator.appName=="Microsoft Internet Explorer"?(I.prototype.am=oh,Ue=30):C0&&navigator.appName!="Netscape"?(I.prototype.am=ih,Ue=26):(I.prototype.am=T0,Ue=28);I.prototype.DB=Ue;I.prototype.DM=(1<<Ue)-1;I.prototype.DV=1<<Ue;var Do=52;I.prototype.FV=Math.pow(2,Do);I.prototype.F1=Do-Ue;I.prototype.F2=2*Ue-Do;var sh="0123456789abcdefghijklmnopqrstuvwxyz",Qn=new Array,Kr,te;Kr=48;for(te=0;te<=9;++te)Qn[Kr++]=te;Kr=97;for(te=10;te<36;++te)Qn[Kr++]=te;Kr=65;for(te=10;te<36;++te)Qn[Kr++]=te;function _0(t){return sh.charAt(t)}function R0(t,e){var r=Qn[t.charCodeAt(e)];return r??-1}function ah(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 ch(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 Xe(t){var e=tt();return e.fromInt(t),e}function fh(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,o=0;--n>=0;){var s=r==8?t[n]&255:R0(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&I.ZERO.subTo(this,this)}function uh(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function lh(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,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=_0(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=_0(n));return i?o:"0"}function hh(){var t=tt();return I.ZERO.subTo(this,t),t}function dh(){return this.s<0?this.negate():this}function ph(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 Xn(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 yh(){return this.t<=0?0:this.DB*(this.t-1)+Xn(this.data[this.t-1]^this.s&this.DM)}function gh(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 xh(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 mh(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function bh(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,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function vh(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 wh(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 Eh(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 Sh(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=tt());var o=tt(),s=this.s,a=t.s,c=this.DB-Xn(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,y=(1<<this.F1)/l,d=1<<this.F2,p=r.t,g=p-f,m=e??tt();for(o.dlShiftTo(g,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),I.ONE.dlShiftTo(f,m),m.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--g>=0;){var w=r.data[--p]==u?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*y);if((r.data[p]+=o.am(0,w,r,g,0,f))<w)for(o.dlShiftTo(g,m),r.subTo(m,r);r.data[p]<--w;)r.subTo(m,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&I.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&I.ZERO.subTo(r,r)}}}function Bh(t){var e=tt();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(I.ZERO)>0&&t.subTo(e,e),e}function pr(t){this.m=t}function Ah(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function Ih(t){return t}function Ch(t){t.divRemTo(this.m,null,t)}function Th(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function _h(t,e){t.squareTo(e),this.reduce(e)}pr.prototype.convert=Ah;pr.prototype.revert=Ih;pr.prototype.reduce=Ch;pr.prototype.mulTo=Th;pr.prototype.sqrTo=_h;function Rh(){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 yr(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 Lh(t){var e=tt();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(I.ZERO)>0&&this.m.subTo(e,e),e}function Nh(t){var e=tt();return t.copyTo(e),this.reduce(e),e}function Dh(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 Ph(t,e){t.squareTo(e),this.reduce(e)}function kh(t,e,r){t.multiplyTo(e,r),this.reduce(r)}yr.prototype.convert=Lh;yr.prototype.revert=Nh;yr.prototype.reduce=Dh;yr.prototype.mulTo=kh;yr.prototype.sqrTo=Ph;function Uh(){return(this.t>0?this.data[0]&1:this.s)==0}function Oh(t,e){if(t>4294967295||t<1)return I.ONE;var r=tt(),n=tt(),i=e.convert(this),o=Xn(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function Kh(t,e){var r;return t<256||e.isEven()?r=new pr(e):r=new yr(e),this.exp(t,r)}I.prototype.copyTo=ah;I.prototype.fromInt=ch;I.prototype.fromString=fh;I.prototype.clamp=uh;I.prototype.dlShiftTo=gh;I.prototype.drShiftTo=xh;I.prototype.lShiftTo=mh;I.prototype.rShiftTo=bh;I.prototype.subTo=vh;I.prototype.multiplyTo=wh;I.prototype.squareTo=Eh;I.prototype.divRemTo=Sh;I.prototype.invDigit=Rh;I.prototype.isEven=Uh;I.prototype.exp=Oh;I.prototype.toString=lh;I.prototype.negate=hh;I.prototype.abs=dh;I.prototype.compareTo=ph;I.prototype.bitLength=yh;I.prototype.mod=Bh;I.prototype.modPowInt=Kh;I.ZERO=Xe(0);I.ONE=Xe(1);function Mh(){var t=tt();return this.copyTo(t),t}function Vh(){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 Fh(){return this.t==0?this.s:this.data[0]<<24>>24}function qh(){return this.t==0?this.s:this.data[0]<<16>>16}function Hh(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function zh(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Gh(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=Xe(r),i=tt(),o=tt(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Wh(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=R0(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&I.ZERO.subTo(this,this)}function Yh(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),Po,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 $h(){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 Zh(t){return this.compareTo(t)==0}function Qh(t){return this.compareTo(t)<0?this:t}function Xh(t){return this.compareTo(t)>0?this:t}function Jh(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;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 jh(t,e){return t&e}function td(t){var e=tt();return this.bitwiseTo(t,jh,e),e}function Po(t,e){return t|e}function ed(t){var e=tt();return this.bitwiseTo(t,Po,e),e}function L0(t,e){return t^e}function rd(t){var e=tt();return this.bitwiseTo(t,L0,e),e}function N0(t,e){return t&~e}function nd(t){var e=tt();return this.bitwiseTo(t,N0,e),e}function id(){for(var t=tt(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function od(t){var e=tt();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function sd(t){var e=tt();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function ad(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 cd(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+ad(this.data[t]);return this.s<0?this.t*this.DB:-1}function fd(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function ud(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=fd(this.data[r]^e);return t}function ld(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function hd(t,e){var r=I.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function dd(t){return this.changeBit(t,Po)}function pd(t){return this.changeBit(t,N0)}function yd(t){return this.changeBit(t,L0)}function gd(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 xd(t){var e=tt();return this.addTo(t,e),e}function md(t){var e=tt();return this.subTo(t,e),e}function bd(t){var e=tt();return this.multiplyTo(t,e),e}function vd(t){var e=tt();return this.divRemTo(t,e,null),e}function wd(t){var e=tt();return this.divRemTo(t,null,e),e}function Ed(t){var e=tt(),r=tt();return this.divRemTo(t,e,r),new Array(e,r)}function Sd(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function Bd(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 dn(){}function D0(t){return t}function Ad(t,e,r){t.multiplyTo(e,r)}function Id(t,e){t.squareTo(e)}dn.prototype.convert=D0;dn.prototype.revert=D0;dn.prototype.mulTo=Ad;dn.prototype.sqrTo=Id;function Cd(t){return this.exp(t,new dn)}function Td(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 _d(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 Mr(t){this.r2=tt(),this.q3=tt(),I.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function Rd(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=tt();return t.copyTo(e),this.reduce(e),e}function Ld(t){return t}function Nd(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 Dd(t,e){t.squareTo(e),this.reduce(e)}function Pd(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Mr.prototype.convert=Rd;Mr.prototype.revert=Ld;Mr.prototype.reduce=Nd;Mr.prototype.mulTo=Pd;Mr.prototype.sqrTo=Dd;function kd(t,e){var r=t.bitLength(),n,i=Xe(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new pr(e):e.isEven()?o=new Mr(e):o=new yr(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=tt();for(o.sqrTo(s[1],u);a<=f;)s[a]=tt(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,h,y=!0,d=tt(),p;for(r=Xn(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&f:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),y)s[h].copyTo(i),y=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function Ud(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(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,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 o>0&&r.lShiftTo(o,r),r}function Od(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 Kd(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return I.ZERO;for(var r=t.clone(),n=this.clone(),i=Xe(1),o=Xe(0),s=Xe(0),a=Xe(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,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 fe=[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],Md=(1<<26)/fe[fe.length-1];function Vd(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=fe[fe.length-1]){for(e=0;e<fe.length;++e)if(r.data[0]==fe[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<fe.length;){for(var n=fe[e],i=e+1;i<fe.length&&n<Md;)n*=fe[i++];for(n=r.modInt(n);e<i;)if(n%fe[e++]==0)return!1}return r.millerRabin(t)}function Fd(t){var e=this.subtract(I.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=qd(),o,s=0;s<t;++s){do o=new I(this.bitLength(),i);while(o.compareTo(I.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(I.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<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 qd(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}I.prototype.chunkSize=Hh;I.prototype.toRadix=Gh;I.prototype.fromRadix=Wh;I.prototype.fromNumber=Yh;I.prototype.bitwiseTo=Jh;I.prototype.changeBit=hd;I.prototype.addTo=gd;I.prototype.dMultiply=Sd;I.prototype.dAddOffset=Bd;I.prototype.multiplyLowerTo=Td;I.prototype.multiplyUpperTo=_d;I.prototype.modInt=Od;I.prototype.millerRabin=Fd;I.prototype.clone=Mh;I.prototype.intValue=Vh;I.prototype.byteValue=Fh;I.prototype.shortValue=qh;I.prototype.signum=zh;I.prototype.toByteArray=$h;I.prototype.equals=Zh;I.prototype.min=Qh;I.prototype.max=Xh;I.prototype.and=td;I.prototype.or=ed;I.prototype.xor=rd;I.prototype.andNot=nd;I.prototype.not=id;I.prototype.shiftLeft=od;I.prototype.shiftRight=sd;I.prototype.getLowestSetBit=cd;I.prototype.bitCount=ud;I.prototype.testBit=ld;I.prototype.setBit=dd;I.prototype.clearBit=pd;I.prototype.flipBit=yd;I.prototype.add=xd;I.prototype.subtract=md;I.prototype.multiply=bd;I.prototype.divide=vd;I.prototype.remainder=wd;I.prototype.divideAndRemainder=Ed;I.prototype.modPow=kd;I.prototype.modInverse=Kd;I.prototype.pow=Cd;I.prototype.gcd=Ud;I.prototype.isProbablePrime=Vd});var M0=ut((Ox,K0)=>{var Se=ct();dr();It();var U0=K0.exports=Se.sha1=Se.sha1||{};Se.md.sha1=Se.md.algorithms.sha1=U0;U0.create=function(){O0||Hd();var t=null,e=Se.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Se.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Se.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),k0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Se.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(ko.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};k0(l,r,i);var h=Se.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var ko=null,O0=!1;function Hd(){ko="\x80",ko+=Se.util.fillString("\0",64),O0=!0}function k0(t,e,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,u=0;u<16;++u)n=r.getInt32(),e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var q0=ut((Kx,F0)=>{var Be=ct();It();hn();M0();var V0=F0.exports=Be.pkcs1=Be.pkcs1||{};V0.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Be.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=e.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",h=c-e.length,y=0;y<h;y++)l+="\0";var d=u.getBytes()+l+""+e;if(!i)i=Be.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=i.length,f.digestLength=o.digestLength,f}var p=jn(i,a-o.digestLength-1,s),g=Be.util.xorBytes(d,p,d.length),m=jn(g,o.digestLength,s),w=Be.util.xorBytes(i,m,i.length);return"\0"+w+g};V0.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var g=new Error("RSAES-OAEP encoded message length is invalid.");throw g.length=e.length,g.expectedLength=s,g}if(i===void 0?i=Be.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),f=e.substring(1,i.digestLength+1),u=e.substring(1+i.digestLength),l=jn(u,i.digestLength,o),h=Be.util.xorBytes(f,l,f.length),y=jn(h,s-i.digestLength-1,o),d=Be.util.xorBytes(u,y,u.length),p=d.substring(0,i.digestLength),g=c!=="\0",m=0;m<i.digestLength;++m)g|=a.charAt(m)!==p.charAt(m);for(var w=1,v=i.digestLength,R=i.digestLength;R<d.length;R++){var E=d.charCodeAt(R),S=E&1^1,L=w?65534:0;g|=E&L,w=w&S,v+=w}if(g||d.charCodeAt(v)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(v+1)};function jn(t,e,r){r||(r=Be.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var H0=ut((Mx,Uo)=>{var Je=ct();It();Jn();hn();(function(){if(Je.prime){Uo.exports=Je.prime;return}var t=Uo.exports=Je.prime=Je.prime||{},e=Je.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,y){typeof h=="function"&&(y=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||Je.random,g={nextBytes:function(m){for(var w=p.getBytesSync(m.length),v=0;v<m.length;++v)m[v]=w.charCodeAt(v)}};if(d.name==="PRIMEINC")return o(l,g,d.options,y);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,y,d){return"workers"in y?c(l,h,y,d):s(l,h,y,d)}function s(l,h,y,d){var p=f(l,h),g=0,m=u(p.bitLength());"millerRabinTests"in y&&(m=y.millerRabinTests);var w=10;"maxBlockTime"in y&&(w=y.maxBlockTime),a(p,l,h,g,m,w,d)}function a(l,h,y,d,p,g,m){var w=+new Date;do{if(l.bitLength()>h&&(l=f(h,y)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(g<0||+new Date-w<g);Je.util.setImmediate(function(){a(l,h,y,d,p,g,m)})}function c(l,h,y,d){if(typeof Worker>"u")return s(l,h,y,d);var p=f(l,h),g=y.workers,m=y.workLoad||100,w=m*30/8,v=y.workerScript||"forge/prime.worker.js";if(g===-1)return Je.util.estimateCores(function(E,S){E&&(S=2),g=S-1,R()});R();function R(){g=Math.max(1,g);for(var E=[],S=0;S<g;++S)E[S]=new Worker(v);for(var L=g,S=0;S<g;++S)E[S].addEventListener("message",z);var N=!1;function z(H){if(!N){--L;var V=H.data;if(V.found){for(var Q=0;Q<E.length;++Q)E[Q].terminate();return N=!0,d(null,new e(V.prime,16))}p.bitLength()>l&&(p=f(l,h));var at=p.toString(16);H.target.postMessage({hex:at,workLoad:m}),p.dAddOffset(w,0)}}}}function f(l,h){var y=new e(l,h),d=l-1;return y.testBit(d)||y.bitwiseTo(e.ONE.shiftLeft(d),i,y),y.dAddOffset(31-y.mod(n).byteValue(),0),y}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var ei=ut((Vx,Q0)=>{var M=ct();ln();Jn();Mn();q0();H0();hn();It();typeof j>"u"&&(j=M.jsbn.BigInteger);var j,Oo=M.util.isNodejs?Wn():null,b=M.asn1,ee=M.util;M.pki=M.pki||{};Q0.exports=M.pki.rsa=M.rsa=M.rsa||{};var G=M.pki,zd=[6,4,2,4,2,4,6,2],Gd={name:"PrivateKeyInfo",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",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:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:b.Class.UNIVERSAL,type:b.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Wd={name:"RSAPrivateKey",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Yd={name:"RSAPublicKey",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},$d=M.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",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:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:b.Class.UNIVERSAL,type:b.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Zd={name:"DigestInfo",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:b.Class.UNIVERSAL,type:b.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:b.Class.UNIVERSAL,type:b.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:b.Class.UNIVERSAL,type:b.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},Qd=function(t){var e;if(t.algorithm in G.oids)e=G.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=b.oidToDer(e).getBytes(),i=b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[]),o=b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[]);o.value.push(b.create(b.Class.UNIVERSAL,b.Type.OID,!1,n)),o.value.push(b.create(b.Class.UNIVERSAL,b.Type.NULL,!1,""));var s=b.create(b.Class.UNIVERSAL,b.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),b.toDer(i).getBytes()},$0=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(j.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(j.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new j(M.util.bytesToHex(M.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(j.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};G.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=Z0(t,e,r)):(i=M.util.createBuffer(),i.putBytes(t));for(var s=new j(i.toHex(),16),a=$0(s,e,n),c=a.toString(16),f=M.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(M.util.hexToBytes(c)),f.getBytes()};G.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new j(M.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=$0(s,e,r),c=a.toString(16),f=M.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(M.util.hexToBytes(c)),n!==!1?ti(f.getBytes(),e,r):f.getBytes()};G.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||M.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:t,rng:i,eInt:e||65537,e:new j(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};G.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new j(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,f=c-1;t.pqState===0?(t.num=new j(c,t.rng),t.num.testBit(f)||t.num.bitwiseTo(j.ONE.shiftLeft(f),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(Jd(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(zd[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(j.ONE),t.q1=t.q.subtract(j.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(j.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var u=t.e.modInverse(t.phi);t.keys={privateKey:G.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:G.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};G.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!M.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(z0("generateKeyPair"))return Oo.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:G.privateKeyFromPem(f),publicKey:G.publicKeyFromPem(c)})});if(G0("generateKey")&&G0("exportKey"))return ee.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Y0(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ee.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=G.privateKeyFromAsn1(b.fromDer(M.util.createBuffer(a)));n(null,{privateKey:c,publicKey:G.setRsaPublicKey(c.n,c.e)})}});if(W0("generateKey")&&W0("exportKey")){var i=ee.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Y0(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=ee.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=G.privateKeyFromAsn1(b.fromDer(M.util.createBuffer(l)));n(null,{privateKey:h,publicKey:G.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(z0("generateKeyPairSync")){var o=Oo.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:G.privateKeyFromPem(o.privateKey),publicKey:G.publicKeyFromPem(o.publicKey)}}}var s=G.rsa.createKeyPairGenerationState(t,e,r);if(!n)return G.rsa.stepKeyPairGenerationState(s,0),s.keys;Xd(s,r,n)};G.setRsaPublicKey=G.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return Z0(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return M.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return G.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=ti(f,r,!0);var u=b.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!b.validate(u,Zd,l,h)){var y=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw y.errors=h,y}var d=b.derToOid(l.algorithmIdentifier);if(!(d===M.oids.md2||d===M.oids.md5||d===M.oids.sha1||d===M.oids.sha224||d===M.oids.sha256||d===M.oids.sha384||d===M.oids.sha512||d===M.oids["sha512-224"]||d===M.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=d,y}if((d===M.oids.md2||d===M.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=ti(f,r,!0),c===f}});var a=G.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};G.setRsaPrivateKey=G.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var h=G.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:ti};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(y,d){return M.pkcs1.decode_rsa_oaep(d,y,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(y){return y}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(h,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:Qd},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return G.rsa.encrypt(h,c,l)},c};G.wrapRsaPrivateKey=function(t){return b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,b.integerToDer(0).getBytes()),b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[b.create(b.Class.UNIVERSAL,b.Type.OID,!1,b.oidToDer(G.oids.rsaEncryption).getBytes()),b.create(b.Class.UNIVERSAL,b.Type.NULL,!1,"")]),b.create(b.Class.UNIVERSAL,b.Type.OCTETSTRING,!1,b.toDer(t).getBytes())])};G.privateKeyFromAsn1=function(t){var e={},r=[];if(b.validate(t,Gd,e,r)&&(t=b.fromDer(M.util.createBuffer(e.privateKey))),e={},r=[],!b.validate(t,Wd,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,o,s,a,c,f,u,l;return i=M.util.createBuffer(e.privateKeyModulus).toHex(),o=M.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=M.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=M.util.createBuffer(e.privateKeyPrime1).toHex(),c=M.util.createBuffer(e.privateKeyPrime2).toHex(),f=M.util.createBuffer(e.privateKeyExponent1).toHex(),u=M.util.createBuffer(e.privateKeyExponent2).toHex(),l=M.util.createBuffer(e.privateKeyCoefficient).toHex(),G.setRsaPrivateKey(new j(i,16),new j(o,16),new j(s,16),new j(a,16),new j(c,16),new j(f,16),new j(u,16),new j(l,16))};G.privateKeyToAsn1=G.privateKeyToRSAPrivateKey=function(t){return b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,b.integerToDer(0).getBytes()),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.n)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.e)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.d)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.p)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.q)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.dP)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.dQ)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.qInv))])};G.publicKeyFromAsn1=function(t){var e={},r=[];if(b.validate(t,$d,e,r)){var n=b.derToOid(e.publicKeyOid);if(n!==G.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!b.validate(t,Yd,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=M.util.createBuffer(e.publicKeyModulus).toHex(),s=M.util.createBuffer(e.publicKeyExponent).toHex();return G.setRsaPublicKey(new j(o,16),new j(s,16))};G.publicKeyToAsn1=G.publicKeyToSubjectPublicKeyInfo=function(t){return 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(G.oids.rsaEncryption).getBytes()),b.create(b.Class.UNIVERSAL,b.Type.NULL,!1,"")]),b.create(b.Class.UNIVERSAL,b.Type.BITSTRING,!1,[G.publicKeyToRSAPublicKey(t)])])};G.publicKeyToRSAPublicKey=function(t){return b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.n)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.e))])};function Z0(t,e,r){var n=M.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=M.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(t),n}function ti(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=M.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function Xd(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){M.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(t.q=c,t.p.compareTo(t.q)<0){var f=t.p;t.p=t.q,t.q=f}if(t.p.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)!==0){t.p=null,i();return}if(t.q.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(j.ONE),t.q1=t.q.subtract(j.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(j.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var u=t.e.modInverse(t.phi);t.keys={privateKey:G.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:G.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Ae(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=M.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 Jd(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 z0(t){return M.util.isNodejs&&typeof Oo[t]=="function"}function G0(t){return typeof ee.globalScope<"u"&&typeof ee.globalScope.crypto=="object"&&typeof ee.globalScope.crypto.subtle=="object"&&typeof ee.globalScope.crypto.subtle[t]=="function"}function W0(t){return typeof ee.globalScope<"u"&&typeof ee.globalScope.msCrypto=="object"&&typeof ee.globalScope.msCrypto.subtle=="object"&&typeof ee.globalScope.msCrypto.subtle[t]=="function"}function Y0(t){for(var e=M.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var rc=ut((Fx,ec)=>{var U=ct();To();ln();s0();dr();Mn();l0();p0();hn();I0();ei();It();typeof X0>"u"&&(X0=U.jsbn.BigInteger);var X0,B=U.asn1,W=U.pki=U.pki||{};ec.exports=W.pbe=U.pbe=U.pbe||{};var gr=W.oids,jd={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"}]},tp={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"}]}]},ep={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,o=B.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=gr["aes128-CBC"],l=U.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=gr["aes192-CBC"],l=U.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=gr["aes256-CBC"],l=U.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=gr.desCBC,l=U.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var y="hmacWith"+r.prfAlgorithm.toUpperCase(),d=tc(y),p=U.pkcs5.pbkdf2(e,n,i,s,d),g=U.random.getBytesSync(f),m=l(p);m.start(g),m.update(B.toDer(t)),m.finish(),c=m.output.getBytes();var w=rp(n,o,s,y);a=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(gr.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(gr.pkcs5PBKDF2).getBytes()),w]),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(u).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,g)])])])}else if(r.algorithm==="3des"){s=24;var v=new U.util.ByteBuffer(n),p=W.pbe.generatePkcs12Key(e,v,1,i,s),g=W.pbe.generatePkcs12Key(e,v,2,i,s),m=U.des.createEncryptionCipher(p);m.start(g),m.update(B.toDer(t)),m.finish(),c=m.output.getBytes(),a=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(gr["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,o.getBytes())])])}else{var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var R=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[a,B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,c)]);return R};W.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!B.validate(t,jd,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=B.derToOid(n.encryptionOid),a=W.pbe.getCipher(s,n.encryptionParams,e),c=U.util.createBuffer(n.encryptedData);return a.update(c),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,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=U.random.getBytesSync(8),a=U.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=U.random.getBytesSync(8),a=U.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=U.pbe.opensslDeriveBytes(e,o.substr(0,8),s),u=a(f);u.start(o),u.update(B.toDer(W.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:U.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return U.pem.encode(l)};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 o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=U.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=U.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=U.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=U.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=U.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return U.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return U.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return U.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=U.util.hexToBytes(n.dekInfo.parameters),c=U.pbe.opensslDeriveBytes(e,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(U.util.createBuffer(n.body)),f.finish())r=f.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,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in U.md))throw new Error('"sha1" hash algorithm unavailable.');o=U.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new U.util.ByteBuffer,l=new U.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),y=e.length(),d=new U.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(y/f),g=new U.util.ByteBuffer;for(a=0;a<p;a++)g.putByte(e.at(a%y));var m=f*Math.ceil(h/f),w=new U.util.ByteBuffer;for(a=0;a<m;a++)w.putByte(l.at(a%h));var v=g;v.putBuffer(w);for(var R=Math.ceil(i/c),E=1;E<=R;E++){var S=new U.util.ByteBuffer;S.putBytes(d.bytes()),S.putBytes(v.bytes());for(var L=0;L<n;L++)o.start(),o.update(S.getBytes()),S=o.digest();var N=new U.util.ByteBuffer;for(a=0;a<f;a++)N.putByte(S.at(a%c));var z=Math.ceil(y/f)+Math.ceil(h/f),H=new U.util.ByteBuffer;for(s=0;s<z;s++){var V=new U.util.ByteBuffer(v.getBytes(f)),Q=511;for(a=N.length()-1;a>=0;a--)Q=Q>>8,Q+=N.at(a)+V.at(a),V.setAt(a,Q&255);H.putBuffer(V)}v=H,u.putBuffer(S)}return u.truncate(u.length()-i),u};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,tp,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=B.derToOid(n.kdfOid),t!==W.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}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 o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=U.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(W.oids[t]){case"aes128-CBC":c=16,f=U.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=U.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=U.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=U.des.createDecryptionCipher;break;case"desCBC":c=8,f=U.des.createDecryptionCipher;break}var u=j0(n.prfOid),l=U.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,y=f(l);return y.start(h),y};W.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!B.validate(e,ep,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=U.util.createBuffer(n.salt),a=U.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case W.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=U.des.startDecrypting;break;case W.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,g){var m=U.rc2.createDecryptionCipher(p,40);return m.start(g,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=j0(n.prfOid),h=W.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=W.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,y)};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=[J0(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(J0(n,i[s-1]+t+e));return i.join("").substr(0,r)};function J0(t,e){return t.start().update(e).digest().getBytes()}function j0(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 tc(e)}function tc(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 rp(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 zc=ut((ob,Hc)=>{var pt=ct();dr();It();var wn=Hc.exports=pt.sha512=pt.sha512||{};pt.md.sha512=pt.md.algorithms.sha512=wn;var Fc=pt.sha384=pt.sha512.sha384=pt.sha512.sha384||{};Fc.create=function(){return wn.create("SHA-384")};pt.md.sha384=pt.md.algorithms.sha384=Fc;pt.sha512.sha256=pt.sha512.sha256||{create:function(){return wn.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 wn.create("SHA-512/224")}};pt.md["sha512/224"]=pt.md.algorithms["sha512/224"]=pt.sha512.sha224;wn.create=function(t){if(qc||Ey(),typeof t>"u"&&(t="SHA-512"),!(t in Sr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Sr[t],r=null,n=pt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=pt.util.createBuffer(),r=new Array(e.length);for(var f=0;f<e.length;++f)r[f]=e[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=pt.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),Vc(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=pt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(xs.substr(0,a.blockLength-u));for(var l,h,y=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,y+=h,c.putInt32(y>>>0),y=l>>>0;c.putInt32(y);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);Vc(p,i,c);var g=pt.util.createBuffer(),m;t==="SHA-512"?m=p.length:t==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)g.putInt32(p[d][0]),(d!==m-1||t!=="SHA-512/224")&&g.putInt32(p[d][1]);return g},a};var xs=null,qc=!1,ms=null,Sr=null;function Ey(){xs="\x80",xs+=pt.util.fillString("\0",128),ms=[[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]],Sr={},Sr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Sr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Sr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Sr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],qc=!0}function Vc(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,m,w,v,R,E,S,L,N,z,H,V,Q,at,Ut,C,P,_,D,A,O,K,F=r.length();F>=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],_=D[1],n=((P>>>19|_<<13)^(_>>>29|P<<3)^P>>>6)>>>0,i=((P<<13|_>>>19)^(_<<3|P>>>29)^(P<<26|_>>>6))>>>0,O=e[C-15],P=O[0],_=O[1],o=((P>>>1|_<<31)^(P>>>8|_<<24)^P>>>7)>>>0,s=((P<<31|_>>>1)^(P<<24|_>>>8)^(P<<25|_>>>7))>>>0,A=e[C-7],K=e[C-16],_=i+A[1]+s+K[1],e[C][0]=n+A[0]+o+K[0]+(_/4294967296>>>0)>>>0,e[C][1]=_>>>0;for(p=t[0][0],g=t[0][1],m=t[1][0],w=t[1][1],v=t[2][0],R=t[2][1],E=t[3][0],S=t[3][1],L=t[4][0],N=t[4][1],z=t[5][0],H=t[5][1],V=t[6][0],Q=t[6][1],at=t[7][0],Ut=t[7][1],C=0;C<80;++C)f=((L>>>14|N<<18)^(L>>>18|N<<14)^(N>>>9|L<<23))>>>0,u=((L<<18|N>>>14)^(L<<14|N>>>18)^(N<<23|L>>>9))>>>0,l=(V^L&(z^V))>>>0,h=(Q^N&(H^Q))>>>0,a=((p>>>28|g<<4)^(g>>>2|p<<30)^(g>>>7|p<<25))>>>0,c=((p<<4|g>>>28)^(g<<30|p>>>2)^(g<<25|p>>>7))>>>0,y=(p&m|v&(p^m))>>>0,d=(g&w|R&(g^w))>>>0,_=Ut+u+h+ms[C][1]+e[C][1],n=at+f+l+ms[C][0]+e[C][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+d,o=a+y+(_/4294967296>>>0)>>>0,s=_>>>0,at=V,Ut=Q,V=z,Q=H,z=L,H=N,_=S+i,L=E+n+(_/4294967296>>>0)>>>0,N=_>>>0,E=v,S=R,v=m,R=w,m=p,w=g,_=i+s,p=n+o+(_/4294967296>>>0)>>>0,g=_>>>0;_=t[0][1]+g,t[0][0]=t[0][0]+p+(_/4294967296>>>0)>>>0,t[0][1]=_>>>0,_=t[1][1]+w,t[1][0]=t[1][0]+m+(_/4294967296>>>0)>>>0,t[1][1]=_>>>0,_=t[2][1]+R,t[2][0]=t[2][0]+v+(_/4294967296>>>0)>>>0,t[2][1]=_>>>0,_=t[3][1]+S,t[3][0]=t[3][0]+E+(_/4294967296>>>0)>>>0,t[3][1]=_>>>0,_=t[4][1]+N,t[4][0]=t[4][0]+L+(_/4294967296>>>0)>>>0,t[4][1]=_>>>0,_=t[5][1]+H,t[5][0]=t[5][0]+z+(_/4294967296>>>0)>>>0,t[5][1]=_>>>0,_=t[6][1]+Q,t[6][0]=t[6][0]+V+(_/4294967296>>>0)>>>0,t[6][1]=_>>>0,_=t[7][1]+Ut,t[7][0]=t[7][0]+at+(_/4294967296>>>0)>>>0,t[7][1]=_>>>0,F-=128}}});var eu=ut((t8,tu)=>{"use strict";function jf(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function C1(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 jf(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),jf(new i,r)}}tu.exports=C1});var ou=ut((l8,iu)=>{function L1(){return!!(typeof window<"u"&&typeof window.process=="object"&&window.process.type==="renderer"||typeof process<"u"&&typeof process.versions=="object"&&process.versions.electron||typeof navigator=="object"&&typeof navigator.userAgent=="string"&&navigator.userAgent.indexOf("Electron")>=0)}iu.exports=L1});var k1={};Nt(k1,{identify:()=>P1,multicodecs:()=>D1});var ua="/ipfs/id/1.0.0",la="/ipfs/id/push/1.0.0",ha="0.1.0",da="id",pa="id/push",ya="1.0.0",ga="1.0.0";var K1=Symbol.for("@libp2p/connection");var V1=Symbol.for("@libp2p/content-routing");var H1=Symbol.for("@libp2p/peer-discovery");var xa=Symbol.for("@libp2p/peer-id");var W1=Symbol.for("@libp2p/peer-routing");var ma;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(ma||(ma={}));var Q1=Symbol.for("@libp2p/transport");var ba;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(ba||(ba={}));var q=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var va="ERR_NOT_FOUND";var zi=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},rg=globalThis.CustomEvent??zi,kn=(t,...e)=>{try{[...e]}catch{}};var Zi={};Nt(Zi,{base58btc:()=>Et,base58flickr:()=>Nu});function Cu(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 o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,g=0,m=0,w=d.length;m!==w&&d[m]===0;)m++,p++;for(var v=(w-m)*u+1>>>0,R=new Uint8Array(v);m!==w;){for(var E=d[m],S=0,L=v-1;(E!==0||S<g)&&L!==-1;L--,S++)E+=256*R[L]>>>0,R[L]=E%a>>>0,E=E/a>>>0;if(E!==0)throw new Error("Non-zero carry");g=S,m++}for(var N=v-g;N!==v&&R[N]===0;)N++;for(var z=c.repeat(p);N<v;++N)z+=t.charAt(R[N]);return z}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var g=0,m=0;d[p]===c;)g++,p++;for(var w=(d.length-p)*f+1>>>0,v=new Uint8Array(w);d[p];){var R=r[d.charCodeAt(p)];if(R===255)return;for(var E=0,S=w-1;(R!==0||E<m)&&S!==-1;S--,E++)R+=a*v[S]>>>0,v[S]=R%256>>>0,R=R/256>>>0;if(R!==0)throw new Error("Non-zero carry");m=E,p++}if(d[p]!==" "){for(var L=w-m;L!==w&&v[L]===0;)L++;for(var N=new Uint8Array(g+(w-L)),z=g;L!==w;)N[z++]=v[L++];return N}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var Tu=Cu,_u=Tu,wa=_u;var Tg=new Uint8Array(0);var Ea=(t,e)=>{if(t===e)return!0;if(t.byteLength!==e.byteLength)return!1;for(let r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0},Ne=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 Sa=t=>new TextEncoder().encode(t),Ba=t=>new TextDecoder().decode(t);var Gi=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")}},Wi=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 Ia(this,e)}},Yi=class{constructor(e){this.decoders=e}or(e){return Ia(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`)}},Ia=(t,e)=>new Yi({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),$i=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Gi(e,r,n),this.decoder=new Wi(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},_r=({name:t,prefix:e,encode:r,decode:n})=>new $i(t,e,r,n),We=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=wa(r,e);return _r({prefix:t,name:e,encode:n,decode:o=>Ne(i(o))})},Ru=(t,e,r,n)=>{let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[t[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},Lu=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},vt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>_r({prefix:e,name:t,encode(i){return Lu(i,n,r)},decode(i){return Ru(i,n,r,t)}});var Et=We({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Nu=We({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Qi={};Nt(Qi,{base10:()=>Du});var Du=We({prefix:"9",name:"base10",alphabet:"0123456789"});var Xi={};Nt(Xi,{base16:()=>Pu,base16upper:()=>ku});var Pu=vt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ku=vt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ji={};Nt(Ji,{base2:()=>Uu});var Uu=vt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ji={};Nt(ji,{base256emoji:()=>Fu});var Ca=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}"),Ou=Ca.reduce((t,e,r)=>(t[r]=e,t),[]),Ku=Ca.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Mu(t){return t.reduce((e,r)=>(e+=Ou[r],e),"")}function Vu(t){let e=[];for(let r of t){let n=Ku[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Fu=_r({prefix:"\u{1F680}",name:"base256emoji",encode:Mu,decode:Vu});var to={};Nt(to,{base32:()=>De,base32hex:()=>Gu,base32hexpad:()=>Yu,base32hexpadupper:()=>$u,base32hexupper:()=>Wu,base32pad:()=>Hu,base32padupper:()=>zu,base32upper:()=>qu,base32z:()=>Zu});var De=vt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),qu=vt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Hu=vt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),zu=vt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Gu=vt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Wu=vt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Yu=vt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),$u=vt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Zu=vt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var eo={};Nt(eo,{base36:()=>Qu,base36upper:()=>Xu});var Qu=We({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Xu=We({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var no={};Nt(no,{base64:()=>Un,base64pad:()=>Ju,base64url:()=>ro,base64urlpad:()=>ju});var Un=vt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Ju=vt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ro=vt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ju=vt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var io={};Nt(io,{base8:()=>tl});var tl=vt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var oo={};Nt(oo,{identity:()=>el});var el=_r({prefix:"\0",name:"identity",encode:t=>Ba(t),decode:t=>Sa(t)});var Hg=new TextEncoder,zg=new TextDecoder;var ao={};Nt(ao,{identity:()=>Ye});var il=Ra,Ta=128,ol=127,sl=~ol,al=Math.pow(2,31);function Ra(t,e,r){e=e||[],r=r||0;for(var n=r;t>=al;)e[r++]=t&255|Ta,t/=128;for(;t&sl;)e[r++]=t&255|Ta,t>>>=7;return e[r]=t|0,Ra.bytes=r-n+1,e}var cl=so,fl=128,_a=127;function so(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw so.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&_a)<<i:(s&_a)*Math.pow(2,i),i+=7}while(s>=fl);return so.bytes=o-n,r}var ul=Math.pow(2,7),ll=Math.pow(2,14),hl=Math.pow(2,21),dl=Math.pow(2,28),pl=Math.pow(2,35),yl=Math.pow(2,42),gl=Math.pow(2,49),xl=Math.pow(2,56),ml=Math.pow(2,63),bl=function(t){return t<ul?1:t<ll?2:t<hl?3:t<dl?4:t<pl?5:t<yl?6:t<gl?7:t<xl?8:t<ml?9:10},vl={encode:il,decode:cl,encodingLength:bl},wl=vl,rn=wl;var nn=(t,e=0)=>[rn.decode(t,e),rn.decode.bytes],Rr=(t,e,r=0)=>(rn.encode(t,e,r),e),Lr=t=>rn.encodingLength(t);var be=(t,e)=>{let r=e.byteLength,n=Lr(t),i=n+Lr(r),o=new Uint8Array(i+r);return Rr(t,o,0),Rr(r,o,n),o.set(e,i),new Nr(t,r,e,o)},ur=t=>{let e=Ne(t),[r,n]=nn(e),[i,o]=nn(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Nr(r,i,s,e)},La=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Ea(t.bytes,r.bytes)}},Nr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Na=0,El="identity",Da=Ne,Sl=t=>be(Na,Da(t)),Ye={code:Na,name:El,encode:Da,digest:Sl};var uo={};Nt(uo,{sha256:()=>Mt,sha512:()=>Bl});var fo=({name:t,code:e,encode:r})=>new co(t,e,r),co=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?be(this.code,r):r.then(n=>be(this.code,n))}else throw Error("Unknown type, must be binary type")}};var ka=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Mt=fo({name:"sha2-256",code:18,encode:ka("SHA-256")}),Bl=fo({name:"sha2-512",code:19,encode:ka("SHA-512")});var Ua=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Il(r,lo(t),e||Et.encoder);default:return Cl(r,lo(t),e||De.encoder)}};var Oa=new WeakMap,lo=t=>{let e=Oa.get(t);if(e==null){let r=new Map;return Oa.set(t,r),r}return e},ae=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!==on)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Tl)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=be(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&&La(e.multihash,n.multihash)}toString(e){return Ua(this,e)}toJSON(){return{"/":Ua(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:o,bytes:s}=r;return new t(n,i,o,s||Ka(n,i,o.bytes))}else if(r[_l]===!0){let{version:n,multihash:i,code:o}=r,s=ur(i);return t.create(n,o,s)}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!==on)throw new Error(`Version 0 CID must use dag-pb (code: ${on}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=Ka(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,on,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=Ne(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Nr(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=nn(e.subarray(r));return r+=h,l},i=n(),o=on;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,i]=Al(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return lo(o).set(n,e),o}},Al=(t,e)=>{switch(t[0]){case"Q":{let r=e||Et;return[Et.prefix,r.decode(`${Et.prefix}${t}`)]}case Et.prefix:{let r=e||Et;return[Et.prefix,r.decode(t)]}case De.prefix:{let r=e||De;return[De.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)]}}},Il=(t,e,r)=>{let{prefix:n}=r;if(n!==Et.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},Cl=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},on=112,Tl=18,Ka=(t,e,r)=>{let n=Lr(t),i=n+Lr(e),o=new Uint8Array(i+r.byteLength);return Rr(t,o,0),Rr(e,o,n),o.set(r,i),o},_l=Symbol.for("@ipld/js-cid/CID");var $e={...oo,...Ji,...io,...Qi,...Xi,...to,...eo,...Zi,...no,...ji},sx={...uo,...ao};function Tt(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 Rl=Symbol.for("nodejs.util.inspect.custom"),Ma=Object.values($e).map(t=>t.decoder).reduce((t,e)=>t.or(e),$e.identity.decoder),Va=114,ho=36,po=37,sn=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()})`}[xa]=!0;toString(){return this.string==null&&(this.string=Et.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return ae.createV1(Va,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Tt(this.multihash.bytes,e);if(typeof e=="string")return Ll(e).equals(this);if(e?.multihash?.bytes!=null)return Tt(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Rl](){return`PeerId(${this.toString()})`}},Dr=class extends sn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Pr=class extends sn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},kr=class extends sn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Ll(t,e){if(e=e??Ma,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=ur(Et.decode(`z${t}`));return t.startsWith("12D")?new Pr({multihash:r}):t.startsWith("16U")?new kr({multihash:r}):new Dr({multihash:r})}return yo(Ma.decode(t))}function yo(t){try{let e=ur(t);if(e.code===Ye.code){if(e.digest.length===ho)return new Pr({multihash:e});if(e.digest.length===po)return new kr({multihash:e})}if(e.code===Mt.code)return new Dr({multihash:e})}catch{return Nl(ae.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function Nl(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Va)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Mt.code)return new Dr({multihash:t.multihash});if(e.code===Ye.code){if(e.digest.length===ho)return new Pr({multihash:t.multihash});if(e.digest.length===po)return new kr({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function an(t,e){return t.length===ho?new Pr({multihash:be(Ye.code,t),privateKey:e}):t.length===po?new kr({multihash:be(Ye.code,t),privateKey:e}):new Dr({multihash:await Mt.digest(t),publicKey:t,privateKey:e})}var hv=Gt(ln(),1),dv=Gt(rc(),1);var $y=Gt(ct(),1);function je(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Oe(t=0){return globalThis.Buffer?.alloc!=null?je(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Ft(t=0){return globalThis.Buffer?.allocUnsafe!=null?je(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function ic(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var nc=ic("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Ko=ic("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=Ft(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),np={utf8:nc,"utf-8":nc,hex:$e.base16,latin1:Ko,ascii:Ko,binary:Ko,...$e},ri=np;function lt(t,e="utf8"){let r=ri[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?je(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var gs={};Nt(gs,{Ed25519PrivateKey:()=>Er,Ed25519PublicKey:()=>vn,generateKeyPair:()=>my,generateKeyPairFromSeed:()=>Mc,unmarshalEd25519PrivateKey:()=>gy,unmarshalEd25519PublicKey:()=>xy});var rm=Gt(It(),1),nm=Gt(Jn(),1),oc=Gt(ct(),1);function _t(t,e){if(globalThis.Buffer!=null)return je(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=Ft(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return je(r)}function nt(t,e="utf8"){let r=ri[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}function ue(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=_t([new Uint8Array(e-r.length),r])}return nt(r,"base64url")}function Jt(t){let e=sc(t);return new oc.default.jsbn.BigInteger(nt(e,"base16"),16)}function sc(t,e){let r=lt(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=_t([new Uint8Array(e-r.length),r])}return r}function re(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function ac(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Mo(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 cc(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");ac(t.outputLen),ac(t.blockLen)}function Vr(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 fc(t,e){Mo(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var ni=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var uc=t=>t instanceof Uint8Array;var ii=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),le=(t,e)=>t<<32-e|t>>>e,ip=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!ip)throw new Error("Non little-endian hardware is not supported");function Vo(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function pn(t){if(typeof t=="string"&&(t=Vo(t)),!uc(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function oi(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!uc(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Fr=class{clone(){return this._cloneInto()}},lm={}.toString;function si(t){let e=n=>t().update(pn(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function qr(t=32){if(ni&&typeof ni.getRandomValues=="function")return ni.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function op(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}var Hr=class extends Fr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=ii(this.buffer)}update(e){Vr(this);let{view:r,buffer:n,blockLen:i}=this;e=pn(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=ii(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Vr(this),fc(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;op(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=ii(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer: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:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var ai=BigInt(4294967295),Fo=BigInt(32);function lc(t,e=!1){return e?{h:Number(t&ai),l:Number(t>>Fo&ai)}:{h:Number(t>>Fo&ai)|0,l:Number(t&ai)|0}}function sp(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=lc(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var ap=(t,e)=>BigInt(t>>>0)<<Fo|BigInt(e>>>0),cp=(t,e,r)=>t>>>r,fp=(t,e,r)=>t<<32-r|e>>>r,up=(t,e,r)=>t>>>r|e<<32-r,lp=(t,e,r)=>t<<32-r|e>>>r,hp=(t,e,r)=>t<<64-r|e>>>r-32,dp=(t,e,r)=>t>>>r-32|e<<64-r,pp=(t,e)=>e,yp=(t,e)=>t,gp=(t,e,r)=>t<<r|e>>>32-r,xp=(t,e,r)=>e<<r|t>>>32-r,mp=(t,e,r)=>e<<r-32|t>>>64-r,bp=(t,e,r)=>t<<r-32|e>>>64-r;function vp(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var wp=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Ep=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Sp=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Bp=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Ap=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Ip=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var Cp={fromBig:lc,split:sp,toBig:ap,shrSH:cp,shrSL:fp,rotrSH:up,rotrSL:lp,rotrBH:hp,rotrBL:dp,rotr32H:pp,rotr32L:yp,rotlSH:gp,rotlSL:xp,rotlBH:mp,rotlBL:bp,add:vp,add3L:wp,add3H:Ep,add4L:Sp,add4H:Bp,add5H:Ip,add5L:Ap},Y=Cp;var[Tp,_p]=Y.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))),tr=new Uint32Array(80),er=new Uint32Array(80),qo=class extends Hr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:h,Gh:y,Gl:d,Hh:p,Hl:g}=this;return[e,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g]}set(e,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=h|0,this.Gh=y|0,this.Gl=d|0,this.Hh=p|0,this.Hl=g|0}process(e,r){for(let v=0;v<16;v++,r+=4)tr[v]=e.getUint32(r),er[v]=e.getUint32(r+=4);for(let v=16;v<80;v++){let R=tr[v-15]|0,E=er[v-15]|0,S=Y.rotrSH(R,E,1)^Y.rotrSH(R,E,8)^Y.shrSH(R,E,7),L=Y.rotrSL(R,E,1)^Y.rotrSL(R,E,8)^Y.shrSL(R,E,7),N=tr[v-2]|0,z=er[v-2]|0,H=Y.rotrSH(N,z,19)^Y.rotrBH(N,z,61)^Y.shrSH(N,z,6),V=Y.rotrSL(N,z,19)^Y.rotrBL(N,z,61)^Y.shrSL(N,z,6),Q=Y.add4L(L,V,er[v-7],er[v-16]),at=Y.add4H(Q,S,H,tr[v-7],tr[v-16]);tr[v]=at|0,er[v]=Q|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:y,Fl:d,Gh:p,Gl:g,Hh:m,Hl:w}=this;for(let v=0;v<80;v++){let R=Y.rotrSH(l,h,14)^Y.rotrSH(l,h,18)^Y.rotrBH(l,h,41),E=Y.rotrSL(l,h,14)^Y.rotrSL(l,h,18)^Y.rotrBL(l,h,41),S=l&y^~l&p,L=h&d^~h&g,N=Y.add5L(w,E,L,_p[v],er[v]),z=Y.add5H(N,m,R,S,Tp[v],tr[v]),H=N|0,V=Y.rotrSH(n,i,28)^Y.rotrBH(n,i,34)^Y.rotrBH(n,i,39),Q=Y.rotrSL(n,i,28)^Y.rotrBL(n,i,34)^Y.rotrBL(n,i,39),at=n&o^n&a^o&a,Ut=i&s^i&c^s&c;m=p|0,w=g|0,p=y|0,g=d|0,y=l|0,d=h|0,{h:l,l:h}=Y.add(f|0,u|0,z|0,H|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let C=Y.add3L(H,Q,Ut);n=Y.add3H(C,z,V,at),i=C|0}({h:n,l:i}=Y.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=Y.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=Y.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=Y.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:h}=Y.add(this.Eh|0,this.El|0,l|0,h|0),{h:y,l:d}=Y.add(this.Fh|0,this.Fl|0,y|0,d|0),{h:p,l:g}=Y.add(this.Gh|0,this.Gl|0,p|0,g|0),{h:m,l:w}=Y.add(this.Hh|0,this.Hl|0,m|0,w|0),this.set(n,i,o,s,a,c,f,u,l,h,y,d,p,g,m,w)}roundClean(){tr.fill(0),er.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=si(()=>new qo);var ui={};Nt(ui,{bitGet:()=>Up,bitLen:()=>kp,bitMask:()=>yn,bitSet:()=>Op,bytesToHex:()=>Ke,bytesToNumberBE:()=>Me,bytesToNumberLE:()=>rr,concatBytes:()=>Ve,createHmacDrbg:()=>Wo,ensureBytes:()=>wt,equalBytes:()=>Dp,hexToBytes:()=>xr,hexToNumber:()=>Go,numberToBytesBE:()=>nr,numberToBytesLE:()=>mr,numberToHexUnpadded:()=>pc,numberToVarBytesBE:()=>Np,utf8ToBytes:()=>Pp,validateObject:()=>Ie});var dc=BigInt(0),ci=BigInt(1),Rp=BigInt(2),fi=t=>t instanceof Uint8Array,Lp=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Ke(t){if(!fi(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Lp[t[r]];return e}function pc(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Go(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function xr(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,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function Me(t){return Go(Ke(t))}function rr(t){if(!fi(t))throw new Error("Uint8Array expected");return Go(Ke(Uint8Array.from(t).reverse()))}function nr(t,e){return xr(t.toString(16).padStart(e*2,"0"))}function mr(t,e){return nr(t,e).reverse()}function Np(t){return xr(pc(t))}function wt(t,e,r){let n;if(typeof e=="string")try{n=xr(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(fi(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 Ve(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!fi(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Dp(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 Pp(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function kp(t){let e;for(e=0;t>dc;t>>=ci,e+=1);return e}function Up(t,e){return t>>BigInt(e)&ci}var Op=(t,e,r)=>t|(r?ci:dc)<<BigInt(e),yn=t=>(Rp<<BigInt(t-1))-ci,zo=t=>new Uint8Array(t),hc=t=>Uint8Array.from(t);function Wo(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=zo(t),i=zo(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=zo())=>{i=a(hc([0]),l),n=a(),l.length!==0&&(i=a(hc([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let y=n.slice();h.push(y),l+=n.length}return Ve(...h)};return(l,h)=>{s(),c(l);let y;for(;!(y=h(f()));)c();return s(),y}}var Kp={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 Ie(t,e,r={}){let n=(i,o,s)=>{let a=Kp[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var Rt=BigInt(0),gt=BigInt(1),br=BigInt(2),Mp=BigInt(3),Yo=BigInt(4),yc=BigInt(5),gc=BigInt(8),Vp=BigInt(9),Fp=BigInt(16);function ft(t,e){let r=t%e;return r>=Rt?r:e+r}function qp(t,e,r){if(r<=Rt||e<Rt)throw new Error("Expected power/modulo > 0");if(r===gt)return Rt;let n=gt;for(;e>Rt;)e>&&(n=n*t%r),t=t*t%r,e>>=gt;return n}function xt(t,e,r){let n=t;for(;e-- >Rt;)n*=n,n%=r;return n}function li(t,e){if(t===Rt||e<=Rt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ft(t,e),n=e,i=Rt,o=gt,s=gt,a=Rt;for(;r!==Rt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==gt)throw new Error("invert: does not exist");return ft(i,e)}function Hp(t){let e=(t-gt)/br,r,n,i;for(r=t-gt,n=0;r%br===Rt;r/=br,n++);for(i=br;i<t&&qp(i,e,t)!==t-gt;i++);if(n===1){let s=(t+gt)/Yo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+gt)/br;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let y=1;for(let p=a.sqr(h);y<f&&!a.eql(p,a.ONE);y++)p=a.sqr(p);let d=a.pow(u,gt<<BigInt(f-y-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=y}return l}}function zp(t){if(t%Yo===Mp){let e=(t+gt)/Yo;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%gc===yc){let e=(t-yc)/gc;return function(n,i){let o=n.mul(i,br),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,br),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return t%Fp,Hp(t)}var xc=(t,e)=>(ft(t,e)>)===gt,Gp=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function $o(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Gp.reduce((n,i)=>(n[i]="function",n),e);return Ie(t,r)}function Wp(t,e,r){if(r<Rt)throw new Error("Expected power > 0");if(r===Rt)return t.ONE;if(r===gt)return e;let n=t.ONE,i=e;for(;r>Rt;)r>&&(n=t.mul(n,i)),i=t.sqr(i),r>>=gt;return n}function Yp(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function Zo(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function hi(t,e,r=!1,n={}){if(t<=Rt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Zo(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=zp(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:yn(i),ZERO:Rt,ONE:gt,create:c=>ft(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Rt<=c&&c<t},is0:c=>c===Rt,isOdd:c=>(c>)===gt,neg:c=>ft(-c,t),eql:(c,f)=>c===f,sqr:c=>ft(c*c,t),add:(c,f)=>ft(c+f,t),sub:(c,f)=>ft(c-f,t),mul:(c,f)=>ft(c*f,t),pow:(c,f)=>Wp(a,c,f),div:(c,f)=>ft(c*li(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>li(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Yp(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?mr(c,o):nr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?rr(c):Me(c)}});return Object.freeze(a)}function mc(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 bc(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 Qo(t){let e=bc(t);return e+Math.ceil(e/2)}function vc(t,e,r=!1){let n=t.length,i=bc(e),o=Qo(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Me(t):rr(t),a=ft(s,e-gt)+gt;return r?mr(a,i):nr(a,i)}var Zp=BigInt(0),Xo=BigInt(1);function di(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>Zp;)o&Xo&&(s=s.add(a)),a=a.double(),o>>=Xo;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=t.ZERO,u=t.BASE,l=BigInt(2**i-1),h=2**i,y=BigInt(i);for(let d=0;d<a;d++){let p=d*c,g=Number(s&l);s>>=y,g>c&&(g-=h,s+=Xo);let m=p,w=p+Math.abs(g)-1,v=d%2!==0,R=g<0;g===0?u=u.add(r(v,o[m])):f=f.add(r(R,o[w]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function gn(t){return $o(t.Fp),Ie(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Zo(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var he=BigInt(0),jt=BigInt(1),pi=BigInt(2),Qp=BigInt(8),Xp={zip215:!0};function Jp(t){let e=gn(t);return Ie(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function yi(t){let e=Jp(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,f=pi<<BigInt(a*8)-jt,u=r.create,l=e.uvRatio||((D,A)=>{try{return{isValid:!0,value:r.sqrt(D*r.inv(A))}}catch{return{isValid:!1,value:he}}}),h=e.adjustScalarBytes||(D=>D),y=e.domain||((D,A,O)=>{if(A.length||O)throw new Error("Contexts/pre-hash are not supported");return D}),d=D=>typeof D=="bigint"&&he<D,p=(D,A)=>d(D)&&d(A)&&D<A,g=D=>D===he||p(D,f);function m(D,A){if(p(D,A))return D;throw new Error(`Expected valid scalar < ${A}, got ${typeof D} ${D}`)}function w(D){return D===he?D:m(D,n)}let v=new Map;function R(D){if(!(D instanceof E))throw new Error("ExtendedPoint expected")}class E{constructor(A,O,K,F){if(this.ex=A,this.ey=O,this.ez=K,this.et=F,!g(A))throw new Error("x required");if(!g(O))throw new Error("y required");if(!g(K))throw new Error("z required");if(!g(F))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:O,y:K}=A||{};if(!g(O)||!g(K))throw new Error("invalid affine point");return new E(O,K,jt,u(O*K))}static normalizeZ(A){let O=r.invertBatch(A.map(K=>K.ez));return A.map((K,F)=>K.toAffine(O[F])).map(E.fromAffine)}_setWindowSize(A){this._WINDOW_SIZE=A,v.delete(this)}assertValidity(){let{a:A,d:O}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:F,ez:$,et:X}=this,st=u(K*K),J=u(F*F),et=u($*$),At=u(et*et),bt=u(st*A),Ot=u(et*u(bt+J)),Kt=u(At+u(O*u(st*J)));if(Ot!==Kt)throw new Error("bad point: equation left != right (1)");let Ct=u(K*F),Vt=u($*X);if(Ct!==Vt)throw new Error("bad point: equation left != right (2)")}equals(A){R(A);let{ex:O,ey:K,ez:F}=this,{ex:$,ey:X,ez:st}=A,J=u(O*st),et=u($*F),At=u(K*st),bt=u(X*F);return J===et&&At===bt}is0(){return this.equals(E.ZERO)}negate(){return new E(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:A}=e,{ex:O,ey:K,ez:F}=this,$=u(O*O),X=u(K*K),st=u(pi*u(F*F)),J=u(A*$),et=O+K,At=u(u(et*et)-$-X),bt=J+X,Ot=bt-st,Kt=J-X,Ct=u(At*Ot),Vt=u(bt*Kt),Le=u(At*Kt),fr=u(Ot*bt);return new E(Ct,Vt,fr,Le)}add(A){R(A);let{a:O,d:K}=e,{ex:F,ey:$,ez:X,et:st}=this,{ex:J,ey:et,ez:At,et:bt}=A;if(O===BigInt(-1)){let ra=u(($-F)*(et+J)),na=u(($+F)*(et-J)),Hi=u(na-ra);if(Hi===he)return this.double();let ia=u(X*pi*bt),oa=u(st*pi*At),sa=oa+ia,aa=na+ra,ca=oa-ia,xu=u(sa*Hi),mu=u(aa*ca),bu=u(sa*ca),vu=u(Hi*aa);return new E(xu,mu,vu,bu)}let Ot=u(F*J),Kt=u($*et),Ct=u(st*K*bt),Vt=u(X*At),Le=u((F+$)*(J+et)-Ot-Kt),fr=Vt-Ct,en=Vt+Ct,ea=u(Kt-O*Ot),du=u(Le*fr),pu=u(en*ea),yu=u(Le*ea),gu=u(fr*en);return new E(du,pu,gu,yu)}subtract(A){return this.add(A.negate())}wNAF(A){return N.wNAFCached(this,v,A,E.normalizeZ)}multiply(A){let{p:O,f:K}=this.wNAF(m(A,n));return E.normalizeZ([O,K])[0]}multiplyUnsafe(A){let O=w(A);return O===he?L:this.equals(L)||O===jt?this:this.equals(S)?this.wNAF(O).p:N.unsafeLadder(this,O)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return N.unsafeLadder(this,n).is0()}toAffine(A){let{ex:O,ey:K,ez:F}=this,$=this.is0();A==null&&(A=$?Qp:r.inv(F));let X=u(O*A),st=u(K*A),J=u(F*A);if($)return{x:he,y:jt};if(J!==jt)throw new Error("invZ was invalid");return{x:X,y:st}}clearCofactor(){let{h:A}=e;return A===jt?this:this.multiplyUnsafe(A)}static fromHex(A,O=!1){let{d:K,a:F}=e,$=r.BYTES;A=wt("pointHex",A,$);let X=A.slice(),st=A[$-1];X[$-1]=st&-129;let J=rr(X);J===he||(O?m(J,f):m(J,r.ORDER));let et=u(J*J),At=u(et-jt),bt=u(K*et-F),{isValid:Ot,value:Kt}=l(At,bt);if(!Ot)throw new Error("Point.fromHex: invalid y coordinate");let Ct=(Kt&jt)===jt,Vt=(st&128)!==0;if(!O&&Kt===he&&Vt)throw new Error("Point.fromHex: x=0 and x_0=1");return Vt!==Ct&&(Kt=u(-Kt)),E.fromAffine({x:Kt,y:J})}static fromPrivateKey(A){return V(A).point}toRawBytes(){let{x:A,y:O}=this.toAffine(),K=mr(O,r.BYTES);return K[K.length-1]|=A&jt?128:0,K}toHex(){return Ke(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,jt,u(e.Gx*e.Gy)),E.ZERO=new E(he,jt,jt,he);let{BASE:S,ZERO:L}=E,N=di(E,a*8);function z(D){return ft(D,n)}function H(D){return z(rr(D))}function V(D){let A=a;D=wt("private key",D,A);let O=wt("hashed private key",o(D),2*A),K=h(O.slice(0,A)),F=O.slice(A,2*A),$=H(K),X=S.multiply($),st=X.toRawBytes();return{head:K,prefix:F,scalar:$,point:X,pointBytes:st}}function Q(D){return V(D).pointBytes}function at(D=new Uint8Array,...A){let O=Ve(...A);return H(o(y(O,wt("context",D),!!i)))}function Ut(D,A,O={}){D=wt("message",D),i&&(D=i(D));let{prefix:K,scalar:F,pointBytes:$}=V(A),X=at(O.context,K,D),st=S.multiply(X).toRawBytes(),J=at(O.context,st,$,D),et=z(X+J*F);w(et);let At=Ve(st,mr(et,r.BYTES));return wt("result",At,a*2)}let C=Xp;function P(D,A,O,K=C){let{context:F,zip215:$}=K,X=r.BYTES;D=wt("signature",D,2*X),A=wt("message",A),i&&(A=i(A));let st=rr(D.slice(X,2*X)),J,et,At;try{J=E.fromHex(O,$),et=E.fromHex(D.slice(0,X),$),At=S.multiplyUnsafe(st)}catch{return!1}if(!$&&J.isSmallOrder())return!1;let bt=at(F,et.toRawBytes(),J.toRawBytes(),A);return et.add(J.multiplyUnsafe(bt)).subtract(At).clearCofactor().equals(E.ZERO)}return S._setWindowSize(8),{CURVE:e,getPublicKey:Q,sign:Ut,verify:P,ExtendedPoint:E,utils:{getExtendedPublicKey:V,randomPrivateKey:()=>s(r.BYTES),precompute(D=8,A=E.BASE){return A._setWindowSize(D),A.multiply(BigInt(3)),A}}}}var jo=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),wc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Dm=BigInt(0),jp=BigInt(1),Jo=BigInt(2),ty=BigInt(5),Ec=BigInt(10),ey=BigInt(20),ry=BigInt(40),Sc=BigInt(80);function ny(t){let e=jo,n=t*t%e*t%e,i=xt(n,Jo,e)*n%e,o=xt(i,jp,e)*t%e,s=xt(o,ty,e)*o%e,a=xt(s,Ec,e)*s%e,c=xt(a,ey,e)*a%e,f=xt(c,ry,e)*c%e,u=xt(f,Sc,e)*f%e,l=xt(u,Sc,e)*f%e,h=xt(l,Ec,e)*s%e;return{pow_p_5_8:xt(h,Jo,e)*t%e,b2:n}}function iy(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function oy(t,e){let r=jo,n=ft(e*e*e,r),i=ft(n*n*e,r),o=ny(t*i).pow_p_5_8,s=ft(t*n*o,r),a=ft(e*s*s,r),c=s,f=ft(s*wc,r),u=a===t,l=a===ft(-t,r),h=a===ft(-t*wc,r);return u&&(s=c),(l||h)&&(s=f),xc(s,r)&&(s=ft(-s,r)),{isValid:u||l,value:s}}var Fe=hi(jo,void 0,!0),ts={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Fe,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Ho,randomBytes:qr,adjustScalarBytes:iy,uvRatio:oy},zr=yi(ts);function Bc(t,e,r){if(e.length>255)throw new Error("Context is too big");return oi(Vo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Pm=yi({...ts,domain:Bc}),km=yi({...ts,domain:Bc,prehash:Ho});var sy=(Fe.ORDER+BigInt(3))/BigInt(8),Um=Fe.pow(Jo,sy),Om=Fe.sqrt(Fe.neg(Fe.ONE)),Km=(Fe.ORDER-BigInt(5))/BigInt(8),Mm=BigInt(486662);var Vm=mc(Fe,Fe.neg(BigInt(486664)));var Fm=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),qm=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),Hm=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),zm=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Gm=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Gr=32,qe=64,gi=32;function Ac(){let t=zr.utils.randomPrivateKey(),e=zr.getPublicKey(t);return{privateKey:_c(t,e),publicKey:e}}function Ic(t){if(t.length!==gi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=zr.getPublicKey(e);return{privateKey:_c(e,r),publicKey:r}}function Cc(t,e){let r=t.subarray(0,gi);return zr.sign(e instanceof Uint8Array?e:e.subarray(),r)}function Tc(t,e,r){return zr.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function _c(t,e){let r=new Uint8Array(qe);for(let n=0;n<gi;n++)r[n]=t[n],r[gi+n]=e[n];return r}var Zt={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 es={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function rs(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=Zt.get();r*=8;async function c(l,h){let y=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=lt(h));let g;if(h.length===0){g=await a.subtle.importKey("jwk",es,{name:"AES-GCM"},!0,["encrypt"]);try{let w={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},v=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(w,v,{name:e,length:r},!0,["encrypt"])}catch{g=await a.subtle.importKey("jwk",es,{name:"AES-GCM"},!0,["encrypt"])}}else{let w={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},v=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(w,v,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,g,l);return _t([y,p.iv,new Uint8Array(m)])}async function f(l,h){let y=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),g={name:e,iv:d};typeof h=="string"&&(h=lt(h));let m;if(h.length===0)try{let v={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},R=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(v,R,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",es,{name:"AES-GCM"},!0,["decrypt"])}else{let v={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},R=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(v,R,{name:e,length:r},!0,["decrypt"])}let w=await a.subtle.decrypt(g,m,p);return new Uint8Array(w)}return{encrypt:c,decrypt:f}}async function Wr(t,e){let n=await rs().encrypt(t,e);return Un.encode(n)}var ns=new Float32Array([-0]),ir=new Uint8Array(ns.buffer);function Lc(t,e,r){ns[0]=t,e[r]=ir[0],e[r+1]=ir[1],e[r+2]=ir[2],e[r+3]=ir[3]}function Nc(t,e){return ir[0]=t[e],ir[1]=t[e+1],ir[2]=t[e+2],ir[3]=t[e+3],ns[0]}var is=new Float64Array([-0]),qt=new Uint8Array(is.buffer);function Dc(t,e,r){is[0]=t,e[r]=qt[0],e[r+1]=qt[1],e[r+2]=qt[2],e[r+3]=qt[3],e[r+4]=qt[4],e[r+5]=qt[5],e[r+6]=qt[6],e[r+7]=qt[7]}function Pc(t,e){return qt[0]=t[e],qt[1]=t[e+1],qt[2]=t[e+2],qt[3]=t[e+3],qt[4]=t[e+4],qt[5]=t[e+5],qt[6]=t[e+6],qt[7]=t[e+7],is[0]}var cy=BigInt(Number.MAX_SAFE_INTEGER),fy=BigInt(Number.MIN_SAFE_INTEGER),Qt=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 vr;if(e<cy&&e>fy)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>kc&&(i=0n,++n>kc&&(n=0n))),new t(Number(i),Number(n))}static fromNumber(e){if(e===0)return vr;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):vr}},vr=new Qt(0,0);vr.toBigInt=function(){return 0n};vr.zzEncode=vr.zzDecode=function(){return this};vr.length=function(){return 1};var kc=4294967296n;function Uc(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 Oc(t,e,r){if(r-e<1)return"";let i,o=[],s=0,a;for(;e<r;)a=t[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(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,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function os(t,e,r){let n=r,i,o;for(let s=0;s<t.length;++s)i=t.charCodeAt(s),i<128?e[r++]=i:i<2048?(e[r++]=i>>6|192,e[r++]=i&63|128):(i&64512)===55296&&((o=t.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,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 de(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function xi(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var ss=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,de(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 de(this,4);return xi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw de(this,4);return xi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw de(this,4);let e=Nc(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw de(this,4);let e=Pc(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 de(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return Oc(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw de(this,e);this.pos+=e}else do if(this.pos>=this.len)throw de(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 Qt(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 de(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 de(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 de(this,8);let e=xi(this.buf,this.pos+=4),r=xi(this.buf,this.pos+=4);return new Qt(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 as(t){return new ss(t instanceof Uint8Array?t:t.subarray())}function pe(t,e){let r=as(t);return e.decode(r)}function cs(t){let e=t??8192,r=e>>>1,n,i=e;return function(s){if(s<1||s>r)return Ft(s);i+s>e&&(n=Ft(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var wr=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function fs(){}var ls=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},uy=cs();function ly(t){return globalThis.Buffer!=null?Ft(t):uy(t)}var bn=class{len;head;tail;states;constructor(){this.len=0,this.head=new wr(fs,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new wr(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new hs((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(xn,10,Qt.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=Qt.fromBigInt(e);return this._push(xn,r.length(),r)}uint64Number(e){let r=Qt.fromNumber(e);return this._push(xn,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=Qt.fromBigInt(e).zzEncode();return this._push(xn,r.length(),r)}sint64Number(e){let r=Qt.fromNumber(e).zzEncode();return this._push(xn,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(us,1,e?1:0)}fixed32(e){return this._push(mn,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=Qt.fromBigInt(e);return this._push(mn,4,r.lo)._push(mn,4,r.hi)}fixed64Number(e){let r=Qt.fromNumber(e);return this._push(mn,4,r.lo)._push(mn,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(Lc,4,e)}double(e){return this._push(Dc,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(us,1,0):this.uint32(r)._push(dy,r,e)}string(e){let r=Uc(e);return r!==0?this.uint32(r)._push(os,r,e):this._push(us,1,0)}fork(){return this.states=new ls(this),this.head=this.tail=new wr(fs,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 wr(fs,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=ly(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function us(t,e,r){e[r]=t&255}function hy(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var hs=class extends wr{next;constructor(e,r){super(hy,e,r),this.next=void 0}};function xn(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 mn(t,e,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24}function dy(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(bn.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(py,e,t),this},bn.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(yy,e,t),this});function py(t,e,r){e.set(t,r)}function yy(t,e,r){t.length<40?os(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(lt(t),r)}function ds(){return new bn}function ye(t,e){let r=ds();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Yr;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(Yr||(Yr={}));function mi(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function ps(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return mi("enum",Yr.VARINT,r,n)}function ge(t,e){return mi("message",Yr.LENGTH_DELIMITED,t,e)}var mt;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(mt||(mt={}));var ys;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(ys||(ys={}));(function(t){t.codec=()=>ps(ys)})(mt||(mt={}));var Ce;(function(t){let e;t.codec=()=>(e==null&&(e=ge((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),mt.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=mt.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>ye(r,t.codec()),t.decode=r=>pe(r,t.codec())})(Ce||(Ce={}));var Te;(function(t){let e;t.codec=()=>(e==null&&(e=ge((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),mt.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=mt.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>ye(r,t.codec()),t.decode=r=>pe(r,t.codec())})(Te||(Te={}));var vn=class{_key;constructor(e){this._key=$r(e,Gr)}verify(e,r){return Tc(this._key,r,e)}marshal(){return this._key}get bytes(){return Ce.encode({Type:mt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}hash(){let e=Mt.digest(this.bytes);return re(e)?e.then(({bytes:r})=>r):e.bytes}},Er=class{_key;_publicKey;constructor(e,r){this._key=$r(e,qe),this._publicKey=$r(r,Gr)}sign(e){return Cc(this._key,e)}get public(){return new vn(this._publicKey)}marshal(){return this._key}get bytes(){return Te.encode({Type:mt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}async hash(){let e=Mt.digest(this.bytes),r;return re(e)?{bytes:r}=await e:r=e.bytes,r}async id(){let e=Ye.digest(this.public.bytes);return Et.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Wr(this.bytes,e);throw new q(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function gy(t){if(t.length>qe){t=$r(t,qe+Gr);let n=t.subarray(0,qe),i=t.subarray(qe,t.length);return new Er(n,i)}t=$r(t,qe);let e=t.subarray(0,qe),r=t.subarray(Gr);return new Er(e,r)}function xy(t){return t=$r(t,Gr),new vn(t)}async function my(){let{privateKey:t,publicKey:e}=Ac();return new Er(t,e)}async function Mc(t){let{privateKey:e,publicKey:r}=Ic(t);return new Er(e,r)}function $r(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new q(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}var by={"P-256":256,"P-384":384,"P-521":521},vy=Object.keys(by),H2=vy.join(" / ");var ws={};Nt(ws,{MAX_KEY_SIZE:()=>Bn,RsaPrivateKey:()=>Zr,RsaPublicKey:()=>Sn,fromJwk:()=>Ly,generateKeyPair:()=>Ny,unmarshalRsaPrivateKey:()=>_y,unmarshalRsaPublicKey:()=>Ry});var En=Gt(ct(),1);var Cb=Gt(zc(),1);function vi(t){if(isNaN(t)||t<=0)throw new q("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return qr(t)}var fb=Gt(ei(),1),bs=Gt(ct(),1);function Gc(t,e){return e.map(r=>Jt(t[r]))}function Wc(t){return bs.default.pki.setRsaPrivateKey(...Gc(t,["n","e","d","p","q","dp","dq","qi"]))}function Yc(t){return bs.default.pki.setRsaPublicKey(...Gc(t,["n","e"]))}var Br={};Nt(Br,{jwkToPkcs1:()=>By,jwkToPkix:()=>Iy,pkcs1ToJwk:()=>Sy,pkixToJwk:()=>Ay});var hb=Gt(ln(),1),db=Gt(ei(),1);var He=Gt(ct(),1);function Sy(t){let e=He.default.asn1.fromDer(nt(t,"ascii")),r=He.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:ue(r.n),e:ue(r.e),d:ue(r.d),p:ue(r.p),q:ue(r.q),dp:ue(r.dP),dq:ue(r.dQ),qi:ue(r.qInv),alg:"RS256"}}function By(t){if(t.n==null||t.e==null||t.d==null||t.p==null||t.q==null||t.dp==null||t.dq==null||t.qi==null)throw new q("JWK was missing components","ERR_INVALID_PARAMETERS");let e=He.default.pki.privateKeyToAsn1({n:Jt(t.n),e:Jt(t.e),d:Jt(t.d),p:Jt(t.p),q:Jt(t.q),dP:Jt(t.dp),dQ:Jt(t.dq),qInv:Jt(t.qi)});return lt(He.default.asn1.toDer(e).getBytes(),"ascii")}function Ay(t){let e=He.default.asn1.fromDer(nt(t,"ascii")),r=He.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:ue(r.n),e:ue(r.e)}}function Iy(t){if(t.n==null||t.e==null)throw new q("JWK was missing components","ERR_INVALID_PARAMETERS");let e=He.default.pki.publicKeyToAsn1({n:Jt(t.n),e:Jt(t.e)});return lt(He.default.asn1.toDer(e).getBytes(),"ascii")}async function $c(t){let e=await Zt.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 Xc(e);return{privateKey:r[0],publicKey:r[1]}}async function vs(t){let r=[await Zt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Cy(t)],n=await Xc({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Zc(t,e){let r=await Zt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Zt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function Qc(t,e,r){let n=await Zt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Zt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r instanceof Uint8Array?r:r.subarray())}async function Xc(t){if(t.privateKey==null||t.publicKey==null)throw new q("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Zt.get().subtle.exportKey("jwk",t.privateKey),Zt.get().subtle.exportKey("jwk",t.publicKey)])}async function Cy(t){return Zt.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 Jc(t,e,r,n){let i=e?Yc(t):Wc(t),o=nt(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return lt(s,"ascii")}function jc(t,e){return Jc(t,!0,e,(r,n)=>n.encrypt(r))}function tf(t,e){return Jc(t,!1,e,(r,n)=>n.decrypt(r))}function wi(t){if(t.kty!=="RSA")throw new q("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new q("invalid key modulus","ERR_INVALID_KEY_MODULUS");return lt(t.n,"base64url").length*8}var Bn=8192,Sn=class{_key;constructor(e){this._key=e}verify(e,r){return Qc(this._key,r,e)}marshal(){return Br.jwkToPkix(this._key)}get bytes(){return Ce.encode({Type:mt.RSA,Data:this.marshal()}).subarray()}encrypt(e){return jc(this._key,e)}equals(e){return Tt(this.bytes,e.bytes)}hash(){let e=Mt.digest(this.bytes);return re(e)?e.then(({bytes:r})=>r):e.bytes}},Zr=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return vi(16)}sign(e){return Zc(this._key,e)}get public(){if(this._publicKey==null)throw new q("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Sn(this._publicKey)}decrypt(e){return tf(this._key,e)}marshal(){return Br.jwkToPkcs1(this._key)}get bytes(){return Te.encode({Type:mt.RSA,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}hash(){let e=Mt.digest(this.bytes);return re(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return nt(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new En.default.util.ByteBuffer(this.marshal()),i=En.default.asn1.fromDer(n),o=En.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return En.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return Wr(this.bytes,e);throw new q(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function _y(t){let e=Br.pkcs1ToJwk(t);if(wi(e)>Bn)throw new q("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await vs(e);return new Zr(r.privateKey,r.publicKey)}function Ry(t){let e=Br.pkixToJwk(t);if(wi(e)>Bn)throw new q("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Sn(e)}async function Ly(t){if(wi(t)>Bn)throw new q("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await vs(t);return new Zr(e.privateKey,e.publicKey)}async function Ny(t){if(t>Bn)throw new q("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await $c(t);return new Zr(e.privateKey,e.publicKey)}var Cs={};Nt(Cs,{Secp256k1PrivateKey:()=>In,Secp256k1PublicKey:()=>An,generateKeyPair:()=>Yy,unmarshalSecp256k1PrivateKey:()=>Gy,unmarshalSecp256k1PublicKey:()=>Wy});var Dy=(t,e,r)=>t&e^~t&r,Py=(t,e,r)=>t&e^t&r^e&r,ky=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]),or=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),sr=new Uint32Array(64),Es=class extends Hr{constructor(){super(64,32,8,!1),this.A=or[0]|0,this.B=or[1]|0,this.C=or[2]|0,this.D=or[3]|0,this.E=or[4]|0,this.F=or[5]|0,this.G=or[6]|0,this.H=or[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)sr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=sr[l-15],y=sr[l-2],d=le(h,7)^le(h,18)^h>>>3,p=le(y,17)^le(y,19)^y>>>10;sr[l]=p+sr[l-7]+d+sr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=le(a,6)^le(a,11)^le(a,25),y=u+h+Dy(a,c,f)+ky[l]+sr[l]|0,p=(le(n,2)^le(n,13)^le(n,22))+Py(n,i,o)|0;u=f,f=c,c=a,a=s+y|0,s=o,o=i,i=n,n=y+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,i,o,s,a,c,f,u)}roundClean(){sr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var ef=si(()=>new Es);function Uy(t){let e=gn(t);Ie(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:Oy,hexToBytes:Ky}=ui,Ar={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Ar;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:Oy(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Ar,r=typeof t=="string"?Ky(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:o}=Ar._parseInt(r.subarray(2)),{d:s,l:a}=Ar._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},ze=BigInt(0),ne=BigInt(1),Ob=BigInt(2),rf=BigInt(3),Kb=BigInt(4);function My(t){let e=Uy(t),{Fp:r}=e,n=e.toBytes||((d,p,g)=>{let m=p.toAffine();return Ve(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),g=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:g,y:m}});function o(d){let{a:p,b:g}=e,m=r.sqr(d),w=r.mul(m,d);return r.add(r.add(w,r.mul(d,p)),g)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&ze<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:g,wrapPrivateKey:m,n:w}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Ke(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(g*2,"0")}let v;try{v=typeof d=="bigint"?d:Me(wt("private key",d,g))}catch{throw new Error(`private key must be ${g} bytes, hex or bigint, not ${typeof d}`)}return m&&(v=ft(v,w)),a(v),v}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,g,m){if(this.px=p,this.py=g,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(g==null||!r.isValid(g))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:g,y:m}=p||{};if(!p||!r.isValid(g)||!r.isValid(m))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let w=v=>r.eql(v,r.ZERO);return w(g)&&w(m)?l.ZERO:new l(g,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let g=r.invertBatch(p.map(m=>m.pz));return p.map((m,w)=>m.toAffine(g[w])).map(l.fromAffine)}static fromHex(p){let g=l.fromAffine(i(wt("pointHex",p)));return g.assertValidity(),g}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y:g}=this.toAffine();if(!r.isValid(p)||!r.isValid(g))throw new Error("bad point: x or y not FE");let m=r.sqr(g),w=o(p);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:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:g,py:m,pz:w}=this,{px:v,py:R,pz:E}=p,S=r.eql(r.mul(g,E),r.mul(v,w)),L=r.eql(r.mul(m,E),r.mul(R,w));return S&&L}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:g}=e,m=r.mul(g,rf),{px:w,py:v,pz:R}=this,E=r.ZERO,S=r.ZERO,L=r.ZERO,N=r.mul(w,w),z=r.mul(v,v),H=r.mul(R,R),V=r.mul(w,v);return V=r.add(V,V),L=r.mul(w,R),L=r.add(L,L),E=r.mul(p,L),S=r.mul(m,H),S=r.add(E,S),E=r.sub(z,S),S=r.add(z,S),S=r.mul(E,S),E=r.mul(V,E),L=r.mul(m,L),H=r.mul(p,H),V=r.sub(N,H),V=r.mul(p,V),V=r.add(V,L),L=r.add(N,N),N=r.add(L,N),N=r.add(N,H),N=r.mul(N,V),S=r.add(S,N),H=r.mul(v,R),H=r.add(H,H),N=r.mul(H,V),E=r.sub(E,N),L=r.mul(H,z),L=r.add(L,L),L=r.add(L,L),new l(E,S,L)}add(p){u(p);let{px:g,py:m,pz:w}=this,{px:v,py:R,pz:E}=p,S=r.ZERO,L=r.ZERO,N=r.ZERO,z=e.a,H=r.mul(e.b,rf),V=r.mul(g,v),Q=r.mul(m,R),at=r.mul(w,E),Ut=r.add(g,m),C=r.add(v,R);Ut=r.mul(Ut,C),C=r.add(V,Q),Ut=r.sub(Ut,C),C=r.add(g,w);let P=r.add(v,E);return C=r.mul(C,P),P=r.add(V,at),C=r.sub(C,P),P=r.add(m,w),S=r.add(R,E),P=r.mul(P,S),S=r.add(Q,at),P=r.sub(P,S),N=r.mul(z,C),S=r.mul(H,at),N=r.add(S,N),S=r.sub(Q,N),N=r.add(Q,N),L=r.mul(S,N),Q=r.add(V,V),Q=r.add(Q,V),at=r.mul(z,at),C=r.mul(H,C),Q=r.add(Q,at),at=r.sub(V,at),at=r.mul(z,at),C=r.add(C,at),V=r.mul(Q,C),L=r.add(L,V),V=r.mul(P,C),S=r.mul(Ut,S),S=r.sub(S,V),V=r.mul(Ut,Q),N=r.mul(P,N),N=r.add(N,V),new l(S,L,N)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return y.wNAFCached(this,f,p,g=>{let m=r.invertBatch(g.map(w=>w.pz));return g.map((w,v)=>w.toAffine(m[v])).map(l.fromAffine)})}multiplyUnsafe(p){let g=l.ZERO;if(p===ze)return g;if(a(p),p===ne)return this;let{endo:m}=e;if(!m)return y.unsafeLadder(this,p);let{k1neg:w,k1:v,k2neg:R,k2:E}=m.splitScalar(p),S=g,L=g,N=this;for(;v>ze||E>ze;)v&ne&&(S=S.add(N)),E&ne&&(L=L.add(N)),N=N.double(),v>>=ne,E>>=ne;return w&&(S=S.negate()),R&&(L=L.negate()),L=new l(r.mul(L.px,m.beta),L.py,L.pz),S.add(L)}multiply(p){a(p);let g=p,m,w,{endo:v}=e;if(v){let{k1neg:R,k1:E,k2neg:S,k2:L}=v.splitScalar(g),{p:N,f:z}=this.wNAF(E),{p:H,f:V}=this.wNAF(L);N=y.constTimeNegate(R,N),H=y.constTimeNegate(S,H),H=new l(r.mul(H.px,v.beta),H.py,H.pz),m=N.add(H),w=z.add(V)}else{let{p:R,f:E}=this.wNAF(g);m=R,w=E}return l.normalizeZ([m,w])[0]}multiplyAndAddUnsafe(p,g,m){let w=l.BASE,v=(E,S)=>S===ze||S===ne||!E.equals(w)?E.multiplyUnsafe(S):E.multiply(S),R=v(this,g).add(v(p,m));return R.is0()?void 0:R}toAffine(p){let{px:g,py:m,pz:w}=this,v=this.is0();p==null&&(p=v?r.ONE:r.inv(w));let R=r.mul(g,p),E=r.mul(m,p),S=r.mul(w,p);if(v)return{x:r.ZERO,y:r.ZERO};if(!r.eql(S,r.ONE))throw new Error("invZ was invalid");return{x:R,y:E}}isTorsionFree(){let{h:p,isTorsionFree:g}=e;if(p===ne)return!0;if(g)return g(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:g}=e;return p===ne?this:g?g(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ke(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,y=di(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Vy(t){let e=gn(t);return Ie(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function nf(t){let e=Vy(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return ze<C&&C<r.ORDER}function a(C){return ft(C,n)}function c(C){return li(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=My({...e,toBytes(C,P,_){let D=P.toAffine(),A=r.toBytes(D.x),O=Ve;return _?O(Uint8Array.from([P.hasEvenY()?2:3]),A):O(Uint8Array.from([4]),A,r.toBytes(D.y))},fromBytes(C){let P=C.length,_=C[0],D=C.subarray(1);if(P===i&&(_===2||_===3)){let A=Me(D);if(!s(A))throw new Error("Point is not on curve");let O=l(A),K=r.sqrt(O),F=(K&ne)===ne;return(_&1)===1!==F&&(K=r.neg(K)),{x:A,y:K}}else if(P===o&&_===4){let A=r.fromBytes(D.subarray(0,r.BYTES)),O=r.fromBytes(D.subarray(r.BYTES,2*r.BYTES));return{x:A,y:O}}else throw new Error(`Point of length ${P} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),y=C=>Ke(nr(C,e.nByteLength));function d(C){let P=n>>ne;return C>P}function p(C){return d(C)?a(-C):C}let g=(C,P,_)=>Me(C.slice(P,_));class m{constructor(P,_,D){this.r=P,this.s=_,this.recovery=D,this.assertValidity()}static fromCompact(P){let _=e.nByteLength;return P=wt("compactSignature",P,_*2),new m(g(P,0,_),g(P,_,2*_))}static fromDER(P){let{r:_,s:D}=Ar.toSig(wt("DER",P));return new m(_,D)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(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:_,s:D,recovery:A}=this,O=L(wt("msgHash",P));if(A==null||![0,1,2,3].includes(A))throw new Error("recovery id invalid");let K=A===2||A===3?_+e.n:_;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let F=A&1?"03":"02",$=f.fromHex(F+y(K)),X=c(K),st=a(-O*X),J=a(D*X),et=f.BASE.multiplyAndAddUnsafe($,st,J);if(!et)throw new Error("point at infinify");return et.assertValidity(),et}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return xr(this.toDERHex())}toDERHex(){return Ar.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return xr(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let w={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=Qo(e.n);return vc(e.randomBytes(C),e.n)},precompute(C=8,P=f.BASE){return P._setWindowSize(C),P.multiply(BigInt(3)),P}};function v(C,P=!0){return f.fromPrivateKey(C).toRawBytes(P)}function R(C){let P=C instanceof Uint8Array,_=typeof C=="string",D=(P||_)&&C.length;return P?D===i||D===o:_?D===2*i||D===2*o:C instanceof f}function E(C,P,_=!0){if(R(C))throw new Error("first arg must be private key");if(!R(P))throw new Error("second arg must be public key");return f.fromHex(P).multiply(u(C)).toRawBytes(_)}let S=e.bits2int||function(C){let P=Me(C),_=C.length*8-e.nBitLength;return _>0?P>>BigInt(_):P},L=e.bits2int_modN||function(C){return a(S(C))},N=yn(e.nBitLength);function z(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(ze<=C&&C<N))throw new Error(`bigint expected < 2^${e.nBitLength}`);return nr(C,e.nByteLength)}function H(C,P,_=V){if(["recovered","canonical"].some(bt=>bt in _))throw new Error("sign() legacy options not supported");let{hash:D,randomBytes:A}=e,{lowS:O,prehash:K,extraEntropy:F}=_;O==null&&(O=!0),C=wt("msgHash",C),K&&(C=wt("prehashed msgHash",D(C)));let $=L(C),X=u(P),st=[z(X),z($)];if(F!=null){let bt=F===!0?A(r.BYTES):F;st.push(wt("extraEntropy",bt))}let J=Ve(...st),et=$;function At(bt){let Ot=S(bt);if(!h(Ot))return;let Kt=c(Ot),Ct=f.BASE.multiply(Ot).toAffine(),Vt=a(Ct.x);if(Vt===ze)return;let Le=a(Kt*a(et+Vt*X));if(Le===ze)return;let fr=(Ct.x===Vt?0:2)|Number(Ct.y&ne),en=Le;return O&&d(Le)&&(en=p(Le),fr^=1),new m(Vt,en,fr)}return{seed:J,k2sig:At}}let V={lowS:e.lowS,prehash:!1},Q={lowS:e.lowS,prehash:!1};function at(C,P,_=V){let{seed:D,k2sig:A}=H(C,P,_),O=e;return Wo(O.hash.outputLen,O.nByteLength,O.hmac)(D,A)}f.BASE._setWindowSize(8);function Ut(C,P,_,D=Q){let A=C;if(P=wt("msgHash",P),_=wt("publicKey",_),"strict"in D)throw new Error("options.strict was renamed to lowS");let{lowS:O,prehash:K}=D,F,$;try{if(typeof A=="string"||A instanceof Uint8Array)try{F=m.fromDER(A)}catch(Ct){if(!(Ct instanceof Ar.Err))throw Ct;F=m.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:Ct,s:Vt}=A;F=new m(Ct,Vt)}else throw new Error("PARSE");$=f.fromHex(_)}catch(Ct){if(Ct.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(O&&F.hasHighS())return!1;K&&(P=e.hash(P));let{r:X,s:st}=F,J=L(P),et=c(st),At=a(J*et),bt=a(X*et),Ot=f.BASE.multiplyAndAddUnsafe($,At,bt)?.toAffine();return Ot?a(Ot.x)===X:!1}return{CURVE:e,getPublicKey:v,getSharedSecret:E,sign:at,verify:Ut,ProjectivePoint:f,Signature:m,utils:w}}var Ei=class extends Fr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,cc(e);let n=pn(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,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return Vr(this),this.iHash.update(e),this}digestInto(e){Vr(this),Mo(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:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,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()}},Ss=(t,e,r)=>new Ei(t,e).update(r).digest();Ss.create=(t,e)=>new Ei(t,e);function Fy(t){return{hash:t,hmac:(e,...r)=>Ss(t,e,oi(...r)),randomBytes:qr}}function of(t,e){let r=n=>nf({...t,...Fy(n)});return Object.freeze({...r(e),create:r})}var cf=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),sf=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),qy=BigInt(1),Bs=BigInt(2),af=(t,e)=>(t+e/Bs)/e;function Hy(t){let e=cf,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=t*t*t%e,u=f*f*t%e,l=xt(u,r,e)*u%e,h=xt(l,r,e)*u%e,y=xt(h,Bs,e)*f%e,d=xt(y,i,e)*y%e,p=xt(d,o,e)*d%e,g=xt(p,a,e)*p%e,m=xt(g,c,e)*g%e,w=xt(m,a,e)*p%e,v=xt(w,r,e)*u%e,R=xt(v,s,e)*d%e,E=xt(R,n,e)*f%e,S=xt(E,Bs,e);if(!As.eql(As.sqr(S),t))throw new Error("Cannot find square root");return S}var As=hi(cf,void 0,void 0,{sqrt:Hy}),xe=of({a:BigInt(0),b:BigInt(7),Fp:As,n:sf,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=sf,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-qy*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=af(o*t,e),c=af(-n*t,e),f=ft(t-a*r-c*i,e),u=ft(-a*n-c*o,e),l=f>s,h=u>s;if(l&&(f=e-f),h&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},ef),Qb=BigInt(0);var Xb=xe.ProjectivePoint;function ff(){return xe.utils.randomPrivateKey()}function uf(t,e){let r=Mt.digest(e instanceof Uint8Array?e:e.subarray());if(re(r))return r.then(({digest:n})=>xe.sign(n,t).toDERRawBytes()).catch(n=>{throw new q(String(n),"ERR_INVALID_INPUT")});try{return xe.sign(r.digest,t).toDERRawBytes()}catch(n){throw new q(String(n),"ERR_INVALID_INPUT")}}function lf(t,e,r){let n=Mt.digest(r instanceof Uint8Array?r:r.subarray());if(re(n))return n.then(({digest:i})=>xe.verify(e,i,t)).catch(i=>{throw new q(String(i),"ERR_INVALID_INPUT")});try{return xe.verify(e,n.digest,t)}catch(i){throw new q(String(i),"ERR_INVALID_INPUT")}}function hf(t){return xe.ProjectivePoint.fromHex(t).toRawBytes(!0)}function df(t){try{xe.getPublicKey(t,!0)}catch(e){throw new q(String(e),"ERR_INVALID_PRIVATE_KEY")}}function Is(t){try{xe.ProjectivePoint.fromHex(t)}catch(e){throw new q(String(e),"ERR_INVALID_PUBLIC_KEY")}}function pf(t){try{return xe.getPublicKey(t,!0)}catch(e){throw new q(String(e),"ERR_INVALID_PRIVATE_KEY")}}var An=class{_key;constructor(e){Is(e),this._key=e}verify(e,r){return lf(this._key,r,e)}marshal(){return hf(this._key)}get bytes(){return Ce.encode({Type:mt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}async hash(){let e=Mt.digest(this.bytes),r;return re(e)?{bytes:r}=await e:r=e.bytes,r}},In=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??pf(e),df(this._key),Is(this._publicKey)}sign(e){return uf(this._key,e)}get public(){return new An(this._publicKey)}marshal(){return this._key}get bytes(){return Te.encode({Type:mt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}hash(){let e=Mt.digest(this.bytes);return re(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return nt(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Wr(this.bytes,e);throw new q(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Gy(t){return new In(t)}function Wy(t){return new An(t)}async function Yy(){let t=ff();return new In(t)}var Ir={rsa:ws,ed25519:gs,secp256k1:Cs};function yf(t){let e=Object.keys(Ir).join(" / ");return new q(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function gf(t){let e=Ce.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case mt.RSA:return Ir.rsa.unmarshalRsaPublicKey(r);case mt.Ed25519:return Ir.ed25519.unmarshalEd25519PublicKey(r);case mt.Secp256k1:return Ir.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw yf(e.Type??"unknown")}}async function xf(t){let e=Te.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case mt.RSA:return Ir.rsa.unmarshalRsaPrivateKey(r);case mt.Ed25519:return Ir.ed25519.unmarshalEd25519PrivateKey(r);case mt.Secp256k1:return Ir.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw yf(e.Type??"RSA")}}var Zy=Math.pow(2,7),Qy=Math.pow(2,14),Xy=Math.pow(2,21),Ts=Math.pow(2,28),_s=Math.pow(2,35),Rs=Math.pow(2,42),Ls=Math.pow(2,49),it=128,Ht=127;function zt(t){if(t<Zy)return 1;if(t<Qy)return 2;if(t<Xy)return 3;if(t<Ts)return 4;if(t<_s)return 5;if(t<Rs)return 6;if(t<Ls)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Jy(t,e,r=0){switch(zt(t)){case 8:e[r++]=t&255|it,t/=128;case 7:e[r++]=t&255|it,t/=128;case 6:e[r++]=t&255|it,t/=128;case 5:e[r++]=t&255|it,t/=128;case 4:e[r++]=t&255|it,t>>>=7;case 3:e[r++]=t&255|it,t>>>=7;case 2:e[r++]=t&255|it,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function jy(t,e,r=0){switch(zt(t)){case 8:e.set(r++,t&255|it),t/=128;case 7:e.set(r++,t&255|it),t/=128;case 6:e.set(r++,t&255|it),t/=128;case 5:e.set(r++,t&255|it),t/=128;case 4:e.set(r++,t&255|it),t>>>=7;case 3:e.set(r++,t&255|it),t>>>=7;case 2:e.set(r++,t&255|it),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function t1(t,e){let r=t[e],n=0;if(n+=r&Ht,r<it||(r=t[e+1],n+=(r&Ht)<<7,r<it)||(r=t[e+2],n+=(r&Ht)<<14,r<it)||(r=t[e+3],n+=(r&Ht)<<21,r<it)||(r=t[e+4],n+=(r&Ht)*Ts,r<it)||(r=t[e+5],n+=(r&Ht)*_s,r<it)||(r=t[e+6],n+=(r&Ht)*Rs,r<it)||(r=t[e+7],n+=(r&Ht)*Ls,r<it))return n;throw new RangeError("Could not decode varint")}function e1(t,e){let r=t.get(e),n=0;if(n+=r&Ht,r<it||(r=t.get(e+1),n+=(r&Ht)<<7,r<it)||(r=t.get(e+2),n+=(r&Ht)<<14,r<it)||(r=t.get(e+3),n+=(r&Ht)<<21,r<it)||(r=t.get(e+4),n+=(r&Ht)*Ts,r<it)||(r=t.get(e+5),n+=(r&Ht)*_s,r<it)||(r=t.get(e+6),n+=(r&Ht)*Rs,r<it)||(r=t.get(e+7),n+=(r&Ht)*Ls,r<it))return n;throw new RangeError("Could not decode varint")}function ie(t,e,r=0){return e==null&&(e=Ft(zt(t))),e instanceof Uint8Array?Jy(t,e,r):jy(t,e,r)}function me(t,e=0){return t instanceof Uint8Array?t1(t,e):e1(t,e)}var bf=Symbol.for("@achingbrain/uint8arraylist");function mf(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function Si(t){return!!t?.[bf]}var Xt=class t{bufs;length;[bf]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Si(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Si(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=mf(this.bufs,e);return r.buf[r.index]}set(e,r){let n=mf(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(Si(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return _t(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:_t(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=[...n],o}_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 o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let f=e>=a&&e<c,u=r>a&&r<=c;if(f&&u){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(f){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!Si(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let h=f;h>=0;h--){let y=this.get(l+h);if(n[h]!==y){u=Math.max(1,h-a[y]);break}}if(u===0)return l}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=Ft(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=Oe(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=Oe(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=Oe(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=Ft(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=Oe(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=Oe(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=Oe(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=Oe(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=Oe(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(!Tt(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,o)=>i+o.byteLength,0)),n.length=r,n}};var vf={ERR_SIGNATURE_NOT_VALID:"ERR_SIGNATURE_NOT_VALID"};var Cn;(function(t){let e;t.codec=()=>(e==null&&(e=ge((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.publicKey!=null&&r.publicKey.byteLength>0&&(n.uint32(10),n.bytes(r.publicKey)),r.payloadType!=null&&r.payloadType.byteLength>0&&(n.uint32(18),n.bytes(r.payloadType)),r.payload!=null&&r.payload.byteLength>0&&(n.uint32(26),n.bytes(r.payload)),r.signature!=null&&r.signature.byteLength>0&&(n.uint32(42),n.bytes(r.signature)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={publicKey:new Uint8Array(0),payloadType:new Uint8Array(0),payload:new Uint8Array(0),signature:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.publicKey=r.bytes();break;case 2:i.payloadType=r.bytes();break;case 3:i.payload=r.bytes();break;case 5:i.signature=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>ye(r,t.codec()),t.decode=r=>pe(r,t.codec())})(Cn||(Cn={}));var ar=class t{static createFromProtobuf=async e=>{let r=Cn.decode(e),n=await an(r.publicKey);return new t({peerId:n,payloadType:r.payloadType,payload:r.payload,signature:r.signature})};static seal=async(e,r)=>{if(r.privateKey==null)throw new Error("Missing private key");let n=e.domain,i=e.codec,o=e.marshal(),s=wf(n,i,o),c=await(await xf(r.privateKey)).sign(s.subarray());return new t({peerId:r,payloadType:i,payload:o,signature:c})};static openAndCertify=async(e,r)=>{let n=await t.createFromProtobuf(e);if(!await n.validate(r))throw new q("envelope signature is not valid for the given domain",vf.ERR_SIGNATURE_NOT_VALID);return n};peerId;payloadType;payload;signature;marshaled;constructor(e){let{peerId:r,payloadType:n,payload:i,signature:o}=e;this.peerId=r,this.payloadType=n,this.payload=i,this.signature=o}marshal(){if(this.peerId.publicKey==null)throw new Error("Missing public key");return this.marshaled==null&&(this.marshaled=Cn.encode({publicKey:this.peerId.publicKey,payloadType:this.payloadType,payload:this.payload.subarray(),signature:this.signature})),this.marshaled}equals(e){return Tt(this.marshal(),e.marshal())}async validate(e){let r=wf(e,this.payloadType,this.payload);if(this.peerId.publicKey==null)throw new Error("Missing public key");return gf(this.peerId.publicKey).verify(r.subarray(),this.signature)}},wf=(t,e,r)=>{let n=lt(t),i=ie(n.byteLength),o=ie(e.length),s=ie(r.length);return new Xt(i,n,o,e,s,r)};function Ef(t,e){let r=(n,i)=>n.toString().localeCompare(i.toString());return t.length!==e.length?!1:(e.sort(r),t.sort(r).every((n,i)=>e[i].equals(n)))}var Bi=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var Ai=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(o*=e,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Sf=45,r1=15,Xr=new Ai;function Ns(t){if(!(t.length>r1))return Xr.new(t).parseWith(()=>Xr.readIPv4Addr())}function Ds(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Sf))return Xr.new(t).parseWith(()=>Xr.readIPv6Addr())}function Ii(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Sf))return Xr.new(t).parseWith(()=>Xr.readIPAddr())}var $v=parseInt("0xFFFF",16),Zv=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Ci(t){return!!Ns(t)}function Ti(t){return!!Ds(t)}function _i(t){return!!Ii(t)}var If=Ci,a1=Ti,Ps=function(t){let e=0;if(t=t.toString().trim(),If(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(a1(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=If(r[n]),s;o&&(s=Ps(r[n]),r[n]=nt(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,nt(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},Cf=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Jr={},ks={},f1=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,-1,"memory"]];f1.forEach(t=>{let e=u1(...t);ks[e.code]=e,Jr[e.name]=e});function u1(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function ot(t){if(typeof t=="number"){if(ks[t]!=null)return ks[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(Jr[t]!=null)return Jr[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var Nw=ot("ip4"),Dw=ot("ip6"),Pw=ot("ipcidr");function Os(t,e){switch(ot(t).code){case 4:case 41:return h1(e);case 42:return Rf(e);case 6:case 273:case 33:case 132:return Nf(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Rf(e);case 421:return g1(e);case 444:return Lf(e);case 445:return Lf(e);case 466:return y1(e);default:return nt(e,"base16")}}function Ks(t,e){switch(ot(t).code){case 4:return Tf(e);case 41:return Tf(e);case 42:return _f(e);case 6:case 273:case 33:case 132:return Ms(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return _f(e);case 421:return d1(e);case 444:return x1(e);case 445:return m1(e);case 466:return p1(e);default:return lt(e,"base16")}}var Us=Object.values($e).map(t=>t.decoder),l1=function(){let t=Us[0].or(Us[1]);return Us.slice(2).forEach(e=>t=t.or(e)),t}();function Tf(t){if(!_i(t))throw new Error("invalid ip address");return Ps(t)}function h1(t){let e=Cf(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!_i(e))throw new Error("invalid ip address");return e}function Ms(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Nf(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function _f(t){let e=lt(t),r=Uint8Array.from(ie(e.length));return _t([r,e],r.length+e.length)}function Rf(t){let e=me(t);if(t=t.slice(zt(e)),t.length!==e)throw new Error("inconsistent lengths");return nt(t)}function d1(t){let e;t[0]==="Q"||t[0]==="1"?e=ur(Et.decode(`z${t}`)).bytes:e=ae.parse(t).multihash.bytes;let r=Uint8Array.from(ie(e.length));return _t([r,e],r.length+e.length)}function p1(t){let e=l1.decode(t),r=Uint8Array.from(ie(e.length));return _t([r,e],r.length+e.length)}function y1(t){let e=me(t),r=t.slice(zt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+nt(r,"base64url")}function g1(t){let e=me(t),r=t.slice(zt(e));if(r.length!==e)throw new Error("inconsistent lengths");return nt(r,"base58btc")}function x1(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let r=De.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ms(n);return _t([r,i],r.length+i.length)}function m1(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let r=De.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ms(n);return _t([r,i],r.length+i.length)}function Lf(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=nt(e,"base32"),i=Nf(r);return`${n}:${i}`}function Df(t){t=Vs(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ot(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw kf("invalid address: "+t);if(a.path===!0){n=Vs(i.slice(o).join("/")),e.push([a.code,Ks(a.code,n)]),r.push([a.code,n]);break}let c=Ks(a.code,i[o]);e.push([a.code,c]),r.push([a.code,Os(a.code,c)])}return{string:Pf(r),bytes:qs(e),tuples:e,stringTuples:r,path:n}}function Fs(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=me(t,i),s=zt(o),a=ot(o),c=b1(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let f=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw kf("Invalid address Uint8Array: "+nt(t,"base16"));e.push([o,f]);let u=Os(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:Pf(r),tuples:e,stringTuples:r,path:n}}function Pf(t){let e=[];return t.map(r=>{let n=ot(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Vs(e.join("/"))}function qs(t){return _t(t.map(e=>{let r=ot(e[0]),n=Uint8Array.from(ie(r.code));return e.length>1&&e[1]!=null&&(n=_t([n,e[1]])),n}))}function b1(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=me(e instanceof Uint8Array?e:Uint8Array.from(e));return r+zt(r)}}function Vs(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function kf(t){return new Error("Error parsing address: "+t)}var v1=Symbol.for("nodejs.util.inspect.custom"),Hs=Symbol.for("@multiformats/js-multiaddr/multiaddr"),w1=[ot("dns").code,ot("dns4").code,ot("dns6").code,ot("dnsaddr").code],Ri=class t{bytes;#t;#e;#r;#n;[Hs]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Fs(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=Df(e)}else if(Of(e))r=Fs(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#t=r.string,this.#e=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#t}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=ot("tcp"),a=ot("udp"),c=ot("ip4"),f=ot("ip6"),u=ot("dns6"),l=ot("ip6zone");for(let[y,d]of this.stringTuples())y===l.code&&(o=`%${d??""}`),w1.includes(y)&&(r=s.name,i=443,n=`${d??""}${o}`,e=y===u.code?6:4),(y===s.code||y===a.code)&&(r=ot(y).name,i=parseInt(d??"")),(y===c.code||y===f.code)&&(r=ot(y).name,n=`${d??""}${o}`,e=y===f.code?6:4);if(e==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:r,port:i}}protos(){return this.#e.map(([e])=>Object.assign({},ot(e)))}protoCodes(){return this.#e.map(([e])=>e)}protoNames(){return this.#e.map(([e])=>ot(e).name)}tuples(){return this.#e}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(qs(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Jr.p2p.code&&e.push([n,i]),n===Jr["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?nt(Et.decode(`z${n}`),"base58btc"):nt(ae.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Tt(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=Uf.get(r.name);if(n==null)throw new Bi(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[v1](){return`Multiaddr(${this.#t})`}};var Uf=new Map;function Of(t){return!!t?.[Hs]}function cr(t){return new Ri(t)}var Kf="libp2p-peer-record",Mf=Uint8Array.from([3,1]);var Tn;(function(t){let e;(function(n){let i;n.codec=()=>(i==null&&(i=ge((o,s,a={})=>{a.lengthDelimited!==!1&&s.fork(),o.multiaddr!=null&&o.multiaddr.byteLength>0&&(s.uint32(10),s.bytes(o.multiaddr)),a.lengthDelimited!==!1&&s.ldelim()},(o,s)=>{let a={multiaddr:new Uint8Array(0)},c=s==null?o.len:o.pos+s;for(;o.pos<c;){let f=o.uint32();switch(f>>>3){case 1:a.multiaddr=o.bytes();break;default:o.skipType(f&7);break}}return a})),i),n.encode=o=>ye(o,n.codec()),n.decode=o=>pe(o,n.codec())})(e=t.AddressInfo||(t.AddressInfo={}));let r;t.codec=()=>(r==null&&(r=ge((n,i,o={})=>{if(o.lengthDelimited!==!1&&i.fork(),n.peerId!=null&&n.peerId.byteLength>0&&(i.uint32(10),i.bytes(n.peerId)),n.seq!=null&&n.seq!==0n&&(i.uint32(16),i.uint64(n.seq)),n.addresses!=null)for(let s of n.addresses)i.uint32(26),t.AddressInfo.codec().encode(s,i);o.lengthDelimited!==!1&&i.ldelim()},(n,i)=>{let o={peerId:new Uint8Array(0),seq:0n,addresses:[]},s=i==null?n.len:n.pos+i;for(;n.pos<s;){let a=n.uint32();switch(a>>>3){case 1:o.peerId=n.bytes();break;case 2:o.seq=n.uint64();break;case 3:o.addresses.push(t.AddressInfo.codec().decode(n,n.uint32()));break;default:n.skipType(a&7);break}}return o})),r),t.encode=n=>ye(n,t.codec()),t.decode=n=>pe(n,t.codec())})(Tn||(Tn={}));var Ge=class t{static createFromProtobuf=e=>{let r=Tn.decode(e),n=yo(r.peerId),i=(r.addresses??[]).map(s=>cr(s.multiaddr)),o=r.seq;return new t({peerId:n,multiaddrs:i,seqNumber:o})};static DOMAIN=Kf;static CODEC=Mf;peerId;multiaddrs;seqNumber;domain=t.DOMAIN;codec=t.CODEC;marshaled;constructor(e){let{peerId:r,multiaddrs:n,seqNumber:i}=e;this.peerId=r,this.multiaddrs=n??[],this.seqNumber=i??BigInt(Date.now())}marshal(){return this.marshaled==null&&(this.marshaled=Tn.encode({peerId:this.peerId.toBytes(),seq:BigInt(this.seqNumber),addresses:this.multiaddrs.map(e=>({multiaddr:e.bytes}))})),this.marshaled}equals(e){return!(!(e instanceof t)||!this.peerId.equals(e.peerId)||this.seqNumber!==e.seqNumber||!Ef(this.multiaddrs,e.multiaddrs))}};var E1=t=>t.toString().split("/").slice(1),_n=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),St=t=>({match:e=>_n(r=>r===t).match(e),pattern:t}),Di=()=>({match:t=>_n(e=>typeof e=="string").match(t),pattern:"{string}"}),Vf=()=>({match:t=>_n(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),oe=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Et.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),Li=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{ro.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),_e=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Re=(...t)=>({match:e=>{let r;for(let n of t){let i=n.match(e);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),Bt=(...t)=>({match:e=>{for(let r of t){let n=r.match(e);if(n===!1)return!1;e=n}return e},pattern:`and(${t.map(e=>e.pattern).join(", ")})`});function Lt(...t){function e(i){let o=E1(i);for(let s of t){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return e(i)!==!1}function n(i){let o=e(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Gs=Bt(St("dns4"),Di()),Ws=Bt(St("dns6"),Di()),Ys=Bt(St("dnsaddr"),Di()),Ff=Bt(St("dns"),Di()),w4=Lt(Gs),E4=Lt(Ws),S4=Lt(Ys),B4=Lt(Re(Ff,Ys,Gs,Ws)),qf=Bt(St("ip4"),_n(Ci)),Hf=Bt(St("ip6"),_n(Ti)),zf=Re(qf,Hf),Rn=Re(zf,Ff,Gs,Ws,Ys),Gf=Lt(Rn),A4=Lt(qf),I4=Lt(Hf),C4=Lt(zf),Pi=Bt(Rn,St("tcp"),Vf()),Ln=Bt(Rn,St("udp"),Vf()),S1=Re(Pi,Ln),T4=Lt(Pi),_4=Lt(Ln),$s=Bt(Ln,St("quic")),ki=Bt(Ln,St("quic-v1")),B1=Re($s,ki),R4=Lt($s),L4=Lt(ki),zs=Re(Rn,Pi,Ln,$s,ki),Wf=Re(Bt(zs,St("ws"),_e(oe()))),N4=Lt(Wf),Yf=Re(Bt(zs,St("wss"),_e(oe())),Bt(zs,St("tls"),St("ws"),_e(oe()))),D4=Lt(Yf),$f=Bt(S1,St("webrtc-direct"),Li(),_e(Li()),_e(oe())),P4=Lt($f),Zf=Bt(ki,St("webtransport"),Li(),Li(),_e(oe())),k4=Lt(Zf),Ni=Re(Wf,Yf,Bt(Pi,_e(oe())),Bt(B1,_e(oe())),Bt(Rn,_e(oe())),$f,Zf,oe()),U4=Lt(Ni),A1=Bt(Ni,St("p2p-circuit"),oe()),O4=Lt(A1),I1=Re(Bt(Ni,St("p2p-circuit"),St("webrtc"),oe()),Bt(Ni,St("webrtc"),_e(oe())),St("webrtc")),K4=Lt(I1);function jr(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var Ui=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function Qf(t,e,r){if(e==null)return t;if(e.aborted)return Promise.reject(new Ui(r?.errorMessage,r?.errorCode));let n,i=new Ui(r?.errorMessage,r?.errorCode);try{return await Promise.race([t,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var Zs=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=jr(),this.needNext.resolve(),this.haveNext=jr()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let e=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=jr(),e}async throw(e){return this.ended=!0,e!=null&&this.haveNext.reject(e),{done:!0,value:void 0}}async return(){let e={done:!0,value:void 0};return await this._push(void 0),e}async push(e,r){await this._push(e,r)}async end(e,r){e!=null?await this.throw(e):await this._push(void 0,r)}async _push(e,r){if(e!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,e!=null?this.nextResult={done:!1,value:e}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=jr(),await Qf(this.needNext.promise,r?.signal,r)}};function Xf(){return new Zs}var Oi=class extends Error{code;constructor(e,r){super(e),this.code=r}},Qs=class extends Oi{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function Jf(t,e){let r=Xf();t.sink(r).catch(async s=>{await r.end(s)}),t.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=t.source;t.source[Symbol.iterator]!=null?n=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(n=t.source[Symbol.asyncIterator]());let i=new Xt;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new Qs("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:h}=await Promise.race([n.next(),f]);return l===!0?new Xt:h}for(;i.byteLength<s;){let{value:l,done:h}=await Promise.race([n.next(),f]);if(h===!0)throw new Oi("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let u=i.sublist(0,s);return i.consume(s),u}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=t.source;t.source=async function*(){e?.yieldBytes===!1?yield i:yield*i,yield*s}()}return t}}}function Ki(t){return t[Symbol.asyncIterator]!=null}var Mi=t=>{let e=zt(t),r=Ft(e);return ie(t,r),Mi.bytes=e,r};Mi.bytes=0;function Nn(t,e){e=e??{};let r=e.lengthEncoder??Mi;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Ki(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}Nn.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??Mi;return new Xt(r(t.byteLength),t)};var tn=Gt(eu(),1);var T1=8,_1=1024*1024*4,Cr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(Cr||(Cr={}));var Js=t=>{let e=me(t);return Js.bytes=zt(e),e};Js.bytes=0;function Xs(t,e){let r=new Xt,n=Cr.LENGTH,i=-1,o=e?.lengthDecoder??Js,s=e?.maxLengthLength??T1,a=e?.maxDataLength??_1;function*c(){for(;r.byteLength>0;){if(n===Cr.LENGTH)try{if(i=o(r),i<0)throw(0,tn.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,tn.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),e?.onLength!=null&&e.onLength(i),n=Cr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,tn.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===Cr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(f),yield f,n=Cr.LENGTH}}}return Ki(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,tn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,tn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}Xs.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return Xs(n,{...e??{},onLength:o=>{r=o}})};var Vi=class extends Error{code;constructor(e,r){super(e),this.code=r}},ru=t=>me(t);ru.bytes=0;function nu(t,e={}){let r=Jf(t,e);return e.maxDataLength!=null&&e.maxLengthLength==null&&(e.maxLengthLength=zt(e.maxDataLength)),{read:async i=>{let o=-1,s=new Xt,a=e?.lengthDecoder??ru;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new Vi("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new Vi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(Nn.single(i,e),o)},writeV:async(i,o)=>{let s=new Xt(...i.map(a=>Nn.single(a,e)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function Dn(t,e){let r=nu(t,e),n={read:async(i,o)=>{let s=await r.read(o);return i.decode(s)},write:async(i,o,s)=>{await r.write(o.encode(i),s)},writeV:async(i,o,s)=>{await r.writeV(i.map(a=>o.encode(a)),s)},pb:i=>({read:async o=>n.read(i,o),write:async(o,s)=>n.write(o,i,s),writeV:async(o,s)=>n.writeV(o,i,s),unwrap:()=>n}),unwrap:()=>r.unwrap()};return n}var su=Gt(ou(),1),js=typeof window=="object"&&typeof document=="object"&&document.nodeType===9,Fi=(0,su.default)(),au=js&&!Fi,cu=Fi&&!js,fu=Fi&&js,uu=typeof globalThis.process<"u"&&typeof globalThis.process.release<"u"&&globalThis.process.release.name==="node"&&!Fi,lu=typeof importScripts=="function"&&typeof self<"u"&&typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,h8=typeof globalThis.process<"u"&&typeof globalThis.process.env<"u"&&globalThis.process.env["NODE"+"_"+"ENV"]==="test",hu=typeof navigator<"u"&&navigator.product==="ReactNative";var Tr;(function(t){let e;t.codec=()=>(e==null&&(e=ge((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.protocolVersion!=null&&(n.uint32(42),n.string(r.protocolVersion)),r.agentVersion!=null&&(n.uint32(50),n.string(r.agentVersion)),r.publicKey!=null&&(n.uint32(10),n.bytes(r.publicKey)),r.listenAddrs!=null)for(let o of r.listenAddrs)n.uint32(18),n.bytes(o);if(r.observedAddr!=null&&(n.uint32(34),n.bytes(r.observedAddr)),r.protocols!=null)for(let o of r.protocols)n.uint32(26),n.string(o);r.signedPeerRecord!=null&&(n.uint32(66),n.bytes(r.signedPeerRecord)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={listenAddrs:[],protocols:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 5:i.protocolVersion=r.string();break;case 6:i.agentVersion=r.string();break;case 1:i.publicKey=r.bytes();break;case 2:i.listenAddrs.push(r.bytes());break;case 4:i.observedAddr=r.bytes();break;case 3:i.protocols.push(r.string());break;case 8:i.signedPeerRecord=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>ye(r,t.codec()),t.decode=r=>pe(r,t.codec())})(Tr||(Tr={}));var ta=1024*8,se={protocolPrefix:"ipfs",timeout:6e4,maxInboundStreams:1,maxOutboundStreams:1,maxPushIncomingStreams:1,maxPushOutgoingStreams:1,maxObservedAddresses:10,maxIdentifyMessageSize:8192,runOnConnectionOpen:!0,runOnTransientConnection:!0},qi=class{identifyProtocolStr;identifyPushProtocolStr;host;started;timeout;peerId;peerStore;registrar;connectionManager;addressManager;maxInboundStreams;maxOutboundStreams;maxPushIncomingStreams;maxPushOutgoingStreams;maxIdentifyMessageSize;maxObservedAddresses;events;runOnTransientConnection;log;constructor(e,r={}){this.started=!1,this.peerId=e.peerId,this.peerStore=e.peerStore,this.registrar=e.registrar,this.addressManager=e.addressManager,this.connectionManager=e.connectionManager,this.events=e.events,this.log=e.logger.forComponent("libp2p:identify"),this.identifyProtocolStr=`/${r.protocolPrefix??se.protocolPrefix}/${da}/${ya}`,this.identifyPushProtocolStr=`/${r.protocolPrefix??se.protocolPrefix}/${pa}/${ga}`,this.timeout=r.timeout??se.timeout,this.maxInboundStreams=r.maxInboundStreams??se.maxInboundStreams,this.maxOutboundStreams=r.maxOutboundStreams??se.maxOutboundStreams,this.maxPushIncomingStreams=r.maxPushIncomingStreams??se.maxPushIncomingStreams,this.maxPushOutgoingStreams=r.maxPushOutgoingStreams??se.maxPushOutgoingStreams,this.maxIdentifyMessageSize=r.maxIdentifyMessageSize??se.maxIdentifyMessageSize,this.maxObservedAddresses=r.maxObservedAddresses??se.maxObservedAddresses,this.runOnTransientConnection=r.runOnTransientConnection??se.runOnTransientConnection,this.host={protocolVersion:`${r.protocolPrefix??se.protocolPrefix}/${ha}`,agentVersion:r.agentVersion??`${e.nodeInfo.name}/${e.nodeInfo.version}`},(r.runOnConnectionOpen??se.runOnConnectionOpen)&&e.events.addEventListener("connection:open",n=>{let i=n.detail;this.identify(i).catch(o=>{this.log.error("error during identify trigged by connection:open",o)})}),e.events.addEventListener("self:peer:update",n=>{this.push().catch(i=>{this.log.error(i)})}),this.host.agentVersion===`${e.nodeInfo.name}/${e.nodeInfo.version}`&&(uu||cu?this.host.agentVersion+=` UserAgent=${globalThis.process.version}`:(au||lu||fu||hu)&&(this.host.agentVersion+=` UserAgent=${globalThis.navigator.userAgent}`))}isStarted(){return this.started}async start(){this.started||(await this.peerStore.merge(this.peerId,{metadata:{AgentVersion:lt(this.host.agentVersion),ProtocolVersion:lt(this.host.protocolVersion)}}),await this.registrar.handle(this.identifyProtocolStr,e=>{this._handleIdentify(e).catch(r=>{this.log.error(r)})},{maxInboundStreams:this.maxInboundStreams,maxOutboundStreams:this.maxOutboundStreams,runOnTransientConnection:this.runOnTransientConnection}),await this.registrar.handle(this.identifyPushProtocolStr,e=>{this._handlePush(e).catch(r=>{this.log.error(r)})},{maxInboundStreams:this.maxPushIncomingStreams,maxOutboundStreams:this.maxPushOutgoingStreams,runOnTransientConnection:this.runOnTransientConnection}),this.started=!0)}async stop(){await this.registrar.unhandle(this.identifyProtocolStr),await this.registrar.unhandle(this.identifyPushProtocolStr),this.started=!1}async pushToConnections(e){let r=this.addressManager.getAddresses().map(u=>u.decapsulateCode(ot("p2p").code)),n=new Ge({peerId:this.peerId,multiaddrs:r}),i=await ar.seal(n,this.peerId),o=this.registrar.getProtocols(),s=await this.peerStore.get(this.peerId),a=nt(s.metadata.get("AgentVersion")??lt(this.host.agentVersion)),c=nt(s.metadata.get("ProtocolVersion")??lt(this.host.protocolVersion)),f=e.map(async u=>{let l,h=AbortSignal.timeout(this.timeout);kn(1/0,h);try{l=await u.newStream(this.identifyPushProtocolStr,{signal:h,runOnTransientConnection:this.runOnTransientConnection}),await Dn(l,{maxDataLength:this.maxIdentifyMessageSize??ta}).pb(Tr).write({listenAddrs:r.map(d=>d.bytes),signedPeerRecord:i.marshal(),protocols:o,agentVersion:a,protocolVersion:c},{signal:h}),await l.close({signal:h})}catch(y){this.log.error("could not push identify update to peer",y),l?.abort(y)}});await Promise.all(f)}async push(){if(!this.isStarted())return;let e=[];await Promise.all(this.connectionManager.getConnections().map(async r=>{try{if(!(await this.peerStore.get(r.remotePeer)).protocols.includes(this.identifyPushProtocolStr))return;e.push(r)}catch(n){if(n.code!==va)throw n}})),await this.pushToConnections(e)}async _identify(e,r={}){let n;if(r.signal==null){let i=AbortSignal.timeout(this.timeout);kn(1/0,i),r={...r,signal:i}}try{n=await e.newStream(this.identifyProtocolStr,{...r,runOnTransientConnection:this.runOnTransientConnection});let o=await Dn(n,{maxDataLength:this.maxIdentifyMessageSize??ta}).pb(Tr).read(r);return await n.close(r),o}catch(i){throw this.log.error("error while reading identify message",i),n?.abort(i),i}}async identify(e,r={}){let n=await this._identify(e,r),{publicKey:i,protocols:o,observedAddr:s}=n;if(i==null)throw new q("public key was missing from identify message","ERR_MISSING_PUBLIC_KEY");let a=await an(i);if(!e.remotePeer.equals(a))throw new q("identified peer does not match the expected peer","ERR_INVALID_PEER");if(this.peerId.equals(a))throw new q("identified peer is our own peer id?","ERR_INVALID_PEER");let c=N1(s);return this.log("identify completed for peer %p and protocols %o",a,o),this.log("our observed address is %a",c),c!=null&&this.addressManager.getObservedAddrs().length<(this.maxObservedAddresses??1/0)&&(this.log("storing our observed address %a",c),this.addressManager.addObservedAddr(c)),this.#t(e,n)}async _handleIdentify(e){let{connection:r,stream:n}=e,i=AbortSignal.timeout(this.timeout);kn(1/0,i);try{let o=this.peerId.publicKey??new Uint8Array(0),s=await this.peerStore.get(this.peerId),a=this.addressManager.getAddresses().map(l=>l.decapsulateCode(ot("p2p").code)),c=s.peerRecordEnvelope;if(a.length>0&&c==null){let l=new Ge({peerId:this.peerId,multiaddrs:a});c=(await ar.seal(l,this.peerId)).marshal().subarray()}let f=r.remoteAddr.bytes;Gf.matches(r.remoteAddr)||(f=void 0),await Dn(n).pb(Tr).write({protocolVersion:this.host.protocolVersion,agentVersion:this.host.agentVersion,publicKey:o,listenAddrs:a.map(l=>l.bytes),signedPeerRecord:c,observedAddr:f,protocols:s.protocols},{signal:i}),await n.close({signal:i})}catch(o){this.log.error("could not respond to identify request",o),n.abort(o)}}async _handlePush(e){let{connection:r,stream:n}=e;try{if(this.peerId.equals(r.remotePeer))throw new Error("received push from ourselves?");let i={signal:AbortSignal.timeout(this.timeout)},s=await Dn(n,{maxDataLength:this.maxIdentifyMessageSize??ta}).pb(Tr).read(i);await n.close(i),await this.#t(r,s)}catch(i){this.log.error("received invalid message",i),n.abort(i);return}this.log("handled push from %p",r.remotePeer)}async#t(e,r){if(this.log("received identify from %p",e.remotePeer),r==null)throw new q("message was null or undefined","ERR_INVALID_MESSAGE");let n={};if(r.listenAddrs.length>0&&(n.addresses=r.listenAddrs.map(s=>({isCertified:!1,multiaddr:cr(s)}))),r.protocols.length>0&&(n.protocols=r.protocols),r.publicKey!=null&&(n.publicKey=r.publicKey,!(await an(r.publicKey)).equals(e.remotePeer)))throw new q("public key did not match remote PeerId","ERR_INVALID_PUBLIC_KEY");let i;if(r.signedPeerRecord!=null){this.log("received signedPeerRecord from %p",e.remotePeer);let s=r.signedPeerRecord,a=await ar.openAndCertify(s,Ge.DOMAIN),c=Ge.createFromProtobuf(a.payload);if(!c.peerId.equals(a.peerId))throw new q("signing key does not match PeerId in the PeerRecord","ERR_INVALID_SIGNING_KEY");if(!e.remotePeer.equals(c.peerId))throw new q("signing key does not match remote PeerId","ERR_INVALID_PEER_RECORD_KEY");let f;try{f=await this.peerStore.get(c.peerId)}catch(u){if(u.code!=="ERR_NOT_FOUND")throw u}if(f!=null&&(n.metadata=f.metadata,f.peerRecordEnvelope!=null)){let u=await ar.createFromProtobuf(f.peerRecordEnvelope),l=Ge.createFromProtobuf(u.payload);l.seqNumber>=c.seqNumber&&(this.log("sequence number was lower or equal to existing sequence number - stored: %d received: %d",l.seqNumber,c.seqNumber),c=l,s=f.peerRecordEnvelope)}n.peerRecordEnvelope=s,n.addresses=c.multiaddrs.map(u=>({isCertified:!0,multiaddr:u})),i={seq:c.seqNumber,addresses:c.multiaddrs}}else this.log("%p did not send a signed peer record",e.remotePeer);if(this.log("patching %p with",e.remotePeer,n),await this.peerStore.patch(e.remotePeer,n),r.agentVersion!=null||r.protocolVersion!=null){let s={};r.agentVersion!=null&&(s.AgentVersion=lt(r.agentVersion)),r.protocolVersion!=null&&(s.ProtocolVersion=lt(r.protocolVersion)),this.log("merging %p metadata",e.remotePeer,s),await this.peerStore.merge(e.remotePeer,{metadata:s})}let o={peerId:e.remotePeer,protocolVersion:r.protocolVersion,agentVersion:r.agentVersion,publicKey:r.publicKey,listenAddrs:r.listenAddrs.map(s=>cr(s)),observedAddr:r.observedAddr==null?void 0:cr(r.observedAddr),protocols:r.protocols,signedPeerRecord:i,connection:e};return this.events.safeDispatchEvent("peer:identify",{detail:o}),o}};function N1(t){if(t!=null&&t.length>0)try{return cr(t)}catch{}}var D1={IDENTIFY:ua,IDENTIFY_PUSH:la};function P1(t={}){return e=>new qi(e,t)}return Iu(k1);})();
|
|
15
|
+
`+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function Xl(t){return t.replace(/^\s+/,"")}});var b0=ut((Nm,x0)=>{var we=ct();dr();It();var y0=x0.exports=we.sha256=we.sha256||{};we.md.sha256=we.md.algorithms.sha256=y0;y0.create=function(){g0||Jl();var t=null,e=we.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=we.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,o){o==="utf8"&&(i=we.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),p0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=we.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(To.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};p0(l,r,i);var h=we.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var To=null,g0=!1,m0=null;function Jl(){To="\x80",To+=we.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],g0=!0}function p0(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,x,w=r.length();w>=64;){for(f=0;f<16;++f)e[f]=r.getInt32();for(;f<64;++f)n=e[f-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[f-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[f]=n+e[f-7]+i+e[f-16]|0;for(u=t.h0,l=t.h1,h=t.h2,y=t.h3,d=t.h4,p=t.h5,g=t.h6,x=t.h7,f=0;f<64;++f)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=g^d&(p^g),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|h&(u^l),n=x+s+a+m0[f]+e[f],i=o+c,x=g,g=p,p=d,d=y+n>>>0,y=h,h=l,l=u,u=n+i>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+y|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+g|0,t.h7=t.h7+x|0,w-=64}}});var w0=ut((Dm,v0)=>{var Ee=ct();It();var Zn=null;Ee.util.isNodejs&&!Ee.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Zn=Wn());var jl=v0.exports=Ee.prng=Ee.prng||{};jl.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(f,u){if(!u)return e.generateSync(f);var l=e.plugin.cipher,h=e.plugin.increment,y=e.plugin.formatKey,d=e.plugin.formatSeed,p=Ee.util.createBuffer();e.key=null,g();function g(x){if(x)return u(x);if(p.length()>=f)return u(null,p.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return Ee.util.nextTick(function(){o(g)});var w=l(e.key,e.seed);e.generated+=w.length,p.putBytes(w),e.key=y(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Ee.util.setImmediate(g)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,y=e.plugin.formatSeed;e.key=null;for(var d=Ee.util.createBuffer();d.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=u(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(u(e.key,l(e.seed))),e.seed=y(u(e.key,e.seed))}return d.getBytes(f)};function o(f){if(e.pools[0].messageLength>=32)return a(),f();var u=32-e.pools[0].messageLength<<5;e.seedFile(u,function(l,h){if(l)return f(l);e.collect(h),a(),f()})}function s(){if(e.pools[0].messageLength>=32)return a();var f=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(f)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var f=e.plugin.md.create();f.update(e.keyBytes);for(var u=1,l=0;l<32;++l)e.reseeds%u===0&&(f.update(e.pools[l].digest().getBytes()),e.pools[l].start()),u=u<<1;e.keyBytes=f.digest().getBytes(),f.start(),f.update(e.keyBytes);var h=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(f){var u=null,l=Ee.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(u=function(E){return h.getRandomValues(E)});var y=Ee.util.createBuffer();if(u)for(;y.length()<f;){var d=Math.max(1,Math.min(f-y.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{u(p);for(var g=0;g<p.length;++g)y.putInt32(p[g])}catch(E){if(!(typeof QuotaExceededError<"u"&&E instanceof QuotaExceededError))throw E}}if(y.length()<f)for(var x,w,v,R=Math.floor(Math.random()*65536);y.length()<f;){w=16807*(R&65535),x=16807*(R>>16),w+=(x&32767)<<16,w+=x>>15,w=(w&2147483647)+(w>>31),R=w&4294967295;for(var g=0;g<3;++g)v=R>>>(g<<3),v^=Math.floor(Math.random()*256),y.putByte(v&255)}return y.getBytes(f)}return Zn?(e.seedFile=function(f,u){Zn.randomBytes(f,function(l,h){if(l)return u(l);u(null,h.toString())})},e.seedFileSync=function(f){return Zn.randomBytes(f).toString()}):(e.seedFile=function(f,u){try{u(null,c(f))}catch(l){u(l)}},e.seedFileSync=c),e.collect=function(f){for(var u=f.length,l=0;l<u;++l)e.pools[e.pool].update(f.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(f,u){for(var l="",h=0;h<u;h+=8)l+=String.fromCharCode(f>>h&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,h){function y(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",y),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",y),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var h=l.data;h.forge&&h.forge.prng&&e.seedFile(h.forge.prng.needed,function(y,d){f.postMessage({forge:{prng:{err:y,bytes:d}}})})};f.addEventListener("message",u)}},e}});var hn=ut((Pm,_o)=>{var kt=ct();Co();b0();w0();It();(function(){if(kt.random&&kt.random.getBytes){_o.exports=kt.random;return}(function(t){var e={},r=new Array(4),n=kt.util.createBuffer();e.formatKey=function(l){var h=kt.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),kt.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=kt.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return kt.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=kt.md.sha256;function i(){var l=kt.prng.create(e);return l.getBytes=function(h,y){return l.generate(h,y)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=kt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),kt.options.usePureJavaScript||!kt.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}o.collect(f),f=null}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!kt.random)kt.random=o;else for(var u in o)kt.random[u]=o[u];kt.random.createInstance=i,_o.exports=kt.random})(typeof jQuery<"u"?jQuery:null)})()});var A0=ut((km,B0)=>{var $t=ct();It();var Ro=[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],E0=[1,2,3,5],th=function(t,e){return t<<e&65535|(t&65535)>>16-e},eh=function(t,e){return(t&65535)>>e|t<<16-e&65535};B0.exports=$t.rc2=$t.rc2||{};$t.rc2.expandKey=function(t,e){typeof t=="string"&&(t=$t.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(Ro[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,Ro[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,Ro[r.at(a+1)^r.at(a+o)]);return r};var S0=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(t=$t.rc2.expandKey(t,e),f=0;f<64;f++)l.push(t.getInt16Le());r?(a=function(d){for(f=0;f<4;f++)d[f]+=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),d[f]=th(d[f],E0[f]),u++},c=function(d){for(f=0;f<4;f++)d[f]+=l[d[(f+3)%4]&63]}):(a=function(d){for(f=3;f>=0;f--)d[f]=eh(d[f],E0[f]),d[f]-=l[u]+(d[(f+3)%4]&d[(f+2)%4])+(~d[(f+3)%4]&d[(f+1)%4]),u--},c=function(d){for(f=3;f>=0;f--)d[f]-=l[d[(f+3)%4]&63]});var h=function(d){var p=[];for(f=0;f<4;f++){var g=i.getInt16Le();s!==null&&(r?g^=s.getInt16Le():s.putInt16Le(g)),p.push(g&65535)}u=r?0:63;for(var x=0;x<d.length;x++)for(var w=0;w<d[x][0];w++)d[x][1](p);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(p[f]):p[f]^=s.getInt16Le()),o.putInt16Le(p[f])},y=null;return y={start:function(d,p){d&&typeof d=="string"&&(d=$t.util.createBuffer(d)),n=!1,i=$t.util.createBuffer(),o=p||new $t.util.createBuffer,s=d,y.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var g=i.length()===8?8:8-i.length();i.fillWithByte(g,g)}if(p&&(n=!0,y.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var x=o.length(),w=o.at(x-1);w>x?p=!1:o.truncate(w)}return p}},y};$t.rc2.startEncrypting=function(t,e,r){var n=$t.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};$t.rc2.createEncryptionCipher=function(t,e){return S0(t,e,!0)};$t.rc2.startDecrypting=function(t,e,r){var n=$t.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};$t.rc2.createDecryptionCipher=function(t,e){return S0(t,e,!1)}});var Jn=ut((Um,D0)=>{var Lo=ct();D0.exports=Lo.jsbn=Lo.jsbn||{};var Ue,rh=0xdeadbeefcafe,I0=(rh&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))}Lo.jsbn.BigInteger=I;function tt(){return new I(null)}function nh(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function ih(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,f=this.data[t++]>>15,u=a*c+f*s;c=s*c+((u&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(u>>>15)+a*f+(i>>>30),r.data[n++]=c&1073741823}return i}function C0(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,f=this.data[t++]>>14,u=a*c+f*s;c=s*c+((u&16383)<<14)+r.data[n]+i,i=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(I.prototype.am=C0,Ue=28):I0&&navigator.appName=="Microsoft Internet Explorer"?(I.prototype.am=ih,Ue=30):I0&&navigator.appName!="Netscape"?(I.prototype.am=nh,Ue=26):(I.prototype.am=C0,Ue=28);I.prototype.DB=Ue;I.prototype.DM=(1<<Ue)-1;I.prototype.DV=1<<Ue;var No=52;I.prototype.FV=Math.pow(2,No);I.prototype.F1=No-Ue;I.prototype.F2=2*Ue-No;var oh="0123456789abcdefghijklmnopqrstuvwxyz",Qn=new Array,Kr,te;Kr=48;for(te=0;te<=9;++te)Qn[Kr++]=te;Kr=97;for(te=10;te<36;++te)Qn[Kr++]=te;Kr=65;for(te=10;te<36;++te)Qn[Kr++]=te;function T0(t){return oh.charAt(t)}function _0(t,e){var r=Qn[t.charCodeAt(e)];return r??-1}function sh(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 ah(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 Xe(t){var e=tt();return e.fromInt(t),e}function ch(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,o=0;--n>=0;){var s=r==8?t[n]&255:_0(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&I.ZERO.subTo(this,this)}function fh(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function uh(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,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=T0(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=T0(n));return i?o:"0"}function lh(){var t=tt();return I.ZERO.subTo(this,t),t}function hh(){return this.s<0?this.negate():this}function dh(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 Xn(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 ph(){return this.t<=0?0:this.DB*(this.t-1)+Xn(this.data[this.t-1]^this.s&this.DM)}function yh(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 gh(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 mh(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function xh(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,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function bh(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 vh(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 wh(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 Eh(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=tt());var o=tt(),s=this.s,a=t.s,c=this.DB-Xn(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),h=this.FV/l,y=(1<<this.F1)/l,d=1<<this.F2,p=r.t,g=p-f,x=e??tt();for(o.dlShiftTo(g,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),I.ONE.dlShiftTo(f,x),x.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--g>=0;){var w=r.data[--p]==u?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*y);if((r.data[p]+=o.am(0,w,r,g,0,f))<w)for(o.dlShiftTo(g,x),r.subTo(x,r);r.data[p]<--w;)r.subTo(x,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&I.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&I.ZERO.subTo(r,r)}}}function Sh(t){var e=tt();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(I.ZERO)>0&&t.subTo(e,e),e}function pr(t){this.m=t}function Bh(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function Ah(t){return t}function Ih(t){t.divRemTo(this.m,null,t)}function Ch(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function Th(t,e){t.squareTo(e),this.reduce(e)}pr.prototype.convert=Bh;pr.prototype.revert=Ah;pr.prototype.reduce=Ih;pr.prototype.mulTo=Ch;pr.prototype.sqrTo=Th;function _h(){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 yr(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 Rh(t){var e=tt();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(I.ZERO)>0&&this.m.subTo(e,e),e}function Lh(t){var e=tt();return t.copyTo(e),this.reduce(e),e}function Nh(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 Dh(t,e){t.squareTo(e),this.reduce(e)}function Ph(t,e,r){t.multiplyTo(e,r),this.reduce(r)}yr.prototype.convert=Rh;yr.prototype.revert=Lh;yr.prototype.reduce=Nh;yr.prototype.mulTo=Ph;yr.prototype.sqrTo=Dh;function kh(){return(this.t>0?this.data[0]&1:this.s)==0}function Uh(t,e){if(t>4294967295||t<1)return I.ONE;var r=tt(),n=tt(),i=e.convert(this),o=Xn(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function Oh(t,e){var r;return t<256||e.isEven()?r=new pr(e):r=new yr(e),this.exp(t,r)}I.prototype.copyTo=sh;I.prototype.fromInt=ah;I.prototype.fromString=ch;I.prototype.clamp=fh;I.prototype.dlShiftTo=yh;I.prototype.drShiftTo=gh;I.prototype.lShiftTo=mh;I.prototype.rShiftTo=xh;I.prototype.subTo=bh;I.prototype.multiplyTo=vh;I.prototype.squareTo=wh;I.prototype.divRemTo=Eh;I.prototype.invDigit=_h;I.prototype.isEven=kh;I.prototype.exp=Uh;I.prototype.toString=uh;I.prototype.negate=lh;I.prototype.abs=hh;I.prototype.compareTo=dh;I.prototype.bitLength=ph;I.prototype.mod=Sh;I.prototype.modPowInt=Oh;I.ZERO=Xe(0);I.ONE=Xe(1);function Kh(){var t=tt();return this.copyTo(t),t}function Mh(){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 Vh(){return this.t==0?this.s:this.data[0]<<24>>24}function Fh(){return this.t==0?this.s:this.data[0]<<16>>16}function qh(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Hh(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function zh(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=Xe(r),i=tt(),o=tt(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Gh(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=_0(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&I.ZERO.subTo(this,this)}function Wh(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),Do,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 Yh(){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 $h(t){return this.compareTo(t)==0}function Zh(t){return this.compareTo(t)<0?this:t}function Qh(t){return this.compareTo(t)>0?this:t}function Xh(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;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 Jh(t,e){return t&e}function jh(t){var e=tt();return this.bitwiseTo(t,Jh,e),e}function Do(t,e){return t|e}function td(t){var e=tt();return this.bitwiseTo(t,Do,e),e}function R0(t,e){return t^e}function ed(t){var e=tt();return this.bitwiseTo(t,R0,e),e}function L0(t,e){return t&~e}function rd(t){var e=tt();return this.bitwiseTo(t,L0,e),e}function nd(){for(var t=tt(),e=0;e<this.t;++e)t.data[e]=this.DM&~this.data[e];return t.t=this.t,t.s=~this.s,t}function id(t){var e=tt();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function od(t){var e=tt();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function sd(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 ad(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+sd(this.data[t]);return this.s<0?this.t*this.DB:-1}function cd(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function fd(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=cd(this.data[r]^e);return t}function ud(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function ld(t,e){var r=I.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function hd(t){return this.changeBit(t,Do)}function dd(t){return this.changeBit(t,L0)}function pd(t){return this.changeBit(t,R0)}function yd(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 gd(t){var e=tt();return this.addTo(t,e),e}function md(t){var e=tt();return this.subTo(t,e),e}function xd(t){var e=tt();return this.multiplyTo(t,e),e}function bd(t){var e=tt();return this.divRemTo(t,e,null),e}function vd(t){var e=tt();return this.divRemTo(t,null,e),e}function wd(t){var e=tt(),r=tt();return this.divRemTo(t,e,r),new Array(e,r)}function Ed(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function Sd(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 dn(){}function N0(t){return t}function Bd(t,e,r){t.multiplyTo(e,r)}function Ad(t,e){t.squareTo(e)}dn.prototype.convert=N0;dn.prototype.revert=N0;dn.prototype.mulTo=Bd;dn.prototype.sqrTo=Ad;function Id(t){return this.exp(t,new dn)}function Cd(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 Td(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 Mr(t){this.r2=tt(),this.q3=tt(),I.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function _d(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=tt();return t.copyTo(e),this.reduce(e),e}function Rd(t){return t}function Ld(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 Nd(t,e){t.squareTo(e),this.reduce(e)}function Dd(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Mr.prototype.convert=_d;Mr.prototype.revert=Rd;Mr.prototype.reduce=Ld;Mr.prototype.mulTo=Dd;Mr.prototype.sqrTo=Nd;function Pd(t,e){var r=t.bitLength(),n,i=Xe(1),o;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?o=new pr(e):e.isEven()?o=new Mr(e):o=new yr(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=tt();for(o.sqrTo(s[1],u);a<=f;)s[a]=tt(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,h,y=!0,d=tt(),p;for(r=Xn(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&f:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),y)s[h].copyTo(i),y=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function kd(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(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,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 o>0&&r.lShiftTo(o,r),r}function Ud(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 Od(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return I.ZERO;for(var r=t.clone(),n=this.clone(),i=Xe(1),o=Xe(0),s=Xe(0),a=Xe(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,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 fe=[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],Kd=(1<<26)/fe[fe.length-1];function Md(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=fe[fe.length-1]){for(e=0;e<fe.length;++e)if(r.data[0]==fe[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<fe.length;){for(var n=fe[e],i=e+1;i<fe.length&&n<Kd;)n*=fe[i++];for(n=r.modInt(n);e<i;)if(n%fe[e++]==0)return!1}return r.millerRabin(t)}function Vd(t){var e=this.subtract(I.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Fd(),o,s=0;s<t;++s){do o=new I(this.bitLength(),i);while(o.compareTo(I.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(I.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<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 Fd(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}I.prototype.chunkSize=qh;I.prototype.toRadix=zh;I.prototype.fromRadix=Gh;I.prototype.fromNumber=Wh;I.prototype.bitwiseTo=Xh;I.prototype.changeBit=ld;I.prototype.addTo=yd;I.prototype.dMultiply=Ed;I.prototype.dAddOffset=Sd;I.prototype.multiplyLowerTo=Cd;I.prototype.multiplyUpperTo=Td;I.prototype.modInt=Ud;I.prototype.millerRabin=Vd;I.prototype.clone=Kh;I.prototype.intValue=Mh;I.prototype.byteValue=Vh;I.prototype.shortValue=Fh;I.prototype.signum=Hh;I.prototype.toByteArray=Yh;I.prototype.equals=$h;I.prototype.min=Zh;I.prototype.max=Qh;I.prototype.and=jh;I.prototype.or=td;I.prototype.xor=ed;I.prototype.andNot=rd;I.prototype.not=nd;I.prototype.shiftLeft=id;I.prototype.shiftRight=od;I.prototype.getLowestSetBit=ad;I.prototype.bitCount=fd;I.prototype.testBit=ud;I.prototype.setBit=hd;I.prototype.clearBit=dd;I.prototype.flipBit=pd;I.prototype.add=gd;I.prototype.subtract=md;I.prototype.multiply=xd;I.prototype.divide=bd;I.prototype.remainder=vd;I.prototype.divideAndRemainder=wd;I.prototype.modPow=Pd;I.prototype.modInverse=Od;I.prototype.pow=Id;I.prototype.gcd=kd;I.prototype.isProbablePrime=Md});var K0=ut((Om,O0)=>{var Se=ct();dr();It();var k0=O0.exports=Se.sha1=Se.sha1||{};Se.md.sha1=Se.md.algorithms.sha1=k0;k0.create=function(){U0||qd();var t=null,e=Se.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Se.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Se.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),P0(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Se.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(Po.substr(0,n.blockLength-s));for(var a,c,f=n.fullMessageLength[0]*8,u=0;u<n.fullMessageLength.length-1;++u)a=n.fullMessageLength[u+1]*8,c=a/4294967296>>>0,f+=c,i.putInt32(f>>>0),f=a>>>0;i.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};P0(l,r,i);var h=Se.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var Po=null,U0=!1;function qd(){Po="\x80",Po+=Se.util.fillString("\0",64),U0=!0}function P0(t,e,r){for(var n,i,o,s,a,c,f,u,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,u=0;u<16;++u)n=r.getInt32(),e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=a^o&(s^a),n=(i<<5|i>>>27)+f+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=e[u-3]^e[u-8]^e[u-14]^e[u-16],n=n<<1|n>>>31,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o&s|a&(o^s),n=(i<<5|i>>>27)+f+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=e[u-6]^e[u-16]^e[u-28]^e[u-32],n=n<<2|n>>>30,e[u]=n,f=o^s^a,n=(i<<5|i>>>27)+f+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var F0=ut((Km,V0)=>{var Be=ct();It();hn();K0();var M0=V0.exports=Be.pkcs1=Be.pkcs1||{};M0.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=Be.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var f=new Error("RSAES-OAEP input message length is too long.");throw f.length=e.length,f.maxLength=c,f}n||(n=""),o.update(n,"raw");for(var u=o.digest(),l="",h=c-e.length,y=0;y<h;y++)l+="\0";var d=u.getBytes()+l+""+e;if(!i)i=Be.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=i.length,f.digestLength=o.digestLength,f}var p=jn(i,a-o.digestLength-1,s),g=Be.util.xorBytes(d,p,d.length),x=jn(g,o.digestLength,s),w=Be.util.xorBytes(i,x,i.length);return"\0"+w+g};M0.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var g=new Error("RSAES-OAEP encoded message length is invalid.");throw g.length=e.length,g.expectedLength=s,g}if(i===void 0?i=Be.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),f=e.substring(1,i.digestLength+1),u=e.substring(1+i.digestLength),l=jn(u,i.digestLength,o),h=Be.util.xorBytes(f,l,f.length),y=jn(h,s-i.digestLength-1,o),d=Be.util.xorBytes(u,y,u.length),p=d.substring(0,i.digestLength),g=c!=="\0",x=0;x<i.digestLength;++x)g|=a.charAt(x)!==p.charAt(x);for(var w=1,v=i.digestLength,R=i.digestLength;R<d.length;R++){var E=d.charCodeAt(R),S=E&1^1,L=w?65534:0;g|=E&L,w=w&S,v+=w}if(g||d.charCodeAt(v)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(v+1)};function jn(t,e,r){r||(r=Be.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var q0=ut((Mm,ko)=>{var Je=ct();It();Jn();hn();(function(){if(Je.prime){ko.exports=Je.prime;return}var t=ko.exports=Je.prime=Je.prime||{},e=Je.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,y){typeof h=="function"&&(y=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||Je.random,g={nextBytes:function(x){for(var w=p.getBytesSync(x.length),v=0;v<x.length;++v)x[v]=w.charCodeAt(v)}};if(d.name==="PRIMEINC")return o(l,g,d.options,y);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,y,d){return"workers"in y?c(l,h,y,d):s(l,h,y,d)}function s(l,h,y,d){var p=f(l,h),g=0,x=u(p.bitLength());"millerRabinTests"in y&&(x=y.millerRabinTests);var w=10;"maxBlockTime"in y&&(w=y.maxBlockTime),a(p,l,h,g,x,w,d)}function a(l,h,y,d,p,g,x){var w=+new Date;do{if(l.bitLength()>h&&(l=f(h,y)),l.isProbablePrime(p))return x(null,l);l.dAddOffset(r[d++%8],0)}while(g<0||+new Date-w<g);Je.util.setImmediate(function(){a(l,h,y,d,p,g,x)})}function c(l,h,y,d){if(typeof Worker>"u")return s(l,h,y,d);var p=f(l,h),g=y.workers,x=y.workLoad||100,w=x*30/8,v=y.workerScript||"forge/prime.worker.js";if(g===-1)return Je.util.estimateCores(function(E,S){E&&(S=2),g=S-1,R()});R();function R(){g=Math.max(1,g);for(var E=[],S=0;S<g;++S)E[S]=new Worker(v);for(var L=g,S=0;S<g;++S)E[S].addEventListener("message",z);var N=!1;function z(H){if(!N){--L;var V=H.data;if(V.found){for(var Q=0;Q<E.length;++Q)E[Q].terminate();return N=!0,d(null,new e(V.prime,16))}p.bitLength()>l&&(p=f(l,h));var at=p.toString(16);H.target.postMessage({hex:at,workLoad:x}),p.dAddOffset(w,0)}}}}function f(l,h){var y=new e(l,h),d=l-1;return y.testBit(d)||y.bitwiseTo(e.ONE.shiftLeft(d),i,y),y.dAddOffset(31-y.mod(n).byteValue(),0),y}function u(l){return l<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2}})()});var ei=ut((Vm,Z0)=>{var M=ct();ln();Jn();Mn();F0();q0();hn();It();typeof j>"u"&&(j=M.jsbn.BigInteger);var j,Uo=M.util.isNodejs?Wn():null,b=M.asn1,ee=M.util;M.pki=M.pki||{};Z0.exports=M.pki.rsa=M.rsa=M.rsa||{};var G=M.pki,Hd=[6,4,2,4,2,4,6,2],zd={name:"PrivateKeyInfo",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",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:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:b.Class.UNIVERSAL,type:b.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Gd={name:"RSAPrivateKey",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Wd={name:"RSAPublicKey",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:b.Class.UNIVERSAL,type:b.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},Yd=M.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",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:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:b.Class.UNIVERSAL,type:b.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},$d={name:"DigestInfo",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:b.Class.UNIVERSAL,type:b.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:b.Class.UNIVERSAL,type:b.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:b.Class.UNIVERSAL,type:b.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:b.Class.UNIVERSAL,type:b.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},Zd=function(t){var e;if(t.algorithm in G.oids)e=G.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=b.oidToDer(e).getBytes(),i=b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[]),o=b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[]);o.value.push(b.create(b.Class.UNIVERSAL,b.Type.OID,!1,n)),o.value.push(b.create(b.Class.UNIVERSAL,b.Type.NULL,!1,""));var s=b.create(b.Class.UNIVERSAL,b.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),b.toDer(i).getBytes()},Y0=function(t,e,r){if(r)return t.modPow(e.e,e.n);if(!e.p||!e.q)return t.modPow(e.d,e.n);e.dP||(e.dP=e.d.mod(e.p.subtract(j.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(j.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new j(M.util.bytesToHex(M.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(j.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};G.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=$0(t,e,r)):(i=M.util.createBuffer(),i.putBytes(t));for(var s=new j(i.toHex(),16),a=Y0(s,e,n),c=a.toString(16),f=M.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(M.util.hexToBytes(c)),f.getBytes()};G.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new j(M.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Y0(s,e,r),c=a.toString(16),f=M.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(M.util.hexToBytes(c)),n!==!1?ti(f.getBytes(),e,r):f.getBytes()};G.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||M.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:t,rng:i,eInt:e||65537,e:new j(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};G.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new j(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,f=c-1;t.pqState===0?(t.num=new j(c,t.rng),t.num.testBit(f)||t.num.bitwiseTo(j.ONE.shiftLeft(f),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(Xd(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Hd[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)===0?3:0:t.pqState===3&&(t.pqState=0,t.p===null?t.p=t.num:t.q=t.num,t.p!==null&&t.q!==null&&++t.state,t.num=null)}else if(t.state===1)t.p.compareTo(t.q)<0&&(t.num=t.p,t.p=t.q,t.q=t.num),++t.state;else if(t.state===2)t.p1=t.p.subtract(j.ONE),t.q1=t.q.subtract(j.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(j.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var u=t.e.modInverse(t.phi);t.keys={privateKey:G.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:G.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};G.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!M.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(H0("generateKeyPair"))return Uo.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,f){if(a)return n(a);n(null,{privateKey:G.privateKeyFromPem(f),publicKey:G.publicKeyFromPem(c)})});if(z0("generateKey")&&z0("exportKey"))return ee.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:W0(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ee.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=G.privateKeyFromAsn1(b.fromDer(M.util.createBuffer(a)));n(null,{privateKey:c,publicKey:G.setRsaPublicKey(c.n,c.e)})}});if(G0("generateKey")&&G0("exportKey")){var i=ee.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:W0(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=ee.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,h=G.privateKeyFromAsn1(b.fromDer(M.util.createBuffer(l)));n(null,{privateKey:h,publicKey:G.setRsaPublicKey(h.n,h.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(H0("generateKeyPairSync")){var o=Uo.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:G.privateKeyFromPem(o.privateKey),publicKey:G.publicKeyFromPem(o.publicKey)}}}var s=G.rsa.createKeyPairGenerationState(t,e,r);if(!n)return G.rsa.stepKeyPairGenerationState(s,0),s.keys;Qd(s,r,n)};G.setRsaPublicKey=G.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,f){return $0(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return M.pkcs1.encode_rsa_oaep(c,a,o)}};else if(["RAW","NONE","NULL",null].indexOf(i)!==-1)i={encode:function(a){return a}};else if(typeof i=="string")throw new Error('Unsupported encryption scheme: "'+i+'".');var s=i.encode(n,r,!0);return G.rsa.encrypt(s,r,!0)},r.verify=function(n,i,o,s){typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),o==="RSASSA-PKCS1-V1_5"?o={verify:function(c,f){f=ti(f,r,!0);var u=b.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!b.validate(u,$d,l,h)){var y=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw y.errors=h,y}var d=b.derToOid(l.algorithmIdentifier);if(!(d===M.oids.md2||d===M.oids.md5||d===M.oids.sha1||d===M.oids.sha224||d===M.oids.sha256||d===M.oids.sha384||d===M.oids.sha512||d===M.oids["sha512-224"]||d===M.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=d,y}if((d===M.oids.md2||d===M.oids.md5)&&!("parameters"in l))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.");return c===l.digest}}:(o==="NONE"||o==="NULL"||o===null)&&(o={verify:function(c,f){return f=ti(f,r,!0),c===f}});var a=G.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};G.setRsaPrivateKey=G.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(f,u,l){typeof u=="string"?u=u.toUpperCase():u===void 0&&(u="RSAES-PKCS1-V1_5");var h=G.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:ti};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(y,d){return M.pkcs1.decode_rsa_oaep(d,y,l)}};else if(["RAW","NONE","NULL",null].indexOf(u)!==-1)u={decode:function(y){return y}};else throw new Error('Unsupported encryption scheme: "'+u+'".');return u.decode(h,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:Zd},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var h=u.encode(f,c.n.bitLength());return G.rsa.encrypt(h,c,l)},c};G.wrapRsaPrivateKey=function(t){return b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,b.integerToDer(0).getBytes()),b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[b.create(b.Class.UNIVERSAL,b.Type.OID,!1,b.oidToDer(G.oids.rsaEncryption).getBytes()),b.create(b.Class.UNIVERSAL,b.Type.NULL,!1,"")]),b.create(b.Class.UNIVERSAL,b.Type.OCTETSTRING,!1,b.toDer(t).getBytes())])};G.privateKeyFromAsn1=function(t){var e={},r=[];if(b.validate(t,zd,e,r)&&(t=b.fromDer(M.util.createBuffer(e.privateKey))),e={},r=[],!b.validate(t,Gd,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,o,s,a,c,f,u,l;return i=M.util.createBuffer(e.privateKeyModulus).toHex(),o=M.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=M.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=M.util.createBuffer(e.privateKeyPrime1).toHex(),c=M.util.createBuffer(e.privateKeyPrime2).toHex(),f=M.util.createBuffer(e.privateKeyExponent1).toHex(),u=M.util.createBuffer(e.privateKeyExponent2).toHex(),l=M.util.createBuffer(e.privateKeyCoefficient).toHex(),G.setRsaPrivateKey(new j(i,16),new j(o,16),new j(s,16),new j(a,16),new j(c,16),new j(f,16),new j(u,16),new j(l,16))};G.privateKeyToAsn1=G.privateKeyToRSAPrivateKey=function(t){return b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,b.integerToDer(0).getBytes()),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.n)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.e)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.d)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.p)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.q)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.dP)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.dQ)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.qInv))])};G.publicKeyFromAsn1=function(t){var e={},r=[];if(b.validate(t,Yd,e,r)){var n=b.derToOid(e.publicKeyOid);if(n!==G.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!b.validate(t,Wd,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=M.util.createBuffer(e.publicKeyModulus).toHex(),s=M.util.createBuffer(e.publicKeyExponent).toHex();return G.setRsaPublicKey(new j(o,16),new j(s,16))};G.publicKeyToAsn1=G.publicKeyToSubjectPublicKeyInfo=function(t){return 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(G.oids.rsaEncryption).getBytes()),b.create(b.Class.UNIVERSAL,b.Type.NULL,!1,"")]),b.create(b.Class.UNIVERSAL,b.Type.BITSTRING,!1,[G.publicKeyToRSAPublicKey(t)])])};G.publicKeyToRSAPublicKey=function(t){return b.create(b.Class.UNIVERSAL,b.Type.SEQUENCE,!0,[b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.n)),b.create(b.Class.UNIVERSAL,b.Type.INTEGER,!1,Ae(t.e))])};function $0(t,e,r){var n=M.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var f=0,u=M.random.getBytes(s),c=0;c<s;++c)a=u.charCodeAt(c),a===0?++f:n.putByte(a);s=f}return n.putByte(0),n.putBytes(t),n}function ti(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=M.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var f=0;f<c;++f)if(o.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;o.length()>1;){if(o.getByte()!==255){--o.read;break}++c}else if(a===2)for(c=0;o.length()>1;){if(o.getByte()===0){--o.read;break}++c}var u=o.getByte();if(u!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function Qd(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(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){M.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(t.q=c,t.p.compareTo(t.q)<0){var f=t.p;t.p=t.q,t.q=f}if(t.p.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)!==0){t.p=null,i();return}if(t.q.subtract(j.ONE).gcd(t.e).compareTo(j.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(j.ONE),t.q1=t.q.subtract(j.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(j.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var u=t.e.modInverse(t.phi);t.keys={privateKey:G.rsa.setPrivateKey(t.n,t.e,u,t.p,t.q,u.mod(t.p1),u.mod(t.q1),t.q.modInverse(t.p)),publicKey:G.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Ae(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=M.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 Xd(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 H0(t){return M.util.isNodejs&&typeof Uo[t]=="function"}function z0(t){return typeof ee.globalScope<"u"&&typeof ee.globalScope.crypto=="object"&&typeof ee.globalScope.crypto.subtle=="object"&&typeof ee.globalScope.crypto.subtle[t]=="function"}function G0(t){return typeof ee.globalScope<"u"&&typeof ee.globalScope.msCrypto=="object"&&typeof ee.globalScope.msCrypto.subtle=="object"&&typeof ee.globalScope.msCrypto.subtle[t]=="function"}function W0(t){for(var e=M.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var ec=ut((Fm,tc)=>{var U=ct();Co();ln();o0();dr();Mn();u0();d0();hn();A0();ei();It();typeof Q0>"u"&&(Q0=U.jsbn.BigInteger);var Q0,B=U.asn1,W=U.pki=U.pki||{};tc.exports=W.pbe=U.pbe=U.pbe||{};var gr=W.oids,Jd={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"}]},jd={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"}]}]},tp={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,o=B.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=gr["aes128-CBC"],l=U.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=gr["aes192-CBC"],l=U.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=gr["aes256-CBC"],l=U.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=gr.desCBC,l=U.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var y="hmacWith"+r.prfAlgorithm.toUpperCase(),d=j0(y),p=U.pkcs5.pbkdf2(e,n,i,s,d),g=U.random.getBytesSync(f),x=l(p);x.start(g),x.update(B.toDer(t)),x.finish(),c=x.output.getBytes();var w=ep(n,o,s,y);a=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(gr.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(gr.pkcs5PBKDF2).getBytes()),w]),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(u).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,g)])])])}else if(r.algorithm==="3des"){s=24;var v=new U.util.ByteBuffer(n),p=W.pbe.generatePkcs12Key(e,v,1,i,s),g=W.pbe.generatePkcs12Key(e,v,2,i,s),x=U.des.createEncryptionCipher(p);x.start(g),x.update(B.toDer(t)),x.finish(),c=x.output.getBytes(),a=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(gr["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,o.getBytes())])])}else{var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var R=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[a,B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,c)]);return R};W.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!B.validate(t,Jd,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=B.derToOid(n.encryptionOid),a=W.pbe.getCipher(s,n.encryptionParams,e),c=U.util.createBuffer(n.encryptedData);return a.update(c),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,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=U.random.getBytesSync(16),a=U.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=U.random.getBytesSync(8),a=U.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=U.random.getBytesSync(8),a=U.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var f=U.pbe.opensslDeriveBytes(e,o.substr(0,8),s),u=a(f);u.start(o),u.update(B.toDer(W.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:U.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return U.pem.encode(l)};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 o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=U.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=U.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=U.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=U.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=U.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return U.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return U.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return U.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=U.util.hexToBytes(n.dekInfo.parameters),c=U.pbe.opensslDeriveBytes(e,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(U.util.createBuffer(n.body)),f.finish())r=f.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,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in U.md))throw new Error('"sha1" hash algorithm unavailable.');o=U.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new U.util.ByteBuffer,l=new U.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),y=e.length(),d=new U.util.ByteBuffer;d.fillWithByte(r,f);var p=f*Math.ceil(y/f),g=new U.util.ByteBuffer;for(a=0;a<p;a++)g.putByte(e.at(a%y));var x=f*Math.ceil(h/f),w=new U.util.ByteBuffer;for(a=0;a<x;a++)w.putByte(l.at(a%h));var v=g;v.putBuffer(w);for(var R=Math.ceil(i/c),E=1;E<=R;E++){var S=new U.util.ByteBuffer;S.putBytes(d.bytes()),S.putBytes(v.bytes());for(var L=0;L<n;L++)o.start(),o.update(S.getBytes()),S=o.digest();var N=new U.util.ByteBuffer;for(a=0;a<f;a++)N.putByte(S.at(a%c));var z=Math.ceil(y/f)+Math.ceil(h/f),H=new U.util.ByteBuffer;for(s=0;s<z;s++){var V=new U.util.ByteBuffer(v.getBytes(f)),Q=511;for(a=N.length()-1;a>=0;a--)Q=Q>>8,Q+=N.at(a)+V.at(a),V.setAt(a,Q&255);H.putBuffer(V)}v=H,u.putBuffer(S)}return u.truncate(u.length()-i),u};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,jd,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=B.derToOid(n.kdfOid),t!==W.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}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 o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=U.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(W.oids[t]){case"aes128-CBC":c=16,f=U.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=U.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=U.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=U.des.createDecryptionCipher;break;case"desCBC":c=8,f=U.des.createDecryptionCipher;break}var u=J0(n.prfOid),l=U.pkcs5.pbkdf2(r,s,a,c,u),h=n.encIv,y=f(l);return y.start(h),y};W.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!B.validate(e,tp,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=U.util.createBuffer(n.salt),a=U.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case W.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=U.des.startDecrypting;break;case W.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,g){var x=U.rc2.createDecryptionCipher(p,40);return x.start(g,null),x};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=J0(n.prfOid),h=W.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=W.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(h,y)};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=[X0(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(X0(n,i[s-1]+t+e));return i.join("").substr(0,r)};function X0(t,e){return t.start().update(e).digest().getBytes()}function J0(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 j0(e)}function j0(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 ep(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 Hc=ut((ob,qc)=>{var pt=ct();dr();It();var wn=qc.exports=pt.sha512=pt.sha512||{};pt.md.sha512=pt.md.algorithms.sha512=wn;var Vc=pt.sha384=pt.sha512.sha384=pt.sha512.sha384||{};Vc.create=function(){return wn.create("SHA-384")};pt.md.sha384=pt.md.algorithms.sha384=Vc;pt.sha512.sha256=pt.sha512.sha256||{create:function(){return wn.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 wn.create("SHA-512/224")}};pt.md["sha512/224"]=pt.md.algorithms["sha512/224"]=pt.sha512.sha224;wn.create=function(t){if(Fc||wy(),typeof t>"u"&&(t="SHA-512"),!(t in Sr))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Sr[t],r=null,n=pt.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,f=0;f<c;++f)a.fullMessageLength.push(0);n=pt.util.createBuffer(),r=new Array(e.length);for(var f=0;f<e.length;++f)r[f]=e[f].slice(0);return a},a.start(),a.update=function(c,f){f==="utf8"&&(c=pt.util.encodeUtf8(c));var u=c.length;a.messageLength+=u,u=[u/4294967296>>>0,u>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=u[1],u[1]=u[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,u[0]=u[1]/4294967296>>>0;return n.putBytes(c),Mc(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=pt.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(gs.substr(0,a.blockLength-u));for(var l,h,y=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,y+=h,c.putInt32(y>>>0),y=l>>>0;c.putInt32(y);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);Mc(p,i,c);var g=pt.util.createBuffer(),x;t==="SHA-512"?x=p.length:t==="SHA-384"?x=p.length-2:x=p.length-4;for(var d=0;d<x;++d)g.putInt32(p[d][0]),(d!==x-1||t!=="SHA-512/224")&&g.putInt32(p[d][1]);return g},a};var gs=null,Fc=!1,ms=null,Sr=null;function wy(){gs="\x80",gs+=pt.util.fillString("\0",128),ms=[[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]],Sr={},Sr["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Sr["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Sr["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Sr["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Fc=!0}function Mc(t,e,r){for(var n,i,o,s,a,c,f,u,l,h,y,d,p,g,x,w,v,R,E,S,L,N,z,H,V,Q,at,Ut,C,P,_,D,A,O,K,q=r.length();q>=128;){for(C=0;C<16;++C)e[C][0]=r.getInt32()>>>0,e[C][1]=r.getInt32()>>>0;for(;C<80;++C)D=e[C-2],P=D[0],_=D[1],n=((P>>>19|_<<13)^(_>>>29|P<<3)^P>>>6)>>>0,i=((P<<13|_>>>19)^(_<<3|P>>>29)^(P<<26|_>>>6))>>>0,O=e[C-15],P=O[0],_=O[1],o=((P>>>1|_<<31)^(P>>>8|_<<24)^P>>>7)>>>0,s=((P<<31|_>>>1)^(P<<24|_>>>8)^(P<<25|_>>>7))>>>0,A=e[C-7],K=e[C-16],_=i+A[1]+s+K[1],e[C][0]=n+A[0]+o+K[0]+(_/4294967296>>>0)>>>0,e[C][1]=_>>>0;for(p=t[0][0],g=t[0][1],x=t[1][0],w=t[1][1],v=t[2][0],R=t[2][1],E=t[3][0],S=t[3][1],L=t[4][0],N=t[4][1],z=t[5][0],H=t[5][1],V=t[6][0],Q=t[6][1],at=t[7][0],Ut=t[7][1],C=0;C<80;++C)f=((L>>>14|N<<18)^(L>>>18|N<<14)^(N>>>9|L<<23))>>>0,u=((L<<18|N>>>14)^(L<<14|N>>>18)^(N<<23|L>>>9))>>>0,l=(V^L&(z^V))>>>0,h=(Q^N&(H^Q))>>>0,a=((p>>>28|g<<4)^(g>>>2|p<<30)^(g>>>7|p<<25))>>>0,c=((p<<4|g>>>28)^(g<<30|p>>>2)^(g<<25|p>>>7))>>>0,y=(p&x|v&(p^x))>>>0,d=(g&w|R&(g^w))>>>0,_=Ut+u+h+ms[C][1]+e[C][1],n=at+f+l+ms[C][0]+e[C][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+d,o=a+y+(_/4294967296>>>0)>>>0,s=_>>>0,at=V,Ut=Q,V=z,Q=H,z=L,H=N,_=S+i,L=E+n+(_/4294967296>>>0)>>>0,N=_>>>0,E=v,S=R,v=x,R=w,x=p,w=g,_=i+s,p=n+o+(_/4294967296>>>0)>>>0,g=_>>>0;_=t[0][1]+g,t[0][0]=t[0][0]+p+(_/4294967296>>>0)>>>0,t[0][1]=_>>>0,_=t[1][1]+w,t[1][0]=t[1][0]+x+(_/4294967296>>>0)>>>0,t[1][1]=_>>>0,_=t[2][1]+R,t[2][0]=t[2][0]+v+(_/4294967296>>>0)>>>0,t[2][1]=_>>>0,_=t[3][1]+S,t[3][0]=t[3][0]+E+(_/4294967296>>>0)>>>0,t[3][1]=_>>>0,_=t[4][1]+N,t[4][0]=t[4][0]+L+(_/4294967296>>>0)>>>0,t[4][1]=_>>>0,_=t[5][1]+H,t[5][0]=t[5][0]+z+(_/4294967296>>>0)>>>0,t[5][1]=_>>>0,_=t[6][1]+Q,t[6][0]=t[6][0]+V+(_/4294967296>>>0)>>>0,t[6][1]=_>>>0,_=t[7][1]+Ut,t[7][0]=t[7][0]+at+(_/4294967296>>>0)>>>0,t[7][1]=_>>>0,q-=128}}});var tu=ut((j4,jf)=>{"use strict";function Jf(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function I1(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 Jf(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),Jf(new i,r)}}jf.exports=I1});var iu=ut((u8,nu)=>{function R1(){return!!(typeof window<"u"&&typeof window.process=="object"&&window.process.type==="renderer"||typeof process<"u"&&typeof process.versions=="object"&&process.versions.electron||typeof navigator=="object"&&typeof navigator.userAgent=="string"&&navigator.userAgent.indexOf("Electron")>=0)}nu.exports=R1});var P1={};Nt(P1,{identify:()=>D1,multicodecs:()=>N1});var fa="/ipfs/id/1.0.0",ua="/ipfs/id/push/1.0.0",la="0.1.0",ha="id",da="id/push",pa="1.0.0",ya="1.0.0";var O1=Symbol.for("@libp2p/connection");var M1=Symbol.for("@libp2p/content-routing");var q1=Symbol.for("@libp2p/peer-discovery");var ga=Symbol.for("@libp2p/peer-id");var G1=Symbol.for("@libp2p/peer-routing");var ma;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(ma||(ma={}));var Z1=Symbol.for("@libp2p/transport");var xa;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(xa||(xa={}));var F=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var ba="ERR_NOT_FOUND";var Hi=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},eg=globalThis.CustomEvent??Hi,kn=(t,...e)=>{try{[...e]}catch{}};var $i={};Nt($i,{base58btc:()=>Et,base58flickr:()=>Lu});function Iu(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 o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),f=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,g=0,x=0,w=d.length;x!==w&&d[x]===0;)x++,p++;for(var v=(w-x)*u+1>>>0,R=new Uint8Array(v);x!==w;){for(var E=d[x],S=0,L=v-1;(E!==0||S<g)&&L!==-1;L--,S++)E+=256*R[L]>>>0,R[L]=E%a>>>0,E=E/a>>>0;if(E!==0)throw new Error("Non-zero carry");g=S,x++}for(var N=v-g;N!==v&&R[N]===0;)N++;for(var z=c.repeat(p);N<v;++N)z+=t.charAt(R[N]);return z}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var g=0,x=0;d[p]===c;)g++,p++;for(var w=(d.length-p)*f+1>>>0,v=new Uint8Array(w);d[p];){var R=r[d.charCodeAt(p)];if(R===255)return;for(var E=0,S=w-1;(R!==0||E<x)&&S!==-1;S--,E++)R+=a*v[S]>>>0,v[S]=R%256>>>0,R=R/256>>>0;if(R!==0)throw new Error("Non-zero carry");x=E,p++}if(d[p]!==" "){for(var L=w-x;L!==w&&v[L]===0;)L++;for(var N=new Uint8Array(g+(w-L)),z=g;L!==w;)N[z++]=v[L++];return N}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var Cu=Iu,Tu=Cu,va=Tu;var Cg=new Uint8Array(0);var wa=(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},Ne=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 Ea=t=>new TextEncoder().encode(t),Sa=t=>new TextDecoder().decode(t);var zi=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")}},Gi=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 Aa(this,e)}},Wi=class{constructor(e){this.decoders=e}or(e){return Aa(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`)}},Aa=(t,e)=>new Wi({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Yi=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new zi(e,r,n),this.decoder=new Gi(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},_r=({name:t,prefix:e,encode:r,decode:n})=>new Yi(t,e,r,n),We=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=va(r,e);return _r({prefix:t,name:e,encode:n,decode:o=>Ne(i(o))})},_u=(t,e,r,n)=>{let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let o=t.length;for(;t[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,f=0;for(let u=0;u<o;++u){let l=i[t[u]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},Ru=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},vt=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>_r({prefix:e,name:t,encode(i){return Ru(i,n,r)},decode(i){return _u(i,n,r,t)}});var Et=We({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Lu=We({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Zi={};Nt(Zi,{base10:()=>Nu});var Nu=We({prefix:"9",name:"base10",alphabet:"0123456789"});var Qi={};Nt(Qi,{base16:()=>Du,base16upper:()=>Pu});var Du=vt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Pu=vt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Xi={};Nt(Xi,{base2:()=>ku});var ku=vt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ji={};Nt(Ji,{base256emoji:()=>Vu});var Ia=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}"),Uu=Ia.reduce((t,e,r)=>(t[r]=e,t),[]),Ou=Ia.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Ku(t){return t.reduce((e,r)=>(e+=Uu[r],e),"")}function Mu(t){let e=[];for(let r of t){let n=Ou[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Vu=_r({prefix:"\u{1F680}",name:"base256emoji",encode:Ku,decode:Mu});var ji={};Nt(ji,{base32:()=>De,base32hex:()=>zu,base32hexpad:()=>Wu,base32hexpadupper:()=>Yu,base32hexupper:()=>Gu,base32pad:()=>qu,base32padupper:()=>Hu,base32upper:()=>Fu,base32z:()=>$u});var De=vt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Fu=vt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),qu=vt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Hu=vt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),zu=vt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Gu=vt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Wu=vt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Yu=vt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),$u=vt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var to={};Nt(to,{base36:()=>Zu,base36upper:()=>Qu});var Zu=We({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Qu=We({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ro={};Nt(ro,{base64:()=>Un,base64pad:()=>Xu,base64url:()=>eo,base64urlpad:()=>Ju});var Un=vt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Xu=vt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),eo=vt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Ju=vt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var no={};Nt(no,{base8:()=>ju});var ju=vt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var io={};Nt(io,{identity:()=>tl});var tl=_r({prefix:"\0",name:"identity",encode:t=>Sa(t),decode:t=>Ea(t)});var qg=new TextEncoder,Hg=new TextDecoder;var so={};Nt(so,{identity:()=>Ye});var nl=_a,Ca=128,il=127,ol=~il,sl=Math.pow(2,31);function _a(t,e,r){e=e||[],r=r||0;for(var n=r;t>=sl;)e[r++]=t&255|Ca,t/=128;for(;t&ol;)e[r++]=t&255|Ca,t>>>=7;return e[r]=t|0,_a.bytes=r-n+1,e}var al=oo,cl=128,Ta=127;function oo(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw oo.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Ta)<<i:(s&Ta)*Math.pow(2,i),i+=7}while(s>=cl);return oo.bytes=o-n,r}var fl=Math.pow(2,7),ul=Math.pow(2,14),ll=Math.pow(2,21),hl=Math.pow(2,28),dl=Math.pow(2,35),pl=Math.pow(2,42),yl=Math.pow(2,49),gl=Math.pow(2,56),ml=Math.pow(2,63),xl=function(t){return t<fl?1:t<ul?2:t<ll?3:t<hl?4:t<dl?5:t<pl?6:t<yl?7:t<gl?8:t<ml?9:10},bl={encode:nl,decode:al,encodingLength:xl},vl=bl,rn=vl;var nn=(t,e=0)=>[rn.decode(t,e),rn.decode.bytes],Rr=(t,e,r=0)=>(rn.encode(t,e,r),e),Lr=t=>rn.encodingLength(t);var be=(t,e)=>{let r=e.byteLength,n=Lr(t),i=n+Lr(r),o=new Uint8Array(i+r);return Rr(t,o,0),Rr(r,o,n),o.set(e,i),new Nr(t,r,e,o)},ur=t=>{let e=Ne(t),[r,n]=nn(e),[i,o]=nn(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Nr(r,i,s,e)},Ra=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&wa(t.bytes,r.bytes)}},Nr=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var La=0,wl="identity",Na=Ne,El=t=>be(La,Na(t)),Ye={code:La,name:wl,encode:Na,digest:El};var fo={};Nt(fo,{sha256:()=>Mt,sha512:()=>Sl});var co=({name:t,code:e,encode:r})=>new ao(t,e,r),ao=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?be(this.code,r):r.then(n=>be(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Pa=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Mt=co({name:"sha2-256",code:18,encode:Pa("SHA-256")}),Sl=co({name:"sha2-512",code:19,encode:Pa("SHA-512")});var ka=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Al(r,uo(t),e||Et.encoder);default:return Il(r,uo(t),e||De.encoder)}};var Ua=new WeakMap,uo=t=>{let e=Ua.get(t);if(e==null){let r=new Map;return Ua.set(t,r),r}return e},ae=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!==on)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Cl)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=be(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&&Ra(e.multihash,n.multihash)}toString(e){return ka(this,e)}toJSON(){return{"/":ka(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:o,bytes:s}=r;return new t(n,i,o,s||Oa(n,i,o.bytes))}else if(r[Tl]===!0){let{version:n,multihash:i,code:o}=r,s=ur(i);return t.create(n,o,s)}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!==on)throw new Error(`Version 0 CID must use dag-pb (code: ${on}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=Oa(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,on,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=Ne(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new Nr(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=nn(e.subarray(r));return r+=h,l},i=n(),o=on;if(i===18?(i=0,r=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,i]=Bl(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return uo(o).set(n,e),o}},Bl=(t,e)=>{switch(t[0]){case"Q":{let r=e||Et;return[Et.prefix,r.decode(`${Et.prefix}${t}`)]}case Et.prefix:{let r=e||Et;return[Et.prefix,r.decode(t)]}case De.prefix:{let r=e||De;return[De.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)]}}},Al=(t,e,r)=>{let{prefix:n}=r;if(n!==Et.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},Il=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},on=112,Cl=18,Oa=(t,e,r)=>{let n=Lr(t),i=n+Lr(e),o=new Uint8Array(i+r.byteLength);return Rr(t,o,0),Rr(e,o,n),o.set(r,i),o},Tl=Symbol.for("@ipld/js-cid/CID");var $e={...io,...Xi,...no,...Zi,...Qi,...ji,...to,...$i,...ro,...Ji},om={...fo,...so};function Tt(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 _l=Symbol.for("nodejs.util.inspect.custom"),Ka=Object.values($e).map(t=>t.decoder).reduce((t,e)=>t.or(e),$e.identity.decoder),Ma=114,lo=36,ho=37,sn=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[ga]=!0;toString(){return this.string==null&&(this.string=Et.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return ae.createV1(Ma,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Tt(this.multihash.bytes,e);if(typeof e=="string")return Rl(e).equals(this);if(e?.multihash?.bytes!=null)return Tt(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[_l](){return`PeerId(${this.toString()})`}},Dr=class extends sn{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Pr=class extends sn{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},kr=class extends sn{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Rl(t,e){if(e=e??Ka,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=ur(Et.decode(`z${t}`));return t.startsWith("12D")?new Pr({multihash:r}):t.startsWith("16U")?new kr({multihash:r}):new Dr({multihash:r})}return po(Ka.decode(t))}function po(t){try{let e=ur(t);if(e.code===Ye.code){if(e.digest.length===lo)return new Pr({multihash:e});if(e.digest.length===ho)return new kr({multihash:e})}if(e.code===Mt.code)return new Dr({multihash:e})}catch{return Ll(ae.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function Ll(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Ma)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Mt.code)return new Dr({multihash:t.multihash});if(e.code===Ye.code){if(e.digest.length===lo)return new Pr({multihash:t.multihash});if(e.digest.length===ho)return new kr({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function an(t,e){return t.length===lo?new Pr({multihash:be(Ye.code,t),privateKey:e}):t.length===ho?new kr({multihash:be(Ye.code,t),privateKey:e}):new Dr({multihash:await Mt.digest(t),publicKey:t,privateKey:e})}var hv=Gt(ln(),1),dv=Gt(ec(),1);var Yy=Gt(ct(),1);function je(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Oe(t=0){return globalThis.Buffer?.alloc!=null?je(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Ft(t=0){return globalThis.Buffer?.allocUnsafe!=null?je(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function nc(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var rc=nc("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Oo=nc("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=Ft(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),rp={utf8:rc,"utf-8":rc,hex:$e.base16,latin1:Oo,ascii:Oo,binary:Oo,...$e},ri=rp;function lt(t,e="utf8"){let r=ri[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?je(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var ys={};Nt(ys,{Ed25519PrivateKey:()=>Er,Ed25519PublicKey:()=>vn,generateKeyPair:()=>my,generateKeyPairFromSeed:()=>Kc,unmarshalEd25519PrivateKey:()=>yy,unmarshalEd25519PublicKey:()=>gy});var rx=Gt(It(),1),nx=Gt(Jn(),1),ic=Gt(ct(),1);function _t(t,e){if(globalThis.Buffer!=null)return je(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=Ft(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return je(r)}function nt(t,e="utf8"){let r=ri[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}function ue(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=_t([new Uint8Array(e-r.length),r])}return nt(r,"base64url")}function Jt(t){let e=oc(t);return new ic.default.jsbn.BigInteger(nt(e,"base16"),16)}function oc(t,e){let r=lt(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=_t([new Uint8Array(e-r.length),r])}return r}function re(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function sc(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Ko(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 ac(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");sc(t.outputLen),sc(t.blockLen)}function Vr(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 cc(t,e){Ko(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var ni=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var fc=t=>t instanceof Uint8Array;var ii=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),le=(t,e)=>t<<32-e|t>>>e,np=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!np)throw new Error("Non little-endian hardware is not supported");function Mo(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function pn(t){if(typeof t=="string"&&(t=Mo(t)),!fc(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function oi(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!fc(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Fr=class{clone(){return this._cloneInto()}},lx={}.toString;function si(t){let e=n=>t().update(pn(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function qr(t=32){if(ni&&typeof ni.getRandomValues=="function")return ni.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function ip(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}var Hr=class extends Fr{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=ii(this.buffer)}update(e){Vr(this);let{view:r,buffer:n,blockLen:i}=this;e=pn(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=ii(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Vr(this),cc(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;ip(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=ii(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let f=c/4,u=this.get();if(f>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<f;l++)a.setUint32(4*l,u[l],o)}digest(){let{buffer: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:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var ai=BigInt(4294967295),Vo=BigInt(32);function uc(t,e=!1){return e?{h:Number(t&ai),l:Number(t>>Vo&ai)}:{h:Number(t>>Vo&ai)|0,l:Number(t&ai)|0}}function op(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=uc(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var sp=(t,e)=>BigInt(t>>>0)<<Vo|BigInt(e>>>0),ap=(t,e,r)=>t>>>r,cp=(t,e,r)=>t<<32-r|e>>>r,fp=(t,e,r)=>t>>>r|e<<32-r,up=(t,e,r)=>t<<32-r|e>>>r,lp=(t,e,r)=>t<<64-r|e>>>r-32,hp=(t,e,r)=>t>>>r-32|e<<64-r,dp=(t,e)=>e,pp=(t,e)=>t,yp=(t,e,r)=>t<<r|e>>>32-r,gp=(t,e,r)=>e<<r|t>>>32-r,mp=(t,e,r)=>e<<r-32|t>>>64-r,xp=(t,e,r)=>t<<r-32|e>>>64-r;function bp(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var vp=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),wp=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Ep=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Sp=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Bp=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Ap=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var Ip={fromBig:uc,split:op,toBig:sp,shrSH:ap,shrSL:cp,rotrSH:fp,rotrSL:up,rotrBH:lp,rotrBL:hp,rotr32H:dp,rotr32L:pp,rotlSH:yp,rotlSL:gp,rotlBH:mp,rotlBL:xp,add:bp,add3L:vp,add3H:wp,add4L:Ep,add4H:Sp,add5H:Ap,add5L:Bp},Y=Ip;var[Cp,Tp]=Y.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))),tr=new Uint32Array(80),er=new Uint32Array(80),Fo=class extends Hr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:h,Gh:y,Gl:d,Hh:p,Hl:g}=this;return[e,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g]}set(e,r,n,i,o,s,a,c,f,u,l,h,y,d,p,g){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=f|0,this.El=u|0,this.Fh=l|0,this.Fl=h|0,this.Gh=y|0,this.Gl=d|0,this.Hh=p|0,this.Hl=g|0}process(e,r){for(let v=0;v<16;v++,r+=4)tr[v]=e.getUint32(r),er[v]=e.getUint32(r+=4);for(let v=16;v<80;v++){let R=tr[v-15]|0,E=er[v-15]|0,S=Y.rotrSH(R,E,1)^Y.rotrSH(R,E,8)^Y.shrSH(R,E,7),L=Y.rotrSL(R,E,1)^Y.rotrSL(R,E,8)^Y.shrSL(R,E,7),N=tr[v-2]|0,z=er[v-2]|0,H=Y.rotrSH(N,z,19)^Y.rotrBH(N,z,61)^Y.shrSH(N,z,6),V=Y.rotrSL(N,z,19)^Y.rotrBL(N,z,61)^Y.shrSL(N,z,6),Q=Y.add4L(L,V,er[v-7],er[v-16]),at=Y.add4H(Q,S,H,tr[v-7],tr[v-16]);tr[v]=at|0,er[v]=Q|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:h,Fh:y,Fl:d,Gh:p,Gl:g,Hh:x,Hl:w}=this;for(let v=0;v<80;v++){let R=Y.rotrSH(l,h,14)^Y.rotrSH(l,h,18)^Y.rotrBH(l,h,41),E=Y.rotrSL(l,h,14)^Y.rotrSL(l,h,18)^Y.rotrBL(l,h,41),S=l&y^~l&p,L=h&d^~h&g,N=Y.add5L(w,E,L,Tp[v],er[v]),z=Y.add5H(N,x,R,S,Cp[v],tr[v]),H=N|0,V=Y.rotrSH(n,i,28)^Y.rotrBH(n,i,34)^Y.rotrBH(n,i,39),Q=Y.rotrSL(n,i,28)^Y.rotrBL(n,i,34)^Y.rotrBL(n,i,39),at=n&o^n&a^o&a,Ut=i&s^i&c^s&c;x=p|0,w=g|0,p=y|0,g=d|0,y=l|0,d=h|0,{h:l,l:h}=Y.add(f|0,u|0,z|0,H|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let C=Y.add3L(H,Q,Ut);n=Y.add3H(C,z,V,at),i=C|0}({h:n,l:i}=Y.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=Y.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=Y.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=Y.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:h}=Y.add(this.Eh|0,this.El|0,l|0,h|0),{h:y,l:d}=Y.add(this.Fh|0,this.Fl|0,y|0,d|0),{h:p,l:g}=Y.add(this.Gh|0,this.Gl|0,p|0,g|0),{h:x,l:w}=Y.add(this.Hh|0,this.Hl|0,x|0,w|0),this.set(n,i,o,s,a,c,f,u,l,h,y,d,p,g,x,w)}roundClean(){tr.fill(0),er.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var qo=si(()=>new Fo);var ui={};Nt(ui,{bitGet:()=>kp,bitLen:()=>Pp,bitMask:()=>yn,bitSet:()=>Up,bytesToHex:()=>Ke,bytesToNumberBE:()=>Me,bytesToNumberLE:()=>rr,concatBytes:()=>Ve,createHmacDrbg:()=>Go,ensureBytes:()=>wt,equalBytes:()=>Np,hexToBytes:()=>mr,hexToNumber:()=>zo,numberToBytesBE:()=>nr,numberToBytesLE:()=>xr,numberToHexUnpadded:()=>dc,numberToVarBytesBE:()=>Lp,utf8ToBytes:()=>Dp,validateObject:()=>Ie});var hc=BigInt(0),ci=BigInt(1),_p=BigInt(2),fi=t=>t instanceof Uint8Array,Rp=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Ke(t){if(!fi(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Rp[t[r]];return e}function dc(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function zo(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function mr(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,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function Me(t){return zo(Ke(t))}function rr(t){if(!fi(t))throw new Error("Uint8Array expected");return zo(Ke(Uint8Array.from(t).reverse()))}function nr(t,e){return mr(t.toString(16).padStart(e*2,"0"))}function xr(t,e){return nr(t,e).reverse()}function Lp(t){return mr(dc(t))}function wt(t,e,r){let n;if(typeof e=="string")try{n=mr(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(fi(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 Ve(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!fi(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Np(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 Dp(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Pp(t){let e;for(e=0;t>hc;t>>=ci,e+=1);return e}function kp(t,e){return t>>BigInt(e)&ci}var Up=(t,e,r)=>t|(r?ci:hc)<<BigInt(e),yn=t=>(_p<<BigInt(t-1))-ci,Ho=t=>new Uint8Array(t),lc=t=>Uint8Array.from(t);function Go(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=Ho(t),i=Ho(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Ho())=>{i=a(lc([0]),l),n=a(),l.length!==0&&(i=a(lc([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let y=n.slice();h.push(y),l+=n.length}return Ve(...h)};return(l,h)=>{s(),c(l);let y;for(;!(y=h(f()));)c();return s(),y}}var Op={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 Ie(t,e,r={}){let n=(i,o,s)=>{let a=Op[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var Rt=BigInt(0),gt=BigInt(1),br=BigInt(2),Kp=BigInt(3),Wo=BigInt(4),pc=BigInt(5),yc=BigInt(8),Mp=BigInt(9),Vp=BigInt(16);function ft(t,e){let r=t%e;return r>=Rt?r:e+r}function Fp(t,e,r){if(r<=Rt||e<Rt)throw new Error("Expected power/modulo > 0");if(r===gt)return Rt;let n=gt;for(;e>Rt;)e>&&(n=n*t%r),t=t*t%r,e>>=gt;return n}function mt(t,e,r){let n=t;for(;e-- >Rt;)n*=n,n%=r;return n}function li(t,e){if(t===Rt||e<=Rt)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ft(t,e),n=e,i=Rt,o=gt,s=gt,a=Rt;for(;r!==Rt;){let f=n/r,u=n%r,l=i-s*f,h=o-a*f;n=r,r=u,i=s,o=a,s=l,a=h}if(n!==gt)throw new Error("invert: does not exist");return ft(i,e)}function qp(t){let e=(t-gt)/br,r,n,i;for(r=t-gt,n=0;r%br===Rt;r/=br,n++);for(i=br;i<t&&Fp(i,e,t)!==t-gt;i++);if(n===1){let s=(t+gt)/Wo;return function(c,f){let u=c.pow(f,s);if(!c.eql(c.sqr(u),f))throw new Error("Cannot find square root");return u}}let o=(r+gt)/br;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let f=n,u=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let y=1;for(let p=a.sqr(h);y<f&&!a.eql(p,a.ONE);y++)p=a.sqr(p);let d=a.pow(u,gt<<BigInt(f-y-1));u=a.sqr(d),l=a.mul(l,d),h=a.mul(h,u),f=y}return l}}function Hp(t){if(t%Wo===Kp){let e=(t+gt)/Wo;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%yc===pc){let e=(t-pc)/yc;return function(n,i){let o=n.mul(i,br),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,br),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),i))throw new Error("Cannot find square root");return f}}return t%Vp,qp(t)}var gc=(t,e)=>(ft(t,e)>)===gt,zp=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Yo(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=zp.reduce((n,i)=>(n[i]="function",n),e);return Ie(t,r)}function Gp(t,e,r){if(r<Rt)throw new Error("Expected power > 0");if(r===Rt)return t.ONE;if(r===gt)return e;let n=t.ONE,i=e;for(;r>Rt;)r>&&(n=t.mul(n,i)),i=t.sqr(i),r>>=gt;return n}function Wp(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function $o(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function hi(t,e,r=!1,n={}){if(t<=Rt)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=$o(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Hp(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:yn(i),ZERO:Rt,ONE:gt,create:c=>ft(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Rt<=c&&c<t},is0:c=>c===Rt,isOdd:c=>(c>)===gt,neg:c=>ft(-c,t),eql:(c,f)=>c===f,sqr:c=>ft(c*c,t),add:(c,f)=>ft(c+f,t),sub:(c,f)=>ft(c-f,t),mul:(c,f)=>ft(c*f,t),pow:(c,f)=>Gp(a,c,f),div:(c,f)=>ft(c*li(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>li(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>Wp(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?xr(c,o):nr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?rr(c):Me(c)}});return Object.freeze(a)}function mc(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 xc(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 Zo(t){let e=xc(t);return e+Math.ceil(e/2)}function bc(t,e,r=!1){let n=t.length,i=xc(e),o=Zo(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?Me(t):rr(t),a=ft(s,e-gt)+gt;return r?xr(a,i):nr(a,i)}var $p=BigInt(0),Qo=BigInt(1);function di(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>$p;)o&Qo&&(s=s.add(a)),a=a.double(),o>>=Qo;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let h=1;h<a;h++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=t.ZERO,u=t.BASE,l=BigInt(2**i-1),h=2**i,y=BigInt(i);for(let d=0;d<a;d++){let p=d*c,g=Number(s&l);s>>=y,g>c&&(g-=h,s+=Qo);let x=p,w=p+Math.abs(g)-1,v=d%2!==0,R=g<0;g===0?u=u.add(r(v,o[x])):f=f.add(r(R,o[w]))}return{p:f,f:u}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,f=o.get(i);return f||(f=this.precomputeWindow(i,c),c!==1&&o.set(i,a(f))),this.wNAF(c,f,s)}}}function gn(t){return Yo(t.Fp),Ie(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...$o(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var he=BigInt(0),jt=BigInt(1),pi=BigInt(2),Zp=BigInt(8),Qp={zip215:!0};function Xp(t){let e=gn(t);return Ie(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function yi(t){let e=Xp(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,f=pi<<BigInt(a*8)-jt,u=r.create,l=e.uvRatio||((D,A)=>{try{return{isValid:!0,value:r.sqrt(D*r.inv(A))}}catch{return{isValid:!1,value:he}}}),h=e.adjustScalarBytes||(D=>D),y=e.domain||((D,A,O)=>{if(A.length||O)throw new Error("Contexts/pre-hash are not supported");return D}),d=D=>typeof D=="bigint"&&he<D,p=(D,A)=>d(D)&&d(A)&&D<A,g=D=>D===he||p(D,f);function x(D,A){if(p(D,A))return D;throw new Error(`Expected valid scalar < ${A}, got ${typeof D} ${D}`)}function w(D){return D===he?D:x(D,n)}let v=new Map;function R(D){if(!(D instanceof E))throw new Error("ExtendedPoint expected")}class E{constructor(A,O,K,q){if(this.ex=A,this.ey=O,this.ez=K,this.et=q,!g(A))throw new Error("x required");if(!g(O))throw new Error("y required");if(!g(K))throw new Error("z required");if(!g(q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(A){if(A instanceof E)throw new Error("extended point not allowed");let{x:O,y:K}=A||{};if(!g(O)||!g(K))throw new Error("invalid affine point");return new E(O,K,jt,u(O*K))}static normalizeZ(A){let O=r.invertBatch(A.map(K=>K.ez));return A.map((K,q)=>K.toAffine(O[q])).map(E.fromAffine)}_setWindowSize(A){this._WINDOW_SIZE=A,v.delete(this)}assertValidity(){let{a:A,d:O}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:q,ez:$,et:X}=this,st=u(K*K),J=u(q*q),et=u($*$),At=u(et*et),bt=u(st*A),Ot=u(et*u(bt+J)),Kt=u(At+u(O*u(st*J)));if(Ot!==Kt)throw new Error("bad point: equation left != right (1)");let Ct=u(K*q),Vt=u($*X);if(Ct!==Vt)throw new Error("bad point: equation left != right (2)")}equals(A){R(A);let{ex:O,ey:K,ez:q}=this,{ex:$,ey:X,ez:st}=A,J=u(O*st),et=u($*q),At=u(K*st),bt=u(X*q);return J===et&&At===bt}is0(){return this.equals(E.ZERO)}negate(){return new E(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:A}=e,{ex:O,ey:K,ez:q}=this,$=u(O*O),X=u(K*K),st=u(pi*u(q*q)),J=u(A*$),et=O+K,At=u(u(et*et)-$-X),bt=J+X,Ot=bt-st,Kt=J-X,Ct=u(At*Ot),Vt=u(bt*Kt),Le=u(At*Kt),fr=u(Ot*bt);return new E(Ct,Vt,fr,Le)}add(A){R(A);let{a:O,d:K}=e,{ex:q,ey:$,ez:X,et:st}=this,{ex:J,ey:et,ez:At,et:bt}=A;if(O===BigInt(-1)){let ea=u(($-q)*(et+J)),ra=u(($+q)*(et-J)),qi=u(ra-ea);if(qi===he)return this.double();let na=u(X*pi*bt),ia=u(st*pi*At),oa=ia+na,sa=ra+ea,aa=ia-na,gu=u(oa*qi),mu=u(sa*aa),xu=u(oa*aa),bu=u(qi*sa);return new E(gu,mu,bu,xu)}let Ot=u(q*J),Kt=u($*et),Ct=u(st*K*bt),Vt=u(X*At),Le=u((q+$)*(J+et)-Ot-Kt),fr=Vt-Ct,en=Vt+Ct,ta=u(Kt-O*Ot),hu=u(Le*fr),du=u(en*ta),pu=u(Le*ta),yu=u(fr*en);return new E(hu,du,yu,pu)}subtract(A){return this.add(A.negate())}wNAF(A){return N.wNAFCached(this,v,A,E.normalizeZ)}multiply(A){let{p:O,f:K}=this.wNAF(x(A,n));return E.normalizeZ([O,K])[0]}multiplyUnsafe(A){let O=w(A);return O===he?L:this.equals(L)||O===jt?this:this.equals(S)?this.wNAF(O).p:N.unsafeLadder(this,O)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return N.unsafeLadder(this,n).is0()}toAffine(A){let{ex:O,ey:K,ez:q}=this,$=this.is0();A==null&&(A=$?Zp:r.inv(q));let X=u(O*A),st=u(K*A),J=u(q*A);if($)return{x:he,y:jt};if(J!==jt)throw new Error("invZ was invalid");return{x:X,y:st}}clearCofactor(){let{h:A}=e;return A===jt?this:this.multiplyUnsafe(A)}static fromHex(A,O=!1){let{d:K,a:q}=e,$=r.BYTES;A=wt("pointHex",A,$);let X=A.slice(),st=A[$-1];X[$-1]=st&-129;let J=rr(X);J===he||(O?x(J,f):x(J,r.ORDER));let et=u(J*J),At=u(et-jt),bt=u(K*et-q),{isValid:Ot,value:Kt}=l(At,bt);if(!Ot)throw new Error("Point.fromHex: invalid y coordinate");let Ct=(Kt&jt)===jt,Vt=(st&128)!==0;if(!O&&Kt===he&&Vt)throw new Error("Point.fromHex: x=0 and x_0=1");return Vt!==Ct&&(Kt=u(-Kt)),E.fromAffine({x:Kt,y:J})}static fromPrivateKey(A){return V(A).point}toRawBytes(){let{x:A,y:O}=this.toAffine(),K=xr(O,r.BYTES);return K[K.length-1]|=A&jt?128:0,K}toHex(){return Ke(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,jt,u(e.Gx*e.Gy)),E.ZERO=new E(he,jt,jt,he);let{BASE:S,ZERO:L}=E,N=di(E,a*8);function z(D){return ft(D,n)}function H(D){return z(rr(D))}function V(D){let A=a;D=wt("private key",D,A);let O=wt("hashed private key",o(D),2*A),K=h(O.slice(0,A)),q=O.slice(A,2*A),$=H(K),X=S.multiply($),st=X.toRawBytes();return{head:K,prefix:q,scalar:$,point:X,pointBytes:st}}function Q(D){return V(D).pointBytes}function at(D=new Uint8Array,...A){let O=Ve(...A);return H(o(y(O,wt("context",D),!!i)))}function Ut(D,A,O={}){D=wt("message",D),i&&(D=i(D));let{prefix:K,scalar:q,pointBytes:$}=V(A),X=at(O.context,K,D),st=S.multiply(X).toRawBytes(),J=at(O.context,st,$,D),et=z(X+J*q);w(et);let At=Ve(st,xr(et,r.BYTES));return wt("result",At,a*2)}let C=Qp;function P(D,A,O,K=C){let{context:q,zip215:$}=K,X=r.BYTES;D=wt("signature",D,2*X),A=wt("message",A),i&&(A=i(A));let st=rr(D.slice(X,2*X)),J,et,At;try{J=E.fromHex(O,$),et=E.fromHex(D.slice(0,X),$),At=S.multiplyUnsafe(st)}catch{return!1}if(!$&&J.isSmallOrder())return!1;let bt=at(q,et.toRawBytes(),J.toRawBytes(),A);return et.add(J.multiplyUnsafe(bt)).subtract(At).clearCofactor().equals(E.ZERO)}return S._setWindowSize(8),{CURVE:e,getPublicKey:Q,sign:Ut,verify:P,ExtendedPoint:E,utils:{getExtendedPublicKey:V,randomPrivateKey:()=>s(r.BYTES),precompute(D=8,A=E.BASE){return A._setWindowSize(D),A.multiply(BigInt(3)),A}}}}var Jo=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),vc=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Dx=BigInt(0),Jp=BigInt(1),Xo=BigInt(2),jp=BigInt(5),wc=BigInt(10),ty=BigInt(20),ey=BigInt(40),Ec=BigInt(80);function ry(t){let e=Jo,n=t*t%e*t%e,i=mt(n,Xo,e)*n%e,o=mt(i,Jp,e)*t%e,s=mt(o,jp,e)*o%e,a=mt(s,wc,e)*s%e,c=mt(a,ty,e)*a%e,f=mt(c,ey,e)*c%e,u=mt(f,Ec,e)*f%e,l=mt(u,Ec,e)*f%e,h=mt(l,wc,e)*s%e;return{pow_p_5_8:mt(h,Xo,e)*t%e,b2:n}}function ny(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function iy(t,e){let r=Jo,n=ft(e*e*e,r),i=ft(n*n*e,r),o=ry(t*i).pow_p_5_8,s=ft(t*n*o,r),a=ft(e*s*s,r),c=s,f=ft(s*vc,r),u=a===t,l=a===ft(-t,r),h=a===ft(-t*vc,r);return u&&(s=c),(l||h)&&(s=f),gc(s,r)&&(s=ft(-s,r)),{isValid:u||l,value:s}}var Fe=hi(Jo,void 0,!0),jo={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Fe,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:qo,randomBytes:qr,adjustScalarBytes:ny,uvRatio:iy},zr=yi(jo);function Sc(t,e,r){if(e.length>255)throw new Error("Context is too big");return oi(Mo("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var Px=yi({...jo,domain:Sc}),kx=yi({...jo,domain:Sc,prehash:qo});var oy=(Fe.ORDER+BigInt(3))/BigInt(8),Ux=Fe.pow(Xo,oy),Ox=Fe.sqrt(Fe.neg(Fe.ONE)),Kx=(Fe.ORDER-BigInt(5))/BigInt(8),Mx=BigInt(486662);var Vx=mc(Fe,Fe.neg(BigInt(486664)));var Fx=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),qx=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),Hx=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),zx=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Gx=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Gr=32,qe=64,gi=32;function Bc(){let t=zr.utils.randomPrivateKey(),e=zr.getPublicKey(t);return{privateKey:Tc(t,e),publicKey:e}}function Ac(t){if(t.length!==gi)throw new TypeError('"seed" must be 32 bytes in length.');if(!(t instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=t,r=zr.getPublicKey(e);return{privateKey:Tc(e,r),publicKey:r}}function Ic(t,e){let r=t.subarray(0,gi);return zr.sign(e instanceof Uint8Array?e:e.subarray(),r)}function Cc(t,e,r){return zr.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function Tc(t,e){let r=new Uint8Array(qe);for(let n=0;n<gi;n++)r[n]=t[n],r[gi+n]=e[n];return r}var Zt={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 ts={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function es(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=Zt.get();r*=8;async function c(l,h){let y=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=lt(h));let g;if(h.length===0){g=await a.subtle.importKey("jwk",ts,{name:"AES-GCM"},!0,["encrypt"]);try{let w={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},v=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(w,v,{name:e,length:r},!0,["encrypt"])}catch{g=await a.subtle.importKey("jwk",ts,{name:"AES-GCM"},!0,["encrypt"])}}else{let w={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},v=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(w,v,{name:e,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(p,g,l);return _t([y,p.iv,new Uint8Array(x)])}async function f(l,h){let y=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),g={name:e,iv:d};typeof h=="string"&&(h=lt(h));let x;if(h.length===0)try{let v={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},R=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(v,R,{name:e,length:r},!0,["decrypt"])}catch{x=await a.subtle.importKey("jwk",ts,{name:"AES-GCM"},!0,["decrypt"])}else{let v={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},R=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(v,R,{name:e,length:r},!0,["decrypt"])}let w=await a.subtle.decrypt(g,x,p);return new Uint8Array(w)}return{encrypt:c,decrypt:f}}async function Wr(t,e){let n=await es().encrypt(t,e);return Un.encode(n)}var rs=new Float32Array([-0]),ir=new Uint8Array(rs.buffer);function Rc(t,e,r){rs[0]=t,e[r]=ir[0],e[r+1]=ir[1],e[r+2]=ir[2],e[r+3]=ir[3]}function Lc(t,e){return ir[0]=t[e],ir[1]=t[e+1],ir[2]=t[e+2],ir[3]=t[e+3],rs[0]}var ns=new Float64Array([-0]),qt=new Uint8Array(ns.buffer);function Nc(t,e,r){ns[0]=t,e[r]=qt[0],e[r+1]=qt[1],e[r+2]=qt[2],e[r+3]=qt[3],e[r+4]=qt[4],e[r+5]=qt[5],e[r+6]=qt[6],e[r+7]=qt[7]}function Dc(t,e){return qt[0]=t[e],qt[1]=t[e+1],qt[2]=t[e+2],qt[3]=t[e+3],qt[4]=t[e+4],qt[5]=t[e+5],qt[6]=t[e+6],qt[7]=t[e+7],ns[0]}var ay=BigInt(Number.MAX_SAFE_INTEGER),cy=BigInt(Number.MIN_SAFE_INTEGER),Qt=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 vr;if(e<ay&&e>cy)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>Pc&&(i=0n,++n>Pc&&(n=0n))),new t(Number(i),Number(n))}static fromNumber(e){if(e===0)return vr;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):vr}},vr=new Qt(0,0);vr.toBigInt=function(){return 0n};vr.zzEncode=vr.zzDecode=function(){return this};vr.length=function(){return 1};var Pc=4294967296n;function kc(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 Uc(t,e,r){if(r-e<1)return"";let i,o=[],s=0,a;for(;e<r;)a=t[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(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,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function is(t,e,r){let n=r,i,o;for(let s=0;s<t.length;++s)i=t.charCodeAt(s),i<128?e[r++]=i:i<2048?(e[r++]=i>>6|192,e[r++]=i&63|128):(i&64512)===55296&&((o=t.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,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 de(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function mi(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var os=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,de(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 de(this,4);return mi(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw de(this,4);return mi(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw de(this,4);let e=Lc(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw de(this,4);let e=Dc(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 de(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return Uc(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw de(this,e);this.pos+=e}else do if(this.pos>=this.len)throw de(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 Qt(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 de(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 de(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 de(this,8);let e=mi(this.buf,this.pos+=4),r=mi(this.buf,this.pos+=4);return new Qt(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 ss(t){return new os(t instanceof Uint8Array?t:t.subarray())}function pe(t,e){let r=ss(t);return e.decode(r)}function as(t){let e=t??8192,r=e>>>1,n,i=e;return function(s){if(s<1||s>r)return Ft(s);i+s>e&&(n=Ft(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var wr=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function cs(){}var us=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},fy=as();function uy(t){return globalThis.Buffer!=null?Ft(t):fy(t)}var bn=class{len;head;tail;states;constructor(){this.len=0,this.head=new wr(cs,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new wr(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new ls((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(mn,10,Qt.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=Qt.fromBigInt(e);return this._push(mn,r.length(),r)}uint64Number(e){let r=Qt.fromNumber(e);return this._push(mn,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=Qt.fromBigInt(e).zzEncode();return this._push(mn,r.length(),r)}sint64Number(e){let r=Qt.fromNumber(e).zzEncode();return this._push(mn,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(fs,1,e?1:0)}fixed32(e){return this._push(xn,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=Qt.fromBigInt(e);return this._push(xn,4,r.lo)._push(xn,4,r.hi)}fixed64Number(e){let r=Qt.fromNumber(e);return this._push(xn,4,r.lo)._push(xn,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(Rc,4,e)}double(e){return this._push(Nc,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(fs,1,0):this.uint32(r)._push(hy,r,e)}string(e){let r=kc(e);return r!==0?this.uint32(r)._push(is,r,e):this._push(fs,1,0)}fork(){return this.states=new us(this),this.head=this.tail=new wr(cs,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 wr(cs,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=uy(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function fs(t,e,r){e[r]=t&255}function ly(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var ls=class extends wr{next;constructor(e,r){super(ly,e,r),this.next=void 0}};function mn(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 xn(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 hy(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(bn.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(dy,e,t),this},bn.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(py,e,t),this});function dy(t,e,r){e.set(t,r)}function py(t,e,r){t.length<40?is(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(lt(t),r)}function hs(){return new bn}function ye(t,e){let r=hs();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Yr;(function(t){t[t.VARINT=0]="VARINT",t[t.BIT64=1]="BIT64",t[t.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",t[t.START_GROUP=3]="START_GROUP",t[t.END_GROUP=4]="END_GROUP",t[t.BIT32=5]="BIT32"})(Yr||(Yr={}));function xi(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function ds(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return xi("enum",Yr.VARINT,r,n)}function ge(t,e){return xi("message",Yr.LENGTH_DELIMITED,t,e)}var xt;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(xt||(xt={}));var ps;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(ps||(ps={}));(function(t){t.codec=()=>ds(ps)})(xt||(xt={}));var Ce;(function(t){let e;t.codec=()=>(e==null&&(e=ge((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),xt.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=xt.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>ye(r,t.codec()),t.decode=r=>pe(r,t.codec())})(Ce||(Ce={}));var Te;(function(t){let e;t.codec=()=>(e==null&&(e=ge((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),xt.codec().encode(r.Type,n)),r.Data!=null&&(n.uint32(18),n.bytes(r.Data)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.Type=xt.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>ye(r,t.codec()),t.decode=r=>pe(r,t.codec())})(Te||(Te={}));var vn=class{_key;constructor(e){this._key=$r(e,Gr)}verify(e,r){return Cc(this._key,r,e)}marshal(){return this._key}get bytes(){return Ce.encode({Type:xt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}hash(){let e=Mt.digest(this.bytes);return re(e)?e.then(({bytes:r})=>r):e.bytes}},Er=class{_key;_publicKey;constructor(e,r){this._key=$r(e,qe),this._publicKey=$r(r,Gr)}sign(e){return Ic(this._key,e)}get public(){return new vn(this._publicKey)}marshal(){return this._key}get bytes(){return Te.encode({Type:xt.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}async hash(){let e=Mt.digest(this.bytes),r;return re(e)?{bytes:r}=await e:r=e.bytes,r}async id(){let e=Ye.digest(this.public.bytes);return Et.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Wr(this.bytes,e);throw new F(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function yy(t){if(t.length>qe){t=$r(t,qe+Gr);let n=t.subarray(0,qe),i=t.subarray(qe,t.length);return new Er(n,i)}t=$r(t,qe);let e=t.subarray(0,qe),r=t.subarray(Gr);return new Er(e,r)}function gy(t){return t=$r(t,Gr),new vn(t)}async function my(){let{privateKey:t,publicKey:e}=Bc();return new Er(t,e)}async function Kc(t){let{privateKey:e,publicKey:r}=Ac(t);return new Er(e,r)}function $r(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new F(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}var xy={"P-256":256,"P-384":384,"P-521":521},by=Object.keys(xy),H2=by.join(" / ");var vs={};Nt(vs,{MAX_KEY_SIZE:()=>Bn,RsaPrivateKey:()=>Zr,RsaPublicKey:()=>Sn,fromJwk:()=>Ry,generateKeyPair:()=>Ly,unmarshalRsaPrivateKey:()=>Ty,unmarshalRsaPublicKey:()=>_y});var En=Gt(ct(),1);var Cb=Gt(Hc(),1);function vi(t){if(isNaN(t)||t<=0)throw new F("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return qr(t)}var fb=Gt(ei(),1),xs=Gt(ct(),1);function zc(t,e){return e.map(r=>Jt(t[r]))}function Gc(t){return xs.default.pki.setRsaPrivateKey(...zc(t,["n","e","d","p","q","dp","dq","qi"]))}function Wc(t){return xs.default.pki.setRsaPublicKey(...zc(t,["n","e"]))}var Br={};Nt(Br,{jwkToPkcs1:()=>Sy,jwkToPkix:()=>Ay,pkcs1ToJwk:()=>Ey,pkixToJwk:()=>By});var hb=Gt(ln(),1),db=Gt(ei(),1);var He=Gt(ct(),1);function Ey(t){let e=He.default.asn1.fromDer(nt(t,"ascii")),r=He.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:ue(r.n),e:ue(r.e),d:ue(r.d),p:ue(r.p),q:ue(r.q),dp:ue(r.dP),dq:ue(r.dQ),qi:ue(r.qInv),alg:"RS256"}}function Sy(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 F("JWK was missing components","ERR_INVALID_PARAMETERS");let e=He.default.pki.privateKeyToAsn1({n:Jt(t.n),e:Jt(t.e),d:Jt(t.d),p:Jt(t.p),q:Jt(t.q),dP:Jt(t.dp),dQ:Jt(t.dq),qInv:Jt(t.qi)});return lt(He.default.asn1.toDer(e).getBytes(),"ascii")}function By(t){let e=He.default.asn1.fromDer(nt(t,"ascii")),r=He.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:ue(r.n),e:ue(r.e)}}function Ay(t){if(t.n==null||t.e==null)throw new F("JWK was missing components","ERR_INVALID_PARAMETERS");let e=He.default.pki.publicKeyToAsn1({n:Jt(t.n),e:Jt(t.e)});return lt(He.default.asn1.toDer(e).getBytes(),"ascii")}async function Yc(t){let e=await Zt.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 Qc(e);return{privateKey:r[0],publicKey:r[1]}}async function bs(t){let r=[await Zt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Iy(t)],n=await Qc({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function $c(t,e){let r=await Zt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await Zt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function Zc(t,e,r){let n=await Zt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return Zt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r instanceof Uint8Array?r:r.subarray())}async function Qc(t){if(t.privateKey==null||t.publicKey==null)throw new F("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([Zt.get().subtle.exportKey("jwk",t.privateKey),Zt.get().subtle.exportKey("jwk",t.publicKey)])}async function Iy(t){return Zt.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 Xc(t,e,r,n){let i=e?Wc(t):Gc(t),o=nt(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return lt(s,"ascii")}function Jc(t,e){return Xc(t,!0,e,(r,n)=>n.encrypt(r))}function jc(t,e){return Xc(t,!1,e,(r,n)=>n.decrypt(r))}function wi(t){if(t.kty!=="RSA")throw new F("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new F("invalid key modulus","ERR_INVALID_KEY_MODULUS");return lt(t.n,"base64url").length*8}var Bn=8192,Sn=class{_key;constructor(e){this._key=e}verify(e,r){return Zc(this._key,r,e)}marshal(){return Br.jwkToPkix(this._key)}get bytes(){return Ce.encode({Type:xt.RSA,Data:this.marshal()}).subarray()}encrypt(e){return Jc(this._key,e)}equals(e){return Tt(this.bytes,e.bytes)}hash(){let e=Mt.digest(this.bytes);return re(e)?e.then(({bytes:r})=>r):e.bytes}},Zr=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return vi(16)}sign(e){return $c(this._key,e)}get public(){if(this._publicKey==null)throw new F("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Sn(this._publicKey)}decrypt(e){return jc(this._key,e)}marshal(){return Br.jwkToPkcs1(this._key)}get bytes(){return Te.encode({Type:xt.RSA,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}hash(){let e=Mt.digest(this.bytes);return re(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return nt(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new En.default.util.ByteBuffer(this.marshal()),i=En.default.asn1.fromDer(n),o=En.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return En.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return Wr(this.bytes,e);throw new F(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function Ty(t){let e=Br.pkcs1ToJwk(t);if(wi(e)>Bn)throw new F("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await bs(e);return new Zr(r.privateKey,r.publicKey)}function _y(t){let e=Br.pkixToJwk(t);if(wi(e)>Bn)throw new F("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Sn(e)}async function Ry(t){if(wi(t)>Bn)throw new F("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await bs(t);return new Zr(e.privateKey,e.publicKey)}async function Ly(t){if(t>Bn)throw new F("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Yc(t);return new Zr(e.privateKey,e.publicKey)}var Is={};Nt(Is,{Secp256k1PrivateKey:()=>In,Secp256k1PublicKey:()=>An,generateKeyPair:()=>Wy,unmarshalSecp256k1PrivateKey:()=>zy,unmarshalSecp256k1PublicKey:()=>Gy});var Ny=(t,e,r)=>t&e^~t&r,Dy=(t,e,r)=>t&e^t&r^e&r,Py=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]),or=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),sr=new Uint32Array(64),ws=class extends Hr{constructor(){super(64,32,8,!1),this.A=or[0]|0,this.B=or[1]|0,this.C=or[2]|0,this.D=or[3]|0,this.E=or[4]|0,this.F=or[5]|0,this.G=or[6]|0,this.H=or[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)sr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=sr[l-15],y=sr[l-2],d=le(h,7)^le(h,18)^h>>>3,p=le(y,17)^le(y,19)^y>>>10;sr[l]=p+sr[l-7]+d+sr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let h=le(a,6)^le(a,11)^le(a,25),y=u+h+Ny(a,c,f)+Py[l]+sr[l]|0,p=(le(n,2)^le(n,13)^le(n,22))+Dy(n,i,o)|0;u=f,f=c,c=a,a=s+y|0,s=o,o=i,i=n,n=y+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,f=f+this.G|0,u=u+this.H|0,this.set(n,i,o,s,a,c,f,u)}roundClean(){sr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var tf=si(()=>new ws);function ky(t){let e=gn(t);Ie(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:Uy,hexToBytes:Oy}=ui,Ar={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=Ar;if(t.length<2||t[0]!==2)throw new e("Invalid signature integer tag");let r=t[1],n=t.subarray(2,r+2);if(!r||n.length!==r)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:Uy(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=Ar,r=typeof t=="string"?Oy(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:o}=Ar._parseInt(r.subarray(2)),{d:s,l:a}=Ar._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=f=>Number.parseInt(f[0],16)&8?"00"+f:f,r=f=>{let u=f.toString(16);return u.length&1?`0${u}`:u},n=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},ze=BigInt(0),ne=BigInt(1),Ob=BigInt(2),ef=BigInt(3),Kb=BigInt(4);function Ky(t){let e=ky(t),{Fp:r}=e,n=e.toBytes||((d,p,g)=>{let x=p.toAffine();return Ve(Uint8Array.from([4]),r.toBytes(x.x),r.toBytes(x.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),g=r.fromBytes(p.subarray(0,r.BYTES)),x=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:g,y:x}});function o(d){let{a:p,b:g}=e,x=r.sqr(d),w=r.mul(x,d);return r.add(r.add(w,r.mul(d,p)),g)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&ze<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:g,wrapPrivateKey:x,n:w}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=Ke(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(g*2,"0")}let v;try{v=typeof d=="bigint"?d:Me(wt("private key",d,g))}catch{throw new Error(`private key must be ${g} bytes, hex or bigint, not ${typeof d}`)}return x&&(v=ft(v,w)),a(v),v}let f=new Map;function u(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,g,x){if(this.px=p,this.py=g,this.pz=x,p==null||!r.isValid(p))throw new Error("x required");if(g==null||!r.isValid(g))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(p){let{x:g,y:x}=p||{};if(!p||!r.isValid(g)||!r.isValid(x))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let w=v=>r.eql(v,r.ZERO);return w(g)&&w(x)?l.ZERO:new l(g,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let g=r.invertBatch(p.map(x=>x.pz));return p.map((x,w)=>x.toAffine(g[w])).map(l.fromAffine)}static fromHex(p){let g=l.fromAffine(i(wt("pointHex",p)));return g.assertValidity(),g}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y:g}=this.toAffine();if(!r.isValid(p)||!r.isValid(g))throw new Error("bad point: x or y not FE");let x=r.sqr(g),w=o(p);if(!r.eql(x,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:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){u(p);let{px:g,py:x,pz:w}=this,{px:v,py:R,pz:E}=p,S=r.eql(r.mul(g,E),r.mul(v,w)),L=r.eql(r.mul(x,E),r.mul(R,w));return S&&L}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:g}=e,x=r.mul(g,ef),{px:w,py:v,pz:R}=this,E=r.ZERO,S=r.ZERO,L=r.ZERO,N=r.mul(w,w),z=r.mul(v,v),H=r.mul(R,R),V=r.mul(w,v);return V=r.add(V,V),L=r.mul(w,R),L=r.add(L,L),E=r.mul(p,L),S=r.mul(x,H),S=r.add(E,S),E=r.sub(z,S),S=r.add(z,S),S=r.mul(E,S),E=r.mul(V,E),L=r.mul(x,L),H=r.mul(p,H),V=r.sub(N,H),V=r.mul(p,V),V=r.add(V,L),L=r.add(N,N),N=r.add(L,N),N=r.add(N,H),N=r.mul(N,V),S=r.add(S,N),H=r.mul(v,R),H=r.add(H,H),N=r.mul(H,V),E=r.sub(E,N),L=r.mul(H,z),L=r.add(L,L),L=r.add(L,L),new l(E,S,L)}add(p){u(p);let{px:g,py:x,pz:w}=this,{px:v,py:R,pz:E}=p,S=r.ZERO,L=r.ZERO,N=r.ZERO,z=e.a,H=r.mul(e.b,ef),V=r.mul(g,v),Q=r.mul(x,R),at=r.mul(w,E),Ut=r.add(g,x),C=r.add(v,R);Ut=r.mul(Ut,C),C=r.add(V,Q),Ut=r.sub(Ut,C),C=r.add(g,w);let P=r.add(v,E);return C=r.mul(C,P),P=r.add(V,at),C=r.sub(C,P),P=r.add(x,w),S=r.add(R,E),P=r.mul(P,S),S=r.add(Q,at),P=r.sub(P,S),N=r.mul(z,C),S=r.mul(H,at),N=r.add(S,N),S=r.sub(Q,N),N=r.add(Q,N),L=r.mul(S,N),Q=r.add(V,V),Q=r.add(Q,V),at=r.mul(z,at),C=r.mul(H,C),Q=r.add(Q,at),at=r.sub(V,at),at=r.mul(z,at),C=r.add(C,at),V=r.mul(Q,C),L=r.add(L,V),V=r.mul(P,C),S=r.mul(Ut,S),S=r.sub(S,V),V=r.mul(Ut,Q),N=r.mul(P,N),N=r.add(N,V),new l(S,L,N)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return y.wNAFCached(this,f,p,g=>{let x=r.invertBatch(g.map(w=>w.pz));return g.map((w,v)=>w.toAffine(x[v])).map(l.fromAffine)})}multiplyUnsafe(p){let g=l.ZERO;if(p===ze)return g;if(a(p),p===ne)return this;let{endo:x}=e;if(!x)return y.unsafeLadder(this,p);let{k1neg:w,k1:v,k2neg:R,k2:E}=x.splitScalar(p),S=g,L=g,N=this;for(;v>ze||E>ze;)v&ne&&(S=S.add(N)),E&ne&&(L=L.add(N)),N=N.double(),v>>=ne,E>>=ne;return w&&(S=S.negate()),R&&(L=L.negate()),L=new l(r.mul(L.px,x.beta),L.py,L.pz),S.add(L)}multiply(p){a(p);let g=p,x,w,{endo:v}=e;if(v){let{k1neg:R,k1:E,k2neg:S,k2:L}=v.splitScalar(g),{p:N,f:z}=this.wNAF(E),{p:H,f:V}=this.wNAF(L);N=y.constTimeNegate(R,N),H=y.constTimeNegate(S,H),H=new l(r.mul(H.px,v.beta),H.py,H.pz),x=N.add(H),w=z.add(V)}else{let{p:R,f:E}=this.wNAF(g);x=R,w=E}return l.normalizeZ([x,w])[0]}multiplyAndAddUnsafe(p,g,x){let w=l.BASE,v=(E,S)=>S===ze||S===ne||!E.equals(w)?E.multiplyUnsafe(S):E.multiply(S),R=v(this,g).add(v(p,x));return R.is0()?void 0:R}toAffine(p){let{px:g,py:x,pz:w}=this,v=this.is0();p==null&&(p=v?r.ONE:r.inv(w));let R=r.mul(g,p),E=r.mul(x,p),S=r.mul(w,p);if(v)return{x:r.ZERO,y:r.ZERO};if(!r.eql(S,r.ONE))throw new Error("invZ was invalid");return{x:R,y:E}}isTorsionFree(){let{h:p,isTorsionFree:g}=e;if(p===ne)return!0;if(g)return g(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:g}=e;return p===ne?this:g?g(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return Ke(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,y=di(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function My(t){let e=gn(t);return Ie(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function rf(t){let e=My(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(C){return ze<C&&C<r.ORDER}function a(C){return ft(C,n)}function c(C){return li(C,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:h}=Ky({...e,toBytes(C,P,_){let D=P.toAffine(),A=r.toBytes(D.x),O=Ve;return _?O(Uint8Array.from([P.hasEvenY()?2:3]),A):O(Uint8Array.from([4]),A,r.toBytes(D.y))},fromBytes(C){let P=C.length,_=C[0],D=C.subarray(1);if(P===i&&(_===2||_===3)){let A=Me(D);if(!s(A))throw new Error("Point is not on curve");let O=l(A),K=r.sqrt(O),q=(K&ne)===ne;return(_&1)===1!==q&&(K=r.neg(K)),{x:A,y:K}}else if(P===o&&_===4){let A=r.fromBytes(D.subarray(0,r.BYTES)),O=r.fromBytes(D.subarray(r.BYTES,2*r.BYTES));return{x:A,y:O}}else throw new Error(`Point of length ${P} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),y=C=>Ke(nr(C,e.nByteLength));function d(C){let P=n>>ne;return C>P}function p(C){return d(C)?a(-C):C}let g=(C,P,_)=>Me(C.slice(P,_));class x{constructor(P,_,D){this.r=P,this.s=_,this.recovery=D,this.assertValidity()}static fromCompact(P){let _=e.nByteLength;return P=wt("compactSignature",P,_*2),new x(g(P,0,_),g(P,_,2*_))}static fromDER(P){let{r:_,s:D}=Ar.toSig(wt("DER",P));return new x(_,D)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(P){return new x(this.r,this.s,P)}recoverPublicKey(P){let{r:_,s:D,recovery:A}=this,O=L(wt("msgHash",P));if(A==null||![0,1,2,3].includes(A))throw new Error("recovery id invalid");let K=A===2||A===3?_+e.n:_;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=A&1?"03":"02",$=f.fromHex(q+y(K)),X=c(K),st=a(-O*X),J=a(D*X),et=f.BASE.multiplyAndAddUnsafe($,st,J);if(!et)throw new Error("point at infinify");return et.assertValidity(),et}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new x(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return mr(this.toDERHex())}toDERHex(){return Ar.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return mr(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let w={isValidPrivateKey(C){try{return u(C),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let C=Zo(e.n);return bc(e.randomBytes(C),e.n)},precompute(C=8,P=f.BASE){return P._setWindowSize(C),P.multiply(BigInt(3)),P}};function v(C,P=!0){return f.fromPrivateKey(C).toRawBytes(P)}function R(C){let P=C instanceof Uint8Array,_=typeof C=="string",D=(P||_)&&C.length;return P?D===i||D===o:_?D===2*i||D===2*o:C instanceof f}function E(C,P,_=!0){if(R(C))throw new Error("first arg must be private key");if(!R(P))throw new Error("second arg must be public key");return f.fromHex(P).multiply(u(C)).toRawBytes(_)}let S=e.bits2int||function(C){let P=Me(C),_=C.length*8-e.nBitLength;return _>0?P>>BigInt(_):P},L=e.bits2int_modN||function(C){return a(S(C))},N=yn(e.nBitLength);function z(C){if(typeof C!="bigint")throw new Error("bigint expected");if(!(ze<=C&&C<N))throw new Error(`bigint expected < 2^${e.nBitLength}`);return nr(C,e.nByteLength)}function H(C,P,_=V){if(["recovered","canonical"].some(bt=>bt in _))throw new Error("sign() legacy options not supported");let{hash:D,randomBytes:A}=e,{lowS:O,prehash:K,extraEntropy:q}=_;O==null&&(O=!0),C=wt("msgHash",C),K&&(C=wt("prehashed msgHash",D(C)));let $=L(C),X=u(P),st=[z(X),z($)];if(q!=null){let bt=q===!0?A(r.BYTES):q;st.push(wt("extraEntropy",bt))}let J=Ve(...st),et=$;function At(bt){let Ot=S(bt);if(!h(Ot))return;let Kt=c(Ot),Ct=f.BASE.multiply(Ot).toAffine(),Vt=a(Ct.x);if(Vt===ze)return;let Le=a(Kt*a(et+Vt*X));if(Le===ze)return;let fr=(Ct.x===Vt?0:2)|Number(Ct.y&ne),en=Le;return O&&d(Le)&&(en=p(Le),fr^=1),new x(Vt,en,fr)}return{seed:J,k2sig:At}}let V={lowS:e.lowS,prehash:!1},Q={lowS:e.lowS,prehash:!1};function at(C,P,_=V){let{seed:D,k2sig:A}=H(C,P,_),O=e;return Go(O.hash.outputLen,O.nByteLength,O.hmac)(D,A)}f.BASE._setWindowSize(8);function Ut(C,P,_,D=Q){let A=C;if(P=wt("msgHash",P),_=wt("publicKey",_),"strict"in D)throw new Error("options.strict was renamed to lowS");let{lowS:O,prehash:K}=D,q,$;try{if(typeof A=="string"||A instanceof Uint8Array)try{q=x.fromDER(A)}catch(Ct){if(!(Ct instanceof Ar.Err))throw Ct;q=x.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:Ct,s:Vt}=A;q=new x(Ct,Vt)}else throw new Error("PARSE");$=f.fromHex(_)}catch(Ct){if(Ct.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(O&&q.hasHighS())return!1;K&&(P=e.hash(P));let{r:X,s:st}=q,J=L(P),et=c(st),At=a(J*et),bt=a(X*et),Ot=f.BASE.multiplyAndAddUnsafe($,At,bt)?.toAffine();return Ot?a(Ot.x)===X:!1}return{CURVE:e,getPublicKey:v,getSharedSecret:E,sign:at,verify:Ut,ProjectivePoint:f,Signature:x,utils:w}}var Ei=class extends Fr{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,ac(e);let n=pn(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,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return Vr(this),this.iHash.update(e),this}digestInto(e){Vr(this),Ko(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:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,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()}},Es=(t,e,r)=>new Ei(t,e).update(r).digest();Es.create=(t,e)=>new Ei(t,e);function Vy(t){return{hash:t,hmac:(e,...r)=>Es(t,e,oi(...r)),randomBytes:qr}}function nf(t,e){let r=n=>rf({...t,...Vy(n)});return Object.freeze({...r(e),create:r})}var af=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),of=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Fy=BigInt(1),Ss=BigInt(2),sf=(t,e)=>(t+e/Ss)/e;function qy(t){let e=af,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),f=t*t*t%e,u=f*f*t%e,l=mt(u,r,e)*u%e,h=mt(l,r,e)*u%e,y=mt(h,Ss,e)*f%e,d=mt(y,i,e)*y%e,p=mt(d,o,e)*d%e,g=mt(p,a,e)*p%e,x=mt(g,c,e)*g%e,w=mt(x,a,e)*p%e,v=mt(w,r,e)*u%e,R=mt(v,s,e)*d%e,E=mt(R,n,e)*f%e,S=mt(E,Ss,e);if(!Bs.eql(Bs.sqr(S),t))throw new Error("Cannot find square root");return S}var Bs=hi(af,void 0,void 0,{sqrt:qy}),me=nf({a:BigInt(0),b:BigInt(7),Fp:Bs,n:of,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=of,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Fy*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=sf(o*t,e),c=sf(-n*t,e),f=ft(t-a*r-c*i,e),u=ft(-a*n-c*o,e),l=f>s,h=u>s;if(l&&(f=e-f),h&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:h,k2:u}}}},tf),Qb=BigInt(0);var Xb=me.ProjectivePoint;function cf(){return me.utils.randomPrivateKey()}function ff(t,e){let r=Mt.digest(e instanceof Uint8Array?e:e.subarray());if(re(r))return r.then(({digest:n})=>me.sign(n,t).toDERRawBytes()).catch(n=>{throw new F(String(n),"ERR_INVALID_INPUT")});try{return me.sign(r.digest,t).toDERRawBytes()}catch(n){throw new F(String(n),"ERR_INVALID_INPUT")}}function uf(t,e,r){let n=Mt.digest(r instanceof Uint8Array?r:r.subarray());if(re(n))return n.then(({digest:i})=>me.verify(e,i,t)).catch(i=>{throw new F(String(i),"ERR_INVALID_INPUT")});try{return me.verify(e,n.digest,t)}catch(i){throw new F(String(i),"ERR_INVALID_INPUT")}}function lf(t){return me.ProjectivePoint.fromHex(t).toRawBytes(!0)}function hf(t){try{me.getPublicKey(t,!0)}catch(e){throw new F(String(e),"ERR_INVALID_PRIVATE_KEY")}}function As(t){try{me.ProjectivePoint.fromHex(t)}catch(e){throw new F(String(e),"ERR_INVALID_PUBLIC_KEY")}}function df(t){try{return me.getPublicKey(t,!0)}catch(e){throw new F(String(e),"ERR_INVALID_PRIVATE_KEY")}}var An=class{_key;constructor(e){As(e),this._key=e}verify(e,r){return uf(this._key,r,e)}marshal(){return lf(this._key)}get bytes(){return Ce.encode({Type:xt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}async hash(){let e=Mt.digest(this.bytes),r;return re(e)?{bytes:r}=await e:r=e.bytes,r}},In=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??df(e),hf(this._key),As(this._publicKey)}sign(e){return ff(this._key,e)}get public(){return new An(this._publicKey)}marshal(){return this._key}get bytes(){return Te.encode({Type:xt.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Tt(this.bytes,e.bytes)}hash(){let e=Mt.digest(this.bytes);return re(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return nt(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Wr(this.bytes,e);throw new F(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function zy(t){return new In(t)}function Gy(t){return new An(t)}async function Wy(){let t=cf();return new In(t)}var Ir={rsa:vs,ed25519:ys,secp256k1:Is};function pf(t){let e=Object.keys(Ir).join(" / ");return new F(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function yf(t){let e=Ce.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case xt.RSA:return Ir.rsa.unmarshalRsaPublicKey(r);case xt.Ed25519:return Ir.ed25519.unmarshalEd25519PublicKey(r);case xt.Secp256k1:return Ir.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw pf(e.Type??"unknown")}}async function gf(t){let e=Te.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case xt.RSA:return Ir.rsa.unmarshalRsaPrivateKey(r);case xt.Ed25519:return Ir.ed25519.unmarshalEd25519PrivateKey(r);case xt.Secp256k1:return Ir.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw pf(e.Type??"RSA")}}var $y=Math.pow(2,7),Zy=Math.pow(2,14),Qy=Math.pow(2,21),Cs=Math.pow(2,28),Ts=Math.pow(2,35),_s=Math.pow(2,42),Rs=Math.pow(2,49),it=128,Ht=127;function zt(t){if(t<$y)return 1;if(t<Zy)return 2;if(t<Qy)return 3;if(t<Cs)return 4;if(t<Ts)return 5;if(t<_s)return 6;if(t<Rs)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Xy(t,e,r=0){switch(zt(t)){case 8:e[r++]=t&255|it,t/=128;case 7:e[r++]=t&255|it,t/=128;case 6:e[r++]=t&255|it,t/=128;case 5:e[r++]=t&255|it,t/=128;case 4:e[r++]=t&255|it,t>>>=7;case 3:e[r++]=t&255|it,t>>>=7;case 2:e[r++]=t&255|it,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Jy(t,e,r=0){switch(zt(t)){case 8:e.set(r++,t&255|it),t/=128;case 7:e.set(r++,t&255|it),t/=128;case 6:e.set(r++,t&255|it),t/=128;case 5:e.set(r++,t&255|it),t/=128;case 4:e.set(r++,t&255|it),t>>>=7;case 3:e.set(r++,t&255|it),t>>>=7;case 2:e.set(r++,t&255|it),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function jy(t,e){let r=t[e],n=0;if(n+=r&Ht,r<it||(r=t[e+1],n+=(r&Ht)<<7,r<it)||(r=t[e+2],n+=(r&Ht)<<14,r<it)||(r=t[e+3],n+=(r&Ht)<<21,r<it)||(r=t[e+4],n+=(r&Ht)*Cs,r<it)||(r=t[e+5],n+=(r&Ht)*Ts,r<it)||(r=t[e+6],n+=(r&Ht)*_s,r<it)||(r=t[e+7],n+=(r&Ht)*Rs,r<it))return n;throw new RangeError("Could not decode varint")}function t1(t,e){let r=t.get(e),n=0;if(n+=r&Ht,r<it||(r=t.get(e+1),n+=(r&Ht)<<7,r<it)||(r=t.get(e+2),n+=(r&Ht)<<14,r<it)||(r=t.get(e+3),n+=(r&Ht)<<21,r<it)||(r=t.get(e+4),n+=(r&Ht)*Cs,r<it)||(r=t.get(e+5),n+=(r&Ht)*Ts,r<it)||(r=t.get(e+6),n+=(r&Ht)*_s,r<it)||(r=t.get(e+7),n+=(r&Ht)*Rs,r<it))return n;throw new RangeError("Could not decode varint")}function ie(t,e,r=0){return e==null&&(e=Ft(zt(t))),e instanceof Uint8Array?Xy(t,e,r):Jy(t,e,r)}function xe(t,e=0){return t instanceof Uint8Array?jy(t,e):t1(t,e)}var xf=Symbol.for("@achingbrain/uint8arraylist");function mf(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function Si(t){return!!t?.[xf]}var Xt=class t{bufs;length;[xf]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let r=0;for(let n of e)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Si(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...e){this.prependAll(e)}prependAll(e){let r=0;for(let n of e.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Si(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(e){let r=mf(this.bufs,e);return r.buf[r.index]}set(e,r){let n=mf(this.bufs,e);n.buf[n.index]=r}write(e,r=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(r+n,e[n]);else if(Si(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return _t(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:_t(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=[...n],o}_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 o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let f=e>=a&&e<c,u=r>a&&r<=c;if(f&&u){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(f){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(u){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-e}}indexOf(e,r=0){if(!Si(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,u;for(let l=r;l<=c;l+=u){u=0;for(let h=f;h>=0;h--){let y=this.get(l+h);if(n[h]!==y){u=Math.max(1,h-a[y]);break}}if(u===0)return l}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=Ft(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=Oe(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=Oe(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=Oe(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=Ft(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=Oe(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=Oe(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=Oe(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=Oe(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=Oe(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(!Tt(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,o)=>i+o.byteLength,0)),n.length=r,n}};var bf={ERR_SIGNATURE_NOT_VALID:"ERR_SIGNATURE_NOT_VALID"};var Cn;(function(t){let e;t.codec=()=>(e==null&&(e=ge((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.publicKey!=null&&r.publicKey.byteLength>0&&(n.uint32(10),n.bytes(r.publicKey)),r.payloadType!=null&&r.payloadType.byteLength>0&&(n.uint32(18),n.bytes(r.payloadType)),r.payload!=null&&r.payload.byteLength>0&&(n.uint32(26),n.bytes(r.payload)),r.signature!=null&&r.signature.byteLength>0&&(n.uint32(42),n.bytes(r.signature)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={publicKey:new Uint8Array(0),payloadType:new Uint8Array(0),payload:new Uint8Array(0),signature:new Uint8Array(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:i.publicKey=r.bytes();break;case 2:i.payloadType=r.bytes();break;case 3:i.payload=r.bytes();break;case 5:i.signature=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>ye(r,t.codec()),t.decode=r=>pe(r,t.codec())})(Cn||(Cn={}));var ar=class t{static createFromProtobuf=async e=>{let r=Cn.decode(e),n=await an(r.publicKey);return new t({peerId:n,payloadType:r.payloadType,payload:r.payload,signature:r.signature})};static seal=async(e,r)=>{if(r.privateKey==null)throw new Error("Missing private key");let n=e.domain,i=e.codec,o=e.marshal(),s=vf(n,i,o),c=await(await gf(r.privateKey)).sign(s.subarray());return new t({peerId:r,payloadType:i,payload:o,signature:c})};static openAndCertify=async(e,r)=>{let n=await t.createFromProtobuf(e);if(!await n.validate(r))throw new F("envelope signature is not valid for the given domain",bf.ERR_SIGNATURE_NOT_VALID);return n};peerId;payloadType;payload;signature;marshaled;constructor(e){let{peerId:r,payloadType:n,payload:i,signature:o}=e;this.peerId=r,this.payloadType=n,this.payload=i,this.signature=o}marshal(){if(this.peerId.publicKey==null)throw new Error("Missing public key");return this.marshaled==null&&(this.marshaled=Cn.encode({publicKey:this.peerId.publicKey,payloadType:this.payloadType,payload:this.payload.subarray(),signature:this.signature})),this.marshaled}equals(e){return Tt(this.marshal(),e.marshal())}async validate(e){let r=vf(e,this.payloadType,this.payload);if(this.peerId.publicKey==null)throw new Error("Missing public key");return yf(this.peerId.publicKey).verify(r.subarray(),this.signature)}},vf=(t,e,r)=>{let n=lt(t),i=ie(n.byteLength),o=ie(e.length),s=ie(r.length);return new Xt(i,n,o,e,s,r)};function wf(t,e){let r=(n,i)=>n.toString().localeCompare(i.toString());return t.length!==e.length?!1:(e.sort(r),t.sort(r).every((n,i)=>e[i].equals(n)))}var Bi=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(o*=e,o+=u,o>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Ef=45,e1=15,Xr=new Bi;function Ls(t){if(!(t.length>e1))return Xr.new(t).parseWith(()=>Xr.readIPv4Addr())}function Ns(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Ef))return Xr.new(t).parseWith(()=>Xr.readIPv6Addr())}function Ai(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Ef))return Xr.new(t).parseWith(()=>Xr.readIPAddr())}var Yv=parseInt("0xFFFF",16),$v=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Ii(t){return!!Ls(t)}function Ci(t){return!!Ns(t)}function Ti(t){return!!Ai(t)}var Af=Ii,s1=Ci,Ds=function(t){let e=0;if(t=t.toString().trim(),Af(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(s1(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=Af(r[n]),s;o&&(s=Ds(r[n]),r[n]=nt(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,nt(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},If=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Jr={},Ps={},c1=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,-1,"memory"]];c1.forEach(t=>{let e=f1(...t);Ps[e.code]=e,Jr[e.name]=e});function f1(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function ot(t){if(typeof t=="number"){if(Ps[t]!=null)return Ps[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(Jr[t]!=null)return Jr[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var Lw=ot("ip4"),Nw=ot("ip6"),Dw=ot("ipcidr");function Us(t,e){switch(ot(t).code){case 4:case 41:return l1(e);case 42:return _f(e);case 6:case 273:case 33:case 132:return Lf(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return _f(e);case 421:return y1(e);case 444:return Rf(e);case 445:return Rf(e);case 466:return p1(e);default:return nt(e,"base16")}}function Os(t,e){switch(ot(t).code){case 4:return Cf(e);case 41:return Cf(e);case 42:return Tf(e);case 6:case 273:case 33:case 132:return Ks(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Tf(e);case 421:return h1(e);case 444:return g1(e);case 445:return m1(e);case 466:return d1(e);default:return lt(e,"base16")}}var ks=Object.values($e).map(t=>t.decoder),u1=function(){let t=ks[0].or(ks[1]);return ks.slice(2).forEach(e=>t=t.or(e)),t}();function Cf(t){if(!Ti(t))throw new Error("invalid ip address");return Ds(t)}function l1(t){let e=If(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!Ti(e))throw new Error("invalid ip address");return e}function Ks(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Lf(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Tf(t){let e=lt(t),r=Uint8Array.from(ie(e.length));return _t([r,e],r.length+e.length)}function _f(t){let e=xe(t);if(t=t.slice(zt(e)),t.length!==e)throw new Error("inconsistent lengths");return nt(t)}function h1(t){let e;t[0]==="Q"||t[0]==="1"?e=ur(Et.decode(`z${t}`)).bytes:e=ae.parse(t).multihash.bytes;let r=Uint8Array.from(ie(e.length));return _t([r,e],r.length+e.length)}function d1(t){let e=u1.decode(t),r=Uint8Array.from(ie(e.length));return _t([r,e],r.length+e.length)}function p1(t){let e=xe(t),r=t.slice(zt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+nt(r,"base64url")}function y1(t){let e=xe(t),r=t.slice(zt(e));if(r.length!==e)throw new Error("inconsistent lengths");return nt(r,"base58btc")}function g1(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let r=De.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ks(n);return _t([r,i],r.length+i.length)}function m1(t){let e=t.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let r=De.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ks(n);return _t([r,i],r.length+i.length)}function Rf(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=nt(e,"base32"),i=Lf(r);return`${n}:${i}`}function Nf(t){t=Ms(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ot(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Pf("invalid address: "+t);if(a.path===!0){n=Ms(i.slice(o).join("/")),e.push([a.code,Os(a.code,n)]),r.push([a.code,n]);break}let c=Os(a.code,i[o]);e.push([a.code,c]),r.push([a.code,Us(a.code,c)])}return{string:Df(r),bytes:Fs(e),tuples:e,stringTuples:r,path:n}}function Vs(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=xe(t,i),s=zt(o),a=ot(o),c=x1(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let f=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw Pf("Invalid address Uint8Array: "+nt(t,"base16"));e.push([o,f]);let u=Us(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:Df(r),tuples:e,stringTuples:r,path:n}}function Df(t){let e=[];return t.map(r=>{let n=ot(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Ms(e.join("/"))}function Fs(t){return _t(t.map(e=>{let r=ot(e[0]),n=Uint8Array.from(ie(r.code));return e.length>1&&e[1]!=null&&(n=_t([n,e[1]])),n}))}function x1(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=xe(e instanceof Uint8Array?e:Uint8Array.from(e));return r+zt(r)}}function Ms(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function Pf(t){return new Error("Error parsing address: "+t)}var b1=Symbol.for("nodejs.util.inspect.custom"),qs=Symbol.for("@multiformats/js-multiaddr/multiaddr"),v1=[ot("dns").code,ot("dns4").code,ot("dns6").code,ot("dnsaddr").code],_i=class t{bytes;#t;#e;#r;#n;[qs]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Vs(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=Nf(e)}else if(Uf(e))r=Vs(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#t=r.string,this.#e=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#t}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=ot("tcp"),a=ot("udp"),c=ot("ip4"),f=ot("ip6"),u=ot("dns6"),l=ot("ip6zone");for(let[y,d]of this.stringTuples())y===l.code&&(o=`%${d??""}`),v1.includes(y)&&(r=s.name,i=443,n=`${d??""}${o}`,e=y===u.code?6:4),(y===s.code||y===a.code)&&(r=ot(y).name,i=parseInt(d??"")),(y===c.code||y===f.code)&&(r=ot(y).name,n=`${d??""}${o}`,e=y===f.code?6:4);if(e==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:r,port:i}}protos(){return this.#e.map(([e])=>Object.assign({},ot(e)))}protoCodes(){return this.#e.map(([e])=>e)}protoNames(){return this.#e.map(([e])=>ot(e).name)}tuples(){return this.#e}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(Fs(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Jr.p2p.code&&e.push([n,i]),n===Jr["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?nt(Et.decode(`z${n}`),"base58btc"):nt(ae.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Tt(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=kf.get(r.name);if(n==null)throw new F(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[b1](){return`Multiaddr(${this.#t})`}};var kf=new Map;function Uf(t){return!!t?.[qs]}function cr(t){return new _i(t)}var Of="libp2p-peer-record",Kf=Uint8Array.from([3,1]);var Tn;(function(t){let e;(function(n){let i;n.codec=()=>(i==null&&(i=ge((o,s,a={})=>{a.lengthDelimited!==!1&&s.fork(),o.multiaddr!=null&&o.multiaddr.byteLength>0&&(s.uint32(10),s.bytes(o.multiaddr)),a.lengthDelimited!==!1&&s.ldelim()},(o,s)=>{let a={multiaddr:new Uint8Array(0)},c=s==null?o.len:o.pos+s;for(;o.pos<c;){let f=o.uint32();switch(f>>>3){case 1:a.multiaddr=o.bytes();break;default:o.skipType(f&7);break}}return a})),i),n.encode=o=>ye(o,n.codec()),n.decode=o=>pe(o,n.codec())})(e=t.AddressInfo||(t.AddressInfo={}));let r;t.codec=()=>(r==null&&(r=ge((n,i,o={})=>{if(o.lengthDelimited!==!1&&i.fork(),n.peerId!=null&&n.peerId.byteLength>0&&(i.uint32(10),i.bytes(n.peerId)),n.seq!=null&&n.seq!==0n&&(i.uint32(16),i.uint64(n.seq)),n.addresses!=null)for(let s of n.addresses)i.uint32(26),t.AddressInfo.codec().encode(s,i);o.lengthDelimited!==!1&&i.ldelim()},(n,i)=>{let o={peerId:new Uint8Array(0),seq:0n,addresses:[]},s=i==null?n.len:n.pos+i;for(;n.pos<s;){let a=n.uint32();switch(a>>>3){case 1:o.peerId=n.bytes();break;case 2:o.seq=n.uint64();break;case 3:o.addresses.push(t.AddressInfo.codec().decode(n,n.uint32()));break;default:n.skipType(a&7);break}}return o})),r),t.encode=n=>ye(n,t.codec()),t.decode=n=>pe(n,t.codec())})(Tn||(Tn={}));var Ge=class t{static createFromProtobuf=e=>{let r=Tn.decode(e),n=po(r.peerId),i=(r.addresses??[]).map(s=>cr(s.multiaddr)),o=r.seq;return new t({peerId:n,multiaddrs:i,seqNumber:o})};static DOMAIN=Of;static CODEC=Kf;peerId;multiaddrs;seqNumber;domain=t.DOMAIN;codec=t.CODEC;marshaled;constructor(e){let{peerId:r,multiaddrs:n,seqNumber:i}=e;this.peerId=r,this.multiaddrs=n??[],this.seqNumber=i??BigInt(Date.now())}marshal(){return this.marshaled==null&&(this.marshaled=Tn.encode({peerId:this.peerId.toBytes(),seq:BigInt(this.seqNumber),addresses:this.multiaddrs.map(e=>({multiaddr:e.bytes}))})),this.marshaled}equals(e){return!(!(e instanceof t)||!this.peerId.equals(e.peerId)||this.seqNumber!==e.seqNumber||!wf(this.multiaddrs,e.multiaddrs))}};var w1=t=>t.toString().split("/").slice(1),_n=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),St=t=>({match:e=>_n(r=>r===t).match(e),pattern:t}),Ni=()=>({match:t=>_n(e=>typeof e=="string").match(t),pattern:"{string}"}),Mf=()=>({match:t=>_n(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),oe=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Et.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),Ri=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{eo.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),_e=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Re=(...t)=>({match:e=>{let r;for(let n of t){let i=n.match(e);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),Bt=(...t)=>({match:e=>{for(let r of t){let n=r.match(e);if(n===!1)return!1;e=n}return e},pattern:`and(${t.map(e=>e.pattern).join(", ")})`});function Lt(...t){function e(i){let o=w1(i);for(let s of t){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return e(i)!==!1}function n(i){let o=e(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var zs=Bt(St("dns4"),Ni()),Gs=Bt(St("dns6"),Ni()),Ws=Bt(St("dnsaddr"),Ni()),Vf=Bt(St("dns"),Ni()),v4=Lt(zs),w4=Lt(Gs),E4=Lt(Ws),S4=Lt(Re(Vf,Ws,zs,Gs)),Ff=Bt(St("ip4"),_n(Ii)),qf=Bt(St("ip6"),_n(Ci)),Hf=Re(Ff,qf),Rn=Re(Hf,Vf,zs,Gs,Ws),zf=Lt(Rn),B4=Lt(Ff),A4=Lt(qf),I4=Lt(Hf),Di=Bt(Rn,St("tcp"),Mf()),Ln=Bt(Rn,St("udp"),Mf()),E1=Re(Di,Ln),C4=Lt(Di),T4=Lt(Ln),Ys=Bt(Ln,St("quic")),Pi=Bt(Ln,St("quic-v1")),S1=Re(Ys,Pi),_4=Lt(Ys),R4=Lt(Pi),Hs=Re(Rn,Di,Ln,Ys,Pi),Gf=Re(Bt(Hs,St("ws"),_e(oe()))),L4=Lt(Gf),Wf=Re(Bt(Hs,St("wss"),_e(oe())),Bt(Hs,St("tls"),St("ws"),_e(oe()))),N4=Lt(Wf),Yf=Bt(E1,St("webrtc-direct"),Ri(),_e(Ri()),_e(oe())),D4=Lt(Yf),$f=Bt(Pi,St("webtransport"),Ri(),Ri(),_e(oe())),P4=Lt($f),Li=Re(Gf,Wf,Bt(Di,_e(oe())),Bt(S1,_e(oe())),Bt(Rn,_e(oe())),Yf,$f,oe()),k4=Lt(Li),B1=Bt(Li,St("p2p-circuit"),oe()),U4=Lt(B1),A1=Re(Bt(Li,St("p2p-circuit"),St("webrtc"),oe()),Bt(Li,St("webrtc"),_e(oe())),St("webrtc")),O4=Lt(A1);function jr(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var ki=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function Zf(t,e,r){if(e==null)return t;if(e.aborted)return Promise.reject(new ki(r?.errorMessage,r?.errorCode));let n,i=new ki(r?.errorMessage,r?.errorCode);try{return await Promise.race([t,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var $s=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=jr(),this.needNext.resolve(),this.haveNext=jr()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let e=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=jr(),e}async throw(e){return this.ended=!0,e!=null&&this.haveNext.reject(e),{done:!0,value:void 0}}async return(){let e={done:!0,value:void 0};return await this._push(void 0),e}async push(e,r){await this._push(e,r)}async end(e,r){e!=null?await this.throw(e):await this._push(void 0,r)}async _push(e,r){if(e!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,e!=null?this.nextResult={done:!1,value:e}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=jr(),await Zf(this.needNext.promise,r?.signal,r)}};function Qf(){return new $s}var Ui=class extends Error{code;constructor(e,r){super(e),this.code=r}},Zs=class extends Ui{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function Xf(t,e){let r=Qf();t.sink(r).catch(async s=>{await r.end(s)}),t.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=t.source;t.source[Symbol.iterator]!=null?n=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(n=t.source[Symbol.asyncIterator]());let i=new Xt;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new Zs("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:h}=await Promise.race([n.next(),f]);return l===!0?new Xt:h}for(;i.byteLength<s;){let{value:l,done:h}=await Promise.race([n.next(),f]);if(h===!0)throw new Ui("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let u=i.sublist(0,s);return i.consume(s),u}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=t.source;t.source=async function*(){e?.yieldBytes===!1?yield i:yield*i,yield*s}()}return t}}}function Oi(t){return t[Symbol.asyncIterator]!=null}var Ki=t=>{let e=zt(t),r=Ft(e);return ie(t,r),Ki.bytes=e,r};Ki.bytes=0;function Nn(t,e){e=e??{};let r=e.lengthEncoder??Ki;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Oi(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}Nn.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??Ki;return new Xt(r(t.byteLength),t)};var tn=Gt(tu(),1);var C1=8,T1=1024*1024*4,Cr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(Cr||(Cr={}));var Xs=t=>{let e=xe(t);return Xs.bytes=zt(e),e};Xs.bytes=0;function Qs(t,e){let r=new Xt,n=Cr.LENGTH,i=-1,o=e?.lengthDecoder??Xs,s=e?.maxLengthLength??C1,a=e?.maxDataLength??T1;function*c(){for(;r.byteLength>0;){if(n===Cr.LENGTH)try{if(i=o(r),i<0)throw(0,tn.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,tn.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=o.bytes;r.consume(f),e?.onLength!=null&&e.onLength(i),n=Cr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,tn.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===Cr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(f),yield f,n=Cr.LENGTH}}}return Oi(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,tn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,tn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}Qs.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return Qs(n,{...e??{},onLength:o=>{r=o}})};var Mi=class extends Error{code;constructor(e,r){super(e),this.code=r}},eu=t=>xe(t);eu.bytes=0;function ru(t,e={}){let r=Xf(t,e);return e.maxDataLength!=null&&e.maxLengthLength==null&&(e.maxLengthLength=zt(e.maxDataLength)),{read:async i=>{let o=-1,s=new Xt,a=e?.lengthDecoder??eu;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new Mi("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new Mi("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(Nn.single(i,e),o)},writeV:async(i,o)=>{let s=new Xt(...i.map(a=>Nn.single(a,e)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function Dn(t,e){let r=ru(t,e),n={read:async(i,o)=>{let s=await r.read(o);return i.decode(s)},write:async(i,o,s)=>{await r.write(o.encode(i),s)},writeV:async(i,o,s)=>{await r.writeV(i.map(a=>o.encode(a)),s)},pb:i=>({read:async o=>n.read(i,o),write:async(o,s)=>n.write(o,i,s),writeV:async(o,s)=>n.writeV(o,i,s),unwrap:()=>n}),unwrap:()=>r.unwrap()};return n}var ou=Gt(iu(),1),Js=typeof window=="object"&&typeof document=="object"&&document.nodeType===9,Vi=(0,ou.default)(),su=Js&&!Vi,au=Vi&&!Js,cu=Vi&&Js,fu=typeof globalThis.process<"u"&&typeof globalThis.process.release<"u"&&globalThis.process.release.name==="node"&&!Vi,uu=typeof importScripts=="function"&&typeof self<"u"&&typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,l8=typeof globalThis.process<"u"&&typeof globalThis.process.env<"u"&&globalThis.process.env["NODE"+"_"+"ENV"]==="test",lu=typeof navigator<"u"&&navigator.product==="ReactNative";var Tr;(function(t){let e;t.codec=()=>(e==null&&(e=ge((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.protocolVersion!=null&&(n.uint32(42),n.string(r.protocolVersion)),r.agentVersion!=null&&(n.uint32(50),n.string(r.agentVersion)),r.publicKey!=null&&(n.uint32(10),n.bytes(r.publicKey)),r.listenAddrs!=null)for(let o of r.listenAddrs)n.uint32(18),n.bytes(o);if(r.observedAddr!=null&&(n.uint32(34),n.bytes(r.observedAddr)),r.protocols!=null)for(let o of r.protocols)n.uint32(26),n.string(o);r.signedPeerRecord!=null&&(n.uint32(66),n.bytes(r.signedPeerRecord)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={listenAddrs:[],protocols:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 5:i.protocolVersion=r.string();break;case 6:i.agentVersion=r.string();break;case 1:i.publicKey=r.bytes();break;case 2:i.listenAddrs.push(r.bytes());break;case 4:i.observedAddr=r.bytes();break;case 3:i.protocols.push(r.string());break;case 8:i.signedPeerRecord=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>ye(r,t.codec()),t.decode=r=>pe(r,t.codec())})(Tr||(Tr={}));var js=1024*8,se={protocolPrefix:"ipfs",timeout:6e4,maxInboundStreams:1,maxOutboundStreams:1,maxPushIncomingStreams:1,maxPushOutgoingStreams:1,maxObservedAddresses:10,maxIdentifyMessageSize:8192,runOnConnectionOpen:!0,runOnTransientConnection:!0},Fi=class{identifyProtocolStr;identifyPushProtocolStr;host;started;timeout;peerId;peerStore;registrar;connectionManager;addressManager;maxInboundStreams;maxOutboundStreams;maxPushIncomingStreams;maxPushOutgoingStreams;maxIdentifyMessageSize;maxObservedAddresses;events;runOnTransientConnection;log;constructor(e,r={}){this.started=!1,this.peerId=e.peerId,this.peerStore=e.peerStore,this.registrar=e.registrar,this.addressManager=e.addressManager,this.connectionManager=e.connectionManager,this.events=e.events,this.log=e.logger.forComponent("libp2p:identify"),this.identifyProtocolStr=`/${r.protocolPrefix??se.protocolPrefix}/${ha}/${pa}`,this.identifyPushProtocolStr=`/${r.protocolPrefix??se.protocolPrefix}/${da}/${ya}`,this.timeout=r.timeout??se.timeout,this.maxInboundStreams=r.maxInboundStreams??se.maxInboundStreams,this.maxOutboundStreams=r.maxOutboundStreams??se.maxOutboundStreams,this.maxPushIncomingStreams=r.maxPushIncomingStreams??se.maxPushIncomingStreams,this.maxPushOutgoingStreams=r.maxPushOutgoingStreams??se.maxPushOutgoingStreams,this.maxIdentifyMessageSize=r.maxIdentifyMessageSize??se.maxIdentifyMessageSize,this.maxObservedAddresses=r.maxObservedAddresses??se.maxObservedAddresses,this.runOnTransientConnection=r.runOnTransientConnection??se.runOnTransientConnection,this.host={protocolVersion:`${r.protocolPrefix??se.protocolPrefix}/${la}`,agentVersion:r.agentVersion??`${e.nodeInfo.name}/${e.nodeInfo.version}`},(r.runOnConnectionOpen??se.runOnConnectionOpen)&&e.events.addEventListener("connection:open",n=>{let i=n.detail;this.identify(i).catch(o=>{this.log.error("error during identify trigged by connection:open",o)})}),e.events.addEventListener("self:peer:update",n=>{this.push().catch(i=>{this.log.error(i)})}),this.host.agentVersion===`${e.nodeInfo.name}/${e.nodeInfo.version}`&&(fu||au?this.host.agentVersion+=` UserAgent=${globalThis.process.version}`:(su||uu||cu||lu)&&(this.host.agentVersion+=` UserAgent=${globalThis.navigator.userAgent}`))}isStarted(){return this.started}async start(){this.started||(await this.peerStore.merge(this.peerId,{metadata:{AgentVersion:lt(this.host.agentVersion),ProtocolVersion:lt(this.host.protocolVersion)}}),await this.registrar.handle(this.identifyProtocolStr,e=>{this._handleIdentify(e).catch(r=>{this.log.error(r)})},{maxInboundStreams:this.maxInboundStreams,maxOutboundStreams:this.maxOutboundStreams,runOnTransientConnection:this.runOnTransientConnection}),await this.registrar.handle(this.identifyPushProtocolStr,e=>{this._handlePush(e).catch(r=>{this.log.error(r)})},{maxInboundStreams:this.maxPushIncomingStreams,maxOutboundStreams:this.maxPushOutgoingStreams,runOnTransientConnection:this.runOnTransientConnection}),this.started=!0)}async stop(){await this.registrar.unhandle(this.identifyProtocolStr),await this.registrar.unhandle(this.identifyPushProtocolStr),this.started=!1}async pushToConnections(e){let r=this.addressManager.getAddresses().map(u=>u.decapsulateCode(ot("p2p").code)),n=new Ge({peerId:this.peerId,multiaddrs:r}),i=await ar.seal(n,this.peerId),o=this.registrar.getProtocols(),s=await this.peerStore.get(this.peerId),a=nt(s.metadata.get("AgentVersion")??lt(this.host.agentVersion)),c=nt(s.metadata.get("ProtocolVersion")??lt(this.host.protocolVersion)),f=e.map(async u=>{let l,h=AbortSignal.timeout(this.timeout);kn(1/0,h);try{l=await u.newStream(this.identifyPushProtocolStr,{signal:h,runOnTransientConnection:this.runOnTransientConnection}),await Dn(l,{maxDataLength:this.maxIdentifyMessageSize??js}).pb(Tr).write({listenAddrs:r.map(d=>d.bytes),signedPeerRecord:i.marshal(),protocols:o,agentVersion:a,protocolVersion:c},{signal:h}),await l.close({signal:h})}catch(y){this.log.error("could not push identify update to peer",y),l?.abort(y)}});await Promise.all(f)}async push(){if(!this.isStarted())return;let e=[];await Promise.all(this.connectionManager.getConnections().map(async r=>{try{if(!(await this.peerStore.get(r.remotePeer)).protocols.includes(this.identifyPushProtocolStr))return;e.push(r)}catch(n){if(n.code!==ba)throw n}})),await this.pushToConnections(e)}async _identify(e,r={}){let n;if(r.signal==null){let i=AbortSignal.timeout(this.timeout);kn(1/0,i),r={...r,signal:i}}try{n=await e.newStream(this.identifyProtocolStr,{...r,runOnTransientConnection:this.runOnTransientConnection});let o=await Dn(n,{maxDataLength:this.maxIdentifyMessageSize??js}).pb(Tr).read(r);return await n.close(r),o}catch(i){throw this.log.error("error while reading identify message",i),n?.abort(i),i}}async identify(e,r={}){let n=await this._identify(e,r),{publicKey:i,protocols:o,observedAddr:s}=n;if(i==null)throw new F("public key was missing from identify message","ERR_MISSING_PUBLIC_KEY");let a=await an(i);if(!e.remotePeer.equals(a))throw new F("identified peer does not match the expected peer","ERR_INVALID_PEER");if(this.peerId.equals(a))throw new F("identified peer is our own peer id?","ERR_INVALID_PEER");let c=L1(s);return this.log("identify completed for peer %p and protocols %o",a,o),this.log("our observed address is %a",c),c!=null&&this.addressManager.getObservedAddrs().length<(this.maxObservedAddresses??1/0)&&(this.log("storing our observed address %a",c),this.addressManager.addObservedAddr(c)),this.#t(e,n)}async _handleIdentify(e){let{connection:r,stream:n}=e,i=AbortSignal.timeout(this.timeout);kn(1/0,i);try{let o=this.peerId.publicKey??new Uint8Array(0),s=await this.peerStore.get(this.peerId),a=this.addressManager.getAddresses().map(l=>l.decapsulateCode(ot("p2p").code)),c=s.peerRecordEnvelope;if(a.length>0&&c==null){let l=new Ge({peerId:this.peerId,multiaddrs:a});c=(await ar.seal(l,this.peerId)).marshal().subarray()}let f=r.remoteAddr.bytes;zf.matches(r.remoteAddr)||(f=void 0),await Dn(n).pb(Tr).write({protocolVersion:this.host.protocolVersion,agentVersion:this.host.agentVersion,publicKey:o,listenAddrs:a.map(l=>l.bytes),signedPeerRecord:c,observedAddr:f,protocols:s.protocols},{signal:i}),await n.close({signal:i})}catch(o){this.log.error("could not respond to identify request",o),n.abort(o)}}async _handlePush(e){let{connection:r,stream:n}=e;try{if(this.peerId.equals(r.remotePeer))throw new Error("received push from ourselves?");let i={signal:AbortSignal.timeout(this.timeout)},s=await Dn(n,{maxDataLength:this.maxIdentifyMessageSize??js}).pb(Tr).read(i);await n.close(i),await this.#t(r,s)}catch(i){this.log.error("received invalid message",i),n.abort(i);return}this.log("handled push from %p",r.remotePeer)}async#t(e,r){if(this.log("received identify from %p",e.remotePeer),r==null)throw new F("message was null or undefined","ERR_INVALID_MESSAGE");let n={};if(r.listenAddrs.length>0&&(n.addresses=r.listenAddrs.map(s=>({isCertified:!1,multiaddr:cr(s)}))),r.protocols.length>0&&(n.protocols=r.protocols),r.publicKey!=null&&(n.publicKey=r.publicKey,!(await an(r.publicKey)).equals(e.remotePeer)))throw new F("public key did not match remote PeerId","ERR_INVALID_PUBLIC_KEY");let i;if(r.signedPeerRecord!=null){this.log("received signedPeerRecord from %p",e.remotePeer);let s=r.signedPeerRecord,a=await ar.openAndCertify(s,Ge.DOMAIN),c=Ge.createFromProtobuf(a.payload);if(!c.peerId.equals(a.peerId))throw new F("signing key does not match PeerId in the PeerRecord","ERR_INVALID_SIGNING_KEY");if(!e.remotePeer.equals(c.peerId))throw new F("signing key does not match remote PeerId","ERR_INVALID_PEER_RECORD_KEY");let f;try{f=await this.peerStore.get(c.peerId)}catch(u){if(u.code!=="ERR_NOT_FOUND")throw u}if(f!=null&&(n.metadata=f.metadata,f.peerRecordEnvelope!=null)){let u=await ar.createFromProtobuf(f.peerRecordEnvelope),l=Ge.createFromProtobuf(u.payload);l.seqNumber>=c.seqNumber&&(this.log("sequence number was lower or equal to existing sequence number - stored: %d received: %d",l.seqNumber,c.seqNumber),c=l,s=f.peerRecordEnvelope)}n.peerRecordEnvelope=s,n.addresses=c.multiaddrs.map(u=>({isCertified:!0,multiaddr:u})),i={seq:c.seqNumber,addresses:c.multiaddrs}}else this.log("%p did not send a signed peer record",e.remotePeer);if(this.log("patching %p with",e.remotePeer,n),await this.peerStore.patch(e.remotePeer,n),r.agentVersion!=null||r.protocolVersion!=null){let s={};r.agentVersion!=null&&(s.AgentVersion=lt(r.agentVersion)),r.protocolVersion!=null&&(s.ProtocolVersion=lt(r.protocolVersion)),this.log("merging %p metadata",e.remotePeer,s),await this.peerStore.merge(e.remotePeer,{metadata:s})}let o={peerId:e.remotePeer,protocolVersion:r.protocolVersion,agentVersion:r.agentVersion,publicKey:r.publicKey,listenAddrs:r.listenAddrs.map(s=>cr(s)),observedAddr:r.observedAddr==null?void 0:cr(r.observedAddr),protocols:r.protocols,signedPeerRecord:i,connection:e};return this.events.safeDispatchEvent("peer:identify",{detail:o}),o}};function L1(t){if(t!=null&&t.length>0)try{return cr(t)}catch{}}var N1={IDENTIFY:fa,IDENTIFY_PUSH:ua};function D1(t={}){return e=>new Fi(e,t)}return Au(P1);})();
|
|
16
16
|
/*! Bundled license information:
|
|
17
17
|
|
|
18
18
|
@noble/hashes/esm/utils.js:
|