@libp2p/webrtc 4.0.11-cd8cafcd5 → 4.0.12-28587d24f
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 +21 -21
- package/package.json +12 -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.Libp2PWebrtc = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var Libp2PWebrtc=(()=>{var
|
|
3
|
-
`)}return n};i0.decode=function(e,t){if(typeof e!="string")throw new TypeError('"input" must be a string.');if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');var r=Ch[t];if(!r){r=Ch[t]=[];for(var n=0;n<t.length;++n)r[t.charCodeAt(n)]=n}e=e.replace(/\s/g,"");for(var i=t.length,o=t.charAt(0),s=[0],n=0;n<e.length;n++){var a=r[e.charCodeAt(n)];if(a===void 0)return;for(var c=0,u=a;c<s.length;++c)u+=s[c]*i,s[c]=u&255,u>>=8;for(;u>0;)s.push(u&255),u>>=8}for(var f=0;e[f]===o&&f<e.length-1;++f)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function Px(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r<e.length();++r){for(var s=0,a=e.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;e.at(r)===0&&r<e.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=t[o[r]];return c}});var Pt=ot((xB,Rh)=>{var Ih=gt(),_h=Th(),w=Rh.exports=Ih.util=Ih.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){w.nextTick=process.nextTick,typeof setImmediate=="function"?w.setImmediate=setImmediate:w.setImmediate=w.nextTick;return}if(typeof setImmediate=="function"){w.setImmediate=function(){return setImmediate.apply(void 0,arguments)},w.nextTick=function(a){return setImmediate(a)};return}if(w.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===e){c.stopPropagation();var u=t.slice();t.length=0,u.forEach(function(f){f()})}};var s=a,e="forge.setImmediate",t=[];w.setImmediate=function(c){t.push(c),t.length===1&&window.postMessage(e,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),t=[];new MutationObserver(function(){var c=t.slice();t.length=0,c.forEach(function(u){u()})}).observe(i,{attributes:!0});var o=w.setImmediate;w.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.length===1&&i.setAttribute("a",n=!n))}}w.nextTick=w.setImmediate})();w.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;w.globalScope=function(){return w.isNodejs?globalThis:typeof self>"u"?window:self}();w.isArray=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};w.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};w.isArrayBufferView=function(e){return e&&w.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function Pi(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}w.ByteBuffer=o0;function o0(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(w.isArrayBuffer(e)||w.isArrayBufferView(e))if(typeof Buffer<"u"&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch{for(var r=0;r<t.length;++r)this.putByte(t[r])}}else(e instanceof o0||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}w.ByteStringBuffer=o0;var Ux=4096;w.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>Ux&&(this.data.substr(0,1),this._constructedStringLength=0)};w.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};w.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};w.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))};w.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this};w.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};w.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(w.encodeUtf8(e))};w.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};w.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};w.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};w.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};w.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};w.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))};w.ByteStringBuffer.prototype.putInt=function(e,t){Pi(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};w.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};w.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};w.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};w.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};w.ByteStringBuffer.prototype.getInt24=function(){var e=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,e};w.ByteStringBuffer.prototype.getInt32=function(){var e=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,e};w.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};w.ByteStringBuffer.prototype.getInt24Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,e};w.ByteStringBuffer.prototype.getInt32Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,e};w.ByteStringBuffer.prototype.getInt=function(e){Pi(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};w.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};w.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};w.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};w.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};w.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this};w.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};w.ByteStringBuffer.prototype.copy=function(){var e=w.createBuffer(this.data);return e.read=this.read,e};w.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};w.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};w.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};w.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.length;++t){var r=this.data.charCodeAt(t);r<16&&(e+="0"),e+=r.toString(16)}return e};w.ByteStringBuffer.prototype.toString=function(){return w.decodeUtf8(this.bytes())};function Ox(e,t){t=t||{},this.read=t.readOffset||0,this.growSize=t.growSize||1024;var r=w.isArrayBuffer(e),n=w.isArrayBufferView(e);if(r||n){r?this.data=new DataView(e):this.data=new DataView(e.buffer,e.byteOffset,e.byteLength),this.write="writeOffset"in t?t.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,e!=null&&this.putBytes(e),"writeOffset"in t&&(this.write=t.writeOffset)}w.DataBuffer=Ox;w.DataBuffer.prototype.length=function(){return this.write-this.read};w.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};w.DataBuffer.prototype.accommodate=function(e,t){if(this.length()>=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this};w.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};w.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};w.DataBuffer.prototype.putBytes=function(e,t){if(w.isArrayBufferView(e)){var r=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(w.isArrayBuffer(e)){var r=new Uint8Array(e);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(e instanceof w.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&w.isArrayBufferView(e.data)){var r=new Uint8Array(e.data.byteLength,e.read,e.length());this.accommodate(r.byteLength);var i=new Uint8Array(e.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(e instanceof w.ByteStringBuffer&&(e=e.data,t="binary"),t=t||"binary",typeof e=="string"){var o;if(t==="hex")return this.accommodate(Math.ceil(e.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.hex.decode(e,o,this.write),this;if(t==="base64")return this.accommodate(Math.ceil(e.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=w.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=w.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};w.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};w.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};w.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};w.DataBuffer.prototype.putInt24=function(e){return this.accommodate(3),this.data.setInt16(this.write,e>>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this};w.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};w.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};w.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this};w.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};w.DataBuffer.prototype.putInt=function(e,t){Pi(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};w.DataBuffer.prototype.putSignedInt=function(e,t){return Pi(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};w.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};w.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};w.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};w.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};w.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};w.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};w.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};w.DataBuffer.prototype.getInt=function(e){Pi(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};w.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};w.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):e===0?t="":(t=this.read===0?this.data:this.data.slice(this.read),this.clear()),t};w.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};w.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};w.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this};w.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};w.DataBuffer.prototype.copy=function(){return new w.DataBuffer(this)};w.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this};w.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};w.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};w.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t<this.data.byteLength;++t){var r=this.data.getUint8(t);r<16&&(e+="0"),e+=r.toString(16)}return e};w.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return w.binary.raw.encode(t);if(e==="hex")return w.binary.hex.encode(t);if(e==="base64")return w.binary.base64.encode(t);if(e==="utf8")return w.text.utf8.decode(t);if(e==="utf16")return w.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};w.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=w.encodeUtf8(e)),new w.ByteBuffer(e)};w.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};w.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};w.hexToBytes=function(e){var t="",r=0;for(e.length&!0&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r<e.length;r+=2)t+=String.fromCharCode(parseInt(e.substr(r,2),16));return t};w.bytesToHex=function(e){return w.createBuffer(e).toHex()};w.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var Rr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Lr=[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],kh="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";w.encode64=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.length;)i=e.charCodeAt(a++),o=e.charCodeAt(a++),s=e.charCodeAt(a++),r+=Rr.charAt(i>>2),r+=Rr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Rr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Rr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
|
|
4
|
-
`,r=r.substr(
|
|
5
|
-
`,r=r.substr(t));return n+=r,n};w.binary.base64.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/4)*3)),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,u=r;c<e.length;)i=Lr[e.charCodeAt(c++)-43],o=Lr[e.charCodeAt(c++)-43],s=Lr[e.charCodeAt(c++)-43],a=Lr[e.charCodeAt(c++)-43],n[u++]=i<<2|o>>4,s!==64&&(n[u++]=(o&15)<<4|s>>2,a!==64&&(n[u++]=(s&3)<<6|a));return t?u-r:n.subarray(0,u)};w.binary.base58.encode=function(e,t){return w.binary.baseN.encode(e,kh,t)};w.binary.base58.decode=function(e,t){return w.binary.baseN.decode(e,kh,t)};w.text={utf8:{},utf16:{}};w.text.utf8.encode=function(e,t,r){e=w.encodeUtf8(e);var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};w.text.utf8.decode=function(e){return w.decodeUtf8(String.fromCharCode.apply(null,e))};w.text.utf16.encode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<e.length;++a)i[s++]=e.charCodeAt(a),o+=2;return t?o-r:n};w.text.utf16.decode=function(e){return String.fromCharCode.apply(null,new Uint16Array(e.buffer))};w.deflate=function(e,t,r){if(t=w.decode64(e.deflate(w.encode64(t)).rval),r){var n=2,i=t.charCodeAt(1);i&32&&(n=6),t=t.substring(n,t.length-4)}return t};w.inflate=function(e,t,r){var n=e.inflate(w.encode64(t)).rval;return n===null?null:w.decode64(n)};var s0=function(e,t,r){if(!e)throw new Error("WebStorage not available.");var n;if(r===null?n=e.removeItem(t):(r=w.encode64(JSON.stringify(r)),n=e.setItem(t,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},a0=function(e,t){if(!e)throw new Error("WebStorage not available.");var r=e.getItem(t);if(e.init)if(r.rval===null){if(r.error){var n=new Error(r.error.message);throw n.id=r.error.id,n.name=r.error.name,n}r=null}else r=r.rval;return r!==null&&(r=JSON.parse(w.decode64(r))),r},Kx=function(e,t,r,n){var i=a0(e,t);i===null&&(i={}),i[r]=n,s0(e,t,i)},Mx=function(e,t,r){var n=a0(e,t);return n!==null&&(n=r in n?n[r]:null),n},Fx=function(e,t,r){var n=a0(e,t);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),s0(e,t,n)}},Vx=function(e,t){s0(e,t,null)},fs=function(e,t,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(t[0]===null)throw new Error("Flash local storage not available.");n=e.apply(this,t),o=i==="flash"}(i==="web"||i==="both")&&(t[0]=localStorage,n=e.apply(this,t),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};w.setItem=function(e,t,r,n,i){fs(Kx,arguments,i)};w.getItem=function(e,t,r,n){return fs(Mx,arguments,n)};w.removeItem=function(e,t,r,n){fs(Fx,arguments,n)};w.clearItems=function(e,t,r){fs(Vx,arguments,r)};w.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};w.format=function(e){for(var t=/%./g,r,n,i=0,o=[],s=0;r=t.exec(e);){n=e.substring(s,t.lastIndex-2),n.length>0&&o.push(n),s=t.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")};w.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",u=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",f=u.length>3?u.length%3:0;return c+(f?u.substr(0,f)+a:"")+u.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-u).toFixed(o).slice(2):"")};w.formatSize=function(e){return e>=1073741824?e=w.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=w.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=w.formatNumber(e/1024,0)+" KiB":e=w.formatNumber(e,0)+" bytes",e};w.bytesFromIP=function(e){return e.indexOf(".")!==-1?w.bytesFromIPv4(e):e.indexOf(":")!==-1?w.bytesFromIPv6(e):null};w.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=w.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};w.bytesFromIPv6=function(e){var t=0;e=e.split(":").filter(function(s){return s.length===0&&++t,!0});for(var r=(8-e.length+t)*2,n=w.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=w.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};w.bytesToIP=function(e){return e.length===4?w.bytesToIPv4(e):e.length===16?w.bytesToIPv6(e):null};w.bytesToIPv4=function(e){if(e.length!==4)return null;for(var t=[],r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t.join(".")};w.bytesToIPv6=function(e){if(e.length!==16)return null;for(var t=[],r=[],n=0,i=0;i<e.length;i+=2){for(var o=w.bytesToHex(e[i]+e[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=t.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}t.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(t.splice(c.start,c.end-c.start+1,""),c.start===0&&t.unshift(""),c.end===7&&t.push(""))}return t.join(":")};w.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in w&&!e.update)return t(null,w.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return w.cores=navigator.hardwareConcurrency,t(null,w.cores);if(typeof Worker>"u")return w.cores=1,t(null,w.cores);if(typeof Blob>"u")return w.cores=2,t(null,w.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 u=Math.floor(s.reduce(function(f,l){return f+l},0)/s.length);return w.cores=Math.max(1,u),URL.revokeObjectURL(r),t(null,w.cores)}i(c,function(f,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],u=[],f=0;f<s;++f){var l=new Worker(r);l.addEventListener("message",function(d){if(u.push(d.data),u.length===s){for(var m=0;m<s;++m)c[m].terminate();a(null,u)}}),c.push(l)}for(var f=0;f<s;++f)c[f].postMessage(f)}function o(s,a){for(var c=[],u=0;u<s;++u)for(var f=a[u],l=c[u]=[],d=0;d<s;++d)if(u!==d){var m=a[d];(f.st>m.st&&f.st<m.et||m.st>f.st&&m.st<f.et)&&l.push(d)}return c.reduce(function(h,p){return Math.max(h,p.length)},0)}}});var ls=ot((bB,Lh)=>{var Ui=gt();Ui.pki=Ui.pki||{};var c0=Lh.exports=Ui.pki.oids=Ui.oids=Ui.oids||{};function N(e,t){c0[e]=t,c0[t]=e}function mt(e,t){c0[e]=t}N("1.2.840.113549.1.1.1","rsaEncryption");N("1.2.840.113549.1.1.4","md5WithRSAEncryption");N("1.2.840.113549.1.1.5","sha1WithRSAEncryption");N("1.2.840.113549.1.1.7","RSAES-OAEP");N("1.2.840.113549.1.1.8","mgf1");N("1.2.840.113549.1.1.9","pSpecified");N("1.2.840.113549.1.1.10","RSASSA-PSS");N("1.2.840.113549.1.1.11","sha256WithRSAEncryption");N("1.2.840.113549.1.1.12","sha384WithRSAEncryption");N("1.2.840.113549.1.1.13","sha512WithRSAEncryption");N("1.3.101.112","EdDSA25519");N("1.2.840.10040.4.3","dsa-with-sha1");N("1.3.14.3.2.7","desCBC");N("1.3.14.3.2.26","sha1");N("1.3.14.3.2.29","sha1WithRSASignature");N("2.16.840.1.101.3.4.2.1","sha256");N("2.16.840.1.101.3.4.2.2","sha384");N("2.16.840.1.101.3.4.2.3","sha512");N("2.16.840.1.101.3.4.2.4","sha224");N("2.16.840.1.101.3.4.2.5","sha512-224");N("2.16.840.1.101.3.4.2.6","sha512-256");N("1.2.840.113549.2.2","md2");N("1.2.840.113549.2.5","md5");N("1.2.840.113549.1.7.1","data");N("1.2.840.113549.1.7.2","signedData");N("1.2.840.113549.1.7.3","envelopedData");N("1.2.840.113549.1.7.4","signedAndEnvelopedData");N("1.2.840.113549.1.7.5","digestedData");N("1.2.840.113549.1.7.6","encryptedData");N("1.2.840.113549.1.9.1","emailAddress");N("1.2.840.113549.1.9.2","unstructuredName");N("1.2.840.113549.1.9.3","contentType");N("1.2.840.113549.1.9.4","messageDigest");N("1.2.840.113549.1.9.5","signingTime");N("1.2.840.113549.1.9.6","counterSignature");N("1.2.840.113549.1.9.7","challengePassword");N("1.2.840.113549.1.9.8","unstructuredAddress");N("1.2.840.113549.1.9.14","extensionRequest");N("1.2.840.113549.1.9.20","friendlyName");N("1.2.840.113549.1.9.21","localKeyId");N("1.2.840.113549.1.9.22.1","x509Certificate");N("1.2.840.113549.1.12.10.1.1","keyBag");N("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");N("1.2.840.113549.1.12.10.1.3","certBag");N("1.2.840.113549.1.12.10.1.4","crlBag");N("1.2.840.113549.1.12.10.1.5","secretBag");N("1.2.840.113549.1.12.10.1.6","safeContentsBag");N("1.2.840.113549.1.5.13","pkcs5PBES2");N("1.2.840.113549.1.5.12","pkcs5PBKDF2");N("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");N("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");N("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");N("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");N("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");N("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");N("1.2.840.113549.2.7","hmacWithSHA1");N("1.2.840.113549.2.8","hmacWithSHA224");N("1.2.840.113549.2.9","hmacWithSHA256");N("1.2.840.113549.2.10","hmacWithSHA384");N("1.2.840.113549.2.11","hmacWithSHA512");N("1.2.840.113549.3.7","des-EDE3-CBC");N("2.16.840.1.101.3.4.1.2","aes128-CBC");N("2.16.840.1.101.3.4.1.22","aes192-CBC");N("2.16.840.1.101.3.4.1.42","aes256-CBC");N("2.5.4.3","commonName");N("2.5.4.4","surname");N("2.5.4.5","serialNumber");N("2.5.4.6","countryName");N("2.5.4.7","localityName");N("2.5.4.8","stateOrProvinceName");N("2.5.4.9","streetAddress");N("2.5.4.10","organizationName");N("2.5.4.11","organizationalUnitName");N("2.5.4.12","title");N("2.5.4.13","description");N("2.5.4.15","businessCategory");N("2.5.4.17","postalCode");N("2.5.4.42","givenName");N("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");N("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");N("2.16.840.1.113730.1.1","nsCertType");N("2.16.840.1.113730.1.13","nsComment");mt("2.5.29.1","authorityKeyIdentifier");mt("2.5.29.2","keyAttributes");mt("2.5.29.3","certificatePolicies");mt("2.5.29.4","keyUsageRestriction");mt("2.5.29.5","policyMapping");mt("2.5.29.6","subtreesConstraint");mt("2.5.29.7","subjectAltName");mt("2.5.29.8","issuerAltName");mt("2.5.29.9","subjectDirectoryAttributes");mt("2.5.29.10","basicConstraints");mt("2.5.29.11","nameConstraints");mt("2.5.29.12","policyConstraints");mt("2.5.29.13","basicConstraints");N("2.5.29.14","subjectKeyIdentifier");N("2.5.29.15","keyUsage");mt("2.5.29.16","privateKeyUsagePeriod");N("2.5.29.17","subjectAltName");N("2.5.29.18","issuerAltName");N("2.5.29.19","basicConstraints");mt("2.5.29.20","cRLNumber");mt("2.5.29.21","cRLReason");mt("2.5.29.22","expirationDate");mt("2.5.29.23","instructionCode");mt("2.5.29.24","invalidityDate");mt("2.5.29.25","cRLDistributionPoints");mt("2.5.29.26","issuingDistributionPoint");mt("2.5.29.27","deltaCRLIndicator");mt("2.5.29.28","issuingDistributionPoint");mt("2.5.29.29","certificateIssuer");mt("2.5.29.30","nameConstraints");N("2.5.29.31","cRLDistributionPoints");N("2.5.29.32","certificatePolicies");mt("2.5.29.33","policyMappings");mt("2.5.29.34","policyConstraints");N("2.5.29.35","authorityKeyIdentifier");mt("2.5.29.36","policyConstraints");N("2.5.29.37","extKeyUsage");mt("2.5.29.46","freshestCRL");mt("2.5.29.54","inhibitAnyPolicy");N("1.3.6.1.4.1.11129.2.4.2","timestampList");N("1.3.6.1.5.5.7.1.1","authorityInfoAccess");N("1.3.6.1.5.5.7.3.1","serverAuth");N("1.3.6.1.5.5.7.3.2","clientAuth");N("1.3.6.1.5.5.7.3.3","codeSigning");N("1.3.6.1.5.5.7.3.4","emailProtection");N("1.3.6.1.5.5.7.3.8","timeStamping")});var Ki=ot((wB,Ph)=>{var Et=gt();Pt();ls();var V=Ph.exports=Et.asn1=Et.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(e,t,r,n,i){if(Et.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:e,type:t,constructed:r,composed:r||Et.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(e,t){var r;if(Et.util.isArray(e)){r=[];for(var n=0;n<e.length;++n)r.push(V.copy(e[n],t));return r}return typeof e=="string"?e:(r={tagClass:e.tagClass,type:e.type,constructed:e.constructed,composed:e.composed,value:V.copy(e.value,t)},t&&!t.excludeBitStringContents&&(r.bitStringContents=e.bitStringContents),r)};V.equals=function(e,t,r){if(Et.util.isArray(e)){if(!Et.util.isArray(t)||e.length!==t.length)return!1;for(var n=0;n<e.length;++n)if(!V.equals(e[n],t[n]))return!1;return!0}if(typeof e!=typeof t)return!1;if(typeof e=="string")return e===t;var i=e.tagClass===t.tagClass&&e.type===t.type&&e.constructed===t.constructed&&e.composed===t.composed&&V.equals(e.value,t.value);return r&&r.includeBitStringContents&&(i=i&&e.bitStringContents===t.bitStringContents),i};V.getBerValueLength=function(e){var t=e.getByte();if(t!==128){var r,n=t&128;return n?r=e.getInt((t&127)<<3):r=t,r}};function Oi(e,t,r){if(r>t){var n=new Error("Too few bytes to parse DER.");throw n.available=e.length(),n.remaining=t,n.requested=r,n}}var Hx=function(e,t){var r=e.getByte();if(t--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Oi(e,t,o),n=e.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(e,t){t===void 0&&(t={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof t=="boolean"&&(t={strict:t,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in t||(t.strict=!0),"parseAllBytes"in t||(t.parseAllBytes=!0),"decodeBitStrings"in t||(t.decodeBitStrings=!0),typeof e=="string"&&(e=Et.util.createBuffer(e));var r=e.length(),n=hs(e,e.length(),0,t);if(t.parseAllBytes&&e.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=e.length(),i}return n};function hs(e,t,r,n){var i;Oi(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Hx(e,t);if(t-=i-e.length(),c!==void 0&&c>t){if(n.strict){var u=new Error("Too few bytes to read ASN.1 value.");throw u.available=e.length(),u.remaining=t,u.requested=c,u}c=t}var f,l,d=(o&32)===32;if(d)if(f=[],c===void 0)for(;;){if(Oi(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),f.push(hs(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),f.push(hs(e,c,r+1,n)),t-=i-e.length(),c-=i-e.length();if(f===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=e.bytes(c)),f===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var m=e.read,h=t,p=0;if(a===V.Type.BITSTRING&&(Oi(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},g=hs(e,t,r+1,y),b=i-e.length();t-=b,a==V.Type.BITSTRING&&b++;var x=g.tagClass;b===c&&(x===V.Class.UNIVERSAL||x===V.Class.CONTEXT_SPECIFIC)&&(f=[g])}catch{}f===void 0&&(e.read=m,t=h)}if(f===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=t}if(a===V.Type.BMPSTRING)for(f="";c>0;c-=2)Oi(e,t,2),f+=String.fromCharCode(e.getInt16()),t-=2;else f=e.getBytes(c),t-=c}var D=l===void 0?null:{bitStringContents:l};return V.create(s,a,d,f,D)}V.toDer=function(e){var t=Et.util.createBuffer(),r=e.tagClass|e.type,n=Et.util.createBuffer(),i=!1;if("bitStringContents"in e&&(i=!0,e.original&&(i=V.equals(e,e.original))),i)n.putBytes(e.bitStringContents);else if(e.composed){e.constructed?r|=32:n.putByte(0);for(var o=0;o<e.value.length;++o)e.value[o]!==void 0&&n.putBuffer(V.toDer(e.value[o]))}else if(e.type===V.Type.BMPSTRING)for(var o=0;o<e.value.length;++o)n.putInt16(e.value.charCodeAt(o));else e.type===V.Type.INTEGER&&e.value.length>1&&(e.value.charCodeAt(0)===0&&!(e.value.charCodeAt(1)&128)||e.value.charCodeAt(0)===255&&(e.value.charCodeAt(1)&128)===128)?n.putBytes(e.value.substr(1)):n.putBytes(e.value);if(t.putByte(r),n.length()<=127)t.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);t.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)t.putByte(a.charCodeAt(o))}return t.putBuffer(n),t};V.oidToDer=function(e){var t=e.split("."),r=Et.util.createBuffer();r.putByte(40*parseInt(t[0],10)+parseInt(t[1],10));for(var n,i,o,s,a=2;a<t.length;++a){n=!0,i=[],o=parseInt(t[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(e){var t;typeof e=="string"&&(e=Et.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var n=0;e.length()>0;)r=e.getByte(),n=n<<7,r&128?n+=r&127:(t+="."+(n+r),n=0);return t};V.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),u=10;c!=="+"&&c!=="-"&&(a=parseInt(e.substr(10,2),10),u+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),u&&(c=e.charAt(u),c==="+"||c==="-")){var f=parseInt(e.substr(u+1,2),10),l=parseInt(e.substr(u+4,2),10),d=f*60+l;d*=6e4,c==="+"?t.setTime(+t-d):t.setTime(+t+d)}return t};V.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,u=0,f=!1;e.charAt(e.length-1)==="Z"&&(f=!0);var l=e.length-5,d=e.charAt(l);if(d==="+"||d==="-"){var m=parseInt(e.substr(l+1,2),10),h=parseInt(e.substr(l+4,2),10);u=m*60+h,u*=6e4,d==="+"&&(u*=-1),f=!0}return e.charAt(14)==="."&&(c=parseFloat(e.substr(14),10)*1e3),f?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+u)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t};V.dateToUtcTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.dateToGeneralizedTime=function(e){if(typeof e=="string")return e;var t="",r=[];r.push(""+e.getUTCFullYear()),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(t+="0"),t+=r[n];return t+="Z",t};V.integerToDer=function(e){var t=Et.util.createBuffer();if(e>=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r};V.derToInteger=function(e){typeof e=="string"&&(e=Et.util.createBuffer(e));var t=e.length()*8;if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)};V.validate=function(e,t,r,n){var i=!1;if((e.tagClass===t.tagClass||typeof t.tagClass>"u")&&(e.type===t.type||typeof t.type>"u"))if(e.constructed===t.constructed||typeof t.constructed>"u"){if(i=!0,t.value&&Et.util.isArray(t.value))for(var o=0,s=0;i&&s<t.value.length;++s)i=t.value[s].optional||!1,e.value[o]&&(i=V.validate(e.value[o],t.value[s],r,n),i?++o:t.value[s].optional&&(i=!0)),!i&&n&&n.push("["+t.name+'] Tag class "'+t.tagClass+'", type "'+t.type+'" expected value length "'+t.value.length+'", got "'+e.value.length+'"');if(i&&r&&(t.capture&&(r[t.capture]=e.value),t.captureAsn1&&(r[t.captureAsn1]=e),t.captureBitStringContents&&"bitStringContents"in e&&(r[t.captureBitStringContents]=e.bitStringContents),t.captureBitStringValue&&"bitStringContents"in e)){var a;if(e.bitStringContents.length<2)r[t.captureBitStringValue]="";else{var c=e.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[t.captureBitStringValue]=e.bitStringContents.slice(1)}}}else n&&n.push("["+t.name+'] Expected constructed "'+t.constructed+'", got "'+e.constructed+'"');else n&&(e.tagClass!==t.tagClass&&n.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&n.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));return i};var Nh=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(e,t,r){var n="";t=t||0,r=r||2,t>0&&(n+=`
|
|
6
|
-
`);for(var i="",o=0;o<
|
|
7
|
-
`,n+=i+"Constructed: "+
|
|
8
|
-
`,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,Et.pki&&Et.pki.oids&&c in Et.pki.oids&&(n+=" ("+Et.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+Et.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+Et.util.bytesToHex(e.value.slice(1)):n+="(none)",e.value.length>0){var u=e.value.charCodeAt(0);u==1?n+=" (1 unused bit shown)":u>1&&(n+=" ("+u+" unused bits shown)")}}else if(e.type===V.Type.OCTETSTRING)Nh.test(e.value)||(n+="("+e.value+") "),n+="0x"+Et.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=Et.util.decodeUtf8(e.value)}catch(f){if(f.message==="URI malformed")n+="0x"+Et.util.bytesToHex(e.value)+" (malformed UTF8)";else throw f}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:Nh.test(e.value)?n+="0x"+Et.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var f0=ot((vB,Uh)=>{var Ft=gt();Pt();Uh.exports=Ft.cipher=Ft.cipher||{};Ft.cipher.algorithms=Ft.cipher.algorithms||{};Ft.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ft.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ft.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};Ft.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=Ft.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new Ft.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};Ft.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),Ft.cipher.algorithms[e]=t};Ft.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in Ft.cipher.algorithms?Ft.cipher.algorithms[e]:null};var u0=Ft.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};u0.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=Ft.util.createBuffer(),this.output=e.output||Ft.util.createBuffer(),this.mode.start(t)};u0.prototype.update=function(e){for(e&&this._input.putBuffer(e);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()};u0.prototype.finish=function(e){e&&(this.mode.name==="ECB"||this.mode.name==="CBC")&&(this.mode.pad=function(r){return e(this.blockSize,r,!1)},this.mode.unpad=function(r){return e(this.blockSize,r,!0)});var t={};return t.decrypt=this._decrypt,t.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,t)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,t))||this.mode.afterFinish&&!this.mode.afterFinish(this.output,t))}});var h0=ot((EB,Oh)=>{var Vt=gt();Pt();Vt.cipher=Vt.cipher||{};var st=Oh.exports=Vt.cipher.modes=Vt.cipher.modes||{};st.ecb=function(e){e=e||{},this.name="ECB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};st.ecb.prototype.start=function(e){};st.ecb.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};st.ecb.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n])};st.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};st.ecb.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};st.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)};st.cbc.prototype.start=function(e){if(e.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in e)this._iv=ds(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};st.cbc.prototype.encrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=this._prev[n]^e.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._outBlock[n]);this._prev=this._outBlock};st.cbc.prototype.decrypt=function(e,t,r){if(e.length()<this.blockSize&&!(r&&e.length()>0))return!0;for(var n=0;n<this._ints;++n)this._inBlock[n]=e.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var n=0;n<this._ints;++n)t.putInt32(this._prev[n]^this._outBlock[n]);this._prev=this._inBlock.slice(0)};st.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};st.cbc.prototype.unpad=function(e,t){if(t.overflow>0)return!1;var r=e.length(),n=e.at(r-1);return n>this.blockSize<<2?!1:(e.truncate(n),!0)};st.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Vt.util.createBuffer(),this._partialBytes=0};st.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=ds(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};st.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32()^this._outBlock[i],t.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};st.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=e.getInt32(),t.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=e.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};st.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Vt.util.createBuffer(),this._partialBytes=0};st.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=ds(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};st.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(e.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0)e.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};st.ofb.prototype.decrypt=st.ofb.prototype.encrypt;st.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Vt.util.createBuffer(),this._partialBytes=0};st.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=ds(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};st.ctr.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)t.putInt32(e.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o>0&&(e.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}ps(this._inBlock)};st.ctr.prototype.decrypt=st.ctr.prototype.encrypt;st.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Vt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};st.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Vt.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Vt.util.createBuffer(e.additionalData):r=Vt.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Vt.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var n=t.length();if(n===12)this._j0=[t.getInt32(),t.getInt32(),t.getInt32(),1];else{for(this._j0=[0,0,0,0];t.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(l0(n*8)))}this._inBlock=this._j0.slice(0),ps(this._inBlock),this._partialBytes=0,r=Vt.util.createBuffer(r),this._aDataLength=l0(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()])};st.gcm.prototype.encrypt=function(e,t,r){var n=e.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^=e.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(e.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.read-=this.blockSize,t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),ps(this._inBlock)};st.gcm.prototype.decrypt=function(e,t,r){var n=e.length();if(n<this.blockSize&&!(r&&n>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),ps(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)t.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};st.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Vt.util.createBuffer();var n=this._aDataLength.concat(l0(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),t.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};st.gcm.prototype.multiply=function(e,t){for(var r=[0,0,0,0],n=t.slice(0),i=0;i<128;++i){var o=e[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};st.gcm.prototype.pow=function(e,t){for(var r=e[3]&1,n=3;n>0;--n)t[n]=e[n]>>>1|(e[n-1]&1)<<31;t[0]=e[0]>>>1,r&&(t[0]^=this._R)};st.gcm.prototype.tableMultiply=function(e){for(var t=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=e[n]>>>(7-r%8)*4&15,o=this._m[r][i];t[0]^=o[0],t[1]^=o[1],t[2]^=o[2],t[3]^=o[3]}return t};st.gcm.prototype.ghash=function(e,t,r){return t[0]^=r[0],t[1]^=r[1],t[2]^=r[2],t[3]^=r[3],this.tableMultiply(t)};st.gcm.prototype.generateHashTable=function(e,t){for(var r=8/t,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,u=(n-1-s%n)*t;a[c]=1<<t-1<<u,o[s]=this.generateSubHashTable(this.multiply(a,e),t)}return o};st.gcm.prototype.generateSubHashTable=function(e,t){var r=1<<t,n=r>>>1,i=new Array(r);i[n]=e.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var u=i[o^n];i[o]=[e[0]^u[0],e[1]^u[1],e[2]^u[2],e[3]^u[3]]}return i};function ds(e,t){if(typeof e=="string"&&(e=Vt.util.createBuffer(e)),Vt.util.isArray(e)&&e.length>4){var r=e;e=Vt.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(e.length()<t)throw new Error("Invalid IV length; got "+e.length()+" bytes and expected "+t+" bytes.");if(!Vt.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function ps(e){e[e.length-1]=e[e.length-1]+1&4294967295}function l0(e){return[e/4294967296|0,e&4294967295]}});var y0=ot((SB,Vh)=>{var bt=gt();f0();h0();Pt();Vh.exports=bt.aes=bt.aes||{};bt.aes.startEncrypting=function(e,t,r,n){var i=ms({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};bt.aes.createEncryptionCipher=function(e,t){return ms({key:e,output:null,decrypt:!1,mode:t})};bt.aes.startDecrypting=function(e,t,r,n){var i=ms({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};bt.aes.createDecryptionCipher=function(e,t){return ms({key:e,output:null,decrypt:!0,mode:t})};bt.aes.Algorithm=function(e,t){m0||Mh();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return p0(r._w,n,i,!1)},decrypt:function(n,i){return p0(r._w,n,i,!0)}}}),r._init=!1};bt.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t=e.key,r;if(typeof t=="string"&&(t.length===16||t.length===24||t.length===32))t=bt.util.createBuffer(t);else if(bt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=bt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!bt.util.isArray(t)){r=t,t=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)t.push(r.getInt32())}}if(!bt.util.isArray(t)||!(t.length===4||t.length===6||t.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=Fh(t,e.decrypt&&!s),this._init=!0}};bt.aes._expandKey=function(e,t){return m0||Mh(),Fh(e,t)};bt.aes._updateBlock=p0;Yn("AES-ECB",bt.cipher.modes.ecb);Yn("AES-CBC",bt.cipher.modes.cbc);Yn("AES-CFB",bt.cipher.modes.cfb);Yn("AES-OFB",bt.cipher.modes.ofb);Yn("AES-CTR",bt.cipher.modes.ctr);Yn("AES-GCM",bt.cipher.modes.gcm);function Yn(e,t){var r=function(){return new bt.aes.Algorithm(e,t)};bt.cipher.registerAlgorithm(e,r)}var m0=!1,$n=4,te,d0,Kh,sn,_e;function Mh(){m0=!0,Kh=[0,1,2,4,8,16,32,64,128,27,54];for(var e=new Array(256),t=0;t<128;++t)e[t]=t<<1,e[t+128]=t+128<<1^283;te=new Array(256),d0=new Array(256),sn=new Array(4),_e=new Array(4);for(var t=0;t<4;++t)sn[t]=new Array(256),_e[t]=new Array(256);for(var r=0,n=0,i,o,s,a,c,u,f,t=0;t<256;++t){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,te[r]=a,d0[a]=r,c=e[a],i=e[r],o=e[i],s=e[o],u=c<<24^a<<16^a<<8^(a^c),f=(i^o^s)<<24^(r^s)<<16^(r^o^s)<<8^(r^i^s);for(var l=0;l<4;++l)sn[l][r]=u,_e[l][a]=f,u=u<<24|u>>>8,f=f<<24|f>>>8;r===0?r=n=1:(r=i^e[e[e[i^s]]],n^=e[e[n]])}}function Fh(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=$n*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=te[n>>>16&255]<<24^te[n>>>8&255]<<16^te[n&255]<<8^te[n>>>24]^Kh[i]<<24,i++):o>6&&c%o===4&&(n=te[n>>>24]<<24^te[n>>>16&255]<<16^te[n>>>8&255]<<8^te[n&255]),r[c]=r[c-o]^n;if(t){var u,f=_e[0],l=_e[1],d=_e[2],m=_e[3],h=r.slice(0);a=r.length;for(var c=0,p=a-$n;c<a;c+=$n,p-=$n)if(c===0||c===a-$n)h[c]=r[p],h[c+1]=r[p+3],h[c+2]=r[p+2],h[c+3]=r[p+1];else for(var y=0;y<$n;++y)u=r[p+y],h[c+(3&-y)]=f[te[u>>>24]]^l[te[u>>>16&255]]^d[te[u>>>8&255]]^m[te[u&255]];r=h}return r}function p0(e,t,r,n){var i=e.length/4-1,o,s,a,c,u;n?(o=_e[0],s=_e[1],a=_e[2],c=_e[3],u=d0):(o=sn[0],s=sn[1],a=sn[2],c=sn[3],u=te);var f,l,d,m,h,p,y;f=t[0]^e[0],l=t[n?3:1]^e[1],d=t[2]^e[2],m=t[n?1:3]^e[3];for(var g=3,b=1;b<i;++b)h=o[f>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[m&255]^e[++g],p=o[l>>>24]^s[d>>>16&255]^a[m>>>8&255]^c[f&255]^e[++g],y=o[d>>>24]^s[m>>>16&255]^a[f>>>8&255]^c[l&255]^e[++g],m=o[m>>>24]^s[f>>>16&255]^a[l>>>8&255]^c[d&255]^e[++g],f=h,l=p,d=y;r[0]=u[f>>>24]<<24^u[l>>>16&255]<<16^u[d>>>8&255]<<8^u[m&255]^e[++g],r[n?3:1]=u[l>>>24]<<24^u[d>>>16&255]<<16^u[m>>>8&255]<<8^u[f&255]^e[++g],r[2]=u[d>>>24]<<24^u[m>>>16&255]<<16^u[f>>>8&255]<<8^u[l&255]^e[++g],r[n?1:3]=u[m>>>24]<<24^u[f>>>16&255]<<16^u[l>>>8&255]<<8^u[d&255]^e[++g]}function ms(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=bt.cipher.createDecipher(r,e.key):n=bt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof bt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var zh=ot((AB,qh)=>{var Ct=gt();f0();h0();Pt();qh.exports=Ct.des=Ct.des||{};Ct.des.startEncrypting=function(e,t,r,n){var i=ys({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Ct.des.createEncryptionCipher=function(e,t){return ys({key:e,output:null,decrypt:!1,mode:t})};Ct.des.startDecrypting=function(e,t,r,n){var i=ys({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Ct.des.createDecryptionCipher=function(e,t){return ys({key:e,output:null,decrypt:!0,mode:t})};Ct.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return Hh(r._keys,n,i,!1)},decrypt:function(n,i){return Hh(r._keys,n,i,!0)}}}),r._init=!1};Ct.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=Ct.util.createBuffer(e.key);if(this.name.indexOf("3DES")===0&&t.length()!==24)throw new Error("Invalid Triple-DES key size: "+t.length()*8);this._keys=Qx(t),this._init=!0}};Ke("DES-ECB",Ct.cipher.modes.ecb);Ke("DES-CBC",Ct.cipher.modes.cbc);Ke("DES-CFB",Ct.cipher.modes.cfb);Ke("DES-OFB",Ct.cipher.modes.ofb);Ke("DES-CTR",Ct.cipher.modes.ctr);Ke("3DES-ECB",Ct.cipher.modes.ecb);Ke("3DES-CBC",Ct.cipher.modes.cbc);Ke("3DES-CFB",Ct.cipher.modes.cfb);Ke("3DES-OFB",Ct.cipher.modes.ofb);Ke("3DES-CTR",Ct.cipher.modes.ctr);function Ke(e,t){var r=function(){return new Ct.des.Algorithm(e,t)};Ct.cipher.registerAlgorithm(e,r)}var qx=[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],zx=[-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],Gx=[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],Wx=[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],$x=[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],Yx=[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],Xx=[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],Zx=[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 Qx(e){for(var t=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],u=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],f=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],l=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],m=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=e.length()>8?3:1,y=[],g=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],b=0,x,D=0;D<p;D++){var v=e.getInt32(),E=e.getInt32();x=(v>>>4^E)&252645135,E^=x,v^=x<<4,x=(E>>>-16^v)&65535,v^=x,E^=x<<-16,x=(v>>>2^E)&858993459,E^=x,v^=x<<2,x=(E>>>-16^v)&65535,v^=x,E^=x<<-16,x=(v>>>1^E)&1431655765,E^=x,v^=x<<1,x=(E>>>8^v)&16711935,v^=x,E^=x<<8,x=(v>>>1^E)&1431655765,E^=x,v^=x<<1,x=v<<8|E>>>20&240,v=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=x;for(var C=0;C<g.length;++C){g[C]?(v=v<<2|v>>>26,E=E<<2|E>>>26):(v=v<<1|v>>>27,E=E<<1|E>>>27),v&=-15,E&=-15;var B=t[v>>>28]|r[v>>>24&15]|n[v>>>20&15]|i[v>>>16&15]|o[v>>>12&15]|s[v>>>8&15]|a[v>>>4&15],O=c[E>>>28]|u[E>>>24&15]|f[E>>>20&15]|l[E>>>16&15]|d[E>>>12&15]|m[E>>>8&15]|h[E>>>4&15];x=(O>>>16^B)&65535,y[b++]=B^x,y[b++]=O^x<<16}}return y}function Hh(e,t,r,n){var i=e.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=t[0],c=t[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var u=0;u<i;u+=3){for(var f=o[u+1],l=o[u+2],d=o[u];d!=f;d+=l){var m=c^e[d],h=(c>>>4|c<<28)^e[d+1];s=a,a=c,c=s^(zx[m>>>24&63]|Wx[m>>>16&63]|Yx[m>>>8&63]|Zx[m&63]|qx[h>>>24&63]|Gx[h>>>16&63]|$x[h>>>8&63]|Xx[h&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function ys(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=Ct.cipher.createDecipher(r,e.key):n=Ct.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Ct.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var an=ot((DB,Gh)=>{var gs=gt();Gh.exports=gs.md=gs.md||{};gs.md.algorithms=gs.md.algorithms||{}});var $h=ot((CB,Wh)=>{var ur=gt();an();Pt();var jx=Wh.exports=ur.hmac=ur.hmac||{};jx.create=function(){var e=null,t=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in ur.md.algorithms)t=ur.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else t=o;if(s===null)s=e;else{if(typeof s=="string")s=ur.util.createBuffer(s);else if(ur.util.isArray(s)){var a=s;s=ur.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var u=s.length();u>t.blockLength&&(t.start(),t.update(s.bytes()),s=t.digest()),r=ur.util.createBuffer(),n=ur.util.createBuffer(),u=s.length();for(var c=0;c<u;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(u<t.blockLength)for(var a=t.blockLength-u,c=0;c<a;++c)r.putByte(54),n.putByte(92);e=s,r=r.bytes(),n=n.bytes()}t.start(),t.update(r)},i.update=function(o){t.update(o)},i.getMac=function(){var o=t.digest().bytes();return t.start(),t.update(n),t.update(o),t.digest()},i.digest=i.getMac,i}});var xs=ot(()=>{});var Xh=ot((IB,Yh)=>{var ee=gt();$h();an();Pt();var Jx=ee.pkcs5=ee.pkcs5||{},fr;ee.util.isNodejs&&!ee.options.usePureJavaScript&&(fr=xs());Yh.exports=ee.pbkdf2=Jx.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),ee.util.isNodejs&&!ee.options.usePureJavaScript&&fr.pbkdf2&&(i===null||typeof i!="object")&&(fr.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?fr.pbkdf2Sync.length===4?fr.pbkdf2(e,t,r,n,function(x,D){if(x)return o(x);o(null,D.toString("binary"))}):fr.pbkdf2(e,t,r,n,i,function(x,D){if(x)return o(x);o(null,D.toString("binary"))}):fr.pbkdf2Sync.length===4?fr.pbkdf2Sync(e,t,r,n).toString("binary"):fr.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in ee.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=ee.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),u=n-(c-1)*s,f=ee.hmac.create();f.start(i,e);var l="",d,m,h;if(!o){for(var p=1;p<=c;++p){f.start(null,null),f.update(t),f.update(ee.util.int32ToBytes(p)),d=h=f.digest().getBytes();for(var y=2;y<=r;++y)f.start(null,null),f.update(h),m=f.digest().getBytes(),d=ee.util.xorBytes(d,m,s),h=m;l+=p<c?d:d.substr(0,u)}return l}var p=1,y;function g(){if(p>c)return o(null,l);f.start(null,null),f.update(t),f.update(ee.util.int32ToBytes(p)),d=h=f.digest().getBytes(),y=2,b()}function b(){if(y<=r)return f.start(null,null),f.update(h),m=f.digest().getBytes(),d=ee.util.xorBytes(d,m,s),h=m,++y,ee.util.setImmediate(b);l+=p<c?d:d.substr(0,u),++p,g()}g()}});var jh=ot((_B,Qh)=>{var ws=gt();Pt();var Zh=Qh.exports=ws.pem=ws.pem||{};Zh.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
|
|
9
|
-
`,n;if(
|
|
10
|
-
`),r+=
|
|
11
|
-
`,r+="-----END "+
|
|
12
|
-
`,r};
|
|
13
|
-
`;for(var o=0,s=-1,i=0;i<
|
|
14
|
-
`+
|
|
15
|
-
`+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function tb(e){return e.replace(/^\s+/,"")}});var id=ot((kB,nd)=>{var Me=gt();an();Pt();var td=nd.exports=Me.sha256=Me.sha256||{};Me.md.sha256=Me.md.algorithms.sha256=td;td.create=function(){ed||eb();var e=null,t=Me.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Me.util.createBuffer(),e={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Me.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),Jh(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Me.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(g0.substr(0,n.blockLength-s));for(var a,c,u=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,c=a/4294967296>>>0,u+=c,i.putInt32(u>>>0),u=a>>>0;i.putInt32(u);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};Jh(l,r,i);var d=Me.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var g0=null,ed=!1,rd=null;function eb(){g0="\x80",g0+=Me.util.fillString("\0",64),rd=[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],ed=!0}function Jh(e,t,r){for(var n,i,o,s,a,c,u,f,l,d,m,h,p,y,g,b=r.length();b>=64;){for(u=0;u<16;++u)t[u]=r.getInt32();for(;u<64;++u)n=t[u-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=t[u-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[u]=n+t[u-7]+i+t[u-16]|0;for(f=e.h0,l=e.h1,d=e.h2,m=e.h3,h=e.h4,p=e.h5,y=e.h6,g=e.h7,u=0;u<64;++u)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=y^h&(p^y),o=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),c=f&l|d&(f^l),n=g+s+a+rd[u]+t[u],i=o+c,g=y,y=p,p=h,h=m+n>>>0,m=d,d=l,l=f,f=n+i>>>0;e.h0=e.h0+f|0,e.h1=e.h1+l|0,e.h2=e.h2+d|0,e.h3=e.h3+m|0,e.h4=e.h4+h|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+g|0,b-=64}}});var sd=ot((RB,od)=>{var Fe=gt();Pt();var vs=null;Fe.util.isNodejs&&!Fe.options.usePureJavaScript&&!process.versions["node-webkit"]&&(vs=xs());var rb=od.exports=Fe.prng=Fe.prng||{};rb.create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();t.pools=n,t.pool=0,t.generate=function(u,f){if(!f)return t.generateSync(u);var l=t.plugin.cipher,d=t.plugin.increment,m=t.plugin.formatKey,h=t.plugin.formatSeed,p=Fe.util.createBuffer();t.key=null,y();function y(g){if(g)return f(g);if(p.length()>=u)return f(null,p.getBytes(u));if(t.generated>1048575&&(t.key=null),t.key===null)return Fe.util.nextTick(function(){o(y)});var b=l(t.key,t.seed);t.generated+=b.length,p.putBytes(b),t.key=m(l(t.key,d(t.seed))),t.seed=h(l(t.key,t.seed)),Fe.util.setImmediate(y)}},t.generateSync=function(u){var f=t.plugin.cipher,l=t.plugin.increment,d=t.plugin.formatKey,m=t.plugin.formatSeed;t.key=null;for(var h=Fe.util.createBuffer();h.length()<u;){t.generated>1048575&&(t.key=null),t.key===null&&s();var p=f(t.key,t.seed);t.generated+=p.length,h.putBytes(p),t.key=d(f(t.key,l(t.seed))),t.seed=m(f(t.key,t.seed))}return h.getBytes(u)};function o(u){if(t.pools[0].messageLength>=32)return a(),u();var f=32-t.pools[0].messageLength<<5;t.seedFile(f,function(l,d){if(l)return u(l);t.collect(d),a(),u()})}function s(){if(t.pools[0].messageLength>=32)return a();var u=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(u)),a()}function a(){t.reseeds=t.reseeds===4294967295?0:t.reseeds+1;var u=t.plugin.md.create();u.update(t.keyBytes);for(var f=1,l=0;l<32;++l)t.reseeds%f===0&&(u.update(t.pools[l].digest().getBytes()),t.pools[l].start()),f=f<<1;t.keyBytes=u.digest().getBytes(),u.start(),u.update(t.keyBytes);var d=u.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(d),t.generated=0}function c(u){var f=null,l=Fe.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(f=function(v){return d.getRandomValues(v)});var m=Fe.util.createBuffer();if(f)for(;m.length()<u;){var h=Math.max(1,Math.min(u-m.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{f(p);for(var y=0;y<p.length;++y)m.putInt32(p[y])}catch(v){if(!(typeof QuotaExceededError<"u"&&v instanceof QuotaExceededError))throw v}}if(m.length()<u)for(var g,b,x,D=Math.floor(Math.random()*65536);m.length()<u;){b=16807*(D&65535),g=16807*(D>>16),b+=(g&32767)<<16,b+=g>>15,b=(b&2147483647)+(b>>31),D=b&4294967295;for(var y=0;y<3;++y)x=D>>>(y<<3),x^=Math.floor(Math.random()*256),m.putByte(x&255)}return m.getBytes(u)}return vs?(t.seedFile=function(u,f){vs.randomBytes(u,function(l,d){if(l)return f(l);f(null,d.toString())})},t.seedFileSync=function(u){return vs.randomBytes(u).toString()}):(t.seedFile=function(u,f){try{f(null,c(u))}catch(l){f(l)}},t.seedFileSync=c),t.collect=function(u){for(var f=u.length,l=0;l<f;++l)t.pools[t.pool].update(u.substr(l,1)),t.pool=t.pool===31?0:t.pool+1},t.collectInt=function(u,f){for(var l="",d=0;d<f;d+=8)l+=String.fromCharCode(u>>d&255);t.collect(l)},t.registerWorker=function(u){if(u===self)t.seedFile=function(l,d){function m(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",m),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",m),self.postMessage({forge:{prng:{needed:l}}})};else{var f=function(l){var d=l.data;d.forge&&d.forge.prng&&t.seedFile(d.forge.prng.needed,function(m,h){u.postMessage({forge:{prng:{err:m,bytes:h}}})})};u.addEventListener("message",f)}},t}});var Mi=ot((LB,x0)=>{var Ht=gt();y0();id();sd();Pt();(function(){if(Ht.random&&Ht.random.getBytes){x0.exports=Ht.random;return}(function(e){var t={},r=new Array(4),n=Ht.util.createBuffer();t.formatKey=function(l){var d=Ht.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Ht.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Ht.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},t.cipher=function(l,d){return Ht.aes._updateBlock(l,d,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},t.increment=function(l){return++l[3],l},t.md=Ht.md.sha256;function i(){var l=Ht.prng.create(t);return l.getBytes=function(d,m){return l.generate(d,m)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=Ht.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ht.options.usePureJavaScript||!Ht.util.isNodejs&&!s){if(typeof window>"u"||window.document,o.collectInt(+new Date,32),typeof navigator<"u"){var u="";for(var f in navigator)try{typeof navigator[f]=="string"&&(u+=navigator[f])}catch{}o.collect(u),u=null}e&&(e().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),e().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ht.random)Ht.random=o;else for(var f in o)Ht.random[f]=o[f];Ht.random.createInstance=i,x0.exports=Ht.random})(typeof jQuery<"u"?jQuery:null)})()});var fd=ot((NB,ud)=>{var se=gt();Pt();var b0=[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],ad=[1,2,3,5],nb=function(e,t){return e<<t&65535|(e&65535)>>16-t},ib=function(e,t){return(e&65535)>>t|e<<16-t&65535};ud.exports=se.rc2=se.rc2||{};se.rc2.expandKey=function(e,t){typeof e=="string"&&(e=se.util.createBuffer(e)),t=t||128;var r=e,n=e.length(),i=t,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(b0[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,b0[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,b0[r.at(a+1)^r.at(a+o)]);return r};var cd=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,u,f,l=[];for(e=se.rc2.expandKey(e,t),u=0;u<64;u++)l.push(e.getInt16Le());r?(a=function(h){for(u=0;u<4;u++)h[u]+=l[f]+(h[(u+3)%4]&h[(u+2)%4])+(~h[(u+3)%4]&h[(u+1)%4]),h[u]=nb(h[u],ad[u]),f++},c=function(h){for(u=0;u<4;u++)h[u]+=l[h[(u+3)%4]&63]}):(a=function(h){for(u=3;u>=0;u--)h[u]=ib(h[u],ad[u]),h[u]-=l[f]+(h[(u+3)%4]&h[(u+2)%4])+(~h[(u+3)%4]&h[(u+1)%4]),f--},c=function(h){for(u=3;u>=0;u--)h[u]-=l[h[(u+3)%4]&63]});var d=function(h){var p=[];for(u=0;u<4;u++){var y=i.getInt16Le();s!==null&&(r?y^=s.getInt16Le():s.putInt16Le(y)),p.push(y&65535)}f=r?0:63;for(var g=0;g<h.length;g++)for(var b=0;b<h[g][0];b++)h[g][1](p);for(u=0;u<4;u++)s!==null&&(r?s.putInt16Le(p[u]):p[u]^=s.getInt16Le()),o.putInt16Le(p[u])},m=null;return m={start:function(h,p){h&&typeof h=="string"&&(h=se.util.createBuffer(h)),n=!1,i=se.util.createBuffer(),o=p||new se.util.createBuffer,s=h,m.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,m.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var g=o.length(),b=o.at(g-1);b>g?p=!1:o.truncate(b)}return p}},m};se.rc2.startEncrypting=function(e,t,r){var n=se.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};se.rc2.createEncryptionCipher=function(e,t){return cd(e,t,!0)};se.rc2.startDecrypting=function(e,t,r){var n=se.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};se.rc2.createDecryptionCipher=function(e,t){return cd(e,t,!1)}});var As=ot((PB,xd)=>{var w0=gt();xd.exports=w0.jsbn=w0.jsbn||{};var lr,ob=0xdeadbeefcafe,ld=(ob&16777215)==15715070;function L(e,t,r){this.data=[],e!=null&&(typeof e=="number"?this.fromNumber(e,t,r):t==null&&typeof e!="string"?this.fromString(e,256):this.fromString(e,t))}w0.jsbn.BigInteger=L;function ut(){return new L(null)}function sb(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function ab(e,t,r,n,i,o){for(var s=t&32767,a=t>>15;--o>=0;){var c=this.data[e]&32767,u=this.data[e++]>>15,f=a*c+u*s;c=s*c+((f&32767)<<15)+r.data[n]+(i&1073741823),i=(c>>>30)+(f>>>15)+a*u+(i>>>30),r.data[n++]=c&1073741823}return i}function hd(e,t,r,n,i,o){for(var s=t&16383,a=t>>14;--o>=0;){var c=this.data[e]&16383,u=this.data[e++]>>14,f=a*c+u*s;c=s*c+((f&16383)<<14)+r.data[n]+i,i=(c>>28)+(f>>14)+a*u,r.data[n++]=c&268435455}return i}typeof navigator>"u"?(L.prototype.am=hd,lr=28):ld&&navigator.appName=="Microsoft Internet Explorer"?(L.prototype.am=ab,lr=30):ld&&navigator.appName!="Netscape"?(L.prototype.am=sb,lr=26):(L.prototype.am=hd,lr=28);L.prototype.DB=lr;L.prototype.DM=(1<<lr)-1;L.prototype.DV=1<<lr;var v0=52;L.prototype.FV=Math.pow(2,v0);L.prototype.F1=v0-lr;L.prototype.F2=2*lr-v0;var cb="0123456789abcdefghijklmnopqrstuvwxyz",Es=new Array,Xn,ye;Xn=48;for(ye=0;ye<=9;++ye)Es[Xn++]=ye;Xn=97;for(ye=10;ye<36;++ye)Es[Xn++]=ye;Xn=65;for(ye=10;ye<36;++ye)Es[Xn++]=ye;function dd(e){return cb.charAt(e)}function pd(e,t){var r=Es[e.charCodeAt(t)];return r??-1}function ub(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s}function fb(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0}function Nr(e){var t=ut();return t.fromInt(e),t}function lb(e,t){var r;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(e,t);return}this.t=0,this.s=0;for(var n=e.length,i=!1,o=0;--n>=0;){var s=r==8?e[n]&255:pd(e,n);if(s<0){e.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&e[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&L.ZERO.subTo(this,this)}function hb(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function db(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<<t)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%t;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=dd(n));s>=0;)a<t?(n=(this.data[s]&(1<<a)-1)<<t-a,n|=this.data[--s]>>(a+=this.DB-t)):(n=this.data[s]>>(a-=t)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=dd(n));return i?o:"0"}function pb(){var e=ut();return L.ZERO.subTo(this,e),e}function mb(){return this.s<0?this.negate():this}function yb(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this.data[r]-e.data[r])!=0)return t;return 0}function Ss(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function gb(){return this.t<=0?0:this.DB*(this.t-1)+Ss(this.data[this.t-1]^this.s&this.DM)}function xb(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s}function bb(e,t){for(var r=e;r<this.t;++r)t.data[r-e]=this.data[r];t.t=Math.max(this.t-e,0),t.s=this.s}function wb(e,t){var r=e%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(e/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)t.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)t.data[a]=0;t.data[o]=s,t.t=this.t+o+1,t.s=this.s,t.clamp()}function vb(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,o=(1<<n)-1;t.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)t.data[s-r-1]|=(this.data[s]&o)<<i,t.data[s-r]=this.data[s]>>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<<i),t.t=this.t-r,t.clamp()}function Eb(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]-e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()}function Sb(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i<n.t;++i)t.data[i+r.t]=r.am(0,n.data[i],t,i,0,r.t);t.s=0,t.clamp(),this.s!=e.s&&L.ZERO.subTo(t,t)}function Ab(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e.data[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t.data[r],e,2*r,0,1);(e.data[r+t.t]+=t.am(r+1,2*t.data[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()}function Db(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){t?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=ut());var o=ut(),s=this.s,a=e.s,c=this.DB-Ss(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var u=o.t,f=o.data[u-1];if(f!=0){var l=f*(1<<this.F1)+(u>1?o.data[u-2]>>this.F2:0),d=this.FV/l,m=(1<<this.F1)/l,h=1<<this.F2,p=r.t,y=p-u,g=t??ut();for(o.dlShiftTo(y,g),r.compareTo(g)>=0&&(r.data[r.t++]=1,r.subTo(g,r)),L.ONE.dlShiftTo(u,g),g.subTo(o,o);o.t<u;)o.data[o.t++]=0;for(;--y>=0;){var b=r.data[--p]==f?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*m);if((r.data[p]+=o.am(0,b,r,y,0,u))<b)for(o.dlShiftTo(y,g),r.subTo(g,r);r.data[p]<--b;)r.subTo(g,r)}t!=null&&(r.drShiftTo(u,t),s!=a&&L.ZERO.subTo(t,t)),r.t=u,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&L.ZERO.subTo(r,r)}}}function Cb(e){var t=ut();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(L.ZERO)>0&&e.subTo(t,t),t}function cn(e){this.m=e}function Bb(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function Tb(e){return e}function Ib(e){e.divRemTo(this.m,null,e)}function _b(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function kb(e,t){e.squareTo(t),this.reduce(t)}cn.prototype.convert=Bb;cn.prototype.revert=Tb;cn.prototype.reduce=Ib;cn.prototype.mulTo=_b;cn.prototype.sqrTo=kb;function Rb(){if(this.t<1)return 0;var e=this.data[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function un(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function Lb(e){var t=ut();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(L.ZERO)>0&&this.m.subTo(t,t),t}function Nb(e){var t=ut();return e.copyTo(t),this.reduce(t),t}function Pb(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=e.data[t]&32767,n=r*this.mpl+((r*this.mph+(e.data[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function Ub(e,t){e.squareTo(t),this.reduce(t)}function Ob(e,t,r){e.multiplyTo(t,r),this.reduce(r)}un.prototype.convert=Lb;un.prototype.revert=Nb;un.prototype.reduce=Pb;un.prototype.mulTo=Ob;un.prototype.sqrTo=Ub;function Kb(){return(this.t>0?this.data[0]&1:this.s)==0}function Mb(e,t){if(e>4294967295||e<1)return L.ONE;var r=ut(),n=ut(),i=t.convert(this),o=Ss(e)-1;for(i.copyTo(r);--o>=0;)if(t.sqrTo(r,n),(e&1<<o)>0)t.mulTo(n,i,r);else{var s=r;r=n,n=s}return t.revert(r)}function Fb(e,t){var r;return e<256||t.isEven()?r=new cn(t):r=new un(t),this.exp(e,r)}L.prototype.copyTo=ub;L.prototype.fromInt=fb;L.prototype.fromString=lb;L.prototype.clamp=hb;L.prototype.dlShiftTo=xb;L.prototype.drShiftTo=bb;L.prototype.lShiftTo=wb;L.prototype.rShiftTo=vb;L.prototype.subTo=Eb;L.prototype.multiplyTo=Sb;L.prototype.squareTo=Ab;L.prototype.divRemTo=Db;L.prototype.invDigit=Rb;L.prototype.isEven=Kb;L.prototype.exp=Mb;L.prototype.toString=db;L.prototype.negate=pb;L.prototype.abs=mb;L.prototype.compareTo=yb;L.prototype.bitLength=gb;L.prototype.mod=Cb;L.prototype.modPowInt=Fb;L.ZERO=Nr(0);L.ONE=Nr(1);function Vb(){var e=ut();return this.copyTo(e),e}function Hb(){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 qb(){return this.t==0?this.s:this.data[0]<<24>>24}function zb(){return this.t==0?this.s:this.data[0]<<16>>16}function Gb(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Wb(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function $b(e){if(e==null&&(e=10),this.signum()==0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=Nr(r),i=ut(),o=ut(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(e).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(e)+s}function Yb(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,o=0,s=0,a=0;a<e.length;++a){var c=pd(e,a);if(c<0){e.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=t*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(t,o)),this.dAddOffset(s,0)),i&&L.ZERO.subTo(this,this)}function Xb(e,t,r){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(L.ONE.shiftLeft(e-1),E0,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(L.ONE.shiftLeft(e-1),this);else{var n=new Array,i=e&7;n.length=(e>>3)+1,t.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function Zb(){var e=this.t,t=new Array;t[0]=this.s;var r=this.DB-e*this.DB%8,n,i=0;if(e-- >0)for(r<this.DB&&(n=this.data[e]>>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<<this.DB-r);e>=0;)r<8?(n=(this.data[e]&(1<<r)-1)<<8-r,n|=this.data[--e]>>(r+=this.DB-8)):(n=this.data[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function Qb(e){return this.compareTo(e)==0}function jb(e){return this.compareTo(e)<0?this:e}function Jb(e){return this.compareTo(e)>0?this:e}function tw(e,t,r){var n,i,o=Math.min(e.t,this.t);for(n=0;n<o;++n)r.data[n]=t(this.data[n],e.data[n]);if(e.t<this.t){for(i=e.s&this.DM,n=o;n<this.t;++n)r.data[n]=t(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<e.t;++n)r.data[n]=t(i,e.data[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()}function ew(e,t){return e&t}function rw(e){var t=ut();return this.bitwiseTo(e,ew,t),t}function E0(e,t){return e|t}function nw(e){var t=ut();return this.bitwiseTo(e,E0,t),t}function md(e,t){return e^t}function iw(e){var t=ut();return this.bitwiseTo(e,md,t),t}function yd(e,t){return e&~t}function ow(e){var t=ut();return this.bitwiseTo(e,yd,t),t}function sw(){for(var e=ut(),t=0;t<this.t;++t)e.data[t]=this.DM&~this.data[t];return e.t=this.t,e.s=~this.s,e}function aw(e){var t=ut();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function cw(e){var t=ut();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function uw(e){if(e==0)return-1;var t=0;return e&65535||(e>>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function fw(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+uw(this.data[e]);return this.s<0?this.t*this.DB:-1}function lw(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function hw(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=lw(this.data[r]^t);return e}function dw(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function pw(e,t){var r=L.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function mw(e){return this.changeBit(e,E0)}function yw(e){return this.changeBit(e,yd)}function gw(e){return this.changeBit(e,md)}function xw(e,t){for(var r=0,n=0,i=Math.min(e.t,this.t);r<i;)n+=this.data[r]+e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e.data[r],t.data[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()}function bw(e){var t=ut();return this.addTo(e,t),t}function ww(e){var t=ut();return this.subTo(e,t),t}function vw(e){var t=ut();return this.multiplyTo(e,t),t}function Ew(e){var t=ut();return this.divRemTo(e,t,null),t}function Sw(e){var t=ut();return this.divRemTo(e,null,t),t}function Aw(e){var t=ut(),r=ut();return this.divRemTo(e,t,r),new Array(t,r)}function Dw(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function Cw(e,t){if(e!=0){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}}function Fi(){}function gd(e){return e}function Bw(e,t,r){e.multiplyTo(t,r)}function Tw(e,t){e.squareTo(t)}Fi.prototype.convert=gd;Fi.prototype.revert=gd;Fi.prototype.mulTo=Bw;Fi.prototype.sqrTo=Tw;function Iw(e){return this.exp(e,new Fi)}function _w(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,e.data[n],r,n,0,this.t);for(i=Math.min(e.t,t);n<i;++n)this.am(0,e.data[n],r,n,0,t-n);r.clamp()}function kw(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r.data[this.t+n-t]=this.am(t-n,e.data[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)}function Zn(e){this.r2=ut(),this.q3=ut(),L.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function Rw(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=ut();return e.copyTo(t),this.reduce(t),t}function Lw(e){return e}function Nw(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function Pw(e,t){e.squareTo(t),this.reduce(t)}function Uw(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Zn.prototype.convert=Rw;Zn.prototype.revert=Lw;Zn.prototype.reduce=Nw;Zn.prototype.mulTo=Uw;Zn.prototype.sqrTo=Pw;function Ow(e,t){var r=e.bitLength(),n,i=Nr(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 cn(t):t.isEven()?o=new Zn(t):o=new un(t);var s=new Array,a=3,c=n-1,u=(1<<n)-1;if(s[1]=o.convert(this),n>1){var f=ut();for(o.sqrTo(s[1],f);a<=u;)s[a]=ut(),o.mulTo(f,s[a-2],s[a]),a+=2}var l=e.t-1,d,m=!0,h=ut(),p;for(r=Ss(e.data[l])-1;l>=0;){for(r>=c?d=e.data[l]>>r-c&u:(d=(e.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=e.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),m)s[d].copyTo(i),m=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(e.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function Kw(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i<o&&(o=i),o>0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function Mw(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t==0)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r}function Fw(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return L.ZERO;for(var r=e.clone(),n=this.clone(),i=Nr(1),o=Nr(0),s=Nr(0),a=Nr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(e,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),t?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(e,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),t&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(L.ONE)!=0)return L.ZERO;if(a.compareTo(e)>=0)return a.subtract(e);if(a.signum()<0)a.addTo(e,a);else return a;return a.signum()<0?a.add(e):a}var ke=[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],Vw=(1<<26)/ke[ke.length-1];function Hw(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=ke[ke.length-1]){for(t=0;t<ke.length;++t)if(r.data[0]==ke[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<ke.length;){for(var n=ke[t],i=t+1;i<ke.length&&n<Vw;)n*=ke[i++];for(n=r.modInt(n);t<i;)if(n%ke[t++]==0)return!1}return r.millerRabin(e)}function qw(e){var t=this.subtract(L.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=zw(),o,s=0;s<e;++s){do o=new L(this.bitLength(),i);while(o.compareTo(L.ONE)<=0||o.compareTo(t)>=0);var a=o.modPow(n,this);if(a.compareTo(L.ONE)!=0&&a.compareTo(t)!=0){for(var c=1;c++<r&&a.compareTo(t)!=0;)if(a=a.modPowInt(2,this),a.compareTo(L.ONE)==0)return!1;if(a.compareTo(t)!=0)return!1}}return!0}function zw(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}L.prototype.chunkSize=Gb;L.prototype.toRadix=$b;L.prototype.fromRadix=Yb;L.prototype.fromNumber=Xb;L.prototype.bitwiseTo=tw;L.prototype.changeBit=pw;L.prototype.addTo=xw;L.prototype.dMultiply=Dw;L.prototype.dAddOffset=Cw;L.prototype.multiplyLowerTo=_w;L.prototype.multiplyUpperTo=kw;L.prototype.modInt=Mw;L.prototype.millerRabin=qw;L.prototype.clone=Vb;L.prototype.intValue=Hb;L.prototype.byteValue=qb;L.prototype.shortValue=zb;L.prototype.signum=Wb;L.prototype.toByteArray=Zb;L.prototype.equals=Qb;L.prototype.min=jb;L.prototype.max=Jb;L.prototype.and=rw;L.prototype.or=nw;L.prototype.xor=iw;L.prototype.andNot=ow;L.prototype.not=sw;L.prototype.shiftLeft=aw;L.prototype.shiftRight=cw;L.prototype.getLowestSetBit=fw;L.prototype.bitCount=hw;L.prototype.testBit=dw;L.prototype.setBit=mw;L.prototype.clearBit=yw;L.prototype.flipBit=gw;L.prototype.add=bw;L.prototype.subtract=ww;L.prototype.multiply=vw;L.prototype.divide=Ew;L.prototype.remainder=Sw;L.prototype.divideAndRemainder=Aw;L.prototype.modPow=Ow;L.prototype.modInverse=Fw;L.prototype.pow=Iw;L.prototype.gcd=Kw;L.prototype.isProbablePrime=Hw});var Sd=ot((UB,Ed)=>{var Ve=gt();an();Pt();var wd=Ed.exports=Ve.sha1=Ve.sha1||{};Ve.md.sha1=Ve.md.algorithms.sha1=wd;wd.create=function(){vd||Gw();var e=null,t=Ve.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return t=Ve.util.createBuffer(),e={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Ve.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return t.putBytes(i),bd(e,r,t),(t.read>2048||t.length()===0)&&t.compact(),n},n.digest=function(){var i=Ve.util.createBuffer();i.putBytes(t.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(S0.substr(0,n.blockLength-s));for(var a,c,u=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,c=a/4294967296>>>0,u+=c,i.putInt32(u>>>0),u=a>>>0;i.putInt32(u);var l={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};bd(l,r,i);var d=Ve.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var S0=null,vd=!1;function Gw(){S0="\x80",S0+=Ve.util.fillString("\0",64),vd=!0}function bd(e,t,r){for(var n,i,o,s,a,c,u,f,l=r.length();l>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,f=0;f<16;++f)n=r.getInt32(),t[f]=n,u=a^o&(s^a),n=(i<<5|i>>>27)+u+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<20;++f)n=t[f-3]^t[f-8]^t[f-14]^t[f-16],n=n<<1|n>>>31,t[f]=n,u=a^o&(s^a),n=(i<<5|i>>>27)+u+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<32;++f)n=t[f-3]^t[f-8]^t[f-14]^t[f-16],n=n<<1|n>>>31,t[f]=n,u=o^s^a,n=(i<<5|i>>>27)+u+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<40;++f)n=t[f-6]^t[f-16]^t[f-28]^t[f-32],n=n<<2|n>>>30,t[f]=n,u=o^s^a,n=(i<<5|i>>>27)+u+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<60;++f)n=t[f-6]^t[f-16]^t[f-28]^t[f-32],n=n<<2|n>>>30,t[f]=n,u=o&s|a&(o^s),n=(i<<5|i>>>27)+u+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;f<80;++f)n=t[f-6]^t[f-16]^t[f-28]^t[f-32],n=n<<2|n>>>30,t[f]=n,u=o^s^a,n=(i<<5|i>>>27)+u+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,l-=64}}});var Cd=ot((OB,Dd)=>{var He=gt();Pt();Mi();Sd();var Ad=Dd.exports=He.pkcs1=He.pkcs1||{};Ad.encode_rsa_oaep=function(e,t,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=He.md.sha1.create(),s||(s=o);var a=Math.ceil(e.n.bitLength()/8),c=a-2*o.digestLength-2;if(t.length>c){var u=new Error("RSAES-OAEP input message length is too long.");throw u.length=t.length,u.maxLength=c,u}n||(n=""),o.update(n,"raw");for(var f=o.digest(),l="",d=c-t.length,m=0;m<d;m++)l+="\0";var h=f.getBytes()+l+""+t;if(!i)i=He.random.getBytes(o.digestLength);else if(i.length!==o.digestLength){var u=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw u.seedLength=i.length,u.digestLength=o.digestLength,u}var p=Ds(i,a-o.digestLength-1,s),y=He.util.xorBytes(h,p,h.length),g=Ds(y,o.digestLength,s),b=He.util.xorBytes(i,g,i.length);return"\0"+b+y};Ad.decode_rsa_oaep=function(e,t,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(e.n.bitLength()/8);if(t.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=t.length,y.expectedLength=s,y}if(i===void 0?i=He.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=t.charAt(0),u=t.substring(1,i.digestLength+1),f=t.substring(1+i.digestLength),l=Ds(f,i.digestLength,o),d=He.util.xorBytes(u,l,u.length),m=Ds(d,s-i.digestLength-1,o),h=He.util.xorBytes(f,m,f.length),p=h.substring(0,i.digestLength),y=c!=="\0",g=0;g<i.digestLength;++g)y|=a.charAt(g)!==p.charAt(g);for(var b=1,x=i.digestLength,D=i.digestLength;D<h.length;D++){var v=h.charCodeAt(D),E=v&1^1,C=b?65534:0;y|=v&C,b=b&E,x+=b}if(y||h.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(x+1)};function Ds(e,t,r){r||(r=He.md.sha1.create());for(var n="",i=Math.ceil(t/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(e+s),n+=r.digest().getBytes()}return n.substring(0,t)}});var Bd=ot((KB,A0)=>{var Pr=gt();Pt();As();Mi();(function(){if(Pr.prime){A0.exports=Pr.prime;return}var e=A0.exports=Pr.prime=Pr.prime||{},t=Pr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new t(null);n.fromInt(30);var i=function(l,d){return l|d};e.generateProbablePrime=function(l,d,m){typeof d=="function"&&(m=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||Pr.random,y={nextBytes:function(g){for(var b=p.getBytesSync(g.length),x=0;x<g.length;++x)g[x]=b.charCodeAt(x)}};if(h.name==="PRIMEINC")return o(l,y,h.options,m);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,m,h){return"workers"in m?c(l,d,m,h):s(l,d,m,h)}function s(l,d,m,h){var p=u(l,d),y=0,g=f(p.bitLength());"millerRabinTests"in m&&(g=m.millerRabinTests);var b=10;"maxBlockTime"in m&&(b=m.maxBlockTime),a(p,l,d,y,g,b,h)}function a(l,d,m,h,p,y,g){var b=+new Date;do{if(l.bitLength()>d&&(l=u(d,m)),l.isProbablePrime(p))return g(null,l);l.dAddOffset(r[h++%8],0)}while(y<0||+new Date-b<y);Pr.util.setImmediate(function(){a(l,d,m,h,p,y,g)})}function c(l,d,m,h){if(typeof Worker>"u")return s(l,d,m,h);var p=u(l,d),y=m.workers,g=m.workLoad||100,b=g*30/8,x=m.workerScript||"forge/prime.worker.js";if(y===-1)return Pr.util.estimateCores(function(v,E){v&&(E=2),y=E-1,D()});D();function D(){y=Math.max(1,y);for(var v=[],E=0;E<y;++E)v[E]=new Worker(x);for(var C=y,E=0;E<y;++E)v[E].addEventListener("message",O);var B=!1;function O(K){if(!B){--C;var U=K.data;if(U.found){for(var F=0;F<v.length;++F)v[F].terminate();return B=!0,h(null,new t(U.prime,16))}p.bitLength()>l&&(p=u(l,d));var G=p.toString(16);K.target.postMessage({hex:G,workLoad:g}),p.dAddOffset(b,0)}}}}function u(l,d){var m=new t(l,d),h=l-1;return m.testBit(h)||m.bitwiseTo(t.ONE.shiftLeft(h),i,m),m.dAddOffset(31-m.mod(n).byteValue(),0),m}function f(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 Bs=ot((MB,Nd)=>{var Y=gt();Ki();As();ls();Cd();Bd();Mi();Pt();typeof at>"u"&&(at=Y.jsbn.BigInteger);var at,D0=Y.util.isNodejs?xs():null,A=Y.asn1,ge=Y.util;Y.pki=Y.pki||{};Nd.exports=Y.pki.rsa=Y.rsa=Y.rsa||{};var tt=Y.pki,Ww=[6,4,2,4,2,4,6,2],$w={name:"PrivateKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Yw={name:"RSAPrivateKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Xw={name:"RSAPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},Zw=Y.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Qw={name:"DigestInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:A.Class.UNIVERSAL,type:A.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:A.Class.UNIVERSAL,type:A.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},jw=function(e){var t;if(e.algorithm in tt.oids)t=tt.oids[e.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}var n=A.oidToDer(t).getBytes(),i=A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[]),o=A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[]);o.value.push(A.create(A.Class.UNIVERSAL,A.Type.OID,!1,n)),o.value.push(A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,""));var s=A.create(A.Class.UNIVERSAL,A.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),A.toDer(i).getBytes()},Rd=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);t.dP||(t.dP=t.d.mod(t.p.subtract(at.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(at.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new at(Y.util.bytesToHex(Y.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(at.ONE));e=e.multiply(n.modPow(t.e,t.n)).mod(t.n);for(var i=e.mod(t.p).modPow(t.dP,t.p),o=e.mod(t.q).modPow(t.dQ,t.q);i.compareTo(o)<0;)i=i.add(t.p);var s=i.subtract(o).multiply(t.qInv).mod(t.p).multiply(t.q).add(o);return s=s.multiply(n.modInverse(t.n)).mod(t.n),s};tt.rsa.encrypt=function(e,t,r){var n=r,i,o=Math.ceil(t.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=Ld(e,t,r)):(i=Y.util.createBuffer(),i.putBytes(e));for(var s=new at(i.toHex(),16),a=Rd(s,t,n),c=a.toString(16),u=Y.util.createBuffer(),f=o-Math.ceil(c.length/2);f>0;)u.putByte(0),--f;return u.putBytes(Y.util.hexToBytes(c)),u.getBytes()};tt.rsa.decrypt=function(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8);if(e.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=e.length,o.expected=i,o}var s=new at(Y.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Rd(s,t,r),c=a.toString(16),u=Y.util.createBuffer(),f=i-Math.ceil(c.length/2);f>0;)u.putByte(0),--f;return u.putBytes(Y.util.hexToBytes(c)),n!==!1?Cs(u.getBytes(),t,r):u.getBytes()};tt.rsa.createKeyPairGenerationState=function(e,t,r){typeof e=="string"&&(e=parseInt(e,10)),e=e||2048,r=r||{};var n=r.prng||Y.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),u=0;u<a.length;++u)a[u]=c.charCodeAt(u)}},o=r.algorithm||"PRIMEINC",s;if(o==="PRIMEINC")s={algorithm:o,state:0,bits:e,rng:i,eInt:t||65537,e:new at(null),p:null,q:null,qBits:e>>1,pBits:e-(e>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};tt.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new at(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},o=+new Date,s,a=0;e.keys===null&&(t<=0||a<t);){if(e.state===0){var c=e.p===null?e.pBits:e.qBits,u=c-1;e.pqState===0?(e.num=new at(c,e.rng),e.num.testBit(u)||e.num.bitwiseTo(at.ONE.shiftLeft(u),i,e.num),e.num.dAddOffset(31-e.num.mod(r).byteValue(),0),n=0,++e.pqState):e.pqState===1?e.num.bitLength()>c?e.pqState=0:e.num.isProbablePrime(tv(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Ww[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(at.ONE).gcd(e.e).compareTo(at.ONE)===0?3:0:e.pqState===3&&(e.pqState=0,e.p===null?e.p=e.num:e.q=e.num,e.p!==null&&e.q!==null&&++e.state,e.num=null)}else if(e.state===1)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(e.state===2)e.p1=e.p.subtract(at.ONE),e.q1=e.q.subtract(at.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(at.ONE)===0?++e.state:(e.p=null,e.q=null,e.state=0);else if(e.state===4)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(e.state===5){var f=e.e.modInverse(e.phi);e.keys={privateKey:tt.rsa.setPrivateKey(e.n,e.e,f,e.p,e.q,f.mod(e.p1),f.mod(e.q1),e.q.modInverse(e.p)),publicKey:tt.rsa.setPublicKey(e.n,e.e)}}s=+new Date,a+=s-o,o=s}return e.keys!==null};tt.rsa.generateKeyPair=function(e,t,r,n){if(arguments.length===1?typeof e=="object"?(r=e,e=void 0):typeof e=="function"&&(n=e,e=void 0):arguments.length===2?typeof e=="number"?typeof t=="function"?(n=t,t=void 0):typeof t!="number"&&(r=t,t=void 0):(r=e,n=t,e=void 0,t=void 0):arguments.length===3&&(typeof t=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=t,t=void 0)),r=r||{},e===void 0&&(e=r.bits||2048),t===void 0&&(t=r.e||65537),!Y.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(t===65537||t===3)){if(n){if(Td("generateKeyPair"))return D0.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,u){if(a)return n(a);n(null,{privateKey:tt.privateKeyFromPem(u),publicKey:tt.publicKeyFromPem(c)})});if(Id("generateKey")&&Id("exportKey"))return ge.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:kd(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return ge.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=tt.privateKeyFromAsn1(A.fromDer(Y.util.createBuffer(a)));n(null,{privateKey:c,publicKey:tt.setRsaPublicKey(c.n,c.e)})}});if(_d("generateKey")&&_d("exportKey")){var i=ge.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:kd(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,u=ge.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);u.oncomplete=function(f){var l=f.target.result,d=tt.privateKeyFromAsn1(A.fromDer(Y.util.createBuffer(l)));n(null,{privateKey:d,publicKey:tt.setRsaPublicKey(d.n,d.e)})},u.onerror=function(f){n(f)}},i.onerror=function(a){n(a)};return}}else if(Td("generateKeyPairSync")){var o=D0.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:tt.privateKeyFromPem(o.privateKey),publicKey:tt.publicKeyFromPem(o.publicKey)}}}var s=tt.rsa.createKeyPairGenerationState(e,t,r);if(!n)return tt.rsa.stepKeyPairGenerationState(s,0),s.keys;Jw(s,r,n)};tt.setRsaPublicKey=tt.rsa.setPublicKey=function(e,t){var r={n:e,e:t};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,u){return Ld(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return Y.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 tt.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,u){u=Cs(u,r,!0);var f=A.fromDer(u,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!A.validate(f,Qw,l,d)){var m=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw m.errors=d,m}var h=A.derToOid(l.algorithmIdentifier);if(!(h===Y.oids.md2||h===Y.oids.md5||h===Y.oids.sha1||h===Y.oids.sha224||h===Y.oids.sha256||h===Y.oids.sha384||h===Y.oids.sha512||h===Y.oids["sha512-224"]||h===Y.oids["sha512-256"])){var m=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw m.oid=h,m}if((h===Y.oids.md2||h===Y.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,u){return u=Cs(u,r,!0),c===u}});var a=tt.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};tt.setRsaPrivateKey=tt.rsa.setPrivateKey=function(e,t,r,n,i,o,s,a){var c={n:e,e:t,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(u,f,l){typeof f=="string"?f=f.toUpperCase():f===void 0&&(f="RSAES-PKCS1-V1_5");var d=tt.rsa.decrypt(u,c,!1,!1);if(f==="RSAES-PKCS1-V1_5")f={decode:Cs};else if(f==="RSA-OAEP"||f==="RSAES-OAEP")f={decode:function(m,h){return Y.pkcs1.decode_rsa_oaep(h,m,l)}};else if(["RAW","NONE","NULL",null].indexOf(f)!==-1)f={decode:function(m){return m}};else throw new Error('Unsupported encryption scheme: "'+f+'".');return f.decode(d,c,!1)},c.sign=function(u,f){var l=!1;typeof f=="string"&&(f=f.toUpperCase()),f===void 0||f==="RSASSA-PKCS1-V1_5"?(f={encode:jw},l=1):(f==="NONE"||f==="NULL"||f===null)&&(f={encode:function(){return u}},l=1);var d=f.encode(u,c.n.bitLength());return tt.rsa.encrypt(d,c,l)},c};tt.wrapRsaPrivateKey=function(e){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,A.integerToDer(0).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.OID,!1,A.oidToDer(tt.oids.rsaEncryption).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,"")]),A.create(A.Class.UNIVERSAL,A.Type.OCTETSTRING,!1,A.toDer(e).getBytes())])};tt.privateKeyFromAsn1=function(e){var t={},r=[];if(A.validate(e,$w,t,r)&&(e=A.fromDer(Y.util.createBuffer(t.privateKey))),t={},r=[],!A.validate(e,Yw,t,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,u,f,l;return i=Y.util.createBuffer(t.privateKeyModulus).toHex(),o=Y.util.createBuffer(t.privateKeyPublicExponent).toHex(),s=Y.util.createBuffer(t.privateKeyPrivateExponent).toHex(),a=Y.util.createBuffer(t.privateKeyPrime1).toHex(),c=Y.util.createBuffer(t.privateKeyPrime2).toHex(),u=Y.util.createBuffer(t.privateKeyExponent1).toHex(),f=Y.util.createBuffer(t.privateKeyExponent2).toHex(),l=Y.util.createBuffer(t.privateKeyCoefficient).toHex(),tt.setRsaPrivateKey(new at(i,16),new at(o,16),new at(s,16),new at(a,16),new at(c,16),new at(u,16),new at(f,16),new at(l,16))};tt.privateKeyToAsn1=tt.privateKeyToRSAPrivateKey=function(e){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,A.integerToDer(0).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.n)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.e)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.d)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.p)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.q)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.dP)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.dQ)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.qInv))])};tt.publicKeyFromAsn1=function(e){var t={},r=[];if(A.validate(e,Zw,t,r)){var n=A.derToOid(t.publicKeyOid);if(n!==tt.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}e=t.rsaPublicKey}if(r=[],!A.validate(e,Xw,t,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=Y.util.createBuffer(t.publicKeyModulus).toHex(),s=Y.util.createBuffer(t.publicKeyExponent).toHex();return tt.setRsaPublicKey(new at(o,16),new at(s,16))};tt.publicKeyToAsn1=tt.publicKeyToSubjectPublicKeyInfo=function(e){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.OID,!1,A.oidToDer(tt.oids.rsaEncryption).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,"")]),A.create(A.Class.UNIVERSAL,A.Type.BITSTRING,!1,[tt.publicKeyToRSAPublicKey(e)])])};tt.publicKeyToRSAPublicKey=function(e){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.n)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,qe(e.e))])};function Ld(e,t,r){var n=Y.util.createBuffer(),i=Math.ceil(t.n.bitLength()/8);if(e.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=e.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-e.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var u=0,f=Y.random.getBytes(s),c=0;c<s;++c)a=f.charCodeAt(c),a===0?++u:n.putByte(a);s=u}return n.putByte(0),n.putBytes(e),n}function Cs(e,t,r,n){var i=Math.ceil(t.n.bitLength()/8),o=Y.util.createBuffer(e),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var u=0;u<c;++u)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 f=o.getByte();if(f!==0||c!==i-3-o.length())throw new Error("Encryption block is invalid.");return o.getBytes()}function Jw(e,t,r){typeof t=="function"&&(r=t,t={}),t=t||{};var n={algorithm:{name:t.algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};"prng"in t&&(n.prng=t.prng),i();function i(){o(e.pBits,function(a,c){if(a)return r(a);if(e.p=c,e.q!==null)return s(a,e.q);o(e.qBits,s)})}function o(a,c){Y.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(e.q=c,e.p.compareTo(e.q)<0){var u=e.p;e.p=e.q,e.q=u}if(e.p.subtract(at.ONE).gcd(e.e).compareTo(at.ONE)!==0){e.p=null,i();return}if(e.q.subtract(at.ONE).gcd(e.e).compareTo(at.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(at.ONE),e.q1=e.q.subtract(at.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(at.ONE)!==0){e.p=e.q=null,i();return}if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits){e.q=null,o(e.qBits,s);return}var f=e.e.modInverse(e.phi);e.keys={privateKey:tt.rsa.setPrivateKey(e.n,e.e,f,e.p,e.q,f.mod(e.p1),f.mod(e.q1),e.q.modInverse(e.p)),publicKey:tt.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}}function qe(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=Y.util.hexToBytes(t);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function tv(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function Td(e){return Y.util.isNodejs&&typeof D0[e]=="function"}function Id(e){return typeof ge.globalScope<"u"&&typeof ge.globalScope.crypto=="object"&&typeof ge.globalScope.crypto.subtle=="object"&&typeof ge.globalScope.crypto.subtle[e]=="function"}function _d(e){return typeof ge.globalScope<"u"&&typeof ge.globalScope.msCrypto=="object"&&typeof ge.globalScope.msCrypto.subtle=="object"&&typeof ge.globalScope.msCrypto.subtle[e]=="function"}function kd(e){for(var t=Y.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),n=0;n<t.length;++n)r[n]=t.charCodeAt(n);return r}});var Fd=ot((FB,Md)=>{var z=gt();y0();Ki();zh();an();ls();Xh();jh();Mi();fd();Bs();Pt();typeof Pd>"u"&&(Pd=z.jsbn.BigInteger);var Pd,I=z.asn1,nt=z.pki=z.pki||{};Md.exports=nt.pbe=z.pbe=z.pbe||{};var fn=nt.oids,ev={name:"EncryptedPrivateKeyInfo",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},rv={name:"PBES2Algorithms",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},nv={name:"pkcs-12PbeParams",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"iterations"}]};nt.encryptPrivateKeyInfo=function(e,t,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=z.random.getBytesSync(r.saltSize),i=r.count,o=I.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var u,f,l;switch(r.algorithm){case"aes128":s=16,u=16,f=fn["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,u=16,f=fn["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,u=16,f=fn["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,u=8,f=fn.desCBC,l=z.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var m="hmacWith"+r.prfAlgorithm.toUpperCase(),h=Kd(m),p=z.pkcs5.pbkdf2(t,n,i,s,h),y=z.random.getBytesSync(u),g=l(p);g.start(y),g.update(I.toDer(e)),g.finish(),c=g.output.getBytes();var b=iv(n,o,s,m);a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(fn.pkcs5PBES2).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(fn.pkcs5PBKDF2).getBytes()),b]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(f).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,y)])])])}else if(r.algorithm==="3des"){s=24;var x=new z.util.ByteBuffer(n),p=nt.pbe.generatePkcs12Key(t,x,1,i,s),y=nt.pbe.generatePkcs12Key(t,x,2,i,s),g=z.des.createEncryptionCipher(p);g.start(y),g.update(I.toDer(e)),g.finish(),c=g.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(fn["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,n),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var D=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return D};nt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!I.validate(e,ev,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=I.derToOid(n.encryptionOid),a=nt.pbe.getCipher(s,n.encryptionParams,t),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};nt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(e).getBytes()};return z.pem.encode(r,{maxline:t})};nt.encryptedPrivateKeyFromPem=function(e){var t=z.pem.decode(e)[0];if(t.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&t.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return I.fromDer(t.body)};nt.encryptRsaPrivateKey=function(e,t,r){if(r=r||{},!r.legacy){var n=nt.wrapRsaPrivateKey(nt.privateKeyToAsn1(e));return n=nt.encryptPrivateKeyInfo(n,t,r),nt.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=z.random.getBytesSync(8),a=z.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 u=z.pbe.opensslDeriveBytes(t,o.substr(0,8),s),f=a(u);f.start(o),f.update(I.toDer(nt.privateKeyToAsn1(e))),f.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:z.util.bytesToHex(o).toUpperCase()},body:f.output.getBytes()};return z.pem.encode(l)};nt.decryptRsaPrivateKey=function(e,t){var r=null,n=z.pem.decode(e)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.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=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(t,a.substr(0,8),o),u=s(c);if(u.start(a),u.update(z.util.createBuffer(n.body)),u.finish())r=u.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=nt.decryptPrivateKeyInfo(I.fromDer(r),t):r=I.fromDer(r),r!==null&&(r=nt.privateKeyFromAsn1(r)),r};nt.pbe.generatePkcs12Key=function(e,t,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,u=o.blockLength,f=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(e!=null){for(a=0;a<e.length;a++)l.putInt16(e.charCodeAt(a));l.putInt16(0)}var d=l.length(),m=t.length(),h=new z.util.ByteBuffer;h.fillWithByte(r,u);var p=u*Math.ceil(m/u),y=new z.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(t.at(a%m));var g=u*Math.ceil(d/u),b=new z.util.ByteBuffer;for(a=0;a<g;a++)b.putByte(l.at(a%d));var x=y;x.putBuffer(b);for(var D=Math.ceil(i/c),v=1;v<=D;v++){var E=new z.util.ByteBuffer;E.putBytes(h.bytes()),E.putBytes(x.bytes());for(var C=0;C<n;C++)o.start(),o.update(E.getBytes()),E=o.digest();var B=new z.util.ByteBuffer;for(a=0;a<u;a++)B.putByte(E.at(a%c));var O=Math.ceil(m/u)+Math.ceil(d/u),K=new z.util.ByteBuffer;for(s=0;s<O;s++){var U=new z.util.ByteBuffer(x.getBytes(u)),F=511;for(a=B.length()-1;a>=0;a--)F=F>>8,F+=B.at(a)+U.at(a),U.setAt(a,F&255);K.putBuffer(U)}x=K,f.putBuffer(E)}return f.truncate(f.length()-i),f};nt.pbe.getCipher=function(e,t,r){switch(e){case nt.oids.pkcs5PBES2:return nt.pbe.getCipherForPBES2(e,t,r);case nt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case nt.oids["pbewithSHAAnd40BitRC2-CBC"]:return nt.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};nt.pbe.getCipherForPBES2=function(e,t,r){var n={},i=[];if(!I.validate(t,rv,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(e=I.derToOid(n.kdfOid),e!==nt.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=e,o.supportedOids=["pkcs5PBKDF2"],o}if(e=I.derToOid(n.encOid),e!==nt.oids["aes128-CBC"]&&e!==nt.oids["aes192-CBC"]&&e!==nt.oids["aes256-CBC"]&&e!==nt.oids["des-EDE3-CBC"]&&e!==nt.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=e,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,u;switch(nt.oids[e]){case"aes128-CBC":c=16,u=z.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,u=z.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,u=z.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,u=z.des.createDecryptionCipher;break;case"desCBC":c=8,u=z.des.createDecryptionCipher;break}var f=Od(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,f),d=n.encIv,m=u(l);return m.start(d),m};nt.pbe.getCipherForPKCS12PBE=function(e,t,r){var n={},i=[];if(!I.validate(t,nv,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=z.util.createBuffer(n.salt),a=z.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,u,f;switch(e){case nt.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,u=8,f=z.des.startDecrypting;break;case nt.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,u=8,f=function(p,y){var g=z.rc2.createDecryptionCipher(p,40);return g.start(y,null),g};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=e,o}var l=Od(n.prfOid),d=nt.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var m=nt.pbe.generatePkcs12Key(r,s,2,a,u,l);return f(d,m)};nt.pbe.opensslDeriveBytes=function(e,t,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}t===null&&(t="");for(var i=[Ud(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(Ud(n,i[s-1]+e+t));return i.join("").substr(0,r)};function Ud(e,t){return e.start().update(t).digest().getBytes()}function Od(e){var t;if(!e)t="hmacWithSHA1";else if(t=nt.oids[I.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Kd(t)}function Kd(e){var t=z.md;switch(e){case"hmacWithSHA224":t=z.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}function iv(e,t,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,e),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,z.util.hexToBytes(r.toString(16))),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(nt.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var rp=ot((GT,ep)=>{var St=gt();an();Pt();var Hi=ep.exports=St.sha512=St.sha512||{};St.md.sha512=St.md.algorithms.sha512=Hi;var Jd=St.sha384=St.sha512.sha384=St.sha512.sha384||{};Jd.create=function(){return Hi.create("SHA-384")};St.md.sha384=St.md.algorithms.sha384=Jd;St.sha512.sha256=St.sha512.sha256||{create:function(){return Hi.create("SHA-512/256")}};St.md["sha512/256"]=St.md.algorithms["sha512/256"]=St.sha512.sha256;St.sha512.sha224=St.sha512.sha224||{create:function(){return Hi.create("SHA-512/224")}};St.md["sha512/224"]=St.md.algorithms["sha512/224"]=St.sha512.sha224;Hi.create=function(e){if(tp||dv(),typeof e>"u"&&(e="SHA-512"),!(e in pn))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=pn[e],r=null,n=St.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(e){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,u=0;u<c;++u)a.fullMessageLength.push(0);n=St.util.createBuffer(),r=new Array(t.length);for(var u=0;u<t.length;++u)r[u]=t[u].slice(0);return a},a.start(),a.update=function(c,u){u==="utf8"&&(c=St.util.encodeUtf8(c));var f=c.length;a.messageLength+=f,f=[f/4294967296>>>0,f>>>0];for(var l=a.fullMessageLength.length-1;l>=0;--l)a.fullMessageLength[l]+=f[1],f[1]=f[0]+(a.fullMessageLength[l]/4294967296>>>0),a.fullMessageLength[l]=a.fullMessageLength[l]>>>0,f[0]=f[1]/4294967296>>>0;return n.putBytes(c),jd(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=St.util.createBuffer();c.putBytes(n.bytes());var u=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,f=u&a.blockLength-1;c.putBytes(k0.substr(0,a.blockLength-f));for(var l,d,m=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,m+=d,c.putInt32(m>>>0),m=l>>>0;c.putInt32(m);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);jd(p,i,c);var y=St.util.createBuffer(),g;e==="SHA-512"?g=p.length:e==="SHA-384"?g=p.length-2:g=p.length-4;for(var h=0;h<g;++h)y.putInt32(p[h][0]),(h!==g-1||e!=="SHA-512/224")&&y.putInt32(p[h][1]);return y},a};var k0=null,tp=!1,R0=null,pn=null;function dv(){k0="\x80",k0+=St.util.fillString("\0",128),R0=[[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]],pn={},pn["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],pn["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],pn["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],pn["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],tp=!0}function jd(e,t,r){for(var n,i,o,s,a,c,u,f,l,d,m,h,p,y,g,b,x,D,v,E,C,B,O,K,U,F,G,Q,T,R,_,k,S,P,M,H=r.length();H>=128;){for(T=0;T<16;++T)t[T][0]=r.getInt32()>>>0,t[T][1]=r.getInt32()>>>0;for(;T<80;++T)k=t[T-2],R=k[0],_=k[1],n=((R>>>19|_<<13)^(_>>>29|R<<3)^R>>>6)>>>0,i=((R<<13|_>>>19)^(_<<3|R>>>29)^(R<<26|_>>>6))>>>0,P=t[T-15],R=P[0],_=P[1],o=((R>>>1|_<<31)^(R>>>8|_<<24)^R>>>7)>>>0,s=((R<<31|_>>>1)^(R<<24|_>>>8)^(R<<25|_>>>7))>>>0,S=t[T-7],M=t[T-16],_=i+S[1]+s+M[1],t[T][0]=n+S[0]+o+M[0]+(_/4294967296>>>0)>>>0,t[T][1]=_>>>0;for(p=e[0][0],y=e[0][1],g=e[1][0],b=e[1][1],x=e[2][0],D=e[2][1],v=e[3][0],E=e[3][1],C=e[4][0],B=e[4][1],O=e[5][0],K=e[5][1],U=e[6][0],F=e[6][1],G=e[7][0],Q=e[7][1],T=0;T<80;++T)u=((C>>>14|B<<18)^(C>>>18|B<<14)^(B>>>9|C<<23))>>>0,f=((C<<18|B>>>14)^(C<<14|B>>>18)^(B<<23|C>>>9))>>>0,l=(U^C&(O^U))>>>0,d=(F^B&(K^F))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,c=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,m=(p&g|x&(p^g))>>>0,h=(y&b|D&(y^b))>>>0,_=Q+f+d+R0[T][1]+t[T][1],n=G+u+l+R0[T][0]+t[T][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+h,o=a+m+(_/4294967296>>>0)>>>0,s=_>>>0,G=U,Q=F,U=O,F=K,O=C,K=B,_=E+i,C=v+n+(_/4294967296>>>0)>>>0,B=_>>>0,v=x,E=D,x=g,D=b,g=p,b=y,_=i+s,p=n+o+(_/4294967296>>>0)>>>0,y=_>>>0;_=e[0][1]+y,e[0][0]=e[0][0]+p+(_/4294967296>>>0)>>>0,e[0][1]=_>>>0,_=e[1][1]+b,e[1][0]=e[1][0]+g+(_/4294967296>>>0)>>>0,e[1][1]=_>>>0,_=e[2][1]+D,e[2][0]=e[2][0]+x+(_/4294967296>>>0)>>>0,e[2][1]=_>>>0,_=e[3][1]+E,e[3][0]=e[3][0]+v+(_/4294967296>>>0)>>>0,e[3][1]=_>>>0,_=e[4][1]+B,e[4][0]=e[4][0]+C+(_/4294967296>>>0)>>>0,e[4][1]=_>>>0,_=e[5][1]+K,e[5][0]=e[5][0]+O+(_/4294967296>>>0)>>>0,e[5][1]=_>>>0,_=e[6][1]+F,e[6][0]=e[6][0]+U+(_/4294967296>>>0)>>>0,e[6][1]=_>>>0,_=e[7][1]+Q,e[7][0]=e[7][0]+G+(_/4294967296>>>0)>>>0,e[7][1]=_>>>0,H-=128}}});var Kp=ot((wk,Op)=>{"use strict";function qv(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r<t.length;r++)t[r]=255;for(var n=0;n<e.length;n++){var i=e.charAt(n),o=i.charCodeAt(0);if(t[o]!==255)throw new TypeError(i+" is ambiguous");t[o]=n}var s=e.length,a=e.charAt(0),c=Math.log(s)/Math.log(256),u=Math.log(256)/Math.log(s);function f(m){if(m instanceof Uint8Array||(ArrayBuffer.isView(m)?m=new Uint8Array(m.buffer,m.byteOffset,m.byteLength):Array.isArray(m)&&(m=Uint8Array.from(m))),!(m instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(m.length===0)return"";for(var h=0,p=0,y=0,g=m.length;y!==g&&m[y]===0;)y++,h++;for(var b=(g-y)*u+1>>>0,x=new Uint8Array(b);y!==g;){for(var D=m[y],v=0,E=b-1;(D!==0||v<p)&&E!==-1;E--,v++)D+=256*x[E]>>>0,x[E]=D%s>>>0,D=D/s>>>0;if(D!==0)throw new Error("Non-zero carry");p=v,y++}for(var C=b-p;C!==b&&x[C]===0;)C++;for(var B=a.repeat(h);C<b;++C)B+=e.charAt(x[C]);return B}function l(m){if(typeof m!="string")throw new TypeError("Expected String");if(m.length===0)return new Uint8Array;var h=0;if(m[h]!==" "){for(var p=0,y=0;m[h]===a;)p++,h++;for(var g=(m.length-h)*c+1>>>0,b=new Uint8Array(g);m[h];){var x=t[m.charCodeAt(h)];if(x===255)return;for(var D=0,v=g-1;(x!==0||D<y)&&v!==-1;v--,D++)x+=s*b[v]>>>0,b[v]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");y=D,h++}if(m[h]!==" "){for(var E=g-y;E!==g&&b[E]===0;)E++;for(var C=new Uint8Array(p+(g-E)),B=p;E!==g;)C[B++]=b[E++];return C}}}function d(m){var h=l(m);if(h)return h;throw new Error("Non-base"+s+" character")}return{encode:f,decodeUnsafe:l,decode:d}}Op.exports=qv});var Vs=ot((vk,Mp)=>{"use strict";var zv=new TextDecoder,Gv=e=>zv.decode(e),Wv=new TextEncoder,$v=e=>Wv.encode(e);function Yv(e,t){let r=new Uint8Array(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return r}Mp.exports={decodeText:Gv,encodeText:$v,concat:Yv}});var Vp=ot((Ek,Fp)=>{"use strict";var{encodeText:Xv}=Vs(),Y0=class{constructor(t,r,n,i){this.name=t,this.code=r,this.codeBuf=Xv(this.code),this.alphabet=i,this.codec=n(i)}encode(t){return this.codec.encode(t)}decode(t){for(let r of t)if(this.alphabet&&this.alphabet.indexOf(r)<0)throw new Error(`invalid character '${r}' in '${t}'`);return this.codec.decode(t)}};Fp.exports=Y0});var qp=ot((Sk,Hp)=>{"use strict";var Zv=(e,t,r)=>{let n={};for(let u=0;u<t.length;++u)n[t[u]]=u;let i=e.length;for(;e[i-1]==="=";)--i;let o=new Uint8Array(i*r/8|0),s=0,a=0,c=0;for(let u=0;u<i;++u){let f=n[e[u]];if(f===void 0)throw new SyntaxError("Invalid character "+e[u]);a=a<<r|f,s+=r,s>=8&&(s-=8,o[c++]=255&a>>s)}if(s>=r||255&a<<8-s)throw new SyntaxError("Unexpected end of data");return o},Qv=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},jv=e=>t=>({encode(r){return Qv(r,t,e)},decode(r){return Zv(r,t,e)}});Hp.exports={rfc4648:jv}});var $p=ot((Ak,Wp)=>{"use strict";var Qi=Kp(),Jv=Vp(),{rfc4648:$t}=qp(),{decodeText:t8,encodeText:e8}=Vs(),r8=()=>({encode:t8,decode:e8}),zp=[["identity","\0",r8,""],["base2","0",$t(1),"01"],["base8","7",$t(3),"01234567"],["base10","9",Qi,"0123456789"],["base16","f",$t(4),"0123456789abcdef"],["base16upper","F",$t(4),"0123456789ABCDEF"],["base32hex","v",$t(5),"0123456789abcdefghijklmnopqrstuv"],["base32hexupper","V",$t(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV"],["base32hexpad","t",$t(5),"0123456789abcdefghijklmnopqrstuv="],["base32hexpadupper","T",$t(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV="],["base32","b",$t(5),"abcdefghijklmnopqrstuvwxyz234567"],["base32upper","B",$t(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"],["base32pad","c",$t(5),"abcdefghijklmnopqrstuvwxyz234567="],["base32padupper","C",$t(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567="],["base32z","h",$t(5),"ybndrfg8ejkmcpqxot1uwisza345h769"],["base36","k",Qi,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",Qi,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",Qi,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",Qi,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",$t(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",$t(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",$t(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",$t(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],Gp=zp.reduce((e,t)=>(e[t[0]]=new Jv(t[0],t[1],t[2],t[3]),e),{}),n8=zp.reduce((e,t)=>(e[t[1]]=Gp[t[0]],e),{});Wp.exports={names:Gp,codes:n8}});var Zp=ot((mr,Xp)=>{"use strict";var ei=$p(),{encodeText:i8,decodeText:Hs,concat:Yp}=Vs();function o8(e,t){if(!t)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=xn(e);return u8(r,t),Yp([n,t],n.length+t.length)}function s8(e,t){let r=xn(e),n=i8(r.encode(t));return Yp([r.codeBuf,n],r.codeBuf.length+n.length)}function a8(e){e instanceof Uint8Array&&(e=Hs(e));let t=e[0];return["f","F","v","V","t","T","b","B","c","C","h","k","K"].includes(t)&&(e=e.toLowerCase()),xn(e[0]).decode(e.substring(1))}function c8(e){if(e instanceof Uint8Array&&(e=Hs(e)),Object.prototype.toString.call(e)!=="[object String]")return!1;try{return xn(e[0]).name}catch{return!1}}function u8(e,t){xn(e).decode(Hs(t))}function xn(e){if(Object.prototype.hasOwnProperty.call(ei.names,e))return ei.names[e];if(Object.prototype.hasOwnProperty.call(ei.codes,e))return ei.codes[e];throw new Error(`Unsupported encoding: ${e}`)}function f8(e){return e instanceof Uint8Array&&(e=Hs(e)),xn(e[0])}mr=Xp.exports=o8;mr.encode=s8;mr.decode=a8;mr.isEncoded=c8;mr.encoding=xn;mr.encodingFromData=f8;var l8=Object.freeze(ei.names),h8=Object.freeze(ei.codes);mr.names=l8;mr.codes=h8});var t1=ot((Dk,Jp)=>{Jp.exports=jp;var Qp=128,d8=127,p8=~d8,m8=Math.pow(2,31);function jp(e,t,r){t=t||[],r=r||0;for(var n=r;e>=m8;)t[r++]=e&255|Qp,e/=128;for(;e&p8;)t[r++]=e&255|Qp,e>>>=7;return t[r]=e|0,jp.bytes=r-n+1,t}});var n1=ot((Ck,r1)=>{r1.exports=X0;var y8=128,e1=127;function X0(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw X0.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&e1)<<i:(s&e1)*Math.pow(2,i),i+=7}while(s>=y8);return X0.bytes=o-n,r}});var o1=ot((Bk,i1)=>{var g8=Math.pow(2,7),x8=Math.pow(2,14),b8=Math.pow(2,21),w8=Math.pow(2,28),v8=Math.pow(2,35),E8=Math.pow(2,42),S8=Math.pow(2,49),A8=Math.pow(2,56),D8=Math.pow(2,63);i1.exports=function(e){return e<g8?1:e<x8?2:e<b8?3:e<w8?4:e<v8?5:e<E8?6:e<S8?7:e<A8?8:e<D8?9:10}});var a1=ot((Tk,s1)=>{s1.exports={encode:t1(),decode:n1(),encodingLength:o1()}});var u1=ot((Ik,c1)=>{"use strict";var C8=Object.freeze({identity:0,sha1:17,"sha2-256":18,"sha2-512":19,"sha3-512":20,"sha3-384":21,"sha3-256":22,"sha3-224":23,"shake-128":24,"shake-256":25,"keccak-224":26,"keccak-256":27,"keccak-384":28,"keccak-512":29,blake3:30,"murmur3-128":34,"murmur3-32":35,"dbl-sha2-256":86,md4:212,md5:213,bmt:214,"sha2-256-trunc254-padded":4114,"ripemd-128":4178,"ripemd-160":4179,"ripemd-256":4180,"ripemd-320":4181,x11:4352,kangarootwelve:7425,"sm3-256":21325,"blake2b-8":45569,"blake2b-16":45570,"blake2b-24":45571,"blake2b-32":45572,"blake2b-40":45573,"blake2b-48":45574,"blake2b-56":45575,"blake2b-64":45576,"blake2b-72":45577,"blake2b-80":45578,"blake2b-88":45579,"blake2b-96":45580,"blake2b-104":45581,"blake2b-112":45582,"blake2b-120":45583,"blake2b-128":45584,"blake2b-136":45585,"blake2b-144":45586,"blake2b-152":45587,"blake2b-160":45588,"blake2b-168":45589,"blake2b-176":45590,"blake2b-184":45591,"blake2b-192":45592,"blake2b-200":45593,"blake2b-208":45594,"blake2b-216":45595,"blake2b-224":45596,"blake2b-232":45597,"blake2b-240":45598,"blake2b-248":45599,"blake2b-256":45600,"blake2b-264":45601,"blake2b-272":45602,"blake2b-280":45603,"blake2b-288":45604,"blake2b-296":45605,"blake2b-304":45606,"blake2b-312":45607,"blake2b-320":45608,"blake2b-328":45609,"blake2b-336":45610,"blake2b-344":45611,"blake2b-352":45612,"blake2b-360":45613,"blake2b-368":45614,"blake2b-376":45615,"blake2b-384":45616,"blake2b-392":45617,"blake2b-400":45618,"blake2b-408":45619,"blake2b-416":45620,"blake2b-424":45621,"blake2b-432":45622,"blake2b-440":45623,"blake2b-448":45624,"blake2b-456":45625,"blake2b-464":45626,"blake2b-472":45627,"blake2b-480":45628,"blake2b-488":45629,"blake2b-496":45630,"blake2b-504":45631,"blake2b-512":45632,"blake2s-8":45633,"blake2s-16":45634,"blake2s-24":45635,"blake2s-32":45636,"blake2s-40":45637,"blake2s-48":45638,"blake2s-56":45639,"blake2s-64":45640,"blake2s-72":45641,"blake2s-80":45642,"blake2s-88":45643,"blake2s-96":45644,"blake2s-104":45645,"blake2s-112":45646,"blake2s-120":45647,"blake2s-128":45648,"blake2s-136":45649,"blake2s-144":45650,"blake2s-152":45651,"blake2s-160":45652,"blake2s-168":45653,"blake2s-176":45654,"blake2s-184":45655,"blake2s-192":45656,"blake2s-200":45657,"blake2s-208":45658,"blake2s-216":45659,"blake2s-224":45660,"blake2s-232":45661,"blake2s-240":45662,"blake2s-248":45663,"blake2s-256":45664,"skein256-8":45825,"skein256-16":45826,"skein256-24":45827,"skein256-32":45828,"skein256-40":45829,"skein256-48":45830,"skein256-56":45831,"skein256-64":45832,"skein256-72":45833,"skein256-80":45834,"skein256-88":45835,"skein256-96":45836,"skein256-104":45837,"skein256-112":45838,"skein256-120":45839,"skein256-128":45840,"skein256-136":45841,"skein256-144":45842,"skein256-152":45843,"skein256-160":45844,"skein256-168":45845,"skein256-176":45846,"skein256-184":45847,"skein256-192":45848,"skein256-200":45849,"skein256-208":45850,"skein256-216":45851,"skein256-224":45852,"skein256-232":45853,"skein256-240":45854,"skein256-248":45855,"skein256-256":45856,"skein512-8":45857,"skein512-16":45858,"skein512-24":45859,"skein512-32":45860,"skein512-40":45861,"skein512-48":45862,"skein512-56":45863,"skein512-64":45864,"skein512-72":45865,"skein512-80":45866,"skein512-88":45867,"skein512-96":45868,"skein512-104":45869,"skein512-112":45870,"skein512-120":45871,"skein512-128":45872,"skein512-136":45873,"skein512-144":45874,"skein512-152":45875,"skein512-160":45876,"skein512-168":45877,"skein512-176":45878,"skein512-184":45879,"skein512-192":45880,"skein512-200":45881,"skein512-208":45882,"skein512-216":45883,"skein512-224":45884,"skein512-232":45885,"skein512-240":45886,"skein512-248":45887,"skein512-256":45888,"skein512-264":45889,"skein512-272":45890,"skein512-280":45891,"skein512-288":45892,"skein512-296":45893,"skein512-304":45894,"skein512-312":45895,"skein512-320":45896,"skein512-328":45897,"skein512-336":45898,"skein512-344":45899,"skein512-352":45900,"skein512-360":45901,"skein512-368":45902,"skein512-376":45903,"skein512-384":45904,"skein512-392":45905,"skein512-400":45906,"skein512-408":45907,"skein512-416":45908,"skein512-424":45909,"skein512-432":45910,"skein512-440":45911,"skein512-448":45912,"skein512-456":45913,"skein512-464":45914,"skein512-472":45915,"skein512-480":45916,"skein512-488":45917,"skein512-496":45918,"skein512-504":45919,"skein512-512":45920,"skein1024-8":45921,"skein1024-16":45922,"skein1024-24":45923,"skein1024-32":45924,"skein1024-40":45925,"skein1024-48":45926,"skein1024-56":45927,"skein1024-64":45928,"skein1024-72":45929,"skein1024-80":45930,"skein1024-88":45931,"skein1024-96":45932,"skein1024-104":45933,"skein1024-112":45934,"skein1024-120":45935,"skein1024-128":45936,"skein1024-136":45937,"skein1024-144":45938,"skein1024-152":45939,"skein1024-160":45940,"skein1024-168":45941,"skein1024-176":45942,"skein1024-184":45943,"skein1024-192":45944,"skein1024-200":45945,"skein1024-208":45946,"skein1024-216":45947,"skein1024-224":45948,"skein1024-232":45949,"skein1024-240":45950,"skein1024-248":45951,"skein1024-256":45952,"skein1024-264":45953,"skein1024-272":45954,"skein1024-280":45955,"skein1024-288":45956,"skein1024-296":45957,"skein1024-304":45958,"skein1024-312":45959,"skein1024-320":45960,"skein1024-328":45961,"skein1024-336":45962,"skein1024-344":45963,"skein1024-352":45964,"skein1024-360":45965,"skein1024-368":45966,"skein1024-376":45967,"skein1024-384":45968,"skein1024-392":45969,"skein1024-400":45970,"skein1024-408":45971,"skein1024-416":45972,"skein1024-424":45973,"skein1024-432":45974,"skein1024-440":45975,"skein1024-448":45976,"skein1024-456":45977,"skein1024-464":45978,"skein1024-472":45979,"skein1024-480":45980,"skein1024-488":45981,"skein1024-496":45982,"skein1024-504":45983,"skein1024-512":45984,"skein1024-520":45985,"skein1024-528":45986,"skein1024-536":45987,"skein1024-544":45988,"skein1024-552":45989,"skein1024-560":45990,"skein1024-568":45991,"skein1024-576":45992,"skein1024-584":45993,"skein1024-592":45994,"skein1024-600":45995,"skein1024-608":45996,"skein1024-616":45997,"skein1024-624":45998,"skein1024-632":45999,"skein1024-640":46e3,"skein1024-648":46001,"skein1024-656":46002,"skein1024-664":46003,"skein1024-672":46004,"skein1024-680":46005,"skein1024-688":46006,"skein1024-696":46007,"skein1024-704":46008,"skein1024-712":46009,"skein1024-720":46010,"skein1024-728":46011,"skein1024-736":46012,"skein1024-744":46013,"skein1024-752":46014,"skein1024-760":46015,"skein1024-768":46016,"skein1024-776":46017,"skein1024-784":46018,"skein1024-792":46019,"skein1024-800":46020,"skein1024-808":46021,"skein1024-816":46022,"skein1024-824":46023,"skein1024-832":46024,"skein1024-840":46025,"skein1024-848":46026,"skein1024-856":46027,"skein1024-864":46028,"skein1024-872":46029,"skein1024-880":46030,"skein1024-888":46031,"skein1024-896":46032,"skein1024-904":46033,"skein1024-912":46034,"skein1024-920":46035,"skein1024-928":46036,"skein1024-936":46037,"skein1024-944":46038,"skein1024-952":46039,"skein1024-960":46040,"skein1024-968":46041,"skein1024-976":46042,"skein1024-984":46043,"skein1024-992":46044,"skein1024-1000":46045,"skein1024-1008":46046,"skein1024-1016":46047,"skein1024-1024":46048,"poseidon-bls12_381-a2-fc1":46081,"poseidon-bls12_381-a2-fc1-sc":46082});c1.exports={names:C8}});function B8(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),u=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,g=0,b=h.length;g!==b&&h[g]===0;)g++,p++;for(var x=(b-g)*f+1>>>0,D=new Uint8Array(x);g!==b;){for(var v=h[g],E=0,C=x-1;(v!==0||E<y)&&C!==-1;C--,E++)v+=256*D[C]>>>0,D[C]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");y=E,g++}for(var B=x-y;B!==x&&D[B]===0;)B++;for(var O=c.repeat(p);B<x;++B)O+=e.charAt(D[B]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,g=0;h[p]===c;)y++,p++;for(var b=(h.length-p)*u+1>>>0,x=new Uint8Array(b);h[p];){var D=r[h.charCodeAt(p)];if(D===255)return;for(var v=0,E=b-1;(D!==0||v<g)&&E!==-1;E--,v++)D+=a*x[E]>>>0,x[E]=D%256>>>0,D=D/256>>>0;if(D!==0)throw new Error("Non-zero carry");g=v,p++}if(h[p]!==" "){for(var C=b-g;C!==b&&x[C]===0;)C++;for(var B=new Uint8Array(y+(b-C)),O=y;C!==b;)B[O++]=x[C++];return B}}}function m(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:m}}var T8,I8,f1,l1=lt(()=>{T8=B8,I8=T8,f1=I8});var kk,h1,yr,d1,p1,Ur=lt(()=>{kk=new Uint8Array(0),h1=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},yr=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")},d1=e=>new TextEncoder().encode(e),p1=e=>new TextDecoder().decode(e)});var Z0,Q0,j0,y1,J0,ri,Or,_8,k8,It,Ne=lt(()=>{l1();Ur();Z0=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Q0=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return y1(this,t)}},j0=class{constructor(t){this.decoders=t}or(t){return y1(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},y1=(e,t)=>new j0({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),J0=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Z0(t,r,n),this.decoder=new Q0(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},ri=({name:e,prefix:t,encode:r,decode:n})=>new J0(e,t,r,n),Or=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=f1(r,t);return ri({prefix:e,name:t,encode:n,decode:o=>yr(i(o))})},_8=(e,t,r,n)=>{let i={};for(let f=0;f<t.length;++f)i[t[f]]=f;let o=e.length;for(;e[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,u=0;for(let f=0;f<o;++f){let l=i[e[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},k8=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},It=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>ri({prefix:t,name:e,encode(i){return k8(i,n,r)},decode(i){return _8(i,n,r,e)}})});var tu={};ct(tu,{identity:()=>R8});var R8,g1=lt(()=>{Ne();Ur();R8=ri({prefix:"\0",name:"identity",encode:e=>p1(e),decode:e=>d1(e)})});var eu={};ct(eu,{base2:()=>L8});var L8,x1=lt(()=>{Ne();L8=It({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var ru={};ct(ru,{base8:()=>N8});var N8,b1=lt(()=>{Ne();N8=It({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var nu={};ct(nu,{base10:()=>P8});var P8,w1=lt(()=>{Ne();P8=Or({prefix:"9",name:"base10",alphabet:"0123456789"})});var iu={};ct(iu,{base16:()=>U8,base16upper:()=>O8});var U8,O8,v1=lt(()=>{Ne();U8=It({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),O8=It({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var ou={};ct(ou,{base32:()=>ni,base32hex:()=>V8,base32hexpad:()=>q8,base32hexpadupper:()=>z8,base32hexupper:()=>H8,base32pad:()=>M8,base32padupper:()=>F8,base32upper:()=>K8,base32z:()=>G8});var ni,K8,M8,F8,V8,H8,q8,z8,G8,su=lt(()=>{Ne();ni=It({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),K8=It({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),M8=It({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),F8=It({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),V8=It({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),H8=It({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),q8=It({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),z8=It({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),G8=It({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var au={};ct(au,{base36:()=>W8,base36upper:()=>$8});var W8,$8,E1=lt(()=>{Ne();W8=Or({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),$8=Or({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var cu={};ct(cu,{base58btc:()=>Ye,base58flickr:()=>Y8});var Ye,Y8,uu=lt(()=>{Ne();Ye=Or({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Y8=Or({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var fu={};ct(fu,{base64:()=>X8,base64pad:()=>Z8,base64url:()=>Q8,base64urlpad:()=>j8});var X8,Z8,Q8,j8,S1=lt(()=>{Ne();X8=It({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Z8=It({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Q8=It({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),j8=It({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var lu={};ct(lu,{base256emoji:()=>nE});function eE(e){return e.reduce((t,r)=>(t+=J8[r],t),"")}function rE(e){let t=[];for(let r of e){let n=tE[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var A1,J8,tE,nE,D1=lt(()=>{Ne();A1=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}"),J8=A1.reduce((e,t,r)=>(e[r]=t,e),[]),tE=A1.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);nE=ri({prefix:"\u{1F680}",name:"base256emoji",encode:eE,decode:rE})});function T1(e,t,r){t=t||[],r=r||0;for(var n=r;e>=aE;)t[r++]=e&255|C1,e/=128;for(;e&sE;)t[r++]=e&255|C1,e>>>=7;return t[r]=e|0,T1.bytes=r-n+1,t}function hu(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw hu.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&B1)<<i:(s&B1)*Math.pow(2,i),i+=7}while(s>=uE);return hu.bytes=o-n,r}var iE,C1,oE,sE,aE,cE,uE,B1,fE,lE,hE,dE,pE,mE,yE,gE,xE,bE,wE,vE,ji,I1=lt(()=>{iE=T1,C1=128,oE=127,sE=~oE,aE=Math.pow(2,31);cE=hu,uE=128,B1=127;fE=Math.pow(2,7),lE=Math.pow(2,14),hE=Math.pow(2,21),dE=Math.pow(2,28),pE=Math.pow(2,35),mE=Math.pow(2,42),yE=Math.pow(2,49),gE=Math.pow(2,56),xE=Math.pow(2,63),bE=function(e){return e<fE?1:e<lE?2:e<hE?3:e<dE?4:e<pE?5:e<mE?6:e<yE?7:e<gE?8:e<xE?9:10},wE={encode:iE,decode:cE,encodingLength:bE},vE=wE,ji=vE});var Ji,ii,oi,zs=lt(()=>{I1();Ji=(e,t=0)=>[ji.decode(e,t),ji.decode.bytes],ii=(e,t,r=0)=>(ji.encode(e,t,r),t),oi=e=>ji.encodingLength(e)});var bn,_1,k1,si,eo=lt(()=>{Ur();zs();bn=(e,t)=>{let r=t.byteLength,n=oi(e),i=n+oi(r),o=new Uint8Array(i+r);return ii(e,o,0),ii(r,o,n),o.set(t,i),new si(e,r,t,o)},_1=e=>{let t=yr(e),[r,n]=Ji(t),[i,o]=Ji(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new si(r,i,s,t)},k1=(e,t)=>e===t?!0:e.code===t.code&&e.size===t.size&&h1(e.bytes,t.bytes),si=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}}});var pu,du,mu=lt(()=>{eo();pu=({name:e,code:t,encode:r})=>new du(e,t,r),du=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?bn(this.code,r):r.then(n=>bn(this.code,n))}else throw Error("Unknown type, must be binary type")}}});var yu={};ct(yu,{sha256:()=>EE,sha512:()=>SE});var L1,EE,SE,N1=lt(()=>{mu();L1=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),EE=pu({name:"sha2-256",code:18,encode:L1("SHA-256")}),SE=pu({name:"sha2-512",code:19,encode:L1("SHA-512")})});var gu={};ct(gu,{identity:()=>CE});var P1,AE,U1,DE,CE,O1=lt(()=>{Ur();eo();P1=0,AE="identity",U1=yr,DE=e=>bn(P1,U1(e)),CE={code:P1,name:AE,encode:U1,digest:DE}});var K1=lt(()=>{Ur()});var jk,Jk,M1=lt(()=>{jk=new TextEncoder,Jk=new TextDecoder});var $s,IE,_E,kE,ro,RE,F1,V1,Gs,Ws,LE,NE,PE,H1=lt(()=>{zs();eo();uu();su();Ur();$s=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this.byteOffset=i.byteOffset,this.byteLength=i.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:Ws,byteLength:Ws,code:Gs,version:Gs,multihash:Gs,bytes:Gs,_baseCache:Ws,asCID:Ws})}toV0(){switch(this.version){case 0:return this;default:{let{code:t,multihash:r}=this;if(t!==ro)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==RE)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=bn(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(t){return t&&this.code===t.code&&this.version===t.version&&k1(this.multihash,t.multihash)}toString(t){let{bytes:r,version:n,_baseCache:i}=this;switch(n){case 0:return _E(r,i,t||Ye.encoder);default:return kE(r,i,t||ni.encoder)}}toJSON(){return{code:this.code,version:this.version,hash:this.multihash.bytes}}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return"CID("+this.toString()+")"}static isCID(t){return NE(/^0\.0/,PE),!!(t&&(t[V1]||t.asCID===t))}get toBaseEncodedString(){throw new Error("Deprecated, use .toString()")}get codec(){throw new Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw new Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw new Error('"multibaseName" property is deprecated')}get prefix(){throw new Error('"prefix" property is deprecated')}static asCID(t){if(t instanceof e)return t;if(t!=null&&t.asCID===t){let{version:r,code:n,multihash:i,bytes:o}=t;return new e(r,n,i,o||F1(r,n,i.bytes))}else if(t!=null&&t[V1]===!0){let{version:r,multihash:n,code:i}=t,o=_1(n);return e.create(r,i,o)}else return null}static create(t,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");switch(t){case 0:{if(r!==ro)throw new Error(`Version 0 CID must use dag-pb (code: ${ro}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=F1(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,ro,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=yr(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new si(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=Ji(t.subarray(r));return r+=d,l},i=n(),o=ro;if(i===18?(i=0,r=0):i===1&&(o=n()),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=r,a=n(),c=n(),u=r+c,f=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:u}}static parse(t,r){let[n,i]=IE(t,r),o=e.decode(i);return o._baseCache.set(n,t),o}},IE=(e,t)=>{switch(e[0]){case"Q":{let r=t||Ye;return[Ye.prefix,r.decode(`${Ye.prefix}${e}`)]}case Ye.prefix:{let r=t||Ye;return[Ye.prefix,r.decode(e)]}case ni.prefix:{let r=t||ni;return[ni.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},_E=(e,t,r)=>{let{prefix:n}=r;if(n!==Ye.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},kE=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},ro=112,RE=18,F1=(e,t,r)=>{let n=oi(e),i=n+oi(t),o=new Uint8Array(i+r.byteLength);return ii(e,o,0),ii(t,o,n),o.set(r,i),o},V1=Symbol.for("@ipld/js-cid/CID"),Gs={writable:!1,configurable:!1,enumerable:!0},Ws={writable:!1,enumerable:!1,configurable:!1},LE="0.0.0-dev",NE=(e,t)=>{if(e.test(LE))console.warn(t);else throw new Error(t)},PE=`CID.isCID(v) is deprecated and will be removed in the next major release.
|
|
2
|
+
"use strict";var Libp2PWebrtc=(()=>{var X1=Object.create;var wo=Object.defineProperty;var Z1=Object.getOwnPropertyDescriptor;var Q1=Object.getOwnPropertyNames;var j1=Object.getPrototypeOf,J1=Object.prototype.hasOwnProperty;var le=(t,e)=>()=>(t&&(e=t(t=0)),e);var se=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),J=(t,e)=>{for(var r in e)wo(t,r,{get:e[r],enumerable:!0})},Iu=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Q1(e))!J1.call(t,i)&&i!==r&&wo(t,i,{get:()=>e[i],enumerable:!(n=Z1(e,i))||n.enumerable});return t};var Ze=(t,e,r)=>(r=t!=null?X1(j1(t)):{},Iu(e||!t||!t.__esModule?wo(r,"default",{value:t,enumerable:!0}):r,t)),vo=t=>Iu(wo({},"__esModule",{value:!0}),t);var rh=se((KD,th)=>{"use strict";function eh(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function u2(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 eh(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),eh(new i,r)}}th.exports=u2});var ge=se((yk,Xd)=>{Xd.exports={options:{usePureJavaScript:!1}}});var jd=se((gk,Qd)=>{var X0={};Qd.exports=X0;var Zd={};X0.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=bv(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};X0.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=Zd[e];if(!r){r=Zd[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 bv(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 Ue=se((xk,rp)=>{var Jd=ge(),ep=jd(),v=rp.exports=Jd.util=Jd.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){v.nextTick=process.nextTick,typeof setImmediate=="function"?v.setImmediate=setImmediate:v.setImmediate=v.nextTick;return}if(typeof setImmediate=="function"){v.setImmediate=function(){return setImmediate.apply(void 0,arguments)},v.nextTick=function(a){return setImmediate(a)};return}if(v.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=[];v.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=v.setImmediate;v.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(e.push(c),e.length===1&&i.setAttribute("a",n=!n))}}v.nextTick=v.setImmediate})();v.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;v.globalScope=function(){return v.isNodejs?globalThis:typeof self>"u"?window:self}();v.isArray=Array.isArray||function(t){return Object.prototype.toString.call(t)==="[object Array]"};v.isArrayBuffer=function(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer};v.isArrayBufferView=function(t){return t&&v.isArrayBuffer(t.buffer)&&t.byteLength!==void 0};function Zi(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}v.ByteBuffer=Z0;function Z0(t){if(this.data="",this.read=0,typeof t=="string")this.data=t;else if(v.isArrayBuffer(t)||v.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 Z0||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}v.ByteStringBuffer=Z0;var wv=4096;v.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>wv&&(this.data.substr(0,1),this._constructedStringLength=0)};v.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};v.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};v.ByteStringBuffer.prototype.putByte=function(t){return this.putBytes(String.fromCharCode(t))};v.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};v.ByteStringBuffer.prototype.putBytes=function(t){return this.data+=t,this._optimizeConstructedString(t.length),this};v.ByteStringBuffer.prototype.putString=function(t){return this.putBytes(v.encodeUtf8(t))};v.ByteStringBuffer.prototype.putInt16=function(t){return this.putBytes(String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};v.ByteStringBuffer.prototype.putInt24=function(t){return this.putBytes(String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};v.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))};v.ByteStringBuffer.prototype.putInt16Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255))};v.ByteStringBuffer.prototype.putInt24Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255))};v.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))};v.ByteStringBuffer.prototype.putInt=function(t,e){Zi(e);var r="";do e-=8,r+=String.fromCharCode(t>>e&255);while(e>0);return this.putBytes(r)};v.ByteStringBuffer.prototype.putSignedInt=function(t,e){return t<0&&(t+=2<<e-1),this.putInt(t,e)};v.ByteStringBuffer.prototype.putBuffer=function(t){return this.putBytes(t.getBytes())};v.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};v.ByteStringBuffer.prototype.getInt16=function(){var t=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,t};v.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};v.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};v.ByteStringBuffer.prototype.getInt16Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,t};v.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};v.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};v.ByteStringBuffer.prototype.getInt=function(t){Zi(t);var e=0;do e=(e<<8)+this.data.charCodeAt(this.read++),t-=8;while(t>0);return e};v.ByteStringBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};v.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};v.ByteStringBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};v.ByteStringBuffer.prototype.at=function(t){return this.data.charCodeAt(this.read+t)};v.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};v.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};v.ByteStringBuffer.prototype.copy=function(){var t=v.createBuffer(this.data);return t.read=this.read,t};v.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};v.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};v.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};v.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};v.ByteStringBuffer.prototype.toString=function(){return v.decodeUtf8(this.bytes())};function vv(t,e){e=e||{},this.read=e.readOffset||0,this.growSize=e.growSize||1024;var r=v.isArrayBuffer(t),n=v.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)}v.DataBuffer=vv;v.DataBuffer.prototype.length=function(){return this.write-this.read};v.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};v.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};v.DataBuffer.prototype.putByte=function(t){return this.accommodate(1),this.data.setUint8(this.write++,t),this};v.DataBuffer.prototype.fillWithByte=function(t,e){this.accommodate(e);for(var r=0;r<e;++r)this.data.setUint8(t);return this};v.DataBuffer.prototype.putBytes=function(t,e){if(v.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(v.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 v.DataBuffer||typeof t=="object"&&typeof t.read=="number"&&typeof t.write=="number"&&v.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 v.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+=v.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+=v.binary.base64.decode(t,o,this.write),this;if(e==="utf8"&&(t=v.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=v.binary.raw.decode(o),this;if(e==="utf16")return this.accommodate(t.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=v.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+e)}throw Error("Invalid parameter: "+t)};v.DataBuffer.prototype.putBuffer=function(t){return this.putBytes(t),t.clear(),this};v.DataBuffer.prototype.putString=function(t){return this.putBytes(t,"utf16")};v.DataBuffer.prototype.putInt16=function(t){return this.accommodate(2),this.data.setInt16(this.write,t),this.write+=2,this};v.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};v.DataBuffer.prototype.putInt32=function(t){return this.accommodate(4),this.data.setInt32(this.write,t),this.write+=4,this};v.DataBuffer.prototype.putInt16Le=function(t){return this.accommodate(2),this.data.setInt16(this.write,t,!0),this.write+=2,this};v.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};v.DataBuffer.prototype.putInt32Le=function(t){return this.accommodate(4),this.data.setInt32(this.write,t,!0),this.write+=4,this};v.DataBuffer.prototype.putInt=function(t,e){Zi(e),this.accommodate(e/8);do e-=8,this.data.setInt8(this.write++,t>>e&255);while(e>0);return this};v.DataBuffer.prototype.putSignedInt=function(t,e){return Zi(e),this.accommodate(e/8),t<0&&(t+=2<<e-1),this.putInt(t,e)};v.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};v.DataBuffer.prototype.getInt16=function(){var t=this.data.getInt16(this.read);return this.read+=2,t};v.DataBuffer.prototype.getInt24=function(){var t=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,t};v.DataBuffer.prototype.getInt32=function(){var t=this.data.getInt32(this.read);return this.read+=4,t};v.DataBuffer.prototype.getInt16Le=function(){var t=this.data.getInt16(this.read,!0);return this.read+=2,t};v.DataBuffer.prototype.getInt24Le=function(){var t=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,t};v.DataBuffer.prototype.getInt32Le=function(){var t=this.data.getInt32(this.read,!0);return this.read+=4,t};v.DataBuffer.prototype.getInt=function(t){Zi(t);var e=0;do e=(e<<8)+this.data.getInt8(this.read++),t-=8;while(t>0);return e};v.DataBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};v.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};v.DataBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};v.DataBuffer.prototype.at=function(t){return this.data.getUint8(this.read+t)};v.DataBuffer.prototype.setAt=function(t,e){return this.data.setUint8(t,e),this};v.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};v.DataBuffer.prototype.copy=function(){return new v.DataBuffer(this)};v.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};v.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};v.DataBuffer.prototype.truncate=function(t){return this.write=Math.max(0,this.length()-t),this.read=Math.min(this.read,this.write),this};v.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};v.DataBuffer.prototype.toString=function(t){var e=new Uint8Array(this.data,this.read,this.length());if(t=t||"utf8",t==="binary"||t==="raw")return v.binary.raw.encode(e);if(t==="hex")return v.binary.hex.encode(e);if(t==="base64")return v.binary.base64.encode(e);if(t==="utf8")return v.text.utf8.decode(e);if(t==="utf16")return v.text.utf16.decode(e);throw new Error("Invalid encoding: "+t)};v.createBuffer=function(t,e){return e=e||"raw",t!==void 0&&e==="utf8"&&(t=v.encodeUtf8(t)),new v.ByteBuffer(t)};v.fillString=function(t,e){for(var r="";e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return r};v.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};v.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};v.bytesToHex=function(t){return v.createBuffer(t).toHex()};v.int32ToBytes=function(t){return String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255)};var Pr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Or=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],tp="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";v.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+=Pr.charAt(i>>2),r+=Pr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Pr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Pr.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
|
4
|
+
`,r=r.substr(e));return n+=r,n};v.decode64=function(t){t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var e="",r,n,i,o,s=0;s<t.length;)r=Or[t.charCodeAt(s++)-43],n=Or[t.charCodeAt(s++)-43],i=Or[t.charCodeAt(s++)-43],o=Or[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};v.encodeUtf8=function(t){return unescape(encodeURIComponent(t))};v.decodeUtf8=function(t){return decodeURIComponent(escape(t))};v.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:ep.encode,decode:ep.decode}};v.binary.raw.encode=function(t){return String.fromCharCode.apply(null,t)};v.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};v.binary.hex.encode=v.bytesToHex;v.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};v.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+=Pr.charAt(i>>2),r+=Pr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Pr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Pr.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
|
5
|
+
`,r=r.substr(e));return n+=r,n};v.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=Or[t.charCodeAt(c++)-43],o=Or[t.charCodeAt(c++)-43],s=Or[t.charCodeAt(c++)-43],a=Or[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)};v.binary.base58.encode=function(t,e){return v.binary.baseN.encode(t,tp,e)};v.binary.base58.decode=function(t,e){return v.binary.baseN.decode(t,tp,e)};v.text={utf8:{},utf16:{}};v.text.utf8.encode=function(t,e,r){t=v.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};v.text.utf8.decode=function(t){return v.decodeUtf8(String.fromCharCode.apply(null,t))};v.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};v.text.utf16.decode=function(t){return String.fromCharCode.apply(null,new Uint16Array(t.buffer))};v.deflate=function(t,e,r){if(e=v.decode64(t.deflate(v.encode64(e)).rval),r){var n=2,i=e.charCodeAt(1);i&32&&(n=6),e=e.substring(n,e.length-4)}return e};v.inflate=function(t,e,r){var n=t.inflate(v.encode64(e)).rval;return n===null?null:v.decode64(n)};var Q0=function(t,e,r){if(!t)throw new Error("WebStorage not available.");var n;if(r===null?n=t.removeItem(e):(r=v.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}},j0=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(v.decode64(r))),r},Ev=function(t,e,r,n){var i=j0(t,e);i===null&&(i={}),i[r]=n,Q0(t,e,i)},Sv=function(t,e,r){var n=j0(t,e);return n!==null&&(n=r in n?n[r]:null),n},Av=function(t,e,r){var n=j0(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),Q0(t,e,n)}},Cv=function(t,e){Q0(t,e,null)},Bs=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};v.setItem=function(t,e,r,n,i){Bs(Ev,arguments,i)};v.getItem=function(t,e,r,n){return Bs(Sv,arguments,n)};v.removeItem=function(t,e,r,n){Bs(Av,arguments,n)};v.clearItems=function(t,e,r){Bs(Cv,arguments,r)};v.isEmpty=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0};v.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("")};v.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):"")};v.formatSize=function(t){return t>=1073741824?t=v.formatNumber(t/1073741824,2,".","")+" GiB":t>=1048576?t=v.formatNumber(t/1048576,2,".","")+" MiB":t>=1024?t=v.formatNumber(t/1024,0)+" KiB":t=v.formatNumber(t,0)+" bytes",t};v.bytesFromIP=function(t){return t.indexOf(".")!==-1?v.bytesFromIPv4(t):t.indexOf(":")!==-1?v.bytesFromIPv6(t):null};v.bytesFromIPv4=function(t){if(t=t.split("."),t.length!==4)return null;for(var e=v.createBuffer(),r=0;r<t.length;++r){var n=parseInt(t[r],10);if(isNaN(n))return null;e.putByte(n)}return e.getBytes()};v.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=v.createBuffer(),i=0;i<8;++i){if(!t[i]||t[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=v.hexToBytes(t[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};v.bytesToIP=function(t){return t.length===4?v.bytesToIPv4(t):t.length===16?v.bytesToIPv6(t):null};v.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(".")};v.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=v.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(":")};v.estimateCores=function(t,e){if(typeof t=="function"&&(e=t,t={}),t=t||{},"cores"in v&&!t.update)return e(null,v.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return v.cores=navigator.hardwareConcurrency,e(null,v.cores);if(typeof Worker>"u")return v.cores=1,e(null,v.cores);if(typeof Blob>"u")return v.cores=2,e(null,v.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 v.cores=Math.max(1,f),URL.revokeObjectURL(r),e(null,v.cores)}i(c,function(u,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(d){if(f.push(d.data),f.length===s){for(var 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]=[],d=0;d<s;++d)if(f!==d){var y=a[d];(u.st>y.st&&u.st<y.et||y.st>u.st&&y.st<u.et)&&l.push(d)}return c.reduce(function(h,p){return Math.max(h,p.length)},0)}}});var Ts=se((bk,np)=>{var Qi=ge();Qi.pki=Qi.pki||{};var J0=np.exports=Qi.pki.oids=Qi.oids=Qi.oids||{};function N(t,e){J0[t]=e,J0[e]=t}function me(t,e){J0[t]=e}N("1.2.840.113549.1.1.1","rsaEncryption");N("1.2.840.113549.1.1.4","md5WithRSAEncryption");N("1.2.840.113549.1.1.5","sha1WithRSAEncryption");N("1.2.840.113549.1.1.7","RSAES-OAEP");N("1.2.840.113549.1.1.8","mgf1");N("1.2.840.113549.1.1.9","pSpecified");N("1.2.840.113549.1.1.10","RSASSA-PSS");N("1.2.840.113549.1.1.11","sha256WithRSAEncryption");N("1.2.840.113549.1.1.12","sha384WithRSAEncryption");N("1.2.840.113549.1.1.13","sha512WithRSAEncryption");N("1.3.101.112","EdDSA25519");N("1.2.840.10040.4.3","dsa-with-sha1");N("1.3.14.3.2.7","desCBC");N("1.3.14.3.2.26","sha1");N("1.3.14.3.2.29","sha1WithRSASignature");N("2.16.840.1.101.3.4.2.1","sha256");N("2.16.840.1.101.3.4.2.2","sha384");N("2.16.840.1.101.3.4.2.3","sha512");N("2.16.840.1.101.3.4.2.4","sha224");N("2.16.840.1.101.3.4.2.5","sha512-224");N("2.16.840.1.101.3.4.2.6","sha512-256");N("1.2.840.113549.2.2","md2");N("1.2.840.113549.2.5","md5");N("1.2.840.113549.1.7.1","data");N("1.2.840.113549.1.7.2","signedData");N("1.2.840.113549.1.7.3","envelopedData");N("1.2.840.113549.1.7.4","signedAndEnvelopedData");N("1.2.840.113549.1.7.5","digestedData");N("1.2.840.113549.1.7.6","encryptedData");N("1.2.840.113549.1.9.1","emailAddress");N("1.2.840.113549.1.9.2","unstructuredName");N("1.2.840.113549.1.9.3","contentType");N("1.2.840.113549.1.9.4","messageDigest");N("1.2.840.113549.1.9.5","signingTime");N("1.2.840.113549.1.9.6","counterSignature");N("1.2.840.113549.1.9.7","challengePassword");N("1.2.840.113549.1.9.8","unstructuredAddress");N("1.2.840.113549.1.9.14","extensionRequest");N("1.2.840.113549.1.9.20","friendlyName");N("1.2.840.113549.1.9.21","localKeyId");N("1.2.840.113549.1.9.22.1","x509Certificate");N("1.2.840.113549.1.12.10.1.1","keyBag");N("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");N("1.2.840.113549.1.12.10.1.3","certBag");N("1.2.840.113549.1.12.10.1.4","crlBag");N("1.2.840.113549.1.12.10.1.5","secretBag");N("1.2.840.113549.1.12.10.1.6","safeContentsBag");N("1.2.840.113549.1.5.13","pkcs5PBES2");N("1.2.840.113549.1.5.12","pkcs5PBKDF2");N("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");N("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");N("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");N("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");N("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");N("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");N("1.2.840.113549.2.7","hmacWithSHA1");N("1.2.840.113549.2.8","hmacWithSHA224");N("1.2.840.113549.2.9","hmacWithSHA256");N("1.2.840.113549.2.10","hmacWithSHA384");N("1.2.840.113549.2.11","hmacWithSHA512");N("1.2.840.113549.3.7","des-EDE3-CBC");N("2.16.840.1.101.3.4.1.2","aes128-CBC");N("2.16.840.1.101.3.4.1.22","aes192-CBC");N("2.16.840.1.101.3.4.1.42","aes256-CBC");N("2.5.4.3","commonName");N("2.5.4.4","surname");N("2.5.4.5","serialNumber");N("2.5.4.6","countryName");N("2.5.4.7","localityName");N("2.5.4.8","stateOrProvinceName");N("2.5.4.9","streetAddress");N("2.5.4.10","organizationName");N("2.5.4.11","organizationalUnitName");N("2.5.4.12","title");N("2.5.4.13","description");N("2.5.4.15","businessCategory");N("2.5.4.17","postalCode");N("2.5.4.42","givenName");N("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");N("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");N("2.16.840.1.113730.1.1","nsCertType");N("2.16.840.1.113730.1.13","nsComment");me("2.5.29.1","authorityKeyIdentifier");me("2.5.29.2","keyAttributes");me("2.5.29.3","certificatePolicies");me("2.5.29.4","keyUsageRestriction");me("2.5.29.5","policyMapping");me("2.5.29.6","subtreesConstraint");me("2.5.29.7","subjectAltName");me("2.5.29.8","issuerAltName");me("2.5.29.9","subjectDirectoryAttributes");me("2.5.29.10","basicConstraints");me("2.5.29.11","nameConstraints");me("2.5.29.12","policyConstraints");me("2.5.29.13","basicConstraints");N("2.5.29.14","subjectKeyIdentifier");N("2.5.29.15","keyUsage");me("2.5.29.16","privateKeyUsagePeriod");N("2.5.29.17","subjectAltName");N("2.5.29.18","issuerAltName");N("2.5.29.19","basicConstraints");me("2.5.29.20","cRLNumber");me("2.5.29.21","cRLReason");me("2.5.29.22","expirationDate");me("2.5.29.23","instructionCode");me("2.5.29.24","invalidityDate");me("2.5.29.25","cRLDistributionPoints");me("2.5.29.26","issuingDistributionPoint");me("2.5.29.27","deltaCRLIndicator");me("2.5.29.28","issuingDistributionPoint");me("2.5.29.29","certificateIssuer");me("2.5.29.30","nameConstraints");N("2.5.29.31","cRLDistributionPoints");N("2.5.29.32","certificatePolicies");me("2.5.29.33","policyMappings");me("2.5.29.34","policyConstraints");N("2.5.29.35","authorityKeyIdentifier");me("2.5.29.36","policyConstraints");N("2.5.29.37","extKeyUsage");me("2.5.29.46","freshestCRL");me("2.5.29.54","inhibitAnyPolicy");N("1.3.6.1.4.1.11129.2.4.2","timestampList");N("1.3.6.1.5.5.7.1.1","authorityInfoAccess");N("1.3.6.1.5.5.7.3.1","serverAuth");N("1.3.6.1.5.5.7.3.2","clientAuth");N("1.3.6.1.5.5.7.3.3","codeSigning");N("1.3.6.1.5.5.7.3.4","emailProtection");N("1.3.6.1.5.5.7.3.8","timeStamping")});var Ji=se((wk,op)=>{var Ee=ge();Ue();Ts();var V=op.exports=Ee.asn1=Ee.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(t,e,r,n,i){if(Ee.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||Ee.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(t,e){var r;if(Ee.util.isArray(t)){r=[];for(var n=0;n<t.length;++n)r.push(V.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:V.copy(t.value,e)},e&&!e.excludeBitStringContents&&(r.bitStringContents=t.bitStringContents),r)};V.equals=function(t,e,r){if(Ee.util.isArray(t)){if(!Ee.util.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;++n)if(!V.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&&V.equals(t.value,e.value);return r&&r.includeBitStringContents&&(i=i&&t.bitStringContents===e.bitStringContents),i};V.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 ji(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 Dv=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;ji(t,e,o),n=t.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.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=Ee.util.createBuffer(t));var r=t.length(),n=Is(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 Is(t,e,r,n){var i;ji(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=Dv(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,d=(o&32)===32;if(d)if(u=[],c===void 0)for(;;){if(ji(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),u.push(Is(t,e,r+1,n)),e-=i-t.length()}else for(;c>0;)i=t.length(),u.push(Is(t,c,r+1,n)),e-=i-t.length(),c-=i-t.length();if(u===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=t.bytes(c)),u===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var y=t.read,h=e,p=0;if(a===V.Type.BITSTRING&&(ji(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var m={strict:!0,decodeBitStrings:!0},g=Is(t,e,r+1,m),b=i-t.length();e-=b,a==V.Type.BITSTRING&&b++;var x=g.tagClass;b===c&&(x===V.Class.UNIVERSAL||x===V.Class.CONTEXT_SPECIFIC)&&(u=[g])}catch{}u===void 0&&(t.read=y,e=h)}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===V.Type.BMPSTRING)for(u="";c>0;c-=2)ji(t,e,2),u+=String.fromCharCode(t.getInt16()),e-=2;else u=t.getBytes(c),e-=c}var S=l===void 0?null:{bitStringContents:l};return V.create(s,a,d,u,S)}V.toDer=function(t){var e=Ee.util.createBuffer(),r=t.tagClass|t.type,n=Ee.util.createBuffer(),i=!1;if("bitStringContents"in t&&(i=!0,t.original&&(i=V.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(V.toDer(t.value[o]))}else if(t.type===V.Type.BMPSTRING)for(var o=0;o<t.value.length;++o)n.putInt16(t.value.charCodeAt(o));else t.type===V.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};V.oidToDer=function(t){var e=t.split("."),r=Ee.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};V.derToOid=function(t){var e;typeof t=="string"&&(t=Ee.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};V.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),d=u*60+l;d*=6e4,c==="+"?e.setTime(+e-d):e.setTime(+e+d)}return e};V.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,d=t.charAt(l);if(d==="+"||d==="-"){var y=parseInt(t.substr(l+1,2),10),h=parseInt(t.substr(l+4,2),10);f=y*60+h,f*=6e4,d==="+"&&(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};V.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};V.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};V.integerToDer=function(t){var e=Ee.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};V.derToInteger=function(t){typeof t=="string"&&(t=Ee.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)};V.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&&Ee.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=V.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 ip=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
|
|
6
|
+
`);for(var i="",o=0;o<e*r;++o)i+=" ";switch(n+=i+"Tag: ",t.tagClass){case V.Class.UNIVERSAL:n+="Universal:";break;case V.Class.APPLICATION:n+="Application:";break;case V.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case V.Class.PRIVATE:n+="Private:";break}if(t.tagClass===V.Class.UNIVERSAL)switch(n+=t.type,t.type){case V.Type.NONE:n+=" (None)";break;case V.Type.BOOLEAN:n+=" (Boolean)";break;case V.Type.INTEGER:n+=" (Integer)";break;case V.Type.BITSTRING:n+=" (Bit string)";break;case V.Type.OCTETSTRING:n+=" (Octet string)";break;case V.Type.NULL:n+=" (Null)";break;case V.Type.OID:n+=" (Object Identifier)";break;case V.Type.ODESC:n+=" (Object Descriptor)";break;case V.Type.EXTERNAL:n+=" (External or Instance of)";break;case V.Type.REAL:n+=" (Real)";break;case V.Type.ENUMERATED:n+=" (Enumerated)";break;case V.Type.EMBEDDED:n+=" (Embedded PDV)";break;case V.Type.UTF8:n+=" (UTF8)";break;case V.Type.ROID:n+=" (Relative Object Identifier)";break;case V.Type.SEQUENCE:n+=" (Sequence)";break;case V.Type.SET:n+=" (Set)";break;case V.Type.PRINTABLESTRING:n+=" (Printable String)";break;case V.Type.IA5String:n+=" (IA5String (ASCII))";break;case V.Type.UTCTIME:n+=" (UTC time)";break;case V.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case V.Type.BMPSTRING:n+=" (BMP String)";break}else n+=t.type;if(n+=`
|
|
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+=V.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===V.Type.OID){var c=V.derToOid(t.value);n+=c,Ee.pki&&Ee.pki.oids&&c in Ee.pki.oids&&(n+=" ("+Ee.pki.oids[c]+") ")}if(t.type===V.Type.INTEGER)try{n+=V.derToInteger(t.value)}catch{n+="0x"+Ee.util.bytesToHex(t.value)}else if(t.type===V.Type.BITSTRING){if(t.value.length>1?n+="0x"+Ee.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===V.Type.OCTETSTRING)ip.test(t.value)||(n+="("+t.value+") "),n+="0x"+Ee.util.bytesToHex(t.value);else if(t.type===V.Type.UTF8)try{n+=Ee.util.decodeUtf8(t.value)}catch(u){if(u.message==="URI malformed")n+="0x"+Ee.util.bytesToHex(t.value)+" (malformed UTF8)";else throw u}else t.type===V.Type.PRINTABLESTRING||t.type===V.Type.IA5String?n+=t.value:ip.test(t.value)?n+="0x"+Ee.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var tf=se((vk,sp)=>{var Ve=ge();Ue();sp.exports=Ve.cipher=Ve.cipher||{};Ve.cipher.algorithms=Ve.cipher.algorithms||{};Ve.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ve.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ve.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Ve.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ve.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ve.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Ve.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Ve.cipher.algorithms[t]=e};Ve.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Ve.cipher.algorithms?Ve.cipher.algorithms[t]:null};var ef=Ve.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)};ef.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=Ve.util.createBuffer(),this.output=t.output||Ve.util.createBuffer(),this.mode.start(e)};ef.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()};ef.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 nf=se((Ek,ap)=>{var qe=ge();Ue();qe.cipher=qe.cipher||{};var ae=ap.exports=qe.cipher.modes=qe.cipher.modes||{};ae.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)};ae.ecb.prototype.start=function(t){};ae.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])};ae.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])};ae.ecb.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ae.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)};ae.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)};ae.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=_s(t.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};ae.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};ae.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)};ae.cbc.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ae.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)};ae.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=qe.util.createBuffer(),this._partialBytes=0};ae.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=_s(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.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};ae.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};ae.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=qe.util.createBuffer(),this._partialBytes=0};ae.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=_s(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.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};ae.ofb.prototype.decrypt=ae.ofb.prototype.encrypt;ae.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=qe.util.createBuffer(),this._partialBytes=0};ae.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=_s(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.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}ks(this._inBlock)};ae.ctr.prototype.decrypt=ae.ctr.prototype.encrypt;ae.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=qe.util.createBuffer(),this._partialBytes=0,this._R=3774873600};ae.gcm.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");var e=qe.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=qe.util.createBuffer(t.additionalData):r=qe.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=qe.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(rf(n*8)))}this._inBlock=this._j0.slice(0),ks(this._inBlock),this._partialBytes=0,r=qe.util.createBuffer(r),this._aDataLength=rf(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()])};ae.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),ks(this._inBlock)};ae.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),ks(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};ae.gcm.prototype.afterFinish=function(t,e){var r=!0;e.decrypt&&e.overflow&&t.truncate(this.blockSize-e.overflow),this.tag=qe.util.createBuffer();var n=this._aDataLength.concat(rf(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};ae.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};ae.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)};ae.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};ae.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)};ae.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};ae.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 _s(t,e){if(typeof t=="string"&&(t=qe.util.createBuffer(t)),qe.util.isArray(t)&&t.length>4){var r=t;t=qe.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(!qe.util.isArray(t)){for(var i=[],o=e/4,n=0;n<o;++n)i.push(t.getInt32());t=i}return t}function ks(t){t[t.length-1]=t[t.length-1]+1&4294967295}function rf(t){return[t/4294967296|0,t&4294967295]}});var cf=se((Sk,lp)=>{var be=ge();tf();nf();Ue();lp.exports=be.aes=be.aes||{};be.aes.startEncrypting=function(t,e,r,n){var i=Rs({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};be.aes.createEncryptionCipher=function(t,e){return Rs({key:t,output:null,decrypt:!1,mode:e})};be.aes.startDecrypting=function(t,e,r,n){var i=Rs({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};be.aes.createDecryptionCipher=function(t,e){return Rs({key:t,output:null,decrypt:!0,mode:e})};be.aes.Algorithm=function(t,e){af||fp();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return sf(r._w,n,i,!1)},decrypt:function(n,i){return sf(r._w,n,i,!0)}}}),r._init=!1};be.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=be.util.createBuffer(e);else if(be.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=be.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!be.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(!be.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=up(e,t.decrypt&&!s),this._init=!0}};be.aes._expandKey=function(t,e){return af||fp(),up(t,e)};be.aes._updateBlock=sf;oi("AES-ECB",be.cipher.modes.ecb);oi("AES-CBC",be.cipher.modes.cbc);oi("AES-CFB",be.cipher.modes.cfb);oi("AES-OFB",be.cipher.modes.ofb);oi("AES-CTR",be.cipher.modes.ctr);oi("AES-GCM",be.cipher.modes.gcm);function oi(t,e){var r=function(){return new be.aes.Algorithm(t,e)};be.cipher.registerAlgorithm(t,r)}var af=!1,ii=4,et,of,cp,hn,_t;function fp(){af=!0,cp=[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;et=new Array(256),of=new Array(256),hn=new Array(4),_t=new Array(4);for(var e=0;e<4;++e)hn[e]=new Array(256),_t[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,et[r]=a,of[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)hn[l][r]=f,_t[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 up(t,e){for(var r=t.slice(0),n,i=1,o=r.length,s=o+6+1,a=ii*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=et[n>>>16&255]<<24^et[n>>>8&255]<<16^et[n&255]<<8^et[n>>>24]^cp[i]<<24,i++):o>6&&c%o===4&&(n=et[n>>>24]<<24^et[n>>>16&255]<<16^et[n>>>8&255]<<8^et[n&255]),r[c]=r[c-o]^n;if(e){var f,u=_t[0],l=_t[1],d=_t[2],y=_t[3],h=r.slice(0);a=r.length;for(var c=0,p=a-ii;c<a;c+=ii,p-=ii)if(c===0||c===a-ii)h[c]=r[p],h[c+1]=r[p+3],h[c+2]=r[p+2],h[c+3]=r[p+1];else for(var m=0;m<ii;++m)f=r[p+m],h[c+(3&-m)]=u[et[f>>>24]]^l[et[f>>>16&255]]^d[et[f>>>8&255]]^y[et[f&255]];r=h}return r}function sf(t,e,r,n){var i=t.length/4-1,o,s,a,c,f;n?(o=_t[0],s=_t[1],a=_t[2],c=_t[3],f=of):(o=hn[0],s=hn[1],a=hn[2],c=hn[3],f=et);var u,l,d,y,h,p,m;u=e[0]^t[0],l=e[n?3:1]^t[1],d=e[2]^t[2],y=e[n?1:3]^t[3];for(var g=3,b=1;b<i;++b)h=o[u>>>24]^s[l>>>16&255]^a[d>>>8&255]^c[y&255]^t[++g],p=o[l>>>24]^s[d>>>16&255]^a[y>>>8&255]^c[u&255]^t[++g],m=o[d>>>24]^s[y>>>16&255]^a[u>>>8&255]^c[l&255]^t[++g],y=o[y>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[d&255]^t[++g],u=h,l=p,d=m;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[d>>>8&255]<<8^f[y&255]^t[++g],r[n?3:1]=f[l>>>24]<<24^f[d>>>16&255]<<16^f[y>>>8&255]<<8^f[u&255]^t[++g],r[2]=f[d>>>24]<<24^f[y>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^t[++g],r[n?1:3]=f[y>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[d&255]^t[++g]}function Rs(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=be.cipher.createDecipher(r,t.key):n=be.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof be.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var pp=se((Ak,dp)=>{var De=ge();tf();nf();Ue();dp.exports=De.des=De.des||{};De.des.startEncrypting=function(t,e,r,n){var i=Ls({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};De.des.createEncryptionCipher=function(t,e){return Ls({key:t,output:null,decrypt:!1,mode:e})};De.des.startDecrypting=function(t,e,r,n){var i=Ls({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};De.des.createDecryptionCipher=function(t,e){return Ls({key:t,output:null,decrypt:!0,mode:e})};De.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return hp(r._keys,n,i,!1)},decrypt:function(n,i){return hp(r._keys,n,i,!0)}}}),r._init=!1};De.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=De.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=Uv(e),this._init=!0}};Kt("DES-ECB",De.cipher.modes.ecb);Kt("DES-CBC",De.cipher.modes.cbc);Kt("DES-CFB",De.cipher.modes.cfb);Kt("DES-OFB",De.cipher.modes.ofb);Kt("DES-CTR",De.cipher.modes.ctr);Kt("3DES-ECB",De.cipher.modes.ecb);Kt("3DES-CBC",De.cipher.modes.cbc);Kt("3DES-CFB",De.cipher.modes.cfb);Kt("3DES-OFB",De.cipher.modes.ofb);Kt("3DES-CTR",De.cipher.modes.ctr);function Kt(t,e){var r=function(){return new De.des.Algorithm(t,e)};De.cipher.registerAlgorithm(t,r)}var Bv=[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],Tv=[-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],Iv=[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],_v=[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],kv=[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],Rv=[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],Lv=[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],Nv=[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 Uv(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],d=[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],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=t.length()>8?3:1,m=[],g=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],b=0,x,S=0;S<p;S++){var w=t.getInt32(),E=t.getInt32();x=(w>>>4^E)&252645135,E^=x,w^=x<<4,x=(E>>>-16^w)&65535,w^=x,E^=x<<-16,x=(w>>>2^E)&858993459,E^=x,w^=x<<2,x=(E>>>-16^w)&65535,w^=x,E^=x<<-16,x=(w>>>1^E)&1431655765,E^=x,w^=x<<1,x=(E>>>8^w)&16711935,w^=x,E^=x<<8,x=(w>>>1^E)&1431655765,E^=x,w^=x<<1,x=w<<8|E>>>20&240,w=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=x;for(var D=0;D<g.length;++D){g[D]?(w=w<<2|w>>>26,E=E<<2|E>>>26):(w=w<<1|w>>>27,E=E<<1|E>>>27),w&=-15,E&=-15;var B=e[w>>>28]|r[w>>>24&15]|n[w>>>20&15]|i[w>>>16&15]|o[w>>>12&15]|s[w>>>8&15]|a[w>>>4&15],U=c[E>>>28]|f[E>>>24&15]|u[E>>>20&15]|l[E>>>16&15]|d[E>>>12&15]|y[E>>>8&15]|h[E>>>4&15];x=(U>>>16^B)&65535,m[b++]=B^x,m[b++]=U^x<<16}}return m}function hp(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],d=o[f];d!=u;d+=l){var y=c^t[d],h=(c>>>4|c<<28)^t[d+1];s=a,a=c,c=s^(Tv[y>>>24&63]|_v[y>>>16&63]|Rv[y>>>8&63]|Nv[y&63]|Bv[h>>>24&63]|Iv[h>>>16&63]|kv[h>>>8&63]|Lv[h&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function Ls(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=De.cipher.createDecipher(r,t.key):n=De.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof De.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var dn=se((Ck,mp)=>{var Ns=ge();mp.exports=Ns.md=Ns.md||{};Ns.md.algorithms=Ns.md.algorithms||{}});var gp=se((Dk,yp)=>{var hr=ge();dn();Ue();var Pv=yp.exports=hr.hmac=hr.hmac||{};Pv.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 hr.md.algorithms)e=hr.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=hr.util.createBuffer(s);else if(hr.util.isArray(s)){var a=s;s=hr.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=hr.util.createBuffer(),n=hr.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 Us=se(()=>{});var bp=se((Ik,xp)=>{var tt=ge();gp();dn();Ue();var Ov=tt.pkcs5=tt.pkcs5||{},dr;tt.util.isNodejs&&!tt.options.usePureJavaScript&&(dr=Us());xp.exports=tt.pbkdf2=Ov.pbkdf2=function(t,e,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),tt.util.isNodejs&&!tt.options.usePureJavaScript&&dr.pbkdf2&&(i===null||typeof i!="object")&&(dr.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),o?dr.pbkdf2Sync.length===4?dr.pbkdf2(t,e,r,n,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):dr.pbkdf2(t,e,r,n,i,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):dr.pbkdf2Sync.length===4?dr.pbkdf2Sync(t,e,r,n).toString("binary"):dr.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in tt.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=tt.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=tt.hmac.create();u.start(i,t);var l="",d,y,h;if(!o){for(var p=1;p<=c;++p){u.start(null,null),u.update(e),u.update(tt.util.int32ToBytes(p)),d=h=u.digest().getBytes();for(var m=2;m<=r;++m)u.start(null,null),u.update(h),y=u.digest().getBytes(),d=tt.util.xorBytes(d,y,s),h=y;l+=p<c?d:d.substr(0,f)}return l}var p=1,m;function g(){if(p>c)return o(null,l);u.start(null,null),u.update(e),u.update(tt.util.int32ToBytes(p)),d=h=u.digest().getBytes(),m=2,b()}function b(){if(m<=r)return u.start(null,null),u.update(h),y=u.digest().getBytes(),d=tt.util.xorBytes(d,y,s),h=y,++m,tt.util.setImmediate(b);l+=p<c?d:d.substr(0,f),++p,g()}g()}});var Ep=se((_k,vp)=>{var Os=ge();Ue();var wp=vp.exports=Os.pem=Os.pem||{};wp.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
|
|
9
|
+
`,n;if(t.procType&&(n={name:"Proc-Type",values:[String(t.procType.version),t.procType.type]},r+=Ps(n)),t.contentDomain&&(n={name:"Content-Domain",values:[t.contentDomain]},r+=Ps(n)),t.dekInfo&&(n={name:"DEK-Info",values:[t.dekInfo.algorithm]},t.dekInfo.parameters&&n.values.push(t.dekInfo.parameters),r+=Ps(n)),t.headers)for(var i=0;i<t.headers.length;++i)r+=Ps(t.headers[i]);return t.procType&&(r+=`\r
|
|
10
|
+
`),r+=Os.util.encode64(t.body,e.maxline||64)+`\r
|
|
11
|
+
`,r+="-----END "+t.type+`-----\r
|
|
12
|
+
`,r};wp.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:Os.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 d=c[l];if(!/\s/.test(d[0]))break;u+=d,f=l}if(o=u.match(n),o){for(var y={name:o[1],values:[]},h=o[2].split(","),p=0;p<h.length;++p)y.values.push(Mv(h[p]));if(a.procType)if(!a.contentDomain&&y.name==="Content-Domain")a.contentDomain=h[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:h[0],parameters:h[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:h[0],type:h[1]}}}++f}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(e.length===0)throw new Error("Invalid PEM formatted message.");return e};function Ps(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
|
+
`;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
|
+
`+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 Mv(t){return t.replace(/^\s+/,"")}});var Tp=se((kk,Bp)=>{var Ft=ge();dn();Ue();var Ap=Bp.exports=Ft.sha256=Ft.sha256||{};Ft.md.sha256=Ft.md.algorithms.sha256=Ap;Ap.create=function(){Cp||Kv();var t=null,e=Ft.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=Ft.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=Ft.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),Sp(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Ft.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(ff.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};Sp(l,r,i);var d=Ft.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d.putInt32(l.h5),d.putInt32(l.h6),d.putInt32(l.h7),d},n};var ff=null,Cp=!1,Dp=null;function Kv(){ff="\x80",ff+=Ft.util.fillString("\0",64),Dp=[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],Cp=!0}function Sp(t,e,r){for(var n,i,o,s,a,c,f,u,l,d,y,h,p,m,g,b=r.length();b>=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,d=t.h2,y=t.h3,h=t.h4,p=t.h5,m=t.h6,g=t.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=m^h&(p^m),o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|d&(u^l),n=g+s+a+Dp[f]+e[f],i=o+c,g=m,m=p,p=h,h=y+n>>>0,y=d,d=l,l=u,u=n+i>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+d|0,t.h3=t.h3+y|0,t.h4=t.h4+h|0,t.h5=t.h5+p|0,t.h6=t.h6+m|0,t.h7=t.h7+g|0,b-=64}}});var _p=se((Rk,Ip)=>{var Vt=ge();Ue();var Ms=null;Vt.util.isNodejs&&!Vt.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Ms=Us());var Fv=Ip.exports=Vt.prng=Vt.prng||{};Fv.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,d=e.plugin.increment,y=e.plugin.formatKey,h=e.plugin.formatSeed,p=Vt.util.createBuffer();e.key=null,m();function m(g){if(g)return u(g);if(p.length()>=f)return u(null,p.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return Vt.util.nextTick(function(){o(m)});var b=l(e.key,e.seed);e.generated+=b.length,p.putBytes(b),e.key=y(l(e.key,d(e.seed))),e.seed=h(l(e.key,e.seed)),Vt.util.setImmediate(m)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,d=e.plugin.formatKey,y=e.plugin.formatSeed;e.key=null;for(var h=Vt.util.createBuffer();h.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=u(e.key,e.seed);e.generated+=p.length,h.putBytes(p),e.key=d(u(e.key,l(e.seed))),e.seed=y(u(e.key,e.seed))}return h.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,d){if(l)return f(l);e.collect(d),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 d=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(d),e.generated=0}function c(f){var u=null,l=Vt.util.globalScope,d=l.crypto||l.msCrypto;d&&d.getRandomValues&&(u=function(w){return d.getRandomValues(w)});var y=Vt.util.createBuffer();if(u)for(;y.length()<f;){var h=Math.max(1,Math.min(f-y.length(),65536)/4),p=new Uint32Array(Math.floor(h));try{u(p);for(var m=0;m<p.length;++m)y.putInt32(p[m])}catch(w){if(!(typeof QuotaExceededError<"u"&&w instanceof QuotaExceededError))throw w}}if(y.length()<f)for(var g,b,x,S=Math.floor(Math.random()*65536);y.length()<f;){b=16807*(S&65535),g=16807*(S>>16),b+=(g&32767)<<16,b+=g>>15,b=(b&2147483647)+(b>>31),S=b&4294967295;for(var m=0;m<3;++m)x=S>>>(m<<3),x^=Math.floor(Math.random()*256),y.putByte(x&255)}return y.getBytes(f)}return Ms?(e.seedFile=function(f,u){Ms.randomBytes(f,function(l,d){if(l)return u(l);u(null,d.toString())})},e.seedFileSync=function(f){return Ms.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="",d=0;d<u;d+=8)l+=String.fromCharCode(f>>d&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,d){function y(h){var p=h.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",y),d(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",y),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var d=l.data;d.forge&&d.forge.prng&&e.seedFile(d.forge.prng.needed,function(y,h){f.postMessage({forge:{prng:{err:y,bytes:h}}})})};f.addEventListener("message",u)}},e}});var eo=se((Lk,uf)=>{var He=ge();cf();Tp();_p();Ue();(function(){if(He.random&&He.random.getBytes){uf.exports=He.random;return}(function(t){var e={},r=new Array(4),n=He.util.createBuffer();e.formatKey=function(l){var d=He.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),He.aes._expandKey(l,!1)},e.formatSeed=function(l){var d=He.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),l},e.cipher=function(l,d){return He.aes._updateBlock(l,d,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=He.md.sha256;function i(){var l=He.prng.create(e);return l.getBytes=function(d,y){return l.generate(d,y)},l.getBytesSync=function(d){return l.generate(d)},l}var o=i(),s=null,a=He.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),He.options.usePureJavaScript||!He.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(!He.random)He.random=o;else for(var u in o)He.random[u]=o[u];He.random.createInstance=i,uf.exports=He.random})(typeof jQuery<"u"?jQuery:null)})()});var Np=se((Nk,Lp)=>{var at=ge();Ue();var lf=[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],kp=[1,2,3,5],Vv=function(t,e){return t<<e&65535|(t&65535)>>16-e},qv=function(t,e){return(t&65535)>>e|t<<16-e&65535};Lp.exports=at.rc2=at.rc2||{};at.rc2.expandKey=function(t,e){typeof t=="string"&&(t=at.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(lf[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,lf[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,lf[r.at(a+1)^r.at(a+o)]);return r};var Rp=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,f,u,l=[];for(t=at.rc2.expandKey(t,e),f=0;f<64;f++)l.push(t.getInt16Le());r?(a=function(h){for(f=0;f<4;f++)h[f]+=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),h[f]=Vv(h[f],kp[f]),u++},c=function(h){for(f=0;f<4;f++)h[f]+=l[h[(f+3)%4]&63]}):(a=function(h){for(f=3;f>=0;f--)h[f]=qv(h[f],kp[f]),h[f]-=l[u]+(h[(f+3)%4]&h[(f+2)%4])+(~h[(f+3)%4]&h[(f+1)%4]),u--},c=function(h){for(f=3;f>=0;f--)h[f]-=l[h[(f+3)%4]&63]});var d=function(h){var p=[];for(f=0;f<4;f++){var m=i.getInt16Le();s!==null&&(r?m^=s.getInt16Le():s.putInt16Le(m)),p.push(m&65535)}u=r?0:63;for(var g=0;g<h.length;g++)for(var b=0;b<h[g][0];b++)h[g][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(h,p){h&&typeof h=="string"&&(h=at.util.createBuffer(h)),n=!1,i=at.util.createBuffer(),o=p||new at.util.createBuffer,s=h,y.output=o},update:function(h){for(n||i.putBuffer(h);i.length()>=8;)d([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var p=!0;if(r)if(h)p=h(8,i,!r);else{var m=i.length()===8?8:8-i.length();i.fillWithByte(m,m)}if(p&&(n=!0,y.update()),!r&&(p=i.length()===0,p))if(h)p=h(8,o,!r);else{var g=o.length(),b=o.at(g-1);b>g?p=!1:o.truncate(b)}return p}},y};at.rc2.startEncrypting=function(t,e,r){var n=at.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};at.rc2.createEncryptionCipher=function(t,e){return Rp(t,e,!0)};at.rc2.startDecrypting=function(t,e,r){var n=at.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};at.rc2.createDecryptionCipher=function(t,e){return Rp(t,e,!1)}});var Vs=se((Uk,qp)=>{var hf=ge();qp.exports=hf.jsbn=hf.jsbn||{};var pr,Hv=0xdeadbeefcafe,Up=(Hv&16777215)==15715070;function L(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))}hf.jsbn.BigInteger=L;function fe(){return new L(null)}function zv(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 Gv(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 Pp(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"?(L.prototype.am=Pp,pr=28):Up&&navigator.appName=="Microsoft Internet Explorer"?(L.prototype.am=Gv,pr=30):Up&&navigator.appName!="Netscape"?(L.prototype.am=zv,pr=26):(L.prototype.am=Pp,pr=28);L.prototype.DB=pr;L.prototype.DM=(1<<pr)-1;L.prototype.DV=1<<pr;var df=52;L.prototype.FV=Math.pow(2,df);L.prototype.F1=df-pr;L.prototype.F2=2*pr-df;var $v="0123456789abcdefghijklmnopqrstuvwxyz",Ks=new Array,si,yt;si=48;for(yt=0;yt<=9;++yt)Ks[si++]=yt;si=97;for(yt=10;yt<36;++yt)Ks[si++]=yt;si=65;for(yt=10;yt<36;++yt)Ks[si++]=yt;function Op(t){return $v.charAt(t)}function Mp(t,e){var r=Ks[t.charCodeAt(e)];return r??-1}function Wv(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 Yv(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 Mr(t){var e=fe();return e.fromInt(t),e}function Xv(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:Mp(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&&L.ZERO.subTo(this,this)}function Zv(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function Qv(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=Op(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+=Op(n));return i?o:"0"}function jv(){var t=fe();return L.ZERO.subTo(this,t),t}function Jv(){return this.s<0?this.negate():this}function e8(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 Fs(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 t8(){return this.t<=0?0:this.DB*(this.t-1)+Fs(this.data[this.t-1]^this.s&this.DM)}function r8(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 n8(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 i8(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 o8(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 s8(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 a8(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&&L.ZERO.subTo(e,e)}function c8(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 f8(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=fe());var o=fe(),s=this.s,a=t.s,c=this.DB-Fs(n.data[n.t-1]);c>0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var f=o.t,u=o.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?o.data[f-2]>>this.F2:0),d=this.FV/l,y=(1<<this.F1)/l,h=1<<this.F2,p=r.t,m=p-f,g=e??fe();for(o.dlShiftTo(m,g),r.compareTo(g)>=0&&(r.data[r.t++]=1,r.subTo(g,r)),L.ONE.dlShiftTo(f,g),g.subTo(o,o);o.t<f;)o.data[o.t++]=0;for(;--m>=0;){var b=r.data[--p]==u?this.DM:Math.floor(r.data[p]*d+(r.data[p-1]+h)*y);if((r.data[p]+=o.am(0,b,r,m,0,f))<b)for(o.dlShiftTo(m,g),r.subTo(g,r);r.data[p]<--b;)r.subTo(g,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&L.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&L.ZERO.subTo(r,r)}}}function u8(t){var e=fe();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(L.ZERO)>0&&t.subTo(e,e),e}function pn(t){this.m=t}function l8(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function h8(t){return t}function d8(t){t.divRemTo(this.m,null,t)}function p8(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function m8(t,e){t.squareTo(e),this.reduce(e)}pn.prototype.convert=l8;pn.prototype.revert=h8;pn.prototype.reduce=d8;pn.prototype.mulTo=p8;pn.prototype.sqrTo=m8;function y8(){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 mn(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 g8(t){var e=fe();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(L.ZERO)>0&&this.m.subTo(e,e),e}function x8(t){var e=fe();return t.copyTo(e),this.reduce(e),e}function b8(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 w8(t,e){t.squareTo(e),this.reduce(e)}function v8(t,e,r){t.multiplyTo(e,r),this.reduce(r)}mn.prototype.convert=g8;mn.prototype.revert=x8;mn.prototype.reduce=b8;mn.prototype.mulTo=v8;mn.prototype.sqrTo=w8;function E8(){return(this.t>0?this.data[0]&1:this.s)==0}function S8(t,e){if(t>4294967295||t<1)return L.ONE;var r=fe(),n=fe(),i=e.convert(this),o=Fs(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 A8(t,e){var r;return t<256||e.isEven()?r=new pn(e):r=new mn(e),this.exp(t,r)}L.prototype.copyTo=Wv;L.prototype.fromInt=Yv;L.prototype.fromString=Xv;L.prototype.clamp=Zv;L.prototype.dlShiftTo=r8;L.prototype.drShiftTo=n8;L.prototype.lShiftTo=i8;L.prototype.rShiftTo=o8;L.prototype.subTo=s8;L.prototype.multiplyTo=a8;L.prototype.squareTo=c8;L.prototype.divRemTo=f8;L.prototype.invDigit=y8;L.prototype.isEven=E8;L.prototype.exp=S8;L.prototype.toString=Qv;L.prototype.negate=jv;L.prototype.abs=Jv;L.prototype.compareTo=e8;L.prototype.bitLength=t8;L.prototype.mod=u8;L.prototype.modPowInt=A8;L.ZERO=Mr(0);L.ONE=Mr(1);function C8(){var t=fe();return this.copyTo(t),t}function D8(){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 B8(){return this.t==0?this.s:this.data[0]<<24>>24}function T8(){return this.t==0?this.s:this.data[0]<<16>>16}function I8(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function _8(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function k8(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=Mr(r),i=fe(),o=fe(),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 R8(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=Mp(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&&L.ZERO.subTo(this,this)}function L8(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(L.ONE.shiftLeft(t-1),pf,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(L.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 N8(){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 U8(t){return this.compareTo(t)==0}function P8(t){return this.compareTo(t)<0?this:t}function O8(t){return this.compareTo(t)>0?this:t}function M8(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 K8(t,e){return t&e}function F8(t){var e=fe();return this.bitwiseTo(t,K8,e),e}function pf(t,e){return t|e}function V8(t){var e=fe();return this.bitwiseTo(t,pf,e),e}function Kp(t,e){return t^e}function q8(t){var e=fe();return this.bitwiseTo(t,Kp,e),e}function Fp(t,e){return t&~e}function H8(t){var e=fe();return this.bitwiseTo(t,Fp,e),e}function z8(){for(var t=fe(),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 G8(t){var e=fe();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function $8(t){var e=fe();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function W8(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 Y8(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+W8(this.data[t]);return this.s<0?this.t*this.DB:-1}function X8(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function Z8(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=X8(this.data[r]^e);return t}function Q8(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function j8(t,e){var r=L.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function J8(t){return this.changeBit(t,pf)}function eE(t){return this.changeBit(t,Fp)}function tE(t){return this.changeBit(t,Kp)}function rE(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 nE(t){var e=fe();return this.addTo(t,e),e}function iE(t){var e=fe();return this.subTo(t,e),e}function oE(t){var e=fe();return this.multiplyTo(t,e),e}function sE(t){var e=fe();return this.divRemTo(t,e,null),e}function aE(t){var e=fe();return this.divRemTo(t,null,e),e}function cE(t){var e=fe(),r=fe();return this.divRemTo(t,e,r),new Array(e,r)}function fE(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function uE(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 to(){}function Vp(t){return t}function lE(t,e,r){t.multiplyTo(e,r)}function hE(t,e){t.squareTo(e)}to.prototype.convert=Vp;to.prototype.revert=Vp;to.prototype.mulTo=lE;to.prototype.sqrTo=hE;function dE(t){return this.exp(t,new to)}function pE(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 mE(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 ai(t){this.r2=fe(),this.q3=fe(),L.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function yE(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=fe();return t.copyTo(e),this.reduce(e),e}function gE(t){return t}function xE(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 bE(t,e){t.squareTo(e),this.reduce(e)}function wE(t,e,r){t.multiplyTo(e,r),this.reduce(r)}ai.prototype.convert=yE;ai.prototype.revert=gE;ai.prototype.reduce=xE;ai.prototype.mulTo=wE;ai.prototype.sqrTo=bE;function vE(t,e){var r=t.bitLength(),n,i=Mr(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 pn(e):e.isEven()?o=new ai(e):o=new mn(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=o.convert(this),n>1){var u=fe();for(o.sqrTo(s[1],u);a<=f;)s[a]=fe(),o.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,d,y=!0,h=fe(),p;for(r=Fs(t.data[l])-1;l>=0;){for(r>=c?d=t.data[l]>>r-c&f:(d=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(d|=t.data[l-1]>>this.DB+r-c)),a=n;!(d&1);)d>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),y)s[d].copyTo(i),y=!1;else{for(;a>1;)o.sqrTo(i,h),o.sqrTo(h,i),a-=2;a>0?o.sqrTo(i,h):(p=i,i=h,h=p),o.mulTo(h,s[d],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,h),p=i,i=h,h=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function EE(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 SE(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 AE(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return L.ZERO;for(var r=t.clone(),n=this.clone(),i=Mr(1),o=Mr(0),s=Mr(0),a=Mr(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(L.ONE)!=0)return L.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 kt=[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],CE=(1<<26)/kt[kt.length-1];function DE(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=kt[kt.length-1]){for(e=0;e<kt.length;++e)if(r.data[0]==kt[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<kt.length;){for(var n=kt[e],i=e+1;i<kt.length&&n<CE;)n*=kt[i++];for(n=r.modInt(n);e<i;)if(n%kt[e++]==0)return!1}return r.millerRabin(t)}function BE(t){var e=this.subtract(L.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=TE(),o,s=0;s<t;++s){do o=new L(this.bitLength(),i);while(o.compareTo(L.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(L.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(L.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function TE(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}L.prototype.chunkSize=I8;L.prototype.toRadix=k8;L.prototype.fromRadix=R8;L.prototype.fromNumber=L8;L.prototype.bitwiseTo=M8;L.prototype.changeBit=j8;L.prototype.addTo=rE;L.prototype.dMultiply=fE;L.prototype.dAddOffset=uE;L.prototype.multiplyLowerTo=pE;L.prototype.multiplyUpperTo=mE;L.prototype.modInt=SE;L.prototype.millerRabin=BE;L.prototype.clone=C8;L.prototype.intValue=D8;L.prototype.byteValue=B8;L.prototype.shortValue=T8;L.prototype.signum=_8;L.prototype.toByteArray=N8;L.prototype.equals=U8;L.prototype.min=P8;L.prototype.max=O8;L.prototype.and=F8;L.prototype.or=V8;L.prototype.xor=q8;L.prototype.andNot=H8;L.prototype.not=z8;L.prototype.shiftLeft=G8;L.prototype.shiftRight=$8;L.prototype.getLowestSetBit=Y8;L.prototype.bitCount=Z8;L.prototype.testBit=Q8;L.prototype.setBit=J8;L.prototype.clearBit=eE;L.prototype.flipBit=tE;L.prototype.add=nE;L.prototype.subtract=iE;L.prototype.multiply=oE;L.prototype.divide=sE;L.prototype.remainder=aE;L.prototype.divideAndRemainder=cE;L.prototype.modPow=vE;L.prototype.modInverse=AE;L.prototype.pow=dE;L.prototype.gcd=EE;L.prototype.isProbablePrime=DE});var Wp=se((Pk,$p)=>{var qt=ge();dn();Ue();var zp=$p.exports=qt.sha1=qt.sha1||{};qt.md.sha1=qt.md.algorithms.sha1=zp;zp.create=function(){Gp||IE();var t=null,e=qt.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=qt.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=qt.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),Hp(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=qt.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(mf.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};Hp(l,r,i);var d=qt.util.createBuffer();return d.putInt32(l.h0),d.putInt32(l.h1),d.putInt32(l.h2),d.putInt32(l.h3),d.putInt32(l.h4),d},n};var mf=null,Gp=!1;function IE(){mf="\x80",mf+=qt.util.fillString("\0",64),Gp=!0}function Hp(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 Zp=se((Ok,Xp)=>{var Ht=ge();Ue();eo();Wp();var Yp=Xp.exports=Ht.pkcs1=Ht.pkcs1||{};Yp.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=Ht.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="",d=c-e.length,y=0;y<d;y++)l+="\0";var h=u.getBytes()+l+""+e;if(!i)i=Ht.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=qs(i,a-o.digestLength-1,s),m=Ht.util.xorBytes(h,p,h.length),g=qs(m,o.digestLength,s),b=Ht.util.xorBytes(i,g,i.length);return"\0"+b+m};Yp.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 m=new Error("RSAES-OAEP encoded message length is invalid.");throw m.length=e.length,m.expectedLength=s,m}if(i===void 0?i=Ht.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=qs(u,i.digestLength,o),d=Ht.util.xorBytes(f,l,f.length),y=qs(d,s-i.digestLength-1,o),h=Ht.util.xorBytes(u,y,u.length),p=h.substring(0,i.digestLength),m=c!=="\0",g=0;g<i.digestLength;++g)m|=a.charAt(g)!==p.charAt(g);for(var b=1,x=i.digestLength,S=i.digestLength;S<h.length;S++){var w=h.charCodeAt(S),E=w&1^1,D=b?65534:0;m|=w&D,b=b&E,x+=b}if(m||h.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(x+1)};function qs(t,e,r){r||(r=Ht.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 Qp=se((Mk,yf)=>{var Kr=ge();Ue();Vs();eo();(function(){if(Kr.prime){yf.exports=Kr.prime;return}var t=yf.exports=Kr.prime=Kr.prime||{},e=Kr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,d){return l|d};t.generateProbablePrime=function(l,d,y){typeof d=="function"&&(y=d,d={}),d=d||{};var h=d.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var p=d.prng||Kr.random,m={nextBytes:function(g){for(var b=p.getBytesSync(g.length),x=0;x<g.length;++x)g[x]=b.charCodeAt(x)}};if(h.name==="PRIMEINC")return o(l,m,h.options,y);throw new Error("Invalid prime generation algorithm: "+h.name)};function o(l,d,y,h){return"workers"in y?c(l,d,y,h):s(l,d,y,h)}function s(l,d,y,h){var p=f(l,d),m=0,g=u(p.bitLength());"millerRabinTests"in y&&(g=y.millerRabinTests);var b=10;"maxBlockTime"in y&&(b=y.maxBlockTime),a(p,l,d,m,g,b,h)}function a(l,d,y,h,p,m,g){var b=+new Date;do{if(l.bitLength()>d&&(l=f(d,y)),l.isProbablePrime(p))return g(null,l);l.dAddOffset(r[h++%8],0)}while(m<0||+new Date-b<m);Kr.util.setImmediate(function(){a(l,d,y,h,p,m,g)})}function c(l,d,y,h){if(typeof Worker>"u")return s(l,d,y,h);var p=f(l,d),m=y.workers,g=y.workLoad||100,b=g*30/8,x=y.workerScript||"forge/prime.worker.js";if(m===-1)return Kr.util.estimateCores(function(w,E){w&&(E=2),m=E-1,S()});S();function S(){m=Math.max(1,m);for(var w=[],E=0;E<m;++E)w[E]=new Worker(x);for(var D=m,E=0;E<m;++E)w[E].addEventListener("message",U);var B=!1;function U(M){if(!B){--D;var O=M.data;if(O.found){for(var F=0;F<w.length;++F)w[F].terminate();return B=!0,h(null,new e(O.prime,16))}p.bitLength()>l&&(p=f(l,d));var G=p.toString(16);M.target.postMessage({hex:G,workLoad:g}),p.dAddOffset(b,0)}}}}function f(l,d){var y=new e(l,d),h=l-1;return y.testBit(h)||y.bitwiseTo(e.ONE.shiftLeft(h),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 zs=se((Kk,im)=>{var Y=ge();Ji();Vs();Ts();Zp();Qp();eo();Ue();typeof ce>"u"&&(ce=Y.jsbn.BigInteger);var ce,gf=Y.util.isNodejs?Us():null,C=Y.asn1,gt=Y.util;Y.pki=Y.pki||{};im.exports=Y.pki.rsa=Y.rsa=Y.rsa||{};var te=Y.pki,_E=[6,4,2,4,2,4,6,2],kE={name:"PrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},RE={name:"RSAPrivateKey",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},LE={name:"RSAPublicKey",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:C.Class.UNIVERSAL,type:C.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},NE=Y.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:C.Class.UNIVERSAL,type:C.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},UE={name:"DigestInfo",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:C.Class.UNIVERSAL,type:C.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:C.Class.UNIVERSAL,type:C.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:C.Class.UNIVERSAL,type:C.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:C.Class.UNIVERSAL,type:C.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},PE=function(t){var e;if(t.algorithm in te.oids)e=te.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=C.oidToDer(e).getBytes(),i=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[]),o=C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[]);o.value.push(C.create(C.Class.UNIVERSAL,C.Type.OID,!1,n)),o.value.push(C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,""));var s=C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),C.toDer(i).getBytes()},rm=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(ce.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(ce.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new ce(Y.util.bytesToHex(Y.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(ce.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};te.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=nm(t,e,r)):(i=Y.util.createBuffer(),i.putBytes(t));for(var s=new ce(i.toHex(),16),a=rm(s,e,n),c=a.toString(16),f=Y.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(Y.util.hexToBytes(c)),f.getBytes()};te.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 ce(Y.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=rm(s,e,r),c=a.toString(16),f=Y.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(Y.util.hexToBytes(c)),n!==!1?Hs(f.getBytes(),e,r):f.getBytes()};te.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||Y.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 ce(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};te.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new ce(null);r.fromInt(30);for(var n=0,i=function(l,d){return l|d},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 ce(c,t.rng),t.num.testBit(f)||t.num.bitwiseTo(ce.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(ME(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(_E[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(ce.ONE).gcd(t.e).compareTo(ce.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(ce.ONE),t.q1=t.q.subtract(ce.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(ce.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:te.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:te.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};te.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),!Y.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(jp("generateKeyPair"))return gf.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:te.privateKeyFromPem(f),publicKey:te.publicKeyFromPem(c)})});if(Jp("generateKey")&&Jp("exportKey"))return gt.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:tm(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return gt.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=te.privateKeyFromAsn1(C.fromDer(Y.util.createBuffer(a)));n(null,{privateKey:c,publicKey:te.setRsaPublicKey(c.n,c.e)})}});if(em("generateKey")&&em("exportKey")){var i=gt.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:tm(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,f=gt.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,d=te.privateKeyFromAsn1(C.fromDer(Y.util.createBuffer(l)));n(null,{privateKey:d,publicKey:te.setRsaPublicKey(d.n,d.e)})},f.onerror=function(u){n(u)}},i.onerror=function(a){n(a)};return}}else if(jp("generateKeyPairSync")){var o=gf.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:te.privateKeyFromPem(o.privateKey),publicKey:te.publicKeyFromPem(o.publicKey)}}}var s=te.rsa.createKeyPairGenerationState(t,e,r);if(!n)return te.rsa.stepKeyPairGenerationState(s,0),s.keys;OE(s,r,n)};te.setRsaPublicKey=te.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 nm(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return Y.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 te.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=Hs(f,r,!0);var u=C.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!C.validate(u,UE,l,d)){var y=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw y.errors=d,y}var h=C.derToOid(l.algorithmIdentifier);if(!(h===Y.oids.md2||h===Y.oids.md5||h===Y.oids.sha1||h===Y.oids.sha224||h===Y.oids.sha256||h===Y.oids.sha384||h===Y.oids.sha512||h===Y.oids["sha512-224"]||h===Y.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=h,y}if((h===Y.oids.md2||h===Y.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=Hs(f,r,!0),c===f}});var a=te.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};te.setRsaPrivateKey=te.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 d=te.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Hs};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(y,h){return Y.pkcs1.decode_rsa_oaep(h,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(d,c,!1)},c.sign=function(f,u){var l=!1;typeof u=="string"&&(u=u.toUpperCase()),u===void 0||u==="RSASSA-PKCS1-V1_5"?(u={encode:PE},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var d=u.encode(f,c.n.bitLength());return te.rsa.encrypt(d,c,l)},c};te.wrapRsaPrivateKey=function(t){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,C.integerToDer(0).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(te.oids.rsaEncryption).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")]),C.create(C.Class.UNIVERSAL,C.Type.OCTETSTRING,!1,C.toDer(t).getBytes())])};te.privateKeyFromAsn1=function(t){var e={},r=[];if(C.validate(t,kE,e,r)&&(t=C.fromDer(Y.util.createBuffer(e.privateKey))),e={},r=[],!C.validate(t,RE,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=Y.util.createBuffer(e.privateKeyModulus).toHex(),o=Y.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=Y.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=Y.util.createBuffer(e.privateKeyPrime1).toHex(),c=Y.util.createBuffer(e.privateKeyPrime2).toHex(),f=Y.util.createBuffer(e.privateKeyExponent1).toHex(),u=Y.util.createBuffer(e.privateKeyExponent2).toHex(),l=Y.util.createBuffer(e.privateKeyCoefficient).toHex(),te.setRsaPrivateKey(new ce(i,16),new ce(o,16),new ce(s,16),new ce(a,16),new ce(c,16),new ce(f,16),new ce(u,16),new ce(l,16))};te.privateKeyToAsn1=te.privateKeyToRSAPrivateKey=function(t){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,C.integerToDer(0).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.n)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.e)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.d)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.p)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.q)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.dP)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.dQ)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.qInv))])};te.publicKeyFromAsn1=function(t){var e={},r=[];if(C.validate(t,NE,e,r)){var n=C.derToOid(e.publicKeyOid);if(n!==te.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!C.validate(t,LE,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=Y.util.createBuffer(e.publicKeyModulus).toHex(),s=Y.util.createBuffer(e.publicKeyExponent).toHex();return te.setRsaPublicKey(new ce(o,16),new ce(s,16))};te.publicKeyToAsn1=te.publicKeyToSubjectPublicKeyInfo=function(t){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.OID,!1,C.oidToDer(te.oids.rsaEncryption).getBytes()),C.create(C.Class.UNIVERSAL,C.Type.NULL,!1,"")]),C.create(C.Class.UNIVERSAL,C.Type.BITSTRING,!1,[te.publicKeyToRSAPublicKey(t)])])};te.publicKeyToRSAPublicKey=function(t){return C.create(C.Class.UNIVERSAL,C.Type.SEQUENCE,!0,[C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.n)),C.create(C.Class.UNIVERSAL,C.Type.INTEGER,!1,zt(t.e))])};function nm(t,e,r){var n=Y.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=Y.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 Hs(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=Y.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 OE(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){Y.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(ce.ONE).gcd(t.e).compareTo(ce.ONE)!==0){t.p=null,i();return}if(t.q.subtract(ce.ONE).gcd(t.e).compareTo(ce.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(ce.ONE),t.q1=t.q.subtract(ce.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(ce.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:te.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:te.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function zt(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=Y.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 ME(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 jp(t){return Y.util.isNodejs&&typeof gf[t]=="function"}function Jp(t){return typeof gt.globalScope<"u"&&typeof gt.globalScope.crypto=="object"&&typeof gt.globalScope.crypto.subtle=="object"&&typeof gt.globalScope.crypto.subtle[t]=="function"}function em(t){return typeof gt.globalScope<"u"&&typeof gt.globalScope.msCrypto=="object"&&typeof gt.globalScope.msCrypto.subtle=="object"&&typeof gt.globalScope.msCrypto.subtle[t]=="function"}function tm(t){for(var e=Y.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var um=se((Fk,fm)=>{var z=ge();cf();Ji();pp();dn();Ts();bp();Ep();eo();Np();zs();Ue();typeof om>"u"&&(om=z.jsbn.BigInteger);var om,I=z.asn1,ie=z.pki=z.pki||{};fm.exports=ie.pbe=z.pbe=z.pbe||{};var yn=ie.oids,KE={name:"EncryptedPrivateKeyInfo",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},FE={name:"PBES2Algorithms",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:I.Class.UNIVERSAL,type:I.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},VE={name:"pkcs-12PbeParams",tagClass:I.Class.UNIVERSAL,type:I.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:I.Class.UNIVERSAL,type:I.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:I.Class.UNIVERSAL,type:I.Type.INTEGER,constructed:!1,capture:"iterations"}]};ie.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=z.random.getBytesSync(r.saltSize),i=r.count,o=I.integerToDer(i),s,a,c;if(r.algorithm.indexOf("aes")===0||r.algorithm==="des"){var f,u,l;switch(r.algorithm){case"aes128":s=16,f=16,u=yn["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=yn["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=yn["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=yn.desCBC,l=z.des.createEncryptionCipher;break;default:var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var y="hmacWith"+r.prfAlgorithm.toUpperCase(),h=cm(y),p=z.pkcs5.pbkdf2(e,n,i,s,h),m=z.random.getBytesSync(f),g=l(p);g.start(m),g.update(I.toDer(t)),g.finish(),c=g.output.getBytes();var b=qE(n,o,s,y);a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(yn.pkcs5PBES2).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(yn.pkcs5PBKDF2).getBytes()),b]),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(u).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,m)])])])}else if(r.algorithm==="3des"){s=24;var x=new z.util.ByteBuffer(n),p=ie.pbe.generatePkcs12Key(e,x,1,i,s),m=ie.pbe.generatePkcs12Key(e,x,2,i,s),g=z.des.createEncryptionCipher(p);g.start(m),g.update(I.toDer(t)),g.finish(),c=g.output.getBytes(),a=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(yn["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,n),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,o.getBytes())])])}else{var d=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw d.algorithm=r.algorithm,d}var S=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[a,I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,c)]);return S};ie.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!I.validate(t,KE,n,i)){var o=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}var s=I.derToOid(n.encryptionOid),a=ie.pbe.getCipher(s,n.encryptionParams,e),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=I.fromDer(a.output)),r};ie.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:I.toDer(t).getBytes()};return z.pem.encode(r,{maxline:e})};ie.encryptedPrivateKeyFromPem=function(t){var e=z.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 I.fromDer(e.body)};ie.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=ie.wrapRsaPrivateKey(ie.privateKeyToAsn1(t));return n=ie.encryptPrivateKeyInfo(n,e,r),ie.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=z.random.getBytesSync(8),a=z.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=z.pbe.opensslDeriveBytes(e,o.substr(0,8),s),u=a(f);u.start(o),u.update(I.toDer(ie.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:i,parameters:z.util.bytesToHex(o).toUpperCase()},body:u.output.getBytes()};return z.pem.encode(l)};ie.decryptRsaPrivateKey=function(t,e){var r=null,n=z.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=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.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=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(e,a.substr(0,8),o),f=s(c);if(f.start(a),f.update(z.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=ie.decryptPrivateKeyInfo(I.fromDer(r),e):r=I.fromDer(r),r!==null&&(r=ie.privateKeyFromAsn1(r)),r};ie.pbe.generatePkcs12Key=function(t,e,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,f=o.blockLength,u=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var d=l.length(),y=e.length(),h=new z.util.ByteBuffer;h.fillWithByte(r,f);var p=f*Math.ceil(y/f),m=new z.util.ByteBuffer;for(a=0;a<p;a++)m.putByte(e.at(a%y));var g=f*Math.ceil(d/f),b=new z.util.ByteBuffer;for(a=0;a<g;a++)b.putByte(l.at(a%d));var x=m;x.putBuffer(b);for(var S=Math.ceil(i/c),w=1;w<=S;w++){var E=new z.util.ByteBuffer;E.putBytes(h.bytes()),E.putBytes(x.bytes());for(var D=0;D<n;D++)o.start(),o.update(E.getBytes()),E=o.digest();var B=new z.util.ByteBuffer;for(a=0;a<f;a++)B.putByte(E.at(a%c));var U=Math.ceil(y/f)+Math.ceil(d/f),M=new z.util.ByteBuffer;for(s=0;s<U;s++){var O=new z.util.ByteBuffer(x.getBytes(f)),F=511;for(a=B.length()-1;a>=0;a--)F=F>>8,F+=B.at(a)+O.at(a),O.setAt(a,F&255);M.putBuffer(O)}x=M,u.putBuffer(E)}return u.truncate(u.length()-i),u};ie.pbe.getCipher=function(t,e,r){switch(t){case ie.oids.pkcs5PBES2:return ie.pbe.getCipherForPBES2(t,e,r);case ie.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case ie.oids["pbewithSHAAnd40BitRC2-CBC"]:return ie.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}};ie.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!I.validate(e,FE,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=I.derToOid(n.kdfOid),t!==ie.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=I.derToOid(n.encOid),t!==ie.oids["aes128-CBC"]&&t!==ie.oids["aes192-CBC"]&&t!==ie.oids["aes256-CBC"]&&t!==ie.oids["des-EDE3-CBC"]&&t!==ie.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=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(ie.oids[t]){case"aes128-CBC":c=16,f=z.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=z.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=z.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=z.des.createDecryptionCipher;break;case"desCBC":c=8,f=z.des.createDecryptionCipher;break}var u=am(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,u),d=n.encIv,y=f(l);return y.start(d),y};ie.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!I.validate(e,VE,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=z.util.createBuffer(n.salt),a=z.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case ie.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=z.des.startDecrypting;break;case ie.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(p,m){var g=z.rc2.createDecryptionCipher(p,40);return g.start(m,null),g};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=am(n.prfOid),d=ie.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=ie.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(d,y)};ie.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[sm(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(sm(n,i[s-1]+t+e));return i.join("").substr(0,r)};function sm(t,e){return t.start().update(e).digest().getBytes()}function am(t){var e;if(!t)e="hmacWithSHA1";else if(e=ie.oids[I.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return cm(e)}function cm(t){var e=z.md;switch(t){case"hmacWithSHA224":e=z.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 qE(t,e,r,n){var i=I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OCTETSTRING,!1,t),I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(I.create(I.Class.UNIVERSAL,I.Type.INTEGER,!1,z.util.hexToBytes(r.toString(16))),I.create(I.Class.UNIVERSAL,I.Type.SEQUENCE,!0,[I.create(I.Class.UNIVERSAL,I.Type.OID,!1,I.oidToDer(ie.oids[n]).getBytes()),I.create(I.Class.UNIVERSAL,I.Type.NULL,!1,"")])),i}});var Dm=se((GR,Cm)=>{var Se=ge();dn();Ue();var no=Cm.exports=Se.sha512=Se.sha512||{};Se.md.sha512=Se.md.algorithms.sha512=no;var Sm=Se.sha384=Se.sha512.sha384=Se.sha512.sha384||{};Sm.create=function(){return no.create("SHA-384")};Se.md.sha384=Se.md.algorithms.sha384=Sm;Se.sha512.sha256=Se.sha512.sha256||{create:function(){return no.create("SHA-512/256")}};Se.md["sha512/256"]=Se.md.algorithms["sha512/256"]=Se.sha512.sha256;Se.sha512.sha224=Se.sha512.sha224||{create:function(){return no.create("SHA-512/224")}};Se.md["sha512/224"]=Se.md.algorithms["sha512/224"]=Se.sha512.sha224;no.create=function(t){if(Am||QE(),typeof t>"u"&&(t="SHA-512"),!(t in wn))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=wn[t],r=null,n=Se.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=Se.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=Se.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),Em(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Se.util.createBuffer();c.putBytes(n.bytes());var f=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,u=f&a.blockLength-1;c.putBytes(Sf.substr(0,a.blockLength-u));for(var l,d,y=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,d=l/4294967296>>>0,y+=d,c.putInt32(y>>>0),y=l>>>0;c.putInt32(y);for(var p=new Array(r.length),h=0;h<r.length;++h)p[h]=r[h].slice(0);Em(p,i,c);var m=Se.util.createBuffer(),g;t==="SHA-512"?g=p.length:t==="SHA-384"?g=p.length-2:g=p.length-4;for(var h=0;h<g;++h)m.putInt32(p[h][0]),(h!==g-1||t!=="SHA-512/224")&&m.putInt32(p[h][1]);return m},a};var Sf=null,Am=!1,Af=null,wn=null;function QE(){Sf="\x80",Sf+=Se.util.fillString("\0",128),Af=[[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]],wn={},wn["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],wn["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],wn["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],wn["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Am=!0}function Em(t,e,r){for(var n,i,o,s,a,c,f,u,l,d,y,h,p,m,g,b,x,S,w,E,D,B,U,M,O,F,G,Q,T,R,_,k,A,P,K,q=r.length();q>=128;){for(T=0;T<16;++T)e[T][0]=r.getInt32()>>>0,e[T][1]=r.getInt32()>>>0;for(;T<80;++T)k=e[T-2],R=k[0],_=k[1],n=((R>>>19|_<<13)^(_>>>29|R<<3)^R>>>6)>>>0,i=((R<<13|_>>>19)^(_<<3|R>>>29)^(R<<26|_>>>6))>>>0,P=e[T-15],R=P[0],_=P[1],o=((R>>>1|_<<31)^(R>>>8|_<<24)^R>>>7)>>>0,s=((R<<31|_>>>1)^(R<<24|_>>>8)^(R<<25|_>>>7))>>>0,A=e[T-7],K=e[T-16],_=i+A[1]+s+K[1],e[T][0]=n+A[0]+o+K[0]+(_/4294967296>>>0)>>>0,e[T][1]=_>>>0;for(p=t[0][0],m=t[0][1],g=t[1][0],b=t[1][1],x=t[2][0],S=t[2][1],w=t[3][0],E=t[3][1],D=t[4][0],B=t[4][1],U=t[5][0],M=t[5][1],O=t[6][0],F=t[6][1],G=t[7][0],Q=t[7][1],T=0;T<80;++T)f=((D>>>14|B<<18)^(D>>>18|B<<14)^(B>>>9|D<<23))>>>0,u=((D<<18|B>>>14)^(D<<14|B>>>18)^(B<<23|D>>>9))>>>0,l=(O^D&(U^O))>>>0,d=(F^B&(M^F))>>>0,a=((p>>>28|m<<4)^(m>>>2|p<<30)^(m>>>7|p<<25))>>>0,c=((p<<4|m>>>28)^(m<<30|p>>>2)^(m<<25|p>>>7))>>>0,y=(p&g|x&(p^g))>>>0,h=(m&b|S&(m^b))>>>0,_=Q+u+d+Af[T][1]+e[T][1],n=G+f+l+Af[T][0]+e[T][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+h,o=a+y+(_/4294967296>>>0)>>>0,s=_>>>0,G=O,Q=F,O=U,F=M,U=D,M=B,_=E+i,D=w+n+(_/4294967296>>>0)>>>0,B=_>>>0,w=x,E=S,x=g,S=b,g=p,b=m,_=i+s,p=n+o+(_/4294967296>>>0)>>>0,m=_>>>0;_=t[0][1]+m,t[0][0]=t[0][0]+p+(_/4294967296>>>0)>>>0,t[0][1]=_>>>0,_=t[1][1]+b,t[1][0]=t[1][0]+g+(_/4294967296>>>0)>>>0,t[1][1]=_>>>0,_=t[2][1]+S,t[2][0]=t[2][0]+x+(_/4294967296>>>0)>>>0,t[2][1]=_>>>0,_=t[3][1]+E,t[3][0]=t[3][0]+w+(_/4294967296>>>0)>>>0,t[3][1]=_>>>0,_=t[4][1]+B,t[4][0]=t[4][0]+D+(_/4294967296>>>0)>>>0,t[4][1]=_>>>0,_=t[5][1]+M,t[5][0]=t[5][0]+U+(_/4294967296>>>0)>>>0,t[5][1]=_>>>0,_=t[6][1]+F,t[6][0]=t[6][0]+O+(_/4294967296>>>0)>>>0,t[6][1]=_>>>0,_=t[7][1]+Q,t[7][0]=t[7][0]+G+(_/4294967296>>>0)>>>0,t[7][1]=_>>>0,q-=128}}});var cy=se((w7,ay)=>{"use strict";function B3(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r<e.length;r++)e[r]=255;for(var n=0;n<t.length;n++){var i=t.charAt(n),o=i.charCodeAt(0);if(e[o]!==255)throw new TypeError(i+" is ambiguous");e[o]=n}var s=t.length,a=t.charAt(0),c=Math.log(s)/Math.log(256),f=Math.log(256)/Math.log(s);function u(y){if(y instanceof Uint8Array||(ArrayBuffer.isView(y)?y=new Uint8Array(y.buffer,y.byteOffset,y.byteLength):Array.isArray(y)&&(y=Uint8Array.from(y))),!(y instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(y.length===0)return"";for(var h=0,p=0,m=0,g=y.length;m!==g&&y[m]===0;)m++,h++;for(var b=(g-m)*f+1>>>0,x=new Uint8Array(b);m!==g;){for(var S=y[m],w=0,E=b-1;(S!==0||w<p)&&E!==-1;E--,w++)S+=256*x[E]>>>0,x[E]=S%s>>>0,S=S/s>>>0;if(S!==0)throw new Error("Non-zero carry");p=w,m++}for(var D=b-p;D!==b&&x[D]===0;)D++;for(var B=a.repeat(h);D<b;++D)B+=t.charAt(x[D]);return B}function l(y){if(typeof y!="string")throw new TypeError("Expected String");if(y.length===0)return new Uint8Array;var h=0;if(y[h]!==" "){for(var p=0,m=0;y[h]===a;)p++,h++;for(var g=(y.length-h)*c+1>>>0,b=new Uint8Array(g);y[h];){var x=e[y.charCodeAt(h)];if(x===255)return;for(var S=0,w=g-1;(x!==0||S<m)&&w!==-1;w--,S++)x+=s*b[w]>>>0,b[w]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");m=S,h++}if(y[h]!==" "){for(var E=g-m;E!==g&&b[E]===0;)E++;for(var D=new Uint8Array(p+(g-E)),B=p;E!==g;)D[B++]=b[E++];return D}}}function d(y){var h=l(y);if(h)return h;throw new Error("Non-base"+s+" character")}return{encode:u,decodeUnsafe:l,decode:d}}ay.exports=B3});var ia=se((v7,fy)=>{"use strict";var T3=new TextDecoder,I3=t=>T3.decode(t),_3=new TextEncoder,k3=t=>_3.encode(t);function R3(t,e){let r=new Uint8Array(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return r}fy.exports={decodeText:I3,encodeText:k3,concat:R3}});var ly=se((E7,uy)=>{"use strict";var{encodeText:L3}=ia(),Ff=class{constructor(e,r,n,i){this.name=e,this.code=r,this.codeBuf=L3(this.code),this.alphabet=i,this.codec=n(i)}encode(e){return this.codec.encode(e)}decode(e){for(let r of e)if(this.alphabet&&this.alphabet.indexOf(r)<0)throw new Error(`invalid character '${r}' in '${e}'`);return this.codec.decode(e)}};uy.exports=Ff});var dy=se((S7,hy)=>{"use strict";var N3=(t,e,r)=>{let n={};for(let f=0;f<e.length;++f)n[e[f]]=f;let i=t.length;for(;t[i-1]==="=";)--i;let o=new Uint8Array(i*r/8|0),s=0,a=0,c=0;for(let f=0;f<i;++f){let u=n[t[f]];if(u===void 0)throw new SyntaxError("Invalid character "+t[f]);a=a<<r|u,s+=r,s>=8&&(s-=8,o[c++]=255&a>>s)}if(s>=r||255&a<<8-s)throw new SyntaxError("Unexpected end of data");return o},U3=(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},P3=t=>e=>({encode(r){return U3(r,e,t)},decode(r){return N3(r,e,t)}});hy.exports={rfc4648:P3}});var gy=se((A7,yy)=>{"use strict";var ho=cy(),O3=ly(),{rfc4648:Ye}=dy(),{decodeText:M3,encodeText:K3}=ia(),F3=()=>({encode:M3,decode:K3}),py=[["identity","\0",F3,""],["base2","0",Ye(1),"01"],["base8","7",Ye(3),"01234567"],["base10","9",ho,"0123456789"],["base16","f",Ye(4),"0123456789abcdef"],["base16upper","F",Ye(4),"0123456789ABCDEF"],["base32hex","v",Ye(5),"0123456789abcdefghijklmnopqrstuv"],["base32hexupper","V",Ye(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV"],["base32hexpad","t",Ye(5),"0123456789abcdefghijklmnopqrstuv="],["base32hexpadupper","T",Ye(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV="],["base32","b",Ye(5),"abcdefghijklmnopqrstuvwxyz234567"],["base32upper","B",Ye(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"],["base32pad","c",Ye(5),"abcdefghijklmnopqrstuvwxyz234567="],["base32padupper","C",Ye(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567="],["base32z","h",Ye(5),"ybndrfg8ejkmcpqxot1uwisza345h769"],["base36","k",ho,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",ho,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",ho,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",ho,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",Ye(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",Ye(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",Ye(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",Ye(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],my=py.reduce((t,e)=>(t[e[0]]=new O3(e[0],e[1],e[2],e[3]),t),{}),V3=py.reduce((t,e)=>(t[e[1]]=my[e[0]],t),{});yy.exports={names:my,codes:V3}});var wy=se((xr,by)=>{"use strict";var hi=gy(),{encodeText:q3,decodeText:oa,concat:xy}=ia();function H3(t,e){if(!e)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=An(t);return W3(r,e),xy([n,e],n.length+e.length)}function z3(t,e){let r=An(t),n=q3(r.encode(e));return xy([r.codeBuf,n],r.codeBuf.length+n.length)}function G3(t){t instanceof Uint8Array&&(t=oa(t));let e=t[0];return["f","F","v","V","t","T","b","B","c","C","h","k","K"].includes(e)&&(t=t.toLowerCase()),An(t[0]).decode(t.substring(1))}function $3(t){if(t instanceof Uint8Array&&(t=oa(t)),Object.prototype.toString.call(t)!=="[object String]")return!1;try{return An(t[0]).name}catch{return!1}}function W3(t,e){An(t).decode(oa(e))}function An(t){if(Object.prototype.hasOwnProperty.call(hi.names,t))return hi.names[t];if(Object.prototype.hasOwnProperty.call(hi.codes,t))return hi.codes[t];throw new Error(`Unsupported encoding: ${t}`)}function Y3(t){return t instanceof Uint8Array&&(t=oa(t)),An(t[0])}xr=by.exports=H3;xr.encode=z3;xr.decode=G3;xr.isEncoded=$3;xr.encoding=An;xr.encodingFromData=Y3;var X3=Object.freeze(hi.names),Z3=Object.freeze(hi.codes);xr.names=X3;xr.codes=Z3});var Ay=se((C7,Sy)=>{Sy.exports=Ey;var vy=128,Q3=127,j3=~Q3,J3=Math.pow(2,31);function Ey(t,e,r){e=e||[],r=r||0;for(var n=r;t>=J3;)e[r++]=t&255|vy,t/=128;for(;t&j3;)e[r++]=t&255|vy,t>>>=7;return e[r]=t|0,Ey.bytes=r-n+1,e}});var By=se((D7,Dy)=>{Dy.exports=Vf;var e4=128,Cy=127;function Vf(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw Vf.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Cy)<<i:(s&Cy)*Math.pow(2,i),i+=7}while(s>=e4);return Vf.bytes=o-n,r}});var Iy=se((B7,Ty)=>{var t4=Math.pow(2,7),r4=Math.pow(2,14),n4=Math.pow(2,21),i4=Math.pow(2,28),o4=Math.pow(2,35),s4=Math.pow(2,42),a4=Math.pow(2,49),c4=Math.pow(2,56),f4=Math.pow(2,63);Ty.exports=function(t){return t<t4?1:t<r4?2:t<n4?3:t<i4?4:t<o4?5:t<s4?6:t<a4?7:t<c4?8:t<f4?9:10}});var ky=se((T7,_y)=>{_y.exports={encode:Ay(),decode:By(),encodingLength:Iy()}});var Ly=se((I7,Ry)=>{"use strict";var u4=Object.freeze({identity:0,sha1:17,"sha2-256":18,"sha2-512":19,"sha3-512":20,"sha3-384":21,"sha3-256":22,"sha3-224":23,"shake-128":24,"shake-256":25,"keccak-224":26,"keccak-256":27,"keccak-384":28,"keccak-512":29,blake3:30,"murmur3-128":34,"murmur3-32":35,"dbl-sha2-256":86,md4:212,md5:213,bmt:214,"sha2-256-trunc254-padded":4114,"ripemd-128":4178,"ripemd-160":4179,"ripemd-256":4180,"ripemd-320":4181,x11:4352,kangarootwelve:7425,"sm3-256":21325,"blake2b-8":45569,"blake2b-16":45570,"blake2b-24":45571,"blake2b-32":45572,"blake2b-40":45573,"blake2b-48":45574,"blake2b-56":45575,"blake2b-64":45576,"blake2b-72":45577,"blake2b-80":45578,"blake2b-88":45579,"blake2b-96":45580,"blake2b-104":45581,"blake2b-112":45582,"blake2b-120":45583,"blake2b-128":45584,"blake2b-136":45585,"blake2b-144":45586,"blake2b-152":45587,"blake2b-160":45588,"blake2b-168":45589,"blake2b-176":45590,"blake2b-184":45591,"blake2b-192":45592,"blake2b-200":45593,"blake2b-208":45594,"blake2b-216":45595,"blake2b-224":45596,"blake2b-232":45597,"blake2b-240":45598,"blake2b-248":45599,"blake2b-256":45600,"blake2b-264":45601,"blake2b-272":45602,"blake2b-280":45603,"blake2b-288":45604,"blake2b-296":45605,"blake2b-304":45606,"blake2b-312":45607,"blake2b-320":45608,"blake2b-328":45609,"blake2b-336":45610,"blake2b-344":45611,"blake2b-352":45612,"blake2b-360":45613,"blake2b-368":45614,"blake2b-376":45615,"blake2b-384":45616,"blake2b-392":45617,"blake2b-400":45618,"blake2b-408":45619,"blake2b-416":45620,"blake2b-424":45621,"blake2b-432":45622,"blake2b-440":45623,"blake2b-448":45624,"blake2b-456":45625,"blake2b-464":45626,"blake2b-472":45627,"blake2b-480":45628,"blake2b-488":45629,"blake2b-496":45630,"blake2b-504":45631,"blake2b-512":45632,"blake2s-8":45633,"blake2s-16":45634,"blake2s-24":45635,"blake2s-32":45636,"blake2s-40":45637,"blake2s-48":45638,"blake2s-56":45639,"blake2s-64":45640,"blake2s-72":45641,"blake2s-80":45642,"blake2s-88":45643,"blake2s-96":45644,"blake2s-104":45645,"blake2s-112":45646,"blake2s-120":45647,"blake2s-128":45648,"blake2s-136":45649,"blake2s-144":45650,"blake2s-152":45651,"blake2s-160":45652,"blake2s-168":45653,"blake2s-176":45654,"blake2s-184":45655,"blake2s-192":45656,"blake2s-200":45657,"blake2s-208":45658,"blake2s-216":45659,"blake2s-224":45660,"blake2s-232":45661,"blake2s-240":45662,"blake2s-248":45663,"blake2s-256":45664,"skein256-8":45825,"skein256-16":45826,"skein256-24":45827,"skein256-32":45828,"skein256-40":45829,"skein256-48":45830,"skein256-56":45831,"skein256-64":45832,"skein256-72":45833,"skein256-80":45834,"skein256-88":45835,"skein256-96":45836,"skein256-104":45837,"skein256-112":45838,"skein256-120":45839,"skein256-128":45840,"skein256-136":45841,"skein256-144":45842,"skein256-152":45843,"skein256-160":45844,"skein256-168":45845,"skein256-176":45846,"skein256-184":45847,"skein256-192":45848,"skein256-200":45849,"skein256-208":45850,"skein256-216":45851,"skein256-224":45852,"skein256-232":45853,"skein256-240":45854,"skein256-248":45855,"skein256-256":45856,"skein512-8":45857,"skein512-16":45858,"skein512-24":45859,"skein512-32":45860,"skein512-40":45861,"skein512-48":45862,"skein512-56":45863,"skein512-64":45864,"skein512-72":45865,"skein512-80":45866,"skein512-88":45867,"skein512-96":45868,"skein512-104":45869,"skein512-112":45870,"skein512-120":45871,"skein512-128":45872,"skein512-136":45873,"skein512-144":45874,"skein512-152":45875,"skein512-160":45876,"skein512-168":45877,"skein512-176":45878,"skein512-184":45879,"skein512-192":45880,"skein512-200":45881,"skein512-208":45882,"skein512-216":45883,"skein512-224":45884,"skein512-232":45885,"skein512-240":45886,"skein512-248":45887,"skein512-256":45888,"skein512-264":45889,"skein512-272":45890,"skein512-280":45891,"skein512-288":45892,"skein512-296":45893,"skein512-304":45894,"skein512-312":45895,"skein512-320":45896,"skein512-328":45897,"skein512-336":45898,"skein512-344":45899,"skein512-352":45900,"skein512-360":45901,"skein512-368":45902,"skein512-376":45903,"skein512-384":45904,"skein512-392":45905,"skein512-400":45906,"skein512-408":45907,"skein512-416":45908,"skein512-424":45909,"skein512-432":45910,"skein512-440":45911,"skein512-448":45912,"skein512-456":45913,"skein512-464":45914,"skein512-472":45915,"skein512-480":45916,"skein512-488":45917,"skein512-496":45918,"skein512-504":45919,"skein512-512":45920,"skein1024-8":45921,"skein1024-16":45922,"skein1024-24":45923,"skein1024-32":45924,"skein1024-40":45925,"skein1024-48":45926,"skein1024-56":45927,"skein1024-64":45928,"skein1024-72":45929,"skein1024-80":45930,"skein1024-88":45931,"skein1024-96":45932,"skein1024-104":45933,"skein1024-112":45934,"skein1024-120":45935,"skein1024-128":45936,"skein1024-136":45937,"skein1024-144":45938,"skein1024-152":45939,"skein1024-160":45940,"skein1024-168":45941,"skein1024-176":45942,"skein1024-184":45943,"skein1024-192":45944,"skein1024-200":45945,"skein1024-208":45946,"skein1024-216":45947,"skein1024-224":45948,"skein1024-232":45949,"skein1024-240":45950,"skein1024-248":45951,"skein1024-256":45952,"skein1024-264":45953,"skein1024-272":45954,"skein1024-280":45955,"skein1024-288":45956,"skein1024-296":45957,"skein1024-304":45958,"skein1024-312":45959,"skein1024-320":45960,"skein1024-328":45961,"skein1024-336":45962,"skein1024-344":45963,"skein1024-352":45964,"skein1024-360":45965,"skein1024-368":45966,"skein1024-376":45967,"skein1024-384":45968,"skein1024-392":45969,"skein1024-400":45970,"skein1024-408":45971,"skein1024-416":45972,"skein1024-424":45973,"skein1024-432":45974,"skein1024-440":45975,"skein1024-448":45976,"skein1024-456":45977,"skein1024-464":45978,"skein1024-472":45979,"skein1024-480":45980,"skein1024-488":45981,"skein1024-496":45982,"skein1024-504":45983,"skein1024-512":45984,"skein1024-520":45985,"skein1024-528":45986,"skein1024-536":45987,"skein1024-544":45988,"skein1024-552":45989,"skein1024-560":45990,"skein1024-568":45991,"skein1024-576":45992,"skein1024-584":45993,"skein1024-592":45994,"skein1024-600":45995,"skein1024-608":45996,"skein1024-616":45997,"skein1024-624":45998,"skein1024-632":45999,"skein1024-640":46e3,"skein1024-648":46001,"skein1024-656":46002,"skein1024-664":46003,"skein1024-672":46004,"skein1024-680":46005,"skein1024-688":46006,"skein1024-696":46007,"skein1024-704":46008,"skein1024-712":46009,"skein1024-720":46010,"skein1024-728":46011,"skein1024-736":46012,"skein1024-744":46013,"skein1024-752":46014,"skein1024-760":46015,"skein1024-768":46016,"skein1024-776":46017,"skein1024-784":46018,"skein1024-792":46019,"skein1024-800":46020,"skein1024-808":46021,"skein1024-816":46022,"skein1024-824":46023,"skein1024-832":46024,"skein1024-840":46025,"skein1024-848":46026,"skein1024-856":46027,"skein1024-864":46028,"skein1024-872":46029,"skein1024-880":46030,"skein1024-888":46031,"skein1024-896":46032,"skein1024-904":46033,"skein1024-912":46034,"skein1024-920":46035,"skein1024-928":46036,"skein1024-936":46037,"skein1024-944":46038,"skein1024-952":46039,"skein1024-960":46040,"skein1024-968":46041,"skein1024-976":46042,"skein1024-984":46043,"skein1024-992":46044,"skein1024-1000":46045,"skein1024-1008":46046,"skein1024-1016":46047,"skein1024-1024":46048,"poseidon-bls12_381-a2-fc1":46081,"poseidon-bls12_381-a2-fc1-sc":46082});Ry.exports={names:u4}});function l4(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(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,m=0,g=0,b=h.length;g!==b&&h[g]===0;)g++,p++;for(var x=(b-g)*u+1>>>0,S=new Uint8Array(x);g!==b;){for(var w=h[g],E=0,D=x-1;(w!==0||E<m)&&D!==-1;D--,E++)w+=256*S[D]>>>0,S[D]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,g++}for(var B=x-m;B!==x&&S[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=t.charAt(S[B]);return U}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var m=0,g=0;h[p]===c;)m++,p++;for(var b=(h.length-p)*f+1>>>0,x=new Uint8Array(b);h[p];){var S=r[h.charCodeAt(p)];if(S===255)return;for(var w=0,E=b-1;(S!==0||w<g)&&E!==-1;E--,w++)S+=a*x[E]>>>0,x[E]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");g=w,p++}if(h[p]!==" "){for(var D=b-g;D!==b&&x[D]===0;)D++;for(var B=new Uint8Array(m+(b-D)),U=m;D!==b;)B[U++]=x[D++];return B}}}function y(h){var p=d(h);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:d,decode:y}}var h4,d4,Ny,Uy=le(()=>{h4=l4,d4=h4,Ny=d4});var k7,Py,br,Oy,My,Fr=le(()=>{k7=new Uint8Array(0),Py=(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},br=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")},Oy=t=>new TextEncoder().encode(t),My=t=>new TextDecoder().decode(t)});var qf,Hf,zf,Fy,Gf,di,Vr,p4,m4,_e,Nt=le(()=>{Uy();Fr();qf=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")}},Hf=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 Fy(this,e)}},zf=class{constructor(e){this.decoders=e}or(e){return Fy(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`)}},Fy=(t,e)=>new zf({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Gf=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new qf(e,r,n),this.decoder=new Hf(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},di=({name:t,prefix:e,encode:r,decode:n})=>new Gf(t,e,r,n),Vr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=Ny(r,e);return di({prefix:t,name:e,encode:n,decode:o=>br(i(o))})},p4=(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},m4=(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},_e=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>di({prefix:e,name:t,encode(i){return m4(i,n,r)},decode(i){return p4(i,n,r,t)}})});var $f={};J($f,{identity:()=>y4});var y4,Vy=le(()=>{Nt();Fr();y4=di({prefix:"\0",name:"identity",encode:t=>My(t),decode:t=>Oy(t)})});var Wf={};J(Wf,{base2:()=>g4});var g4,qy=le(()=>{Nt();g4=_e({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var Yf={};J(Yf,{base8:()=>x4});var x4,Hy=le(()=>{Nt();x4=_e({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var Xf={};J(Xf,{base10:()=>b4});var b4,zy=le(()=>{Nt();b4=Vr({prefix:"9",name:"base10",alphabet:"0123456789"})});var Zf={};J(Zf,{base16:()=>w4,base16upper:()=>v4});var w4,v4,Gy=le(()=>{Nt();w4=_e({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),v4=_e({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var Qf={};J(Qf,{base32:()=>pi,base32hex:()=>C4,base32hexpad:()=>B4,base32hexpadupper:()=>T4,base32hexupper:()=>D4,base32pad:()=>S4,base32padupper:()=>A4,base32upper:()=>E4,base32z:()=>I4});var pi,E4,S4,A4,C4,D4,B4,T4,I4,jf=le(()=>{Nt();pi=_e({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),E4=_e({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),S4=_e({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),A4=_e({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),C4=_e({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),D4=_e({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),B4=_e({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),T4=_e({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),I4=_e({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var Jf={};J(Jf,{base36:()=>_4,base36upper:()=>k4});var _4,k4,$y=le(()=>{Nt();_4=Vr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),k4=Vr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var eu={};J(eu,{base58btc:()=>Xt,base58flickr:()=>R4});var Xt,R4,tu=le(()=>{Nt();Xt=Vr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),R4=Vr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var ru={};J(ru,{base64:()=>L4,base64pad:()=>N4,base64url:()=>U4,base64urlpad:()=>P4});var L4,N4,U4,P4,Wy=le(()=>{Nt();L4=_e({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),N4=_e({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),U4=_e({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),P4=_e({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var nu={};J(nu,{base256emoji:()=>V4});function K4(t){return t.reduce((e,r)=>(e+=O4[r],e),"")}function F4(t){let e=[];for(let r of t){let n=M4[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Yy,O4,M4,V4,Xy=le(()=>{Nt();Yy=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}"),O4=Yy.reduce((t,e,r)=>(t[r]=e,t),[]),M4=Yy.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);V4=di({prefix:"\u{1F680}",name:"base256emoji",encode:K4,decode:F4})});function jy(t,e,r){e=e||[],r=r||0;for(var n=r;t>=G4;)e[r++]=t&255|Zy,t/=128;for(;t&z4;)e[r++]=t&255|Zy,t>>>=7;return e[r]=t|0,jy.bytes=r-n+1,e}function iu(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw iu.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Qy)<<i:(s&Qy)*Math.pow(2,i),i+=7}while(s>=W4);return iu.bytes=o-n,r}var q4,Zy,H4,z4,G4,$4,W4,Qy,Y4,X4,Z4,Q4,j4,J4,eS,tS,rS,nS,iS,oS,po,Jy=le(()=>{q4=jy,Zy=128,H4=127,z4=~H4,G4=Math.pow(2,31);$4=iu,W4=128,Qy=127;Y4=Math.pow(2,7),X4=Math.pow(2,14),Z4=Math.pow(2,21),Q4=Math.pow(2,28),j4=Math.pow(2,35),J4=Math.pow(2,42),eS=Math.pow(2,49),tS=Math.pow(2,56),rS=Math.pow(2,63),nS=function(t){return t<Y4?1:t<X4?2:t<Z4?3:t<Q4?4:t<j4?5:t<J4?6:t<eS?7:t<tS?8:t<rS?9:10},iS={encode:q4,decode:$4,encodingLength:nS},oS=iS,po=oS});var mo,mi,yi,aa=le(()=>{Jy();mo=(t,e=0)=>[po.decode(t,e),po.decode.bytes],mi=(t,e,r=0)=>(po.encode(t,e,r),e),yi=t=>po.encodingLength(t)});var Cn,e1,t1,gi,go=le(()=>{Fr();aa();Cn=(t,e)=>{let r=e.byteLength,n=yi(t),i=n+yi(r),o=new Uint8Array(i+r);return mi(t,o,0),mi(r,o,n),o.set(e,i),new gi(t,r,e,o)},e1=t=>{let e=br(t),[r,n]=mo(e),[i,o]=mo(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new gi(r,i,s,e)},t1=(t,e)=>t===e?!0:t.code===e.code&&t.size===e.size&&Py(t.bytes,e.bytes),gi=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}}});var su,ou,au=le(()=>{go();su=({name:t,code:e,encode:r})=>new ou(t,e,r),ou=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?Cn(this.code,r):r.then(n=>Cn(this.code,n))}else throw Error("Unknown type, must be binary type")}}});var cu={};J(cu,{sha256:()=>sS,sha512:()=>aS});var n1,sS,aS,i1=le(()=>{au();n1=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),sS=su({name:"sha2-256",code:18,encode:n1("SHA-256")}),aS=su({name:"sha2-512",code:19,encode:n1("SHA-512")})});var fu={};J(fu,{identity:()=>uS});var o1,cS,s1,fS,uS,a1=le(()=>{Fr();go();o1=0,cS="identity",s1=br,fS=t=>Cn(o1,s1(t)),uS={code:o1,name:cS,encode:s1,digest:fS}});var c1=le(()=>{Fr()});var j7,J7,f1=le(()=>{j7=new TextEncoder,J7=new TextDecoder});var ua,dS,pS,mS,xo,yS,u1,l1,ca,fa,gS,xS,bS,h1=le(()=>{aa();go();tu();jf();Fr();ua=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this.byteOffset=i.byteOffset,this.byteLength=i.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:fa,byteLength:fa,code:ca,version:ca,multihash:ca,bytes:ca,_baseCache:fa,asCID:fa})}toV0(){switch(this.version){case 0:return this;default:{let{code:e,multihash:r}=this;if(e!==xo)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==yS)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=Cn(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(e){return e&&this.code===e.code&&this.version===e.version&&t1(this.multihash,e.multihash)}toString(e){let{bytes:r,version:n,_baseCache:i}=this;switch(n){case 0:return pS(r,i,e||Xt.encoder);default:return mS(r,i,e||pi.encoder)}}toJSON(){return{code:this.code,version:this.version,hash:this.multihash.bytes}}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return"CID("+this.toString()+")"}static isCID(e){return xS(/^0\.0/,bS),!!(e&&(e[l1]||e.asCID===e))}get toBaseEncodedString(){throw new Error("Deprecated, use .toString()")}get codec(){throw new Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw new Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw new Error('"multibaseName" property is deprecated')}get prefix(){throw new Error('"prefix" property is deprecated')}static asCID(e){if(e instanceof t)return e;if(e!=null&&e.asCID===e){let{version:r,code:n,multihash:i,bytes:o}=e;return new t(r,n,i,o||u1(r,n,i.bytes))}else if(e!=null&&e[l1]===!0){let{version:r,multihash:n,code:i}=e,o=e1(n);return t.create(r,i,o)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");switch(e){case 0:{if(r!==xo)throw new Error(`Version 0 CID must use dag-pb (code: ${xo}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=u1(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,xo,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=br(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 gi(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,d]=mo(e.subarray(r));return r+=d,l},i=n(),o=xo;if(i===18?(i=0,r=0):i===1&&(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]=dS(e,r),o=t.decode(i);return o._baseCache.set(n,e),o}},dS=(t,e)=>{switch(t[0]){case"Q":{let r=e||Xt;return[Xt.prefix,r.decode(`${Xt.prefix}${t}`)]}case Xt.prefix:{let r=e||Xt;return[Xt.prefix,r.decode(t)]}case pi.prefix:{let r=e||pi;return[pi.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)]}}},pS=(t,e,r)=>{let{prefix:n}=r;if(n!==Xt.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},mS=(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},xo=112,yS=18,u1=(t,e,r)=>{let n=yi(t),i=n+yi(e),o=new Uint8Array(i+r.byteLength);return mi(t,o,0),mi(e,o,n),o.set(r,i),o},l1=Symbol.for("@ipld/js-cid/CID"),ca={writable:!1,configurable:!1,enumerable:!0},fa={writable:!1,enumerable:!1,configurable:!1},gS="0.0.0-dev",xS=(t,e)=>{if(t.test(gS))console.warn(e);else throw new Error(e)},bS=`CID.isCID(v) is deprecated and will be removed in the next major release.
|
|
16
16
|
Following code pattern:
|
|
17
17
|
|
|
18
18
|
if (CID.isCID(value)) {
|
|
@@ -26,7 +26,7 @@ if (cid) {
|
|
|
26
26
|
// Make sure to use cid instead of value
|
|
27
27
|
doSomethingWithCID(cid)
|
|
28
28
|
}
|
|
29
|
-
`});var q1=lt(()=>{H1();zs();Ur();mu();eo()});var xu,aR,z1=lt(()=>{g1();x1();b1();w1();v1();su();E1();uu();S1();D1();N1();O1();K1();M1();q1();xu={...tu,...eu,...ru,...nu,...iu,...ou,...au,...cu,...fu,...lu},aR={...yu,...gu}});function ai(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}var Ys=lt(()=>{});function Xs(e=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?ai(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var bu=lt(()=>{Ys()});function W1(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var G1,wu,UE,Zs,vu=lt(()=>{z1();bu();G1=W1("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),wu=W1("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Xs(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),UE={utf8:G1,"utf-8":G1,hex:xu.base16,latin1:wu,ascii:wu,binary:wu,...xu},Zs=UE});var $1={};ct($1,{toString:()=>OE});function OE(e,t="utf8"){let r=Zs[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}var Y1=lt(()=>{vu()});var X1={};ct(X1,{fromString:()=>KE});function KE(e,t="utf8"){let r=Zs[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ai(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var Z1=lt(()=>{vu();Ys()});var Q1={};ct(Q1,{concat:()=>ME});function ME(e,t){t||(t=e.reduce((i,o)=>i+o.length,0));let r=Xs(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return ai(r)}var j1=lt(()=>{bu();Ys()});var Su=ot((wR,i2)=>{"use strict";var J1=Zp(),ci=a1(),{names:no}=u1(),{toString:Qs}=(Y1(),oo($1)),{fromString:FE}=(Z1(),oo(X1)),{concat:VE}=(j1(),oo(Q1)),ui={};for(let e in no){let t=e;ui[no[t]]=t}Object.freeze(ui);function HE(e){if(!(e instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Qs(e,"base16")}function qE(e){return FE(e,"base16")}function zE(e){if(!(e instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Qs(J1.encode("base58btc",e)).slice(1)}function GE(e){let t=e instanceof Uint8Array?Qs(e):e;return J1.decode("z"+t)}function t2(e){if(!(e instanceof Uint8Array))throw new Error("multihash must be a Uint8Array");if(e.length<2)throw new Error("multihash too short. must be > 2 bytes.");let t=ci.decode(e);if(!r2(t))throw new Error(`multihash unknown function code: 0x${t.toString(16)}`);e=e.slice(ci.decode.bytes);let r=ci.decode(e);if(r<0)throw new Error(`multihash invalid length: ${r}`);if(e=e.slice(ci.decode.bytes),e.length!==r)throw new Error(`multihash length inconsistent: 0x${Qs(e,"base16")}`);return{code:t,name:ui[t],length:r,digest:e}}function WE(e,t,r){if(!e||t===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=e2(t);if(!(e instanceof Uint8Array))throw new Error("digest should be a Uint8Array");if(r==null&&(r=e.length),r&&e.length!==r)throw new Error("digest length should be equal to specified length.");let i=ci.encode(n),o=ci.encode(r);return VE([i,o,e],i.length+o.length+e.length)}function e2(e){let t=e;if(typeof e=="string"){if(no[e]===void 0)throw new Error(`Unrecognized hash function named: ${e}`);t=no[e]}if(typeof t!="number")throw new Error(`Hash function code should be a number. Got: ${t}`);if(ui[t]===void 0&&!Eu(t))throw new Error(`Unrecognized function code: ${t}`);return t}function Eu(e){return e>0&&e<16}function r2(e){return!!(Eu(e)||ui[e])}function n2(e){t2(e)}function $E(e){return n2(e),e.subarray(0,2)}i2.exports={names:no,codes:ui,toHexString:HE,fromHexString:qE,toB58String:zE,fromB58String:GE,decode:t2,encode:WE,coerceCode:e2,isAppCode:Eu,validate:n2,prefix:$E,isValidCode:r2}});var i3={};ct(i3,{webRTC:()=>n3,webRTCDirect:()=>r3});var s3=Symbol.for("@libp2p/connection");var c3=Symbol.for("@libp2p/content-routing");var l3=Symbol.for("@libp2p/peer-discovery");var Ku=Symbol.for("@libp2p/peer-id");var p3=Symbol.for("@libp2p/peer-routing");var Mu;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(Mu||(Mu={}));var so=Symbol.for("@libp2p/transport");var Fu;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Fu||(Fu={}));var W=class extends Error{code;props;constructor(t,r,n){super(t),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var ao=class extends EventTarget{#t=new Map;listenerCount(t){let r=this.#t.get(t);return r==null?0:r.length}addEventListener(t,r,n){super.addEventListener(t,r,n);let i=this.#t.get(t);i==null&&(i=[],this.#t.set(t,i)),i.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(t,r,n){super.removeEventListener(t.toString(),r??null,n);let i=this.#t.get(t);i!=null&&(i=i.filter(({callback:o})=>o!==r),this.#t.set(t,i))}dispatchEvent(t){let r=super.dispatchEvent(t),n=this.#t.get(t.type);return n==null||(n=n.filter(({once:i})=>!i),this.#t.set(t.type,n)),r}safeDispatchEvent(t,r){return this.dispatchEvent(new _2(t,r))}},ra=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},_2=globalThis.CustomEvent??ra;var Vu=(e,...t)=>{try{[...t]}catch{}};var aa={};ct(aa,{base58btc:()=>_t,base58flickr:()=>U2});function k2(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=e.length,c=e.charAt(0),u=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,y=0,g=0,b=h.length;g!==b&&h[g]===0;)g++,p++;for(var x=(b-g)*f+1>>>0,D=new Uint8Array(x);g!==b;){for(var v=h[g],E=0,C=x-1;(v!==0||E<y)&&C!==-1;C--,E++)v+=256*D[C]>>>0,D[C]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");y=E,g++}for(var B=x-y;B!==x&&D[B]===0;)B++;for(var O=c.repeat(p);B<x;++B)O+=e.charAt(D[B]);return O}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var y=0,g=0;h[p]===c;)y++,p++;for(var b=(h.length-p)*u+1>>>0,x=new Uint8Array(b);h[p];){var D=r[h.charCodeAt(p)];if(D===255)return;for(var v=0,E=b-1;(D!==0||v<g)&&E!==-1;E--,v++)D+=a*x[E]>>>0,x[E]=D%256>>>0,D=D/256>>>0;if(D!==0)throw new Error("Non-zero carry");g=v,p++}if(h[p]!==" "){for(var C=b-g;C!==b&&x[C]===0;)C++;for(var B=new Uint8Array(y+(b-C)),O=y;C!==b;)B[O++]=x[C++];return B}}}function m(h){var p=d(h);if(p)return p;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:d,decode:m}}var R2=k2,L2=R2,Hu=L2;var Z3=new Uint8Array(0);var qu=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},Ze=e=>{if(e instanceof Uint8Array&&e.constructor.name==="Uint8Array")return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};var zu=e=>new TextEncoder().encode(e),Gu=e=>new TextDecoder().decode(e);var na=class{constructor(t,r,n){this.name=t,this.prefix=r,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},ia=class{constructor(t,r,n){if(this.name=t,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return $u(this,t)}},oa=class{constructor(t){this.decoders=t}or(t){return $u(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},$u=(e,t)=>new oa({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),sa=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new na(t,r,n),this.decoder=new ia(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},vn=({name:e,prefix:t,encode:r,decode:n})=>new sa(e,t,r,n),gr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Hu(r,t);return vn({prefix:e,name:t,encode:n,decode:o=>Ze(i(o))})},N2=(e,t,r,n)=>{let i={};for(let f=0;f<t.length;++f)i[t[f]]=f;let o=e.length;for(;e[o-1]==="=";)--o;let s=new Uint8Array(o*r/8|0),a=0,c=0,u=0;for(let f=0;f<o;++f){let l=i[e[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<r|l,a+=r,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},P2=(e,t,r)=>{let n=t[t.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Tt=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>vn({prefix:t,name:e,encode(i){return P2(i,n,r)},decode(i){return N2(i,n,r,e)}});var _t=gr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),U2=gr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ca={};ct(ca,{base10:()=>O2});var O2=gr({prefix:"9",name:"base10",alphabet:"0123456789"});var ua={};ct(ua,{base16:()=>K2,base16upper:()=>M2});var K2=Tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),M2=Tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var fa={};ct(fa,{base2:()=>F2});var F2=Tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var la={};ct(la,{base256emoji:()=>G2});var Yu=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}"),V2=Yu.reduce((e,t,r)=>(e[r]=t,e),[]),H2=Yu.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function q2(e){return e.reduce((t,r)=>(t+=V2[r],t),"")}function z2(e){let t=[];for(let r of e){let n=H2[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var G2=vn({prefix:"\u{1F680}",name:"base256emoji",encode:q2,decode:z2});var ha={};ct(ha,{base32:()=>Qe,base32hex:()=>X2,base32hexpad:()=>Q2,base32hexpadupper:()=>j2,base32hexupper:()=>Z2,base32pad:()=>$2,base32padupper:()=>Y2,base32upper:()=>W2,base32z:()=>J2});var Qe=Tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),W2=Tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),$2=Tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Y2=Tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),X2=Tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Z2=Tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Q2=Tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),j2=Tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),J2=Tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var da={};ct(da,{base36:()=>tm,base36upper:()=>em});var tm=gr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),em=gr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ma={};ct(ma,{base64:()=>co,base64pad:()=>rm,base64url:()=>pa,base64urlpad:()=>nm});var co=Tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),rm=Tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),pa=Tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),nm=Tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ya={};ct(ya,{base8:()=>im});var im=Tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ga={};ct(ga,{identity:()=>om});var om=vn({prefix:"\0",name:"identity",encode:e=>Gu(e),decode:e=>zu(e)});var l4=new TextEncoder,h4=new TextDecoder;var ba={};ct(ba,{identity:()=>xr});var cm=Qu,Xu=128,um=127,fm=~um,lm=Math.pow(2,31);function Qu(e,t,r){t=t||[],r=r||0;for(var n=r;e>=lm;)t[r++]=e&255|Xu,e/=128;for(;e&fm;)t[r++]=e&255|Xu,e>>>=7;return t[r]=e|0,Qu.bytes=r-n+1,t}var hm=xa,dm=128,Zu=127;function xa(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw xa.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&Zu)<<i:(s&Zu)*Math.pow(2,i),i+=7}while(s>=dm);return xa.bytes=o-n,r}var pm=Math.pow(2,7),mm=Math.pow(2,14),ym=Math.pow(2,21),gm=Math.pow(2,28),xm=Math.pow(2,35),bm=Math.pow(2,42),wm=Math.pow(2,49),vm=Math.pow(2,56),Em=Math.pow(2,63),Sm=function(e){return e<pm?1:e<mm?2:e<ym?3:e<gm?4:e<xm?5:e<bm?6:e<wm?7:e<vm?8:e<Em?9:10},Am={encode:cm,decode:hm,encodingLength:Sm},Dm=Am,li=Dm;var hi=(e,t=0)=>[li.decode(e,t),li.decode.bytes],En=(e,t,r=0)=>(li.encode(e,t,r),t),Sn=e=>li.encodingLength(e);var Pe=(e,t)=>{let r=t.byteLength,n=Sn(e),i=n+Sn(r),o=new Uint8Array(i+r);return En(e,o,0),En(r,o,n),o.set(t,i),new An(e,r,t,o)},Mr=e=>{let t=Ze(e),[r,n]=hi(t),[i,o]=hi(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new An(r,i,s,t)},ju=(e,t)=>{if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&qu(e.bytes,r.bytes)}},An=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var Ju=0,Cm="identity",tf=Ze,Bm=e=>Pe(Ju,tf(e)),xr={code:Ju,name:Cm,encode:tf,digest:Bm};var Ea={};ct(Ea,{sha256:()=>Gt,sha512:()=>Tm});var va=({name:e,code:t,encode:r})=>new wa(e,t,r),wa=class{constructor(t,r,n){this.name=t,this.code=r,this.encode=n}digest(t){if(t instanceof Uint8Array){let r=this.encode(t);return r instanceof Uint8Array?Pe(this.code,r):r.then(n=>Pe(this.code,n))}else throw Error("Unknown type, must be binary type")}};var rf=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Gt=va({name:"sha2-256",code:18,encode:rf("SHA-256")}),Tm=va({name:"sha2-512",code:19,encode:rf("SHA-512")});var nf=(e,t)=>{let{bytes:r,version:n}=e;switch(n){case 0:return _m(r,Sa(e),t||_t.encoder);default:return km(r,Sa(e),t||Qe.encoder)}};var of=new WeakMap,Sa=e=>{let t=of.get(e);if(t==null){let r=new Map;return of.set(e,r),r}return t},we=class e{constructor(t,r,n,i){this.code=r,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:r}=this;if(t!==di)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Rm)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return e.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:r}=this.multihash,n=Pe(t,r);return e.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return e.equals(this,t)}static equals(t,r){let n=r;return n&&t.code===n.code&&t.version===n.version&&ju(t.multihash,n.multihash)}toString(t){return nf(this,t)}toJSON(){return{"/":nf(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let r=t;if(r instanceof e)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new e(n,i,o,s||sf(n,i,o.bytes))}else if(r[Lm]===!0){let{version:n,multihash:i,code:o}=r,s=Mr(i);return e.create(n,o,s)}else return null}static create(t,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(r!==di)throw new Error(`Version 0 CID must use dag-pb (code: ${di}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=sf(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,di,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=Ze(t.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new An(r.multihashCode,r.digestSize,o,i);return[r.version===0?e.createV0(s):e.createV1(r.codec,s),t.subarray(r.size)]}static inspectBytes(t){let r=0,n=()=>{let[l,d]=hi(t.subarray(r));return r+=d,l},i=n(),o=di;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(),u=r+c,f=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:u}}static parse(t,r){let[n,i]=Im(t,r),o=e.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Sa(o).set(n,t),o}},Im=(e,t)=>{switch(e[0]){case"Q":{let r=t||_t;return[_t.prefix,r.decode(`${_t.prefix}${e}`)]}case _t.prefix:{let r=t||_t;return[_t.prefix,r.decode(e)]}case Qe.prefix:{let r=t||Qe;return[Qe.prefix,r.decode(e)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}}},_m=(e,t,r)=>{let{prefix:n}=r;if(n!==_t.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=t.get(n);if(i==null){let o=r.encode(e).slice(1);return t.set(n,o),o}else return i},km=(e,t,r)=>{let{prefix:n}=r,i=t.get(n);if(i==null){let o=r.encode(e);return t.set(n,o),o}else return i},di=112,Rm=18,sf=(e,t,r)=>{let n=Sn(e),i=n+Sn(t),o=new Uint8Array(i+r.byteLength);return En(e,o,0),En(t,o,n),o.set(r,i),o},Lm=Symbol.for("@ipld/js-cid/CID");var Ot={...ga,...fa,...ya,...ca,...ua,...ha,...da,...aa,...ma,...la},T4={...Ea,...ba};function Aa(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var Nm=Symbol.for("nodejs.util.inspect.custom"),af=Object.values(Ot).map(e=>e.decoder).reduce((e,t)=>e.or(t),Ot.identity.decoder),cf=114,Da=36,Ca=37,pi=class{type;multihash;privateKey;publicKey;string;constructor(t){this.type=t.type,this.multihash=t.multihash,this.privateKey=t.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Ku]=!0;toString(){return this.string==null&&(this.string=_t.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return we.createV1(cf,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t instanceof Uint8Array)return Aa(this.multihash.bytes,t);if(typeof t=="string")return Vr(t).equals(this);if(t?.multihash?.bytes!=null)return Aa(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[Nm](){return`PeerId(${this.toString()})`}},Dn=class extends pi{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},Cn=class extends pi{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},Bn=class extends pi{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function Vr(e,t){if(t=t??af,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=Mr(_t.decode(`z${e}`));return e.startsWith("12D")?new Cn({multihash:r}):e.startsWith("16U")?new Bn({multihash:r}):new Dn({multihash:r})}return Pm(af.decode(e))}function Pm(e){try{let t=Mr(e);if(t.code===xr.code){if(t.digest.length===Da)return new Cn({multihash:t});if(t.digest.length===Ca)return new Bn({multihash:t})}if(t.code===Gt.code)return new Dn({multihash:t})}catch{return Um(we.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function Um(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==cf)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Gt.code)return new Dn({multihash:e.multihash});if(t.code===xr.code){if(t.digest.length===Da)return new Cn({multihash:e.multihash});if(t.digest.length===Ca)return new Bn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Ba(e,t){return e.length===Da?new Cn({multihash:Pe(xr.code,e),privateKey:t}):e.length===Ca?new Bn({multihash:Pe(xr.code,e),privateKey:t}):new Dn({multihash:await Gt.digest(e),publicKey:e,privateKey:t})}function fo(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function Hr(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function je(e=0){return globalThis.Buffer?.alloc!=null?Hr(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function Zt(e=0){return globalThis.Buffer?.allocUnsafe!=null?Hr(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function ff(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var uf=ff("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Ta=ff("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Zt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),Km={utf8:uf,"utf-8":uf,hex:Ot.base16,latin1:Ta,ascii:Ta,binary:Ta,...Ot},lo=Km;function re(e,t="utf8"){let r=lo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}var Mm=Math.pow(2,7),Fm=Math.pow(2,14),Vm=Math.pow(2,21),Ia=Math.pow(2,28),_a=Math.pow(2,35),ka=Math.pow(2,42),Ra=Math.pow(2,49),ht=128,Qt=127;function jt(e){if(e<Mm)return 1;if(e<Fm)return 2;if(e<Vm)return 3;if(e<Ia)return 4;if(e<_a)return 5;if(e<ka)return 6;if(e<Ra)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Hm(e,t,r=0){switch(jt(e)){case 8:t[r++]=e&255|ht,e/=128;case 7:t[r++]=e&255|ht,e/=128;case 6:t[r++]=e&255|ht,e/=128;case 5:t[r++]=e&255|ht,e/=128;case 4:t[r++]=e&255|ht,e>>>=7;case 3:t[r++]=e&255|ht,e>>>=7;case 2:t[r++]=e&255|ht,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function qm(e,t,r=0){switch(jt(e)){case 8:t.set(r++,e&255|ht),e/=128;case 7:t.set(r++,e&255|ht),e/=128;case 6:t.set(r++,e&255|ht),e/=128;case 5:t.set(r++,e&255|ht),e/=128;case 4:t.set(r++,e&255|ht),e>>>=7;case 3:t.set(r++,e&255|ht),e>>>=7;case 2:t.set(r++,e&255|ht),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function zm(e,t){let r=e[t],n=0;if(n+=r&Qt,r<ht||(r=e[t+1],n+=(r&Qt)<<7,r<ht)||(r=e[t+2],n+=(r&Qt)<<14,r<ht)||(r=e[t+3],n+=(r&Qt)<<21,r<ht)||(r=e[t+4],n+=(r&Qt)*Ia,r<ht)||(r=e[t+5],n+=(r&Qt)*_a,r<ht)||(r=e[t+6],n+=(r&Qt)*ka,r<ht)||(r=e[t+7],n+=(r&Qt)*Ra,r<ht))return n;throw new RangeError("Could not decode varint")}function Gm(e,t){let r=e.get(t),n=0;if(n+=r&Qt,r<ht||(r=e.get(t+1),n+=(r&Qt)<<7,r<ht)||(r=e.get(t+2),n+=(r&Qt)<<14,r<ht)||(r=e.get(t+3),n+=(r&Qt)<<21,r<ht)||(r=e.get(t+4),n+=(r&Qt)*Ia,r<ht)||(r=e.get(t+5),n+=(r&Qt)*_a,r<ht)||(r=e.get(t+6),n+=(r&Qt)*ka,r<ht)||(r=e.get(t+7),n+=(r&Qt)*Ra,r<ht))return n;throw new RangeError("Could not decode varint")}function br(e,t,r=0){return t==null&&(t=Zt(jt(e))),t instanceof Uint8Array?Hm(e,t,r):qm(e,t,r)}function ve(e,t=0){return e instanceof Uint8Array?zm(e,t):Gm(e,t)}function de(e,t){t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Zt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Hr(r)}var ho=class{index=0;input="";new(t){return this.index=0,this.input=t,this}readAtomically(t){let r=this.index,n=t();return n===void 0&&(this.index=r),n}parseWith(t){let r=t();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(t){return this.readAtomically(()=>{let r=this.readChar();if(r===t)return r})}readSeparator(t,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(t)===void 0))return n()})}readNumber(t,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",u=2**(8*i)-1;for(;;){let f=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let d=Number.parseInt(l,t);if(!Number.isNaN(d))return d});if(f===void 0)break;if(o*=t,o+=f,o>u||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:o})}readIPv4Addr(){return this.readAtomically(()=>{let t=new Uint8Array(4);for(let r=0;r<t.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;t[r]=n}return t})}readIPv6Addr(){let t=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=t(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=t(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var lf=45,Wm=15,Tn=new ho;function La(e){if(!(e.length>Wm))return Tn.new(e).parseWith(()=>Tn.readIPv4Addr())}function Na(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>lf))return Tn.new(e).parseWith(()=>Tn.readIPv6Addr())}function po(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>lf))return Tn.new(e).parseWith(()=>Tn.readIPAddr())}var aS=parseInt("0xFFFF",16),cS=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function yi(e,t="utf8"){let r=lo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Hr(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function mo(e){return!!La(e)}function yo(e){return!!Na(e)}function go(e){return!!po(e)}var pf=mo,Qm=yo,Pa=function(e){let t=0;if(e=e.toString().trim(),pf(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Qm(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=pf(r[n]),s;o&&(s=Pa(r[n]),r[n]=re(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,re(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(t+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[t++]=o>>8&255,i[t++]=o&255}return i}throw new Error("invalid ip address")},mf=function(e,t=0,r){t=~~t,r=r??e.length-t;let n=new DataView(e.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(e[t+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(t+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var In={},Ua={},Jm=[[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"]];Jm.forEach(e=>{let t=ty(...e);Ua[t.code]=t,In[t.name]=t});function ty(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function dt(e){if(typeof e=="number"){if(Ua[e]!=null)return Ua[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(In[e]!=null)return In[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var YS=dt("ip4"),XS=dt("ip6"),ZS=dt("ipcidr");function Ka(e,t){switch(dt(e).code){case 4:case 41:return ry(t);case 42:return xf(t);case 6:case 273:case 33:case 132:return wf(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return xf(t);case 421:return sy(t);case 444:return bf(t);case 445:return bf(t);case 466:return oy(t);default:return re(t,"base16")}}function Ma(e,t){switch(dt(e).code){case 4:return yf(t);case 41:return yf(t);case 42:return gf(t);case 6:case 273:case 33:case 132:return Fa(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return gf(t);case 421:return ny(t);case 444:return ay(t);case 445:return cy(t);case 466:return iy(t);default:return yi(t,"base16")}}var Oa=Object.values(Ot).map(e=>e.decoder),ey=function(){let e=Oa[0].or(Oa[1]);return Oa.slice(2).forEach(t=>e=e.or(t)),e}();function yf(e){if(!go(e))throw new Error("invalid ip address");return Pa(e)}function ry(e){let t=mf(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!go(t))throw new Error("invalid ip address");return t}function Fa(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function wf(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function gf(e){let t=yi(e),r=Uint8Array.from(br(t.length));return de([r,t],r.length+t.length)}function xf(e){let t=ve(e);if(e=e.slice(jt(t)),e.length!==t)throw new Error("inconsistent lengths");return re(e)}function ny(e){let t;e[0]==="Q"||e[0]==="1"?t=Mr(_t.decode(`z${e}`)).bytes:t=we.parse(e).multihash.bytes;let r=Uint8Array.from(br(t.length));return de([r,t],r.length+t.length)}function iy(e){let t=ey.decode(e),r=Uint8Array.from(br(t.length));return de([r,t],r.length+t.length)}function oy(e){let t=ve(e),r=e.slice(jt(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+re(r,"base64url")}function sy(e){let t=ve(e),r=e.slice(jt(t));if(r.length!==t)throw new Error("inconsistent lengths");return re(r,"base58btc")}function ay(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==16)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion address.`);let r=Qe.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Fa(n);return de([r,i],r.length+i.length)}function cy(e){let t=e.split(":");if(t.length!==2)throw new Error(`failed to parse onion addr: ["'${t.join('", "')}'"]' does not contain a port number`);if(t[0].length!==56)throw new Error(`failed to parse onion addr: ${t[0]} not a Tor onion3 address.`);let r=Qe.decode(`b${t[0]}`),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Fa(n);return de([r,i],r.length+i.length)}function bf(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=re(t,"base32"),i=wf(r);return`${n}:${i}`}function vf(e){e=Va(e);let t=[],r=[],n=null,i=e.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=dt(s);if(a.size===0){t.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw Sf("invalid address: "+e);if(a.path===!0){n=Va(i.slice(o).join("/")),t.push([a.code,Ma(a.code,n)]),r.push([a.code,n]);break}let c=Ma(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ka(a.code,c)])}return{string:Ef(r),bytes:qa(t),tuples:t,stringTuples:r,path:n}}function Ha(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=ve(e,i),s=jt(o),a=dt(o),c=uy(a,e.slice(i+s));if(c===0){t.push([o]),r.push([o]),i+=s;continue}let u=e.slice(i+s,i+s+c);if(i+=c+s,i>e.length)throw Sf("Invalid address Uint8Array: "+re(e,"base16"));t.push([o,u]);let f=Ka(o,u);if(r.push([o,f]),a.path===!0){n=f;break}}return{bytes:Uint8Array.from(e),string:Ef(r),tuples:t,stringTuples:r,path:n}}function Ef(e){let t=[];return e.map(r=>{let n=dt(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Va(t.join("/"))}function qa(e){return de(e.map(t=>{let r=dt(t[0]),n=Uint8Array.from(br(r.code));return t.length>1&&t[1]!=null&&(n=de([n,t[1]])),n}))}function uy(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=ve(t instanceof Uint8Array?t:Uint8Array.from(t));return r+jt(r)}}function Va(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function Sf(e){return new Error("Error parsing address: "+e)}var fy=Symbol.for("nodejs.util.inspect.custom"),za=Symbol.for("@multiformats/js-multiaddr/multiaddr"),ly=[dt("dns").code,dt("dns4").code,dt("dns6").code,dt("dnsaddr").code],xo=class e{bytes;#t;#e;#r;#n;[za]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Ha(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=vf(t)}else if(Df(t))r=Ha(t.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 t,r,n,i,o="",s=dt("tcp"),a=dt("udp"),c=dt("ip4"),u=dt("ip6"),f=dt("dns6"),l=dt("ip6zone");for(let[m,h]of this.stringTuples())m===l.code&&(o=`%${h??""}`),ly.includes(m)&&(r=s.name,i=443,n=`${h??""}${o}`,t=m===f.code?6:4),(m===s.code||m===a.code)&&(r=dt(m).name,i=parseInt(h??"")),(m===c.code||m===u.code)&&(r=dt(m).name,n=`${h??""}${o}`,t=m===u.code?6:4);if(t==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:t,host:n,transport:r,port:i}}protos(){return this.#e.map(([t])=>Object.assign({},dt(t)))}protoCodes(){return this.#e.map(([t])=>t)}protoNames(){return this.#e.map(([t])=>dt(t).name)}tuples(){return this.#e}stringTuples(){return this.#r}encapsulate(t){return t=new e(t),new e(this.toString()+t.toString())}decapsulate(t){let r=t.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${t.toString()}`);return new e(n.slice(0,i))}decapsulateCode(t){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===t)return new e(qa(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===In.p2p.code&&t.push([n,i]),n===In["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?re(_t.decode(`z${n}`),"base58btc"):re(we.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return fo(this.bytes,t.bytes)}async resolve(t){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=Af.get(r.name);if(n==null)throw new W(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,t)).map(o=>new e(o))}nodeAddress(){let t=this.toOptions();if(t.transport!=="tcp"&&t.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${t.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:t.family,address:t.host,port:t.port}}isThinWaistAddress(t){let r=(t??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[fy](){return`Multiaddr(${this.#t})`}};var Af=new Map;function Df(e){return!!e?.[za]}function Je(e){return new xo(e)}var hy=e=>e.toString().split("/").slice(1),gi=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),kt=e=>({match:t=>gi(r=>r===e).match(t),pattern:e}),vo=()=>({match:e=>gi(t=>typeof t=="string").match(e),pattern:"{string}"}),Cf=()=>({match:e=>gi(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),pe=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{_t.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),bo=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{pa.decode(e[1])}catch{return!1}return e.slice(2)},pattern:"/certhash/{certhash}"}),Ue=e=>({match:t=>{let r=e.match(t);return r===!1?t:r},pattern:`optional(${e.pattern})`}),Oe=(...e)=>({match:t=>{let r;for(let n of e){let i=n.match(t);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${e.map(t=>t.pattern).join(", ")})`}),Rt=(...e)=>({match:t=>{for(let r of e){let n=r.match(t);if(n===!1)return!1;t=n}return t},pattern:`and(${e.map(t=>t.pattern).join(", ")})`});function Kt(...e){function t(i){let o=hy(i);for(let s of e){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return t(i)!==!1}function n(i){let o=t(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Wa=Rt(kt("dns4"),vo()),$a=Rt(kt("dns6"),vo()),Ya=Rt(kt("dnsaddr"),vo()),Bf=Rt(kt("dns"),vo()),D5=Kt(Wa),C5=Kt($a),B5=Kt(Ya),T5=Kt(Oe(Bf,Ya,Wa,$a)),Tf=Rt(kt("ip4"),gi(mo)),If=Rt(kt("ip6"),gi(yo)),_f=Oe(Tf,If),xi=Oe(_f,Bf,Wa,$a,Ya),I5=Kt(xi),_5=Kt(Tf),k5=Kt(If),R5=Kt(_f),Eo=Rt(xi,kt("tcp"),Cf()),bi=Rt(xi,kt("udp"),Cf()),dy=Oe(Eo,bi),L5=Kt(Eo),N5=Kt(bi),Xa=Rt(bi,kt("quic")),So=Rt(bi,kt("quic-v1")),py=Oe(Xa,So),P5=Kt(Xa),U5=Kt(So),Ga=Oe(xi,Eo,bi,Xa,So),kf=Oe(Rt(Ga,kt("ws"),Ue(pe()))),O5=Kt(kf),Rf=Oe(Rt(Ga,kt("wss"),Ue(pe())),Rt(Ga,kt("tls"),kt("ws"),Ue(pe()))),K5=Kt(Rf),Lf=Rt(dy,kt("webrtc-direct"),bo(),Ue(bo()),Ue(pe())),Nf=Kt(Lf),Pf=Rt(So,kt("webtransport"),bo(),bo(),Ue(pe())),M5=Kt(Pf),wo=Oe(kf,Rf,Rt(Eo,Ue(pe())),Rt(py,Ue(pe())),Rt(xi,Ue(pe())),Lf,Pf,pe()),F5=Kt(wo),my=Rt(wo,kt("p2p-circuit"),pe()),V5=Kt(my),yy=Oe(Rt(wo,kt("p2p-circuit"),kt("webrtc"),pe()),Rt(wo,kt("webrtc"),Ue(pe())),kt("webrtc")),Uf=Kt(yy);var ce;(function(e){e.ERR_ALREADY_ABORTED="ERR_ALREADY_ABORTED",e.ERR_DATA_CHANNEL="ERR_DATA_CHANNEL",e.ERR_CONNECTION_CLOSED="ERR_CONNECTION_CLOSED",e.ERR_HASH_NOT_SUPPORTED="ERR_HASH_NOT_SUPPORTED",e.ERR_INVALID_MULTIADDR="ERR_INVALID_MULTIADDR",e.ERR_INVALID_FINGERPRINT="ERR_INVALID_FINGERPRINT",e.ERR_INVALID_PARAMETERS="ERR_INVALID_PARAMETERS",e.ERR_NOT_IMPLEMENTED="ERR_NOT_IMPLEMENTED",e.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS",e.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS"})(ce||(ce={}));var wr=class extends W{constructor(t,r){super(`WebRTC transport error: ${t}`,r??""),this.name="WebRTCTransportError"}};var Za=class extends wr{constructor(t,r){super(`[stream: ${t}] data channel error: ${r}`,ce.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function rc(e,t){return new Za(e,t)}var Qa=class extends wr{constructor(t){super(`There was a problem with the Multiaddr which was passed in: ${t}`,ce.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function Ao(e){return new Qa(e)}var ja=class extends wr{constructor(t){super(`There was a problem with a provided argument: ${t}`,ce.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function wi(e){return new ja(e)}var Ja=class extends wr{constructor(t,r){super(`Invalid fingerprint "${t}" within ${r}`,ce.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function nc(e,t){return new Ja(e,t)}var tc=class extends wr{constructor(t){super(`A method (${t}) was called though it has been intentionally left unimplemented.`,ce.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function Of(e){return new tc(e)}var ec=class extends wr{constructor(t){super(`unsupported hash algorithm: ${t}`,ce.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function Kf(e){return new ec(e)}var Mf=function(e,t,r){if(r||arguments.length===2)for(var n=0,i=t.length,o;n<i;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},gy=function(){function e(t,r,n){this.name=t,this.version=r,this.os=n,this.type="browser"}return e}();var xy=function(){function e(t){this.version=t,this.type="node",this.name="node",this.os=process.platform}return e}();var by=function(){function e(t,r,n,i){this.name=t,this.version=r,this.os=n,this.bot=i,this.type="bot-device"}return e}();var wy=function(){function e(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return e}();var vy=function(){function e(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return e}();var Ey=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,Sy=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Ff=3,Ay=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["pie",/^Microsoft Pocket Internet Explorer\/(\d+\.\d+)$/],["pie",/^Mozilla\/\d\.\d+\s\(compatible;\s(?:MSP?IE|MSInternet Explorer) (\d+\.\d+);.*Windows CE.*\)$/],["netfront",/^Mozilla\/\d\.\d+.*NetFront\/(\d.\d)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FB[AS]V\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["curl",/^curl\/([0-9\.]+)$/],["searchbot",Ey]],Vf=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Windows CE",/Windows CE|WinCE|Microsoft Pocket Internet Explorer/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function qf(e){return e?Hf(e):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new vy:typeof navigator<"u"?Hf(navigator.userAgent):By()}function Dy(e){return e!==""&&Ay.reduce(function(t,r){var n=r[0],i=r[1];if(t)return t;var o=i.exec(e);return!!o&&[n,o]},!1)}function Hf(e){var t=Dy(e);if(!t)return null;var r=t[0],n=t[1];if(r==="searchbot")return new wy;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Ff&&(i=Mf(Mf([],i,!0),Ty(Ff-i.length),!0)):i=[];var o=i.join("."),s=Cy(e),a=Sy.exec(e);return a&&a[1]?new by(r,o,s,a[1]):new gy(r,o,s)}function Cy(e){for(var t=0,r=Vf.length;t<r;t++){var n=Vf[t],i=n[0],o=n[1],s=o.exec(e);if(s)return i}return null}function By(){var e=typeof process<"u"&&process.version;return e?new xy(process.version.slice(1)):null}function Ty(e){for(var t=[],r=0;r<e;r++)t.push("0");return t}function Nt(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var _n=class extends Error{constructor(t){super(t),this.name="TimeoutError"}},ic=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t}},zf=e=>globalThis.DOMException===void 0?new ic(e):new DOMException(e),Gf=e=>{let t=e.reason===void 0?zf("This operation was aborted."):e.reason;return t instanceof Error?t:zf(t)};function qr(e,t){let{milliseconds:r,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=t,s,c=new Promise((u,f)=>{if(typeof r!="number"||Math.sign(r)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${r}\``);if(t.signal){let{signal:d}=t;d.aborted&&f(Gf(d)),d.addEventListener("abort",()=>{f(Gf(d))})}if(r===Number.POSITIVE_INFINITY){e.then(u,f);return}let l=new _n;s=o.setTimeout.call(void 0,()=>{if(n){try{u(n())}catch(d){f(d)}return}typeof e.cancel=="function"&&e.cancel(),i===!1?u():i instanceof Error?f(i):(l.message=i??`Promise timed out after ${r} milliseconds`,f(l))},r),(async()=>{try{u(await e)}catch(d){f(d)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}var Wf=qf(),vi=Wf!=null&&Wf.name==="firefox",Do=async function*(){},Co=async e=>{},Iy=30*1e3;function $f(e,t,r=Iy,n){e.readyState==="open"&&Promise.resolve().then(async()=>{if(e.bufferedAmount>0){n.log("%s drain channel with %d buffered bytes",t,e.bufferedAmount);let i=Nt(),o=!1;e.bufferedAmountLowThreshold=0;let s=()=>{o||(n.log("%s drain channel closed before drain",t),i.resolve())};e.addEventListener("close",s,{once:!0}),e.addEventListener("bufferedamountlow",()=>{o=!0,e.removeEventListener("close",s),i.resolve()}),await qr(i.promise,{milliseconds:r})}}).then(async()=>{e.readyState==="open"&&e.close()}).catch(i=>{n.log.error("error closing outbound stream",i)})}var zr=class{log;peerConnection;remoteAddr;timeline;metrics;source=Do();sink=Co;constructor(t,r){this.log=t.logger.forComponent("libp2p:webrtc:maconn"),this.remoteAddr=r.remoteAddr,this.timeline=r.timeline,this.peerConnection=r.peerConnection;let n=this.peerConnection.connectionState;this.peerConnection.onconnectionstatechange=()=>{this.log.trace("peer connection state change",this.peerConnection.connectionState,"initial state",n),(this.peerConnection.connectionState==="disconnected"||this.peerConnection.connectionState==="failed"||this.peerConnection.connectionState==="closed")&&(this.timeline.close=Date.now())}}async close(t){this.log.trace("closing connection"),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({close:!0})}abort(t){this.log.error("closing connection due to error",t),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({abort:!0})}};var Bo=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},kn=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new Bo(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let r=this.head;this.head=r.next=new Bo(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var oc=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function vr(e={}){return _y(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},e)}function _y(e,t){t=t??{};let r=t.onEnd,n=new kn,i,o,s,a=Nt(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,g)=>{o=b=>{o=null,n.push(b);try{y(e(n))}catch(x){g(x)}return i}}):e(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Nt()})}},u=y=>o!=null?o(y):(n.push(y),i),f=y=>(n=new kn,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(t?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return u({done:!1,value:y})},d=y=>s?i:(s=!0,y!=null?f(y):u({done:!0})),m=()=>(n=new kn,d(),{done:!0}),h=y=>(d(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:m,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async y=>{let g=y?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let b,x;g!=null&&(b=new Promise((D,v)=>{x=()=>{v(new oc)},g.addEventListener("abort",x)}));try{await Promise.race([a.promise,b])}finally{x!=null&&g!=null&&g?.removeEventListener("abort",x)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(y){return p.throw(y),r!=null&&(r(y),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(y){return p.end(y),r!=null&&(r(y),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:y=>p.onEmpty(y)},i}var To=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=r??"ABORT_ERR"}};async function Er(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new To(r?.errorMessage,r?.errorCode));let n,i=new To(r?.errorMessage,r?.errorCode);try{return await Promise.race([e,new Promise((o,s)=>{n=()=>{s(i)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var Xf=Symbol.for("@achingbrain/uint8arraylist");function Yf(e,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let r=0;for(let n of e){let i=r+n.byteLength;if(t<i)return{buf:n,index:t-r};r=i}throw new RangeError("index is out of bounds")}function Rn(e){return!!e?.[Xf]}var At=class e{bufs;length;[Xf]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let r=0;for(let n of t)if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.push(n);else if(Rn(n))r+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}prepend(...t){this.prependAll(t)}prependAll(t){let r=0;for(let n of t.reverse())if(n instanceof Uint8Array)r+=n.byteLength,this.bufs.unshift(n);else if(Rn(n))r+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=r}get(t){let r=Yf(this.bufs,t);return r.buf[r.index]}set(t,r){let n=Yf(this.bufs,t);n.buf[n.index]=r}write(t,r=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(r+n,t[n]);else if(Rn(t))for(let n=0;n<t.length;n++)this.set(r+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,r){let{bufs:n,length:i}=this._subList(t,r);return de(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:de(n,i)}sublist(t,r){let{bufs:n,length:i}=this._subList(t,r),o=new e;return o.length=i,o.bufs=[...n],o}_subList(t,r){if(t=t??0,r=r??this.length,t<0&&(t=this.length+t),r<0&&(r=this.length+r),t<0||r>this.length)throw new RangeError("index is out of bounds");if(t===r)return{bufs:[],length:0};if(t===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let u=t>=a&&t<c,f=r>a&&r<=c;if(u&&f){if(t===a&&r===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(r-t)));break}if(u){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(f){if(r===c){n.push(s);break}n.push(s.subarray(0,r-a));break}n.push(s)}return{bufs:n,length:r-t}}indexOf(t,r=0){if(!Rn(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),t.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,u=n.byteLength-1,f;for(let l=r;l<=c;l+=f){f=0;for(let d=u;d>=0;d--){let m=this.get(l+d);if(n[d]!==m){f=Math.max(1,d-a[m]);break}}if(f===0)return l}return-1}getInt8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getInt8(0)}setInt8(t,r){let n=Zt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,t)}getInt16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(t,r,n){let i=je(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,t)}getInt32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(t,r,n){let i=je(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,t)}getBigInt64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(t,r,n){let i=je(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,t)}getUint8(t){let r=this.subarray(t,t+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(t,r){let n=Zt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,t)}getUint16(t,r){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(t,r,n){let i=je(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,t)}getUint32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(t,r,n){let i=je(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,t)}getBigUint64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(t,r,n){let i=je(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,t)}getFloat32(t,r){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(t,r,n){let i=je(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,t)}getFloat64(t,r){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(t,r,n){let i=je(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof e)||t.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!fo(this.bufs[r],t.bufs[r]))return!1;return!0}static fromUint8Arrays(t,r){let n=new e;return n.bufs=t,r==null&&(r=t.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function Zf(e){if(e!=null){if(typeof e[Symbol.iterator]=="function")return e[Symbol.iterator]();if(typeof e[Symbol.asyncIterator]=="function")return e[Symbol.asyncIterator]();if(typeof e.next=="function")return e}throw new Error("argument is not an iterator or iterable")}function Qf(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}function jf(e,t){let r=Zf(e).return?.();Qf(r)&&r.catch(n=>{t.error("could not cause iterator to return",n)})}var ky="ERR_STREAM_RESET",Ry="ERR_SINK_INVALID_STATE",Ly=5e3;function sc(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var Io=class{id;direction;timeline;protocol;metadata;source;status;readStatus;writeStatus;log;sinkController;sinkEnd;closed;endErr;streamSource;onEnd;onCloseRead;onCloseWrite;onReset;onAbort;sendCloseWriteTimeout;constructor(t){this.sinkController=new AbortController,this.sinkEnd=Nt(),this.closed=Nt(),this.log=t.log,this.status="open",this.readStatus="ready",this.writeStatus="ready",this.id=t.id,this.metadata=t.metadata??{},this.direction=t.direction,this.timeline={open:Date.now()},this.sendCloseWriteTimeout=t.sendCloseWriteTimeout??Ly,this.onEnd=t.onEnd,this.onCloseRead=t?.onCloseRead,this.onCloseWrite=t?.onCloseWrite,this.onReset=t?.onReset,this.onAbort=t?.onAbort,this.source=this.streamSource=vr({onEnd:r=>{r!=null?this.log.trace("source ended with error",r):this.log.trace("source ended"),this.onSourceEnd(r)}}),this.sink=this.sink.bind(this)}async sink(t){if(this.writeStatus!=="ready")throw new W(`writable end state is "${this.writeStatus}" not "ready"`,Ry);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let i=this.sendNewStream(r);sc(i)&&await i}let n=()=>{jf(t,this.log)};try{this.sinkController.signal.addEventListener("abort",n),this.log.trace("sink reading from source");for await(let i of t){i=i instanceof Uint8Array?new At(i):i;let o=this.sendData(i,r);sc(o)&&await o}}finally{this.sinkController.signal.removeEventListener("abort",n)}this.log.trace('sink finished reading from source, write status is "%s"',this.writeStatus),this.writeStatus==="writing"&&(this.writeStatus="closing",this.log.trace("send close write to remote"),await this.sendCloseWrite({signal:AbortSignal.timeout(this.sendCloseWriteTimeout)}),this.writeStatus="closed"),this.onSinkEnd()}catch(r){throw this.log.trace("sink ended with error, calling abort with error",r),this.abort(r),r}finally{this.log.trace("resolve sink end"),this.sinkEnd.resolve()}}onSourceEnd(t){this.timeline.closeRead==null&&(this.timeline.closeRead=Date.now(),this.readStatus="closed",t!=null&&this.endErr==null&&(this.endErr=t),this.onCloseRead?.(),this.timeline.closeWrite!=null?(this.log.trace("source and sink ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr),this.closed.resolve()):this.log.trace("source ended, waiting for sink to end"))}onSinkEnd(t){this.timeline.closeWrite==null&&(this.timeline.closeWrite=Date.now(),this.writeStatus="closed",t!=null&&this.endErr==null&&(this.endErr=t),this.onCloseWrite?.(),this.timeline.closeRead!=null?(this.log.trace("sink and source ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr),this.closed.resolve()):this.log.trace("sink ended, waiting for source to end"))}async close(t){this.log.trace("closing gracefully"),this.status="closing",await Promise.all([this.closeRead(t),this.closeWrite(t)]),await Er(this.closed.promise,t?.signal),this.status="closed",this.log.trace("closed gracefully")}async closeRead(t={}){if(this.readStatus==="closing"||this.readStatus==="closed")return;this.log.trace('closing readable end of stream with starting read status "%s"',this.readStatus);let r=this.readStatus;this.readStatus="closing",this.status!=="reset"&&this.status!=="aborted"&&this.timeline.closeRead==null&&(this.log.trace("send close read to remote"),await this.sendCloseRead(t)),r==="ready"&&(this.log.trace("ending internal source queue with %d queued bytes",this.streamSource.readableLength),this.streamSource.end()),this.log.trace("closed readable end of stream")}async closeWrite(t={}){this.writeStatus==="closing"||this.writeStatus==="closed"||(this.log.trace('closing writable end of stream with starting write status "%s"',this.writeStatus),this.writeStatus==="ready"&&(this.log.trace("sink was never sunk, sink an empty array"),await Er(this.sink([]),t.signal)),this.writeStatus==="writing"&&await new Promise((r,n)=>{queueMicrotask(()=>{this.log.trace("aborting source passed to .sink"),this.sinkController.abort(),Er(this.sinkEnd.promise,t.signal).then(r,n)})}),this.writeStatus="closed",this.log.trace("closed writable end of stream"))}abort(t){if(this.status==="closed"||this.status==="aborted"||this.status==="reset")return;this.log("abort with error",t),this.log("try to send reset to remote");let r=this.sendReset();sc(r)&&r.catch(n=>{this.log.error("error sending reset message",n)}),this.status="aborted",this.timeline.abort=Date.now(),this._closeSinkAndSource(t),this.onAbort?.(t)}reset(){if(this.status==="closed"||this.status==="aborted"||this.status==="reset")return;let t=new W("stream reset",ky);this.status="reset",this.timeline.reset=Date.now(),this._closeSinkAndSource(t),this.onReset?.()}_closeSinkAndSource(t){this._closeSink(t),this._closeSource(t)}_closeSink(t){this.writeStatus==="writing"&&(this.log.trace("end sink source"),this.sinkController.abort()),this.onSinkEnd(t)}_closeSource(t){this.readStatus!=="closing"&&this.readStatus!=="closed"&&(this.log.trace("ending source with %d bytes to be read by consumer",this.streamSource.readableLength),this.readStatus="closing",this.streamSource.end(t))}remoteCloseWrite(){if(this.readStatus==="closing"||this.readStatus==="closed"){this.log("received remote close write but local source is already closed");return}this.log.trace("remote close write"),this._closeSource()}remoteCloseRead(){if(this.writeStatus==="closing"||this.writeStatus==="closed"){this.log("received remote close read but local sink is already closed");return}this.log.trace("remote close read"),this._closeSink()}destroy(){if(this.status==="closed"||this.status==="aborted"||this.status==="reset"){this.log("received destroy but we are already closed");return}this.log.trace("stream destroyed"),this._closeSinkAndSource()}sourcePush(t){this.streamSource.push(t)}sourceReadableLength(){return this.streamSource.readableLength}};function _o(e){return e[Symbol.asyncIterator]!=null}var ko=e=>{let t=jt(e),r=Zt(t);return br(e,r),ko.bytes=t,r};ko.bytes=0;function Sr(e,t){t=t??{};let r=t.lengthEncoder??ko;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return _o(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}Sr.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??ko;return new At(r(e.byteLength),e)};var Ln=Xt(el(),1);var Py=8,Uy=1024*1024*4,Gr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(Gr||(Gr={}));var ac=e=>{let t=ve(e);return ac.bytes=jt(t),t};ac.bytes=0;function Wr(e,t){let r=new At,n=Gr.LENGTH,i=-1,o=t?.lengthDecoder??ac,s=t?.maxLengthLength??Py,a=t?.maxDataLength??Uy;function*c(){for(;r.byteLength>0;){if(n===Gr.LENGTH)try{if(i=o(r),i<0)throw(0,Ln.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Ln.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let u=o.bytes;r.consume(u),t?.onLength!=null&&t.onLength(i),n=Gr.DATA}catch(u){if(u instanceof RangeError){if(r.byteLength>s)throw(0,Ln.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw u}if(n===Gr.DATA){if(r.byteLength<i)break;let u=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(u),yield u,n=Gr.LENGTH}}}return _o(e)?async function*(){for await(let u of e)r.append(u),yield*c();if(r.byteLength>0)throw(0,Ln.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let u of e)r.append(u),yield*c();if(r.byteLength>0)throw(0,Ln.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}Wr.fromReader=(e,t)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await e.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return Wr(n,{...t??{},onLength:o=>{r=o}})};var Oy=e=>{let t=e.on||e.addListener||e.addEventListener,r=e.off||e.removeListener||e.removeEventListener;if(!t||!r)throw new TypeError("Emitter is not compatible");return{addListener:t.bind(e),removeListener:r.bind(e)}};function Ky(e,t,r){let n,i=new Promise((o,s)=>{if(r={rejectionEvents:["error"],multiArgs:!1,resolveImmediately:!1,...r},!(r.count>=0&&(r.count===Number.POSITIVE_INFINITY||Number.isInteger(r.count))))throw new TypeError("The `count` option should be at least 0 or more");r.signal?.throwIfAborted();let a=[t].flat(),c=[],{addListener:u,removeListener:f}=Oy(e),l=(...m)=>{let h=r.multiArgs?m:m[0];r.filter&&!r.filter(h)||(c.push(h),r.count===c.length&&(n(),o(c)))},d=m=>{n(),s(m)};n=()=>{for(let m of a)f(m,l);for(let m of r.rejectionEvents)f(m,d)};for(let m of a)u(m,l);for(let m of r.rejectionEvents)u(m,d);r.signal&&r.signal.addEventListener("abort",()=>{d(r.signal.reason)},{once:!0}),r.resolveImmediately&&o(c)});if(i.cancel=n,typeof r.timeout=="number"){let o=qr(i,{milliseconds:r.timeout});return o.cancel=n,o}return i}function cc(e,t,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=Ky(e,t,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var uc=new Float32Array([-0]),Ar=new Uint8Array(uc.buffer);function nl(e,t,r){uc[0]=e,t[r]=Ar[0],t[r+1]=Ar[1],t[r+2]=Ar[2],t[r+3]=Ar[3]}function il(e,t){return Ar[0]=e[t],Ar[1]=e[t+1],Ar[2]=e[t+2],Ar[3]=e[t+3],uc[0]}var fc=new Float64Array([-0]),Jt=new Uint8Array(fc.buffer);function ol(e,t,r){fc[0]=e,t[r]=Jt[0],t[r+1]=Jt[1],t[r+2]=Jt[2],t[r+3]=Jt[3],t[r+4]=Jt[4],t[r+5]=Jt[5],t[r+6]=Jt[6],t[r+7]=Jt[7]}function sl(e,t){return Jt[0]=e[t],Jt[1]=e[t+1],Jt[2]=e[t+2],Jt[3]=e[t+3],Jt[4]=e[t+4],Jt[5]=e[t+5],Jt[6]=e[t+6],Jt[7]=e[t+7],fc[0]}var My=BigInt(Number.MAX_SAFE_INTEGER),Fy=BigInt(Number.MIN_SAFE_INTEGER),ne=class e{lo;hi;constructor(t,r){this.lo=t|0,this.hi=r|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(r+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let r=~this.lo+1>>>0,n=~this.hi>>>0;return r===0&&(n=n+1>>>0),-(BigInt(r)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,r=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?r===0?t<16384?t<128?1:2:t<2097152?3:4:r<16384?r<128?5:6:r<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return $r;if(t<My&&t>Fy)return this.fromNumber(Number(t));let r=t<0n;r&&(t=-t);let n=t>>32n,i=t-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>al&&(i=0n,++n>al&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return $r;let r=t<0;r&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new e(n,i)}static from(t){return typeof t=="number"?e.fromNumber(t):typeof t=="bigint"?e.fromBigInt(t):typeof t=="string"?e.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new e(t.low>>>0,t.high>>>0):$r}},$r=new ne(0,0);$r.toBigInt=function(){return 0n};$r.zzEncode=$r.zzDecode=function(){return this};$r.length=function(){return 1};var al=4294967296n;function cl(e){let t=0,r=0;for(let n=0;n<e.length;++n)r=e.charCodeAt(n),r<128?t+=1:r<2048?t+=2:(r&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function ul(e,t,r){if(r-t<1)return"";let i,o=[],s=0,a;for(;t<r;)a=e[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|e[t++]&63:a>239&&a<365?(a=((a&7)<<18|(e[t++]&63)<<12|(e[t++]&63)<<6|e[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(e[t++]&63)<<6|e[t++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function lc(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function Ee(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Ro(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var hc=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,Ee(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw Ee(this,4);return Ro(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Ee(this,4);return Ro(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Ee(this,4);let t=il(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw Ee(this,4);let t=sl(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw Ee(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return ul(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw Ee(this,t);this.pos+=t}else do if(this.pos>=this.len)throw Ee(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new ne(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw Ee(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw Ee(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Ee(this,8);let t=Ro(this.buf,this.pos+=4),r=Ro(this.buf,this.pos+=4);return new ne(t,r)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){return this.readLongVarint().toNumber(!0)}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function dc(e){return new hc(e instanceof Uint8Array?e:e.subarray())}function Se(e,t){let r=dc(e);return t.decode(r)}function pc(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Zt(s);i+s>t&&(n=Zt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Yr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function mc(){}var gc=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},Vy=pc();function Hy(e){return globalThis.Buffer!=null?Zt(e):Vy(e)}var Ai=class{len;head;tail;states;constructor(){this.len=0,this.head=new Yr(mc,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new Yr(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new xc((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Ei,10,ne.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=ne.fromBigInt(t);return this._push(Ei,r.length(),r)}uint64Number(t){let r=ne.fromNumber(t);return this._push(Ei,r.length(),r)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let r=ne.fromBigInt(t).zzEncode();return this._push(Ei,r.length(),r)}sint64Number(t){let r=ne.fromNumber(t).zzEncode();return this._push(Ei,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(yc,1,t?1:0)}fixed32(t){return this._push(Si,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=ne.fromBigInt(t);return this._push(Si,4,r.lo)._push(Si,4,r.hi)}fixed64Number(t){let r=ne.fromNumber(t);return this._push(Si,4,r.lo)._push(Si,4,r.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(nl,4,t)}double(t){return this._push(ol,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(yc,1,0):this.uint32(r)._push(zy,r,t)}string(t){let r=cl(t);return r!==0?this.uint32(r)._push(lc,r,t):this._push(yc,1,0)}fork(){return this.states=new gc(this),this.head=this.tail=new Yr(mc,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 Yr(mc,0,0),this.len=0),this}ldelim(){let t=this.head,r=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=r,this.len+=n),this}finish(){let t=this.head.next,r=Hy(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function yc(e,t,r){t[r]=e&255}function qy(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var xc=class extends Yr{next;constructor(t,r){super(qy,t,r),this.next=void 0}};function Ei(e,t,r){for(;e.hi!==0;)t[r++]=e.lo&127|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=e.lo&127|128,e.lo=e.lo>>>7;t[r++]=e.lo}function Si(e,t,r){t[r]=e&255,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function zy(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(Ai.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(Gy,t,e),this},Ai.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(Wy,t,e),this});function Gy(e,t,r){t.set(e,r)}function Wy(e,t,r){e.length<40?lc(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(yi(e),r)}function bc(){return new Ai}function Ae(e,t){let r=bc();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var Nn;(function(e){e[e.VARINT=0]="VARINT",e[e.BIT64=1]="BIT64",e[e.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",e[e.START_GROUP=3]="START_GROUP",e[e.END_GROUP=4]="END_GROUP",e[e.BIT32=5]="BIT32"})(Nn||(Nn={}));function Lo(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function Xr(e){function t(i){if(e[i.toString()]==null)throw new Error("Invalid enum value");return e[i]}let r=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Lo("enum",Nn.VARINT,r,n)}function De(e,t){return Lo("message",Nn.LENGTH_DELIMITED,e,t)}var ie;(function(e){let t;(function(i){i.FIN="FIN",i.STOP_SENDING="STOP_SENDING",i.RESET="RESET",i.FIN_ACK="FIN_ACK"})(t=e.Flag||(e.Flag={}));let r;(function(i){i[i.FIN=0]="FIN",i[i.STOP_SENDING=1]="STOP_SENDING",i[i.RESET=2]="RESET",i[i.FIN_ACK=3]="FIN_ACK"})(r||(r={})),function(i){i.codec=()=>Xr(r)}(t=e.Flag||(e.Flag={}));let n;e.codec=()=>(n==null&&(n=De((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.flag!=null&&(o.uint32(8),e.Flag.codec().encode(i.flag,o)),i.message!=null&&(o.uint32(18),o.bytes(i.message)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.flag=e.Flag.codec().decode(i);break;case 2:s.message=i.bytes();break;default:i.skipType(c&7);break}}return s})),n),e.encode=i=>Ae(i,e.codec()),e.decode=i=>Se(i,e.codec())})(ie||(ie={}));var $y=16*1024*1024,Yy=30*1e3,Xy=5,Zy=2,Qy=16*1024,jy=5e3,Jy=5e3,wc=class extends Io{channel;incomingData;maxBufferedAmount;bufferedAmountLowEventTimeout;maxMessageSize;receiveFinAck;finAckTimeout;openTimeout;constructor(t){let r=t.onEnd;switch(t.onEnd=i=>{this.log.trace("readable and writeable ends closed",this.status),Promise.resolve(async()=>{if(!(this.timeline.abort!=null||this.timeline.reset!==null))try{await qr(this.receiveFinAck.promise,{milliseconds:this.finAckTimeout})}catch(o){this.log.error("error receiving FIN_ACK",o)}}).then(()=>{this.incomingData.end(),r?.(i)}).catch(o=>{this.log.error("error ending stream",o)})},super(t),this.channel=t.channel,this.channel.binaryType="arraybuffer",this.incomingData=vr(),this.bufferedAmountLowEventTimeout=t.bufferedAmountLowEventTimeout??Yy,this.maxBufferedAmount=t.maxBufferedAmount??$y,this.maxMessageSize=(t.maxMessageSize??Qy)-Xy-Zy,this.receiveFinAck=Nt(),this.finAckTimeout=t.closeTimeout??jy,this.openTimeout=t.openTimeout??Jy,this.channel.readyState){case"open":this.timeline.open=new Date().getTime();break;case"closed":case"closing":(this.timeline.close===void 0||this.timeline.close===0)&&(this.timeline.close=Date.now());break;case"connecting":break;default:throw this.log.error("unknown datachannel state %s",this.channel.readyState),new W("Unknown datachannel state","ERR_INVALID_STATE")}this.channel.onopen=i=>{this.timeline.open=new Date().getTime()},this.channel.onclose=i=>{this.receiveFinAck.resolve(),this.close().catch(o=>{this.log.error("error closing stream after channel closed",o)})},this.channel.onerror=i=>{let o=i.error;this.abort(o)},this.channel.onmessage=async i=>{let{data:o}=i;o===null||o.byteLength===0||this.incomingData.push(new Uint8Array(o,0,o.byteLength))};let n=this;Promise.resolve().then(async()=>{for await(let i of Wr(this.incomingData)){let o=n.processIncomingProtobuf(i);o!=null&&n.sourcePush(new At(o))}}).catch(i=>{this.log.error("error processing incoming data channel messages",i)})}sendNewStream(){}async _sendMessage(t,r=!0){if(r&&this.channel.bufferedAmount>this.maxBufferedAmount)try{this.log('channel buffer is %d, wait for "bufferedamountlow" event',this.channel.bufferedAmount),await cc(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof _n?new W(`Timed out waiting for DataChannel buffer to clear after ${this.bufferedAmountLowEventTimeout}ms`,"ERR_BUFFER_CLEAR_TIMEOUT"):n}if(this.channel.readyState==="closed"||this.channel.readyState==="closing")throw new W(`Invalid datachannel state - ${this.channel.readyState}`,"ERR_INVALID_STATE");this.channel.readyState!=="open"&&(this.log('channel state is "%s" and not "open", waiting for "open" event before sending data',this.channel.readyState),await cc(this.channel,"open",{timeout:this.openTimeout}),this.log('channel state is now "%s", sending data',this.channel.readyState)),this.channel.send(t.subarray())}async sendData(t){for(t=t.sublist();t.byteLength>0;){let r=Math.min(t.byteLength,this.maxMessageSize),n=t.subarray(0,r),i=ie.encode({message:n}),o=Sr.single(i);await this._sendMessage(o),t.consume(r)}}async sendReset(){await this._sendFlag(ie.Flag.RESET)}async sendCloseWrite(t){if(await this._sendFlag(ie.Flag.FIN)){this.log.trace("awaiting FIN_ACK");try{await Er(this.receiveFinAck.promise,t?.signal,{errorMessage:"sending close-write was aborted before FIN_ACK was received",errorCode:"ERR_FIN_ACK_NOT_RECEIVED"})}catch(n){this.log.error("failed to await FIN_ACK",n)}}else this.log.trace("sending FIN failed, not awaiting FIN_ACK");this.receiveFinAck.resolve()}async sendCloseRead(){await this._sendFlag(ie.Flag.STOP_SENDING)}processIncomingProtobuf(t){let r=ie.decode(t);if(r.flag!==void 0&&(this.log.trace('incoming flag %s, write status "%s", read status "%s"',r.flag,this.writeStatus,this.readStatus),r.flag===ie.Flag.FIN&&(this.remoteCloseWrite(),this.log.trace("sending FIN_ACK"),this._sendFlag(ie.Flag.FIN_ACK).catch(n=>{this.log.error("error sending FIN_ACK immediately",n)})),r.flag===ie.Flag.RESET&&this.reset(),r.flag===ie.Flag.STOP_SENDING&&this.remoteCloseRead(),r.flag===ie.Flag.FIN_ACK&&(this.log.trace("received FIN_ACK"),this.receiveFinAck.resolve())),this.readStatus==="ready")return r.message}async _sendFlag(t){if(this.channel.readyState!=="open")return this.log.trace('not sending flag %s because channel is "%s" and not "open"',this.channel.readyState,t.toString()),!1;this.log.trace("sending flag %s",t.toString());let r=ie.encode({flag:t}),n=Sr.single(r);try{return await this._sendMessage(n,!1),!0}catch(i){this.log.error("could not send flag %s",t.toString(),i)}return!1}};function Pn(e){let{channel:t,direction:r}=e;return new wc({id:r==="inbound"?`i${t.id}`:`r${t.id}`,log:e.logger.forComponent(`libp2p:webrtc:stream:${r}:${t.id}`),...e})}var ll="/webrtc",Zr=class{protocol;peerConnection;bufferedStreams=[];metrics;dataChannelOptions;components;log;constructor(t,r){this.components=t,this.peerConnection=r.peerConnection,this.metrics=r.metrics,this.protocol=r.protocol??ll,this.dataChannelOptions=r.dataChannelOptions??{},this.log=t.logger.forComponent("libp2p:webrtc:datachannelmuxerfactory"),this.peerConnection.ondatachannel=({channel:n})=>{if(this.log.trace('incoming early datachannel with channel id %d and label "%s"',n.id),n.label==="init"){this.log.trace("closing early init channel"),n.close();return}let i={},o=Pn({channel:n,direction:"inbound",onEnd:s=>{i.onEnd(s)},logger:t.logger,...this.dataChannelOptions});i.stream=o,i.channel=n,i.onEnd=()=>{this.bufferedStreams=this.bufferedStreams.filter(s=>s.stream.id!==o.id)},this.bufferedStreams.push(i)}}createStreamMuxer(t){return new vc(this.components,{...t,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.bufferedStreams,protocol:this.protocol})}},vc=class{init;streams;protocol;log;peerConnection;dataChannelOptions;metrics;logger;constructor(t,r){this.init=r,this.log=t.logger.forComponent("libp2p:webrtc:muxer"),this.logger=t.logger,this.streams=r.streams.map(n=>n.stream),this.peerConnection=r.peerConnection,this.protocol=r.protocol??ll,this.metrics=r.metrics,this.dataChannelOptions=r.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:n})=>{if(this.log.trace("incoming datachannel with channel id %d",n.id),n.label==="init"){this.log.trace("closing init channel"),n.close();return}let i=Pn({channel:n,direction:"inbound",onEnd:()=>{this.log("incoming channel %s ended with state %s",n.id,n.readyState),this.#t(i,n)},logger:this.logger,...this.dataChannelOptions});this.streams.push(i),this.metrics?.increment({incoming_stream:!0}),r?.onIncomingStream?.(i)},this.init.streams.length>0&&queueMicrotask(()=>{this.init.streams.forEach(n=>{n.onEnd=()=>{this.log("incoming early channel %s ended with state %s",n.channel.id,n.channel.readyState),this.#t(n.stream,n.channel)},this.metrics?.increment({incoming_stream:!0}),this.init?.onIncomingStream?.(n.stream)})})}#t(t,r){this.log.trace("stream %s %s %s onEnd",t.direction,t.id,t.protocol),$f(r,`${t.direction} ${t.id} ${t.protocol}`,this.dataChannelOptions.drainTimeout,{log:this.log}),this.streams=this.streams.filter(n=>n.id!==t.id),this.metrics?.increment({stream_end:!0}),this.init?.onStreamEnd?.(t)}async close(t){try{await Promise.all(this.streams.map(async r=>r.close(t)))}catch(r){this.abort(r)}}abort(t){for(let r of this.streams)r.abort(t)}source=Do();sink=Co;newStream(){let t=this.peerConnection.createDataChannel("");this.log.trace("opened outgoing datachannel with channel id %s",t.id);let r=Pn({channel:t,direction:"outbound",onEnd:()=>{this.log("outgoing channel %s ended with state %s",t.id,t.readyState),this.#t(r,t)},logger:this.logger,...this.dataChannelOptions});return this.streams.push(r),this.metrics?.increment({outgoing_stream:!0}),r}};var Un=globalThis.RTCPeerConnection,No=globalThis.RTCSessionDescription,hl=globalThis.RTCIceCandidate;var Ec=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=Nt(),this.haveNext=Nt()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("Have next but next was undefined");let t=this.nextResult;return this.nextResult=void 0,this.needNext.resolve(),this.needNext=Nt(),t}async throw(t){return this.ended=!0,t!=null&&this.haveNext.reject(t),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,r){await this._push(t,r)}async end(t,r){t!=null?await this.throw(t):await this._push(void 0,r)}async _push(t,r){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");this.nextResult!=null&&await this.needNext.promise,t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=Nt(),await Er(this.needNext.promise,r?.signal,r)}};function dl(){return new Ec}var Po=class extends Error{code;constructor(t,r){super(t),this.code=r}},Sc=class extends Po{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function pl(e,t){let r=dl();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new At;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,u=new Promise((f,l)=>{c=()=>{l(new Sc("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),u]);return l===!0?new At:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),u]);if(d===!0)throw new Po("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let f=i.sublist(0,s);return i.consume(s),f}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=e.source;e.source=async function*(){t?.yieldBytes===!1?yield i:yield*i,yield*s}()}return e}}}var Uo=class extends Error{code;constructor(t,r){super(t),this.code=r}},ml=e=>ve(e);ml.bytes=0;function Di(e,t={}){let r=pl(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=jt(t.maxDataLength)),{read:async i=>{let o=-1,s=new At,a=t?.lengthDecoder??ml;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(t?.maxLengthLength!=null&&s.byteLength>t.maxLengthLength)throw new Uo("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new Uo("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(Sr.single(i,t),o)},writeV:async(i,o)=>{let s=new At(...i.map(a=>Sr.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function Oo(e,t){let r=Di(e,t),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 oe;(function(e){let t;(function(i){i.SDP_OFFER="SDP_OFFER",i.SDP_ANSWER="SDP_ANSWER",i.ICE_CANDIDATE="ICE_CANDIDATE"})(t=e.Type||(e.Type={}));let r;(function(i){i[i.SDP_OFFER=0]="SDP_OFFER",i[i.SDP_ANSWER=1]="SDP_ANSWER",i[i.ICE_CANDIDATE=2]="ICE_CANDIDATE"})(r||(r={})),function(i){i.codec=()=>Xr(r)}(t=e.Type||(e.Type={}));let n;e.codec=()=>(n==null&&(n=De((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),e.Type.codec().encode(i.type,o)),i.data!=null&&(o.uint32(18),o.string(i.data)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.type=e.Type.codec().decode(i);break;case 2:s.data=i.string();break;default:i.skipType(c&7);break}}return s})),n),e.encode=i=>Ae(i,e.codec()),e.decode=i=>Se(i,e.codec())})(oe||(oe={}));var Ko=async(e,t,r)=>{try{let n=Nt();for(eg(e,n);;){let i=await Promise.race([n.promise,t.read({signal:r.signal})]);if(i==null)break;if(i.type!==oe.Type.ICE_CANDIDATE)throw new W("ICE candidate message expected","ERR_NOT_ICE_CANDIDATE");let o=JSON.parse(i.data??"null");if(o===""||o===null){r.log.trace("end-of-candidates received");continue}let s=new hl(o);r.log.trace("%s received new ICE candidate",r.direction,s);try{await e.addIceCandidate(s)}catch(a){r.log.error("%s bad candidate received",r.direction,o,a)}}}catch(n){if(r.log.error("%s error parsing ICE candidate",r.direction,n),r.signal?.aborted===!0)throw n}};function tg(e){return vi?e.iceConnectionState:e.connectionState}function eg(e,t){e[vi?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(tg(e)){case"connected":t.resolve();break;case"failed":case"disconnected":case"closed":t.reject(new W("RTCPeerConnection was closed","ERR_CONNECTION_CLOSED_BEFORE_CONNECTED"));break;default:break}}}async function yl({peerConnection:e,signal:t,metrics:r,multiaddr:n,connectionManager:i,transportManager:o,log:s}){let{baseAddr:a}=gl(n);r?.dialerEvents.increment({open:!0}),s.trace("dialing base address: %a",a);let c=a.getPeerId();if(c==null)throw new W("Relay peer was missing","ERR_INVALID_ADDRESS");let u=i.getConnections(Vr(c)),f,l=!1;u.length===0?(f=await o.dial(a,{signal:t}),l=!0):f=u[0];try{let d=await f.newStream(Mo,{signal:t,runOnTransientConnection:!0}),m=Oo(d).pb(oe);try{let h=e.createDataChannel("init");e.onicecandidate=({candidate:b})=>{let x=JSON.stringify(b?.toJSON()??null);s.trace("initiator sending ICE candidate %s",x),m.write({type:oe.Type.ICE_CANDIDATE,data:x},{signal:t}).catch(D=>{s.error("error sending ICE candidate",D)})},e.onicecandidateerror=b=>{s.error("initiator ICE candidate error",b)};let p=await e.createOffer().catch(b=>{throw s.error("could not execute createOffer",b),new W("Failed to set createOffer","ERR_SDP_HANDSHAKE_FAILED")});s.trace("initiator send SDP offer %s",p.sdp),await m.write({type:oe.Type.SDP_OFFER,data:p.sdp},{signal:t}),await e.setLocalDescription(p).catch(b=>{throw s.error("could not execute setLocalDescription",b),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")});let y=await m.read({signal:t});if(y.type!==oe.Type.SDP_ANSWER)throw new W("Remote should send an SDP answer","ERR_SDP_HANDSHAKE_FAILED");s.trace("initiator receive SDP answer %s",y.data);let g=new No({type:"answer",sdp:y.data});return await e.setRemoteDescription(g).catch(b=>{throw s.error("could not execute setRemoteDescription",b),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")}),s.trace("initiator read candidates until connected"),await Ko(e,m,{direction:"initiator",signal:t,log:s}),s.trace("initiator connected, closing init channel"),h.close(),s.trace("initiator closing signalling stream"),await m.unwrap().unwrap().close({signal:t}),s.trace("initiator connected to remote address %s",n),{remoteAddress:n}}catch(h){throw e.close(),d.abort(h),h}finally{e.onicecandidate=null,e.onicecandidateerror=null}}finally{if(l)try{await f.close({signal:t})}catch(d){f.abort(d)}}}var rg=q("dns4"),ng=q("dns6"),ig=q("dnsaddr"),Qr=Lt(q("dns"),ig,rg,ng),Ho=Lt(q("ip4"),q("ip6")),On=Lt(X(Ho,q("tcp")),X(Qr,q("tcp"))),qo=X(Ho,q("udp")),og=X(qo,q("utp")),sg=X(qo,q("quic")),ag=X(qo,q("quic-v1")),Ac=Lt(X(On,q("ws")),X(Qr,q("ws"))),Fo=Lt(X(Ac,q("p2p")),Ac),Dc=Lt(X(On,q("wss")),X(Qr,q("wss")),X(On,q("tls"),q("ws")),X(Qr,q("tls"),q("ws"))),Vo=Lt(X(Dc,q("p2p")),Dc),Cc=Lt(X(On,q("http")),X(Ho,q("http")),X(Qr,q("http"))),Bc=Lt(X(On,q("https")),X(Ho,q("https")),X(Qr,q("https"))),xl=X(qo,q("webrtc-direct"),q("certhash")),vl=Lt(X(xl,q("p2p")),xl),bl=X(ag,q("webtransport"),q("certhash"),q("certhash")),El=Lt(X(bl,q("p2p")),bl),Sl=Lt(X(Fo,q("p2p-webrtc-star"),q("p2p")),X(Vo,q("p2p-webrtc-star"),q("p2p")),X(Fo,q("p2p-webrtc-star")),X(Vo,q("p2p-webrtc-star"))),eD=Lt(X(Fo,q("p2p-websocket-star"),q("p2p")),X(Vo,q("p2p-websocket-star"),q("p2p")),X(Fo,q("p2p-websocket-star")),X(Vo,q("p2p-websocket-star"))),Al=Lt(X(Cc,q("p2p-webrtc-direct"),q("p2p")),X(Bc,q("p2p-webrtc-direct"),q("p2p")),X(Cc,q("p2p-webrtc-direct")),X(Bc,q("p2p-webrtc-direct"))),jr=Lt(Ac,Dc,Cc,Bc,Sl,Al,On,og,sg,Qr,vl,El),rD=Lt(X(jr,q("p2p-stardust"),q("p2p")),X(jr,q("p2p-stardust"))),Dr=Lt(X(jr,q("p2p")),Sl,Al,vl,El,q("p2p")),wl=Lt(X(Dr,q("p2p-circuit"),Dr),X(Dr,q("p2p-circuit")),X(q("p2p-circuit"),Dr),X(jr,q("p2p-circuit")),X(q("p2p-circuit"),jr),q("p2p-circuit")),Dl=()=>Lt(X(wl,Dl),wl),tr=Dl(),nD=Lt(X(tr,Dr,tr),X(Dr,tr),X(tr,Dr),tr,Dr);var iD=Lt(X(tr,q("webrtc"),q("p2p")),X(tr,q("webrtc")),X(jr,q("webrtc"),q("p2p")),X(jr,q("webrtc")),q("webrtc"));function Cl(e){function t(r){let n;try{n=Je(r)}catch{return!1}let i=e(n.protoNames());return i===null?!1:i===!0||i===!1?i:i.length===0}return t}function X(...e){function t(r){if(r.length<e.length)return null;let n=r;return e.some(i=>(n=typeof i=="function"?i().partialMatch(r):i.partialMatch(r),Array.isArray(n)&&(r=n),n===null)),n}return{toString:function(){return"{ "+e.join(" ")+" }"},input:e,matches:Cl(t),partialMatch:t}}function Lt(...e){function t(n){let i=null;return e.some(o=>{let s=typeof o=="function"?o().partialMatch(n):o.partialMatch(n);return s!=null?(i=s,!0):!1}),i}return{toString:function(){return"{ "+e.join(" ")+" }"},input:e,matches:Cl(t),partialMatch:t}}function q(e){let t=e;function r(i){let o;try{o=Je(i)}catch{return!1}let s=o.protoNames();return s.length===1&&s[0]===t}function n(i){return i.length===0?null:i[0]===t?i.slice(1):null}return{toString:function(){return t},matches:r,partialMatch:n}}var zo=class extends ao{peerId;transportManager;shutdownController;constructor(t,r){super(),this.peerId=t.peerId,this.transportManager=t.transportManager,this.shutdownController=r.shutdownController}async listen(){this.safeDispatchEvent("listening",{})}getAddrs(){return this.transportManager.getListeners().filter(t=>t!==this).map(t=>t.getAddrs().filter(r=>tr.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};async function Bl({peerConnection:e,stream:t,signal:r,connection:n,log:i}){i.trace("new inbound signaling stream");let o=Oo(t).pb(oe);try{e.onicecandidate=({candidate:f})=>{let l=JSON.stringify(f?.toJSON()??null);i.trace("recipient sending ICE candidate %s",l),o.write({type:oe.Type.ICE_CANDIDATE,data:l},{signal:r}).catch(d=>{i.error("error sending ICE candidate",d)})};let a=await o.read({signal:r});if(a.type!==oe.Type.SDP_OFFER)throw new W(`expected message type SDP_OFFER, received: ${a.type??"undefined"} `,"ERR_SDP_HANDSHAKE_FAILED");i.trace("recipient receive SDP offer %s",a.data);let c=new No({type:"offer",sdp:a.data});await e.setRemoteDescription(c).catch(f=>{throw i.error("could not execute setRemoteDescription",f),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")});let u=await e.createAnswer().catch(f=>{throw i.error("could not execute createAnswer",f),new W("Failed to create answer","ERR_SDP_HANDSHAKE_FAILED")});i.trace("recipient send SDP answer %s",u.sdp),await o.write({type:oe.Type.SDP_ANSWER,data:u.sdp},{signal:r}),await e.setLocalDescription(u).catch(f=>{throw i.error("could not execute setLocalDescription",f),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")}),i.trace("recipient read candidates until connected"),await Ko(e,o,{direction:"recipient",signal:r,log:i})}catch(a){if(e.connectionState!=="connected")throw i.error("error while handling signaling stream from peer %a",n.remoteAddr,a),e.close(),a;i("error while handling signaling stream from peer %a, ignoring as the RTCPeerConnection is already connected",n.remoteAddr,a)}let s=Je(`/webrtc/p2p/${n.remoteAddr.getPeerId()}`);return i.trace("recipient connected to remote address %s",s),{remoteAddress:s}}var cg="/webrtc",ug="/p2p-circuit",Mo="/webrtc-signaling/0.0.1",fg=30*1e3,Go=class{components;init;log;_started=!1;metrics;shutdownController;constructor(t,r={}){this.components=t,this.init=r,this.log=t.logger.forComponent("libp2p:webrtc"),this.shutdownController=new AbortController,Vu(1/0,this.shutdownController.signal),t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webrtc_dialer_events_total",{label:"event",help:"Total count of WebRTC dialer events by type"}),listenerEvents:t.metrics.registerCounterGroup("libp2p_webrtc_listener_events_total",{label:"event",help:"Total count of WebRTC listener events by type"})})}isStarted(){return this._started}async start(){await this.components.registrar.handle(Mo,t=>{this._onProtocol(t).catch(r=>{this.log.error("failed to handle incoming connect from %p",t.connection.remotePeer,r)})},{runOnTransientConnection:!0}),this._started=!0}async stop(){await this.components.registrar.unhandle(Mo),this._started=!1}createListener(t){return new zo(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[so]=!0;filter(t){return t.filter(Uf.exactMatch)}async dial(t,r){this.log.trace("dialing address: %a",t);let n=new Un(this.init.rtcConfiguration),i=new Zr(this.components,{peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:o}=await yl({peerConnection:n,multiaddr:t,dataChannelOptions:this.init.dataChannel,signal:r.signal,connectionManager:this.components.connectionManager,transportManager:this.components.transportManager,log:this.log}),s=new zr(this.components,{peerConnection:n,timeline:{open:Date.now()},remoteAddr:o,metrics:this.metrics?.dialerEvents}),a=await r.upgrader.upgradeOutbound(s,{skipProtection:!0,skipEncryption:!0,muxerFactory:i});return this._closeOnShutdown(n,s),a}async _onProtocol({connection:t,stream:r}){let n=AbortSignal.timeout(this.init.inboundConnectionTimeout??fg),i=new Un(this.init.rtcConfiguration),o=new Zr(this.components,{peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await Bl({peerConnection:i,connection:t,stream:r,signal:n,log:this.log}),a=new zr(this.components,{peerConnection:i,timeline:{open:new Date().getTime()},remoteAddr:s,metrics:this.metrics?.listenerEvents});this._closeOnShutdown(i,a),await this.components.upgrader.upgradeInbound(a,{skipEncryption:!0,skipProtection:!0,muxerFactory:o}),await r.close({signal:n})}catch(s){throw r.abort(s),s}}_closeOnShutdown(t,r){let n=()=>{r.close().catch(i=>{this.log.error("could not close WebRTCMultiaddrConnection",i)})};this.shutdownController.signal.addEventListener("abort",n),t.addEventListener("close",()=>{this.shutdownController.signal.removeEventListener("abort",n)})}};function gl(e){let t=e.toString().split(cg+"/");if(t.length!==2)throw new W("webrtc protocol was not present in multiaddr",ce.ERR_INVALID_MULTIADDR);if(!t[0].includes(ug))throw new W("p2p-circuit protocol was not present in multiaddr",ce.ERR_INVALID_MULTIADDR);let r=Je(t[0]),i=Je("/"+t[1]).getPeerId();if(i==null)throw new W("destination peer id was missing",ce.ERR_INVALID_MULTIADDR);let o=r.protos().pop();if(o===void 0)throw new W("invalid multiaddr",ce.ERR_INVALID_MULTIADDR);return o.name!=="p2p"&&(r=r.encapsulate(`/p2p/${i}`)),{baseAddr:r,peerId:Vr(i)}}function Tc(){let e=Nt(),t=!1;return{sink:async r=>{if(t)throw new Error("already piped");t=!0,e.resolve(r)},source:async function*(){yield*await e.promise}()}}function Tl(){let e=Tc(),t=Tc();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}function lg(e){return e[Symbol.asyncIterator]!=null}function hg(...e){let t=[];for(let r of e)lg(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=vr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(e.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var Il=hg;function _l(e,...t){if(e==null)throw new Error("Empty pipeline");if(Ic(e)){let n=e;e=()=>n.source}else if(Rl(e)||kl(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&Ic(r[r.length-1])&&(r[r.length-1]=r[r.length-1].sink),r.length>2)for(let n=1;n<r.length-1;n++)Ic(r[n])&&(r[n]=pg(r[n]));return dg(...r)}var dg=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},kl=e=>e?.[Symbol.asyncIterator]!=null,Rl=e=>e?.[Symbol.iterator]!=null,Ic=e=>e==null?!1:e.sink!=null&&e.source!=null,pg=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=vr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(kl(o))i=async function*(){yield*o,n.end()};else if(Rl(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Il(n,i())}return e.source};function er(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function pt(e=0){return globalThis.Buffer?.alloc!=null?er(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function Jr(e=0){return globalThis.Buffer?.allocUnsafe!=null?er(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var Kn=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var rr=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));function Ll(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var Nl=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),mg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!mg)throw new Error("Non little-endian hardware is not supported");function Wo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function $o(e){if(typeof e=="string")e=Wo(e);else if(Ll(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var yg=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function Pl(e,t){if(t!==void 0&&(typeof t!="object"||!yg(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function tn(e,t){if(!Ll(e))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function Ul(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n<e.length;n++)r|=e[n]^t[n];return r===0}var _c=(e,t)=>(Object.assign(t,e),t);function kc(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,u=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+u,a,n)}function Yo(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`wrong positive integer: ${e}`)}function Rc(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function gg(e){return e!=null&&typeof e=="object"&&(e instanceof Uint8Array||e.constructor.name==="Uint8Array")}function Mn(e,...t){if(!gg(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function Lc(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Ol(e,t){Mn(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Wt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Nc=class{constructor(t){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,t=$o(t),tn(t,32);let r=Wt(t,0),n=Wt(t,2),i=Wt(t,4),o=Wt(t,6),s=Wt(t,8),a=Wt(t,10),c=Wt(t,12),u=Wt(t,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|u<<8)&8191,this.r[9]=u>>>5&127;for(let f=0;f<8;f++)this.pad[f]=Wt(t,16+2*f)}process(t,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],u=s[2],f=s[3],l=s[4],d=s[5],m=s[6],h=s[7],p=s[8],y=s[9],g=Wt(t,r+0),b=Wt(t,r+2),x=Wt(t,r+4),D=Wt(t,r+6),v=Wt(t,r+8),E=Wt(t,r+10),C=Wt(t,r+12),B=Wt(t,r+14),O=o[0]+(g&8191),K=o[1]+((g>>>13|b<<3)&8191),U=o[2]+((b>>>10|x<<6)&8191),F=o[3]+((x>>>7|D<<9)&8191),G=o[4]+((D>>>4|v<<12)&8191),Q=o[5]+(v>>>1&8191),T=o[6]+((v>>>14|E<<2)&8191),R=o[7]+((E>>>11|C<<5)&8191),_=o[8]+((C>>>8|B<<8)&8191),k=o[9]+(B>>>5|i),S=0,P=S+O*a+K*(5*y)+U*(5*p)+F*(5*h)+G*(5*m);S=P>>>13,P&=8191,P+=Q*(5*d)+T*(5*l)+R*(5*f)+_*(5*u)+k*(5*c),S+=P>>>13,P&=8191;let M=S+O*c+K*a+U*(5*y)+F*(5*p)+G*(5*h);S=M>>>13,M&=8191,M+=Q*(5*m)+T*(5*d)+R*(5*l)+_*(5*f)+k*(5*u),S+=M>>>13,M&=8191;let H=S+O*u+K*c+U*a+F*(5*y)+G*(5*p);S=H>>>13,H&=8191,H+=Q*(5*h)+T*(5*m)+R*(5*d)+_*(5*l)+k*(5*f),S+=H>>>13,H&=8191;let Z=S+O*f+K*u+U*c+F*a+G*(5*y);S=Z>>>13,Z&=8191,Z+=Q*(5*p)+T*(5*h)+R*(5*m)+_*(5*d)+k*(5*l),S+=Z>>>13,Z&=8191;let j=S+O*l+K*f+U*u+F*c+G*a;S=j>>>13,j&=8191,j+=Q*(5*y)+T*(5*p)+R*(5*h)+_*(5*m)+k*(5*d),S+=j>>>13,j&=8191;let it=S+O*d+K*l+U*f+F*u+G*c;S=it>>>13,it&=8191,it+=Q*a+T*(5*y)+R*(5*p)+_*(5*h)+k*(5*m),S+=it>>>13,it&=8191;let J=S+O*m+K*d+U*l+F*f+G*u;S=J>>>13,J&=8191,J+=Q*c+T*a+R*(5*y)+_*(5*p)+k*(5*h),S+=J>>>13,J&=8191;let et=S+O*h+K*m+U*d+F*l+G*f;S=et>>>13,et&=8191,et+=Q*u+T*c+R*a+_*(5*y)+k*(5*p),S+=et>>>13,et&=8191;let xt=S+O*p+K*h+U*m+F*d+G*l;S=xt>>>13,xt&=8191,xt+=Q*f+T*u+R*c+_*a+k*(5*y),S+=xt>>>13,xt&=8191;let yt=S+O*y+K*p+U*h+F*m+G*d;S=yt>>>13,yt&=8191,yt+=Q*l+T*f+R*u+_*c+k*a,S+=yt>>>13,yt&=8191,S=(S<<2)+S|0,S=S+P|0,P=S&8191,S=S>>>13,M+=S,o[0]=P,o[1]=M,o[2]=H,o[3]=Z,o[4]=j,o[5]=it,o[6]=J,o[7]=et,o[8]=xt,o[9]=yt}finalize(){let{h:t,pad:r}=this,n=new Uint16Array(10),i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=i*5,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,n[0]=t[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=t[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|n[a];t[0]=(t[0]|t[1]<<13)&65535,t[1]=(t[1]>>>3|t[2]<<10)&65535,t[2]=(t[2]>>>6|t[3]<<7)&65535,t[3]=(t[3]>>>9|t[4]<<4)&65535,t[4]=(t[4]>>>12|t[5]<<1|t[6]<<14)&65535,t[5]=(t[6]>>>2|t[7]<<11)&65535,t[6]=(t[7]>>>5|t[8]<<8)&65535,t[7]=(t[8]>>>8|t[9]<<5)&65535;let s=t[0]+r[0];t[0]=s&65535;for(let a=1;a<8;a++)s=(t[a]+r[a]|0)+(s>>>16)|0,t[a]=s&65535}update(t){Lc(this);let{buffer:r,blockLen:n}=this;t=$o(t);let i=t.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(t,o);continue}r.set(t.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(t){Lc(this),Ol(t,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)t[o++]=n[s]>>>0,t[o++]=n[s]>>>8;return t}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}};function xg(e){let t=(n,i)=>e(i).update($o(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var Kl=xg(e=>new Nc(e));var bg=Wo("expand 16-byte k"),wg=Wo("expand 32-byte k"),vg=rr(bg),Eg=rr(wg);function $(e,t){return e<<t|e>>>32-t}function Pc(e){return e.byteOffset%4===0}var Xo=64,Sg=16,Fl=2**32-1,Ml=new Uint32Array;function Ag(e,t,r,n,i,o,s,a){let c=i.length,u=new Uint8Array(Xo),f=rr(u),l=Pc(i)&&Pc(o),d=l?rr(i):Ml,m=l?rr(o):Ml;for(let h=0;h<c;s++){if(e(t,r,n,f,s,a),s>=Fl)throw new Error("arx: counter overflow");let p=Math.min(Xo,c-h);if(l&&p===Xo){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let g=0,b;g<Sg;g++)b=y+g,m[b]=d[b]^f[g];h+=Xo;continue}for(let y=0,g;y<p;y++)g=h+y,o[g]=i[g]^u[y];h+=p}}function Uc(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=Pl({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return Yo(i),Yo(s),Rc(o),Rc(r),(a,c,u,f,l=0)=>{Mn(a),Mn(c),Mn(u);let d=u.length;if(f||(f=new Uint8Array(d)),Mn(f),Yo(l),l<0||l>=Fl)throw new Error("arx: counter overflow");if(f.length<d)throw new Error(`arx: output (${f.length}) is shorter than data (${d})`);let m=[],h=a.length,p,y;if(h===32)p=a.slice(),m.push(p),y=Eg;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=vg,m.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);Pc(c)||(c=c.slice(),m.push(c));let g=rr(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,g,rr(c.subarray(0,16)),g),c=c.subarray(16)}let b=16-i;if(b!==c.length)throw new Error(`arx: nonce must be ${b} or 16 bytes`);if(b!==12){let D=new Uint8Array(12);D.set(c,o?0:12-c.length),c=D,m.push(c)}let x=rr(c);for(Ag(e,y,g,x,u,f,l,s);m.length>0;)m.pop().fill(0);return f}}function ql(e,t,r,n,i,o=20){let s=e[0],a=e[1],c=e[2],u=e[3],f=t[0],l=t[1],d=t[2],m=t[3],h=t[4],p=t[5],y=t[6],g=t[7],b=i,x=r[0],D=r[1],v=r[2],E=s,C=a,B=c,O=u,K=f,U=l,F=d,G=m,Q=h,T=p,R=y,_=g,k=b,S=x,P=D,M=v;for(let Z=0;Z<o;Z+=2)E=E+K|0,k=$(k^E,16),Q=Q+k|0,K=$(K^Q,12),E=E+K|0,k=$(k^E,8),Q=Q+k|0,K=$(K^Q,7),C=C+U|0,S=$(S^C,16),T=T+S|0,U=$(U^T,12),C=C+U|0,S=$(S^C,8),T=T+S|0,U=$(U^T,7),B=B+F|0,P=$(P^B,16),R=R+P|0,F=$(F^R,12),B=B+F|0,P=$(P^B,8),R=R+P|0,F=$(F^R,7),O=O+G|0,M=$(M^O,16),_=_+M|0,G=$(G^_,12),O=O+G|0,M=$(M^O,8),_=_+M|0,G=$(G^_,7),E=E+U|0,M=$(M^E,16),R=R+M|0,U=$(U^R,12),E=E+U|0,M=$(M^E,8),R=R+M|0,U=$(U^R,7),C=C+F|0,k=$(k^C,16),_=_+k|0,F=$(F^_,12),C=C+F|0,k=$(k^C,8),_=_+k|0,F=$(F^_,7),B=B+G|0,S=$(S^B,16),Q=Q+S|0,G=$(G^Q,12),B=B+G|0,S=$(S^B,8),Q=Q+S|0,G=$(G^Q,7),O=O+K|0,P=$(P^O,16),T=T+P|0,K=$(K^T,12),O=O+K|0,P=$(P^O,8),T=T+P|0,K=$(K^T,7);let H=0;n[H++]=s+E|0,n[H++]=a+C|0,n[H++]=c+B|0,n[H++]=u+O|0,n[H++]=f+K|0,n[H++]=l+U|0,n[H++]=d+F|0,n[H++]=m+G|0,n[H++]=h+Q|0,n[H++]=p+T|0,n[H++]=y+R|0,n[H++]=g+_|0,n[H++]=b+k|0,n[H++]=x+S|0,n[H++]=D+P|0,n[H++]=v+M|0}function Dg(e,t,r,n){let i=e[0],o=e[1],s=e[2],a=e[3],c=t[0],u=t[1],f=t[2],l=t[3],d=t[4],m=t[5],h=t[6],p=t[7],y=r[0],g=r[1],b=r[2],x=r[3];for(let v=0;v<20;v+=2)i=i+c|0,y=$(y^i,16),d=d+y|0,c=$(c^d,12),i=i+c|0,y=$(y^i,8),d=d+y|0,c=$(c^d,7),o=o+u|0,g=$(g^o,16),m=m+g|0,u=$(u^m,12),o=o+u|0,g=$(g^o,8),m=m+g|0,u=$(u^m,7),s=s+f|0,b=$(b^s,16),h=h+b|0,f=$(f^h,12),s=s+f|0,b=$(b^s,8),h=h+b|0,f=$(f^h,7),a=a+l|0,x=$(x^a,16),p=p+x|0,l=$(l^p,12),a=a+l|0,x=$(x^a,8),p=p+x|0,l=$(l^p,7),i=i+u|0,x=$(x^i,16),h=h+x|0,u=$(u^h,12),i=i+u|0,x=$(x^i,8),h=h+x|0,u=$(u^h,7),o=o+f|0,y=$(y^o,16),p=p+y|0,f=$(f^p,12),o=o+f|0,y=$(y^o,8),p=p+y|0,f=$(f^p,7),s=s+l|0,g=$(g^s,16),d=d+g|0,l=$(l^d,12),s=s+l|0,g=$(g^s,8),d=d+g|0,l=$(l^d,7),a=a+c|0,b=$(b^a,16),m=m+b|0,c=$(c^m,12),a=a+c|0,b=$(b^a,8),m=m+b|0,c=$(c^m,7);let D=0;n[D++]=i,n[D++]=o,n[D++]=s,n[D++]=a,n[D++]=y,n[D++]=g,n[D++]=b,n[D++]=x}var Cg=Uc(ql,{counterRight:!1,counterLength:4,allowShortKeys:!1}),Bg=Uc(ql,{counterRight:!1,counterLength:8,extendNonceFn:Dg,allowShortKeys:!1});var Tg=new Uint8Array(16),Vl=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(Tg.subarray(r))},Ig=new Uint8Array(32);function Hl(e,t,r,n,i){let o=e(t,r,Ig),s=Kl.create(o);i&&Vl(s,i),Vl(s,n);let a=new Uint8Array(16),c=Nl(a);kc(c,0,BigInt(i?i.length:0),!0),kc(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return o.fill(0),u}var zl=e=>(t,r,n)=>(tn(t,32),tn(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?tn(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let u=Hl(e,t,r,s.subarray(0,-16),n);return s.set(u,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?tn(s,c):s=new Uint8Array(c);let u=o.subarray(0,-16),f=o.subarray(-16),l=Hl(e,t,r,u,n);if(!Ul(f,l))throw new Error("invalid tag");return e(t,r,u,s,1),s}}),Oc=_c({blockSize:64,nonceLength:12,tagLength:16},zl(Cg)),tC=_c({blockSize:64,nonceLength:24,tagLength:16},zl(Bg));function Zo(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function _g(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Kc(e,...t){if(!_g(e))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function Ci(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Zo(e.outputLen),Zo(e.blockLen)}function Fn(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Gl(e,t){Kc(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Qo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Wl(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var jo=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),Ce=(e,t)=>e<<32-t|e>>>t,kg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!kg)throw new Error("Non little-endian hardware is not supported");function Mc(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Cr(e){if(typeof e=="string"&&(e=Mc(e)),!Wl(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function Jo(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];if(!Wl(i))throw new Error("Uint8Array expected");t+=i.length}let r=new Uint8Array(t);for(let n=0,i=0;n<e.length;n++){let o=e[n];r.set(o,i),i+=o.length}return r}var Vn=class{clone(){return this._cloneInto()}},oC={}.toString;function ts(e){let t=n=>e().update(Cr(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function en(e=32){if(Qo&&typeof Qo.getRandomValues=="function")return Qo.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function Rg(e,t,r,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,u=n?0:4;e.setUint32(t+c,s,n),e.setUint32(t+u,a,n)}var Hn=class extends Vn{constructor(t,r,n,i){super(),this.blockLen=t,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=jo(this.buffer)}update(t){Fn(this);let{view:r,buffer:n,blockLen:i}=this;t=Cr(t);let o=t.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=jo(t);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(t.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Fn(this),Gl(t,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;Rg(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=jo(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,f=this.get();if(u>f.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<u;l++)a.setUint32(4*l,f[l],o)}digest(){let{buffer:t,outputLen:r}=this;this.digestInto(t);let n=t.slice(0,r);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return t.length=i,t.pos=a,t.finished=o,t.destroyed=s,i%r&&t.buffer.set(n),t}};var es=BigInt(4294967295),Fc=BigInt(32);function $l(e,t=!1){return t?{h:Number(e&es),l:Number(e>>Fc&es)}:{h:Number(e>>Fc&es)|0,l:Number(e&es)|0}}function Lg(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=$l(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var Ng=(e,t)=>BigInt(e>>>0)<<Fc|BigInt(t>>>0),Pg=(e,t,r)=>e>>>r,Ug=(e,t,r)=>e<<32-r|t>>>r,Og=(e,t,r)=>e>>>r|t<<32-r,Kg=(e,t,r)=>e<<32-r|t>>>r,Mg=(e,t,r)=>e<<64-r|t>>>r-32,Fg=(e,t,r)=>e>>>r-32|t<<64-r,Vg=(e,t)=>t,Hg=(e,t)=>e,qg=(e,t,r)=>e<<r|t>>>32-r,zg=(e,t,r)=>t<<r|e>>>32-r,Gg=(e,t,r)=>t<<r-32|e>>>64-r,Wg=(e,t,r)=>e<<r-32|t>>>64-r;function $g(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Yg=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Xg=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Zg=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Qg=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,jg=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Jg=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var tx={fromBig:$l,split:Lg,toBig:Ng,shrSH:Pg,shrSL:Ug,rotrSH:Og,rotrSL:Kg,rotrBH:Mg,rotrBL:Fg,rotr32H:Vg,rotr32L:Hg,rotlSH:qg,rotlSL:zg,rotlBH:Gg,rotlBL:Wg,add:$g,add3L:Yg,add3H:Xg,add4L:Zg,add4H:Qg,add5H:Jg,add5L:jg},rt=tx;var[ex,rx]=rt.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),Br=new Uint32Array(80),Tr=new Uint32Array(80),Vc=class extends Hn{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:t,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:u,El:f,Fh:l,Fl:d,Gh:m,Gl:h,Hh:p,Hl:y}=this;return[t,r,n,i,o,s,a,c,u,f,l,d,m,h,p,y]}set(t,r,n,i,o,s,a,c,u,f,l,d,m,h,p,y){this.Ah=t|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=u|0,this.El=f|0,this.Fh=l|0,this.Fl=d|0,this.Gh=m|0,this.Gl=h|0,this.Hh=p|0,this.Hl=y|0}process(t,r){for(let x=0;x<16;x++,r+=4)Br[x]=t.getUint32(r),Tr[x]=t.getUint32(r+=4);for(let x=16;x<80;x++){let D=Br[x-15]|0,v=Tr[x-15]|0,E=rt.rotrSH(D,v,1)^rt.rotrSH(D,v,8)^rt.shrSH(D,v,7),C=rt.rotrSL(D,v,1)^rt.rotrSL(D,v,8)^rt.shrSL(D,v,7),B=Br[x-2]|0,O=Tr[x-2]|0,K=rt.rotrSH(B,O,19)^rt.rotrBH(B,O,61)^rt.shrSH(B,O,6),U=rt.rotrSL(B,O,19)^rt.rotrBL(B,O,61)^rt.shrSL(B,O,6),F=rt.add4L(C,U,Tr[x-7],Tr[x-16]),G=rt.add4H(F,E,K,Br[x-7],Br[x-16]);Br[x]=G|0,Tr[x]=F|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:u,Dl:f,Eh:l,El:d,Fh:m,Fl:h,Gh:p,Gl:y,Hh:g,Hl:b}=this;for(let x=0;x<80;x++){let D=rt.rotrSH(l,d,14)^rt.rotrSH(l,d,18)^rt.rotrBH(l,d,41),v=rt.rotrSL(l,d,14)^rt.rotrSL(l,d,18)^rt.rotrBL(l,d,41),E=l&m^~l&p,C=d&h^~d&y,B=rt.add5L(b,v,C,rx[x],Tr[x]),O=rt.add5H(B,g,D,E,ex[x],Br[x]),K=B|0,U=rt.rotrSH(n,i,28)^rt.rotrBH(n,i,34)^rt.rotrBH(n,i,39),F=rt.rotrSL(n,i,28)^rt.rotrBL(n,i,34)^rt.rotrBL(n,i,39),G=n&o^n&a^o&a,Q=i&s^i&c^s&c;g=p|0,b=y|0,p=m|0,y=h|0,m=l|0,h=d|0,{h:l,l:d}=rt.add(u|0,f|0,O|0,K|0),u=a|0,f=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let T=rt.add3L(K,F,Q);n=rt.add3H(T,O,U,G),i=T|0}({h:n,l:i}=rt.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=rt.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=rt.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:u,l:f}=rt.add(this.Dh|0,this.Dl|0,u|0,f|0),{h:l,l:d}=rt.add(this.Eh|0,this.El|0,l|0,d|0),{h:m,l:h}=rt.add(this.Fh|0,this.Fl|0,m|0,h|0),{h:p,l:y}=rt.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:g,l:b}=rt.add(this.Hh|0,this.Hl|0,g|0,b|0),this.set(n,i,o,s,a,c,u,f,l,d,m,h,p,y,g,b)}roundClean(){Br.fill(0),Tr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Hc=ts(()=>new Vc);var ns={};ct(ns,{bitGet:()=>ux,bitLen:()=>cx,bitMask:()=>Bi,bitSet:()=>fx,bytesToHex:()=>ir,bytesToNumberBE:()=>or,bytesToNumberLE:()=>Te,concatBytes:()=>ar,createHmacDrbg:()=>Gc,ensureBytes:()=>wt,equalBytes:()=>sx,hexToBytes:()=>rn,hexToNumber:()=>zc,isBytes:()=>Be,numberToBytesBE:()=>Ir,numberToBytesLE:()=>sr,numberToHexUnpadded:()=>Ql,numberToVarBytesBE:()=>ox,utf8ToBytes:()=>ax,validateObject:()=>me});var Zl=BigInt(0),rs=BigInt(1),nx=BigInt(2);function Be(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var ix=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function ir(e){if(!Be(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=ix[e[r]];return t}function Ql(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function zc(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}var nr={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function Yl(e){if(e>=nr._0&&e<=nr._9)return e-nr._0;if(e>=nr._A&&e<=nr._F)return e-(nr._A-10);if(e>=nr._a&&e<=nr._f)return e-(nr._a-10)}function rn(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length,r=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=Yl(e.charCodeAt(o)),a=Yl(e.charCodeAt(o+1));if(s===void 0||a===void 0){let c=e[o]+e[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}n[i]=s*16+a}return n}function or(e){return zc(ir(e))}function Te(e){if(!Be(e))throw new Error("Uint8Array expected");return zc(ir(Uint8Array.from(e).reverse()))}function Ir(e,t){return rn(e.toString(16).padStart(t*2,"0"))}function sr(e,t){return Ir(e,t).reverse()}function ox(e){return rn(Ql(e))}function wt(e,t,r){let n;if(typeof t=="string")try{n=rn(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(Be(t))n=Uint8Array.from(t);else throw new Error(`${e} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${e} expected ${r} bytes, got ${i}`);return n}function ar(...e){let t=0;for(let i=0;i<e.length;i++){let o=e[i];if(!Be(o))throw new Error("Uint8Array expected");t+=o.length}let r=new Uint8Array(t),n=0;for(let i=0;i<e.length;i++){let o=e[i];r.set(o,n),n+=o.length}return r}function sx(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n<e.length;n++)r|=e[n]^t[n];return r===0}function ax(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function cx(e){let t;for(t=0;e>Zl;e>>=rs,t+=1);return t}function ux(e,t){return e>>BigInt(t)&rs}var fx=(e,t,r)=>e|(r?rs:Zl)<<BigInt(t),Bi=e=>(nx<<BigInt(e-1))-rs,qc=e=>new Uint8Array(e),Xl=e=>Uint8Array.from(e);function Gc(e,t,r){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof r!="function")throw new Error("hmacFn must be a function");let n=qc(e),i=qc(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=qc())=>{i=a(Xl([0]),l),n=a(),l.length!==0&&(i=a(Xl([1]),l),n=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<t;){n=a();let m=n.slice();d.push(m),l+=n.length}return ar(...d)};return(l,d)=>{s(),c(l);let m;for(;!(m=d(u()));)c();return s(),m}}var lx={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||Be(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function me(e,t,r={}){let n=(i,o,s)=>{let a=lx[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=e[i];if(!(s&&c===void 0)&&!a(c,e))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(t))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return e}var Mt=BigInt(0),Dt=BigInt(1),nn=BigInt(2),hx=BigInt(3),Wc=BigInt(4),jl=BigInt(5),Jl=BigInt(8),dx=BigInt(9),px=BigInt(16);function ft(e,t){let r=e%t;return r>=Mt?r:t+r}function $c(e,t,r){if(r<=Mt||t<Mt)throw new Error("Expected power/modulo > 0");if(r===Dt)return Mt;let n=Dt;for(;t>Mt;)t&Dt&&(n=n*e%r),e=e*e%r,t>>=Dt;return n}function vt(e,t,r){let n=e;for(;t-- >Mt;)n*=n,n%=r;return n}function is(e,t){if(e===Mt||t<=Mt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=ft(e,t),n=t,i=Mt,o=Dt,s=Dt,a=Mt;for(;r!==Mt;){let u=n/r,f=n%r,l=i-s*u,d=o-a*u;n=r,r=f,i=s,o=a,s=l,a=d}if(n!==Dt)throw new Error("invert: does not exist");return ft(i,t)}function mx(e){let t=(e-Dt)/nn,r,n,i;for(r=e-Dt,n=0;r%nn===Mt;r/=nn,n++);for(i=nn;i<e&&$c(i,t,e)!==e-Dt;i++);if(n===1){let s=(e+Dt)/Wc;return function(c,u){let f=c.pow(u,s);if(!c.eql(c.sqr(f),u))throw new Error("Cannot find square root");return f}}let o=(r+Dt)/nn;return function(a,c){if(a.pow(c,t)===a.neg(a.ONE))throw new Error("Cannot find square root");let u=n,f=a.pow(a.mul(a.ONE,i),r),l=a.pow(c,o),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let m=1;for(let p=a.sqr(d);m<u&&!a.eql(p,a.ONE);m++)p=a.sqr(p);let h=a.pow(f,Dt<<BigInt(u-m-1));f=a.sqr(h),l=a.mul(l,h),d=a.mul(d,f),u=m}return l}}function yx(e){if(e%Wc===hx){let t=(e+Dt)/Wc;return function(n,i){let o=n.pow(i,t);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(e%Jl===jl){let t=(e-jl)/Jl;return function(n,i){let o=n.mul(i,nn),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,nn),s),u=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(u),i))throw new Error("Cannot find square root");return u}}return e%px,mx(e)}var th=(e,t)=>(ft(e,t)&Dt)===Dt,gx=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Yc(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=gx.reduce((n,i)=>(n[i]="function",n),t);return me(e,r)}function xx(e,t,r){if(r<Mt)throw new Error("Expected power > 0");if(r===Mt)return e.ONE;if(r===Dt)return t;let n=e.ONE,i=t;for(;r>Mt;)r&Dt&&(n=e.mul(n,i)),i=e.sqr(i),r>>=Dt;return n}function bx(e,t){let r=new Array(t.length),n=t.reduce((o,s,a)=>e.is0(s)?o:(r[a]=o,e.mul(o,s)),e.ONE),i=e.inv(n);return t.reduceRight((o,s,a)=>e.is0(s)?o:(r[a]=e.mul(o,r[a]),e.mul(o,s)),i),r}function Xc(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function os(e,t,r=!1,n={}){if(e<=Mt)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=Xc(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=yx(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:Bi(i),ZERO:Mt,ONE:Dt,create:c=>ft(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Mt<=c&&c<e},is0:c=>c===Mt,isOdd:c=>(c&Dt)===Dt,neg:c=>ft(-c,e),eql:(c,u)=>c===u,sqr:c=>ft(c*c,e),add:(c,u)=>ft(c+u,e),sub:(c,u)=>ft(c-u,e),mul:(c,u)=>ft(c*u,e),pow:(c,u)=>xx(a,c,u),div:(c,u)=>ft(c*is(u,e),e),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>is(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>bx(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>r?sr(c,o):Ir(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?Te(c):or(c)}});return Object.freeze(a)}function eh(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");let r=e.sqrt(t);return e.isOdd(r)?e.neg(r):r}function rh(e){if(typeof e!="bigint")throw new Error("field order must be bigint");let t=e.toString(2).length;return Math.ceil(t/8)}function Zc(e){let t=rh(e);return t+Math.ceil(t/2)}function nh(e,t,r=!1){let n=e.length,i=rh(t),o=Zc(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?or(e):Te(e),a=ft(s,t-Dt)+Dt;return r?sr(a,i):Ir(a,i)}var vx=BigInt(0),Qc=BigInt(1);function ss(e,t){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(t/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=e.ZERO,a=i;for(;o>vx;)o&Qc&&(s=s.add(a)),a=a.double(),o>>=Qc;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],u=i,f=u;for(let l=0;l<s;l++){f=u,c.push(f);for(let d=1;d<a;d++)f=f.add(u),c.push(f);u=f.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),u=e.ZERO,f=e.BASE,l=BigInt(2**i-1),d=2**i,m=BigInt(i);for(let h=0;h<a;h++){let p=h*c,y=Number(s&l);s>>=m,y>c&&(y-=d,s+=Qc);let g=p,b=p+Math.abs(y)-1,x=h%2!==0,D=y<0;y===0?f=f.add(r(x,o[g])):u=u.add(r(D,o[b]))}return{p:u,f}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,u=o.get(i);return u||(u=this.precomputeWindow(i,c),c!==1&&o.set(i,a(u))),this.wNAF(c,u,s)}}}function Ti(e){return Yc(e.Fp),me(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Xc(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Ie=BigInt(0),ue=BigInt(1),as=BigInt(2),Ex=BigInt(8),Sx={zip215:!0};function Ax(e){let t=Ti(e);return me(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function cs(e){let t=Ax(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,u=as<<BigInt(a*8)-ue,f=r.create,l=t.uvRatio||((k,S)=>{try{return{isValid:!0,value:r.sqrt(k*r.inv(S))}}catch{return{isValid:!1,value:Ie}}}),d=t.adjustScalarBytes||(k=>k),m=t.domain||((k,S,P)=>{if(S.length||P)throw new Error("Contexts/pre-hash are not supported");return k}),h=k=>typeof k=="bigint"&&Ie<k,p=(k,S)=>h(k)&&h(S)&&k<S,y=k=>k===Ie||p(k,u);function g(k,S){if(p(k,S))return k;throw new Error(`Expected valid scalar < ${S}, got ${typeof k} ${k}`)}function b(k){return k===Ie?k:g(k,n)}let x=new Map;function D(k){if(!(k instanceof v))throw new Error("ExtendedPoint expected")}class v{constructor(S,P,M,H){if(this.ex=S,this.ey=P,this.ez=M,this.et=H,!y(S))throw new Error("x required");if(!y(P))throw new Error("y required");if(!y(M))throw new Error("z required");if(!y(H))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(S){if(S instanceof v)throw new Error("extended point not allowed");let{x:P,y:M}=S||{};if(!y(P)||!y(M))throw new Error("invalid affine point");return new v(P,M,ue,f(P*M))}static normalizeZ(S){let P=r.invertBatch(S.map(M=>M.ez));return S.map((M,H)=>M.toAffine(P[H])).map(v.fromAffine)}_setWindowSize(S){this._WINDOW_SIZE=S,x.delete(this)}assertValidity(){let{a:S,d:P}=t;if(this.is0())throw new Error("bad point: ZERO");let{ex:M,ey:H,ez:Z,et:j}=this,it=f(M*M),J=f(H*H),et=f(Z*Z),xt=f(et*et),yt=f(it*S),qt=f(et*f(yt+J)),zt=f(xt+f(P*f(it*J)));if(qt!==zt)throw new Error("bad point: equation left != right (1)");let Ut=f(M*H),Yt=f(Z*j);if(Ut!==Yt)throw new Error("bad point: equation left != right (2)")}equals(S){D(S);let{ex:P,ey:M,ez:H}=this,{ex:Z,ey:j,ez:it}=S,J=f(P*it),et=f(Z*H),xt=f(M*it),yt=f(j*H);return J===et&&xt===yt}is0(){return this.equals(v.ZERO)}negate(){return new v(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:S}=t,{ex:P,ey:M,ez:H}=this,Z=f(P*P),j=f(M*M),it=f(as*f(H*H)),J=f(S*Z),et=P+M,xt=f(f(et*et)-Z-j),yt=J+j,qt=yt-it,zt=J-j,Ut=f(xt*qt),Yt=f(yt*zt),Xe=f(xt*zt),Kr=f(qt*yt);return new v(Ut,Yt,Kr,Xe)}add(S){D(S);let{a:P,d:M}=t,{ex:H,ey:Z,ez:j,et:it}=this,{ex:J,ey:et,ez:xt,et:yt}=S;if(P===BigInt(-1)){let _u=f((Z-H)*(et+J)),ku=f((Z+H)*(et-J)),ea=f(ku-_u);if(ea===Ie)return this.double();let Ru=f(j*as*yt),Lu=f(it*as*xt),Nu=Lu+Ru,Pu=ku+_u,Uu=Lu-Ru,v2=f(Nu*ea),E2=f(Pu*Uu),S2=f(Nu*Uu),A2=f(ea*Pu);return new v(v2,E2,A2,S2)}let qt=f(H*J),zt=f(Z*et),Ut=f(it*M*yt),Yt=f(j*xt),Xe=f((H+Z)*(J+et)-qt-zt),Kr=Yt-Ut,fi=Yt+Ut,Iu=f(zt-P*qt),g2=f(Xe*Kr),x2=f(fi*Iu),b2=f(Xe*Iu),w2=f(Kr*fi);return new v(g2,x2,w2,b2)}subtract(S){return this.add(S.negate())}wNAF(S){return B.wNAFCached(this,x,S,v.normalizeZ)}multiply(S){let{p:P,f:M}=this.wNAF(g(S,n));return v.normalizeZ([P,M])[0]}multiplyUnsafe(S){let P=b(S);return P===Ie?C:this.equals(C)||P===ue?this:this.equals(E)?this.wNAF(P).p:B.unsafeLadder(this,P)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return B.unsafeLadder(this,n).is0()}toAffine(S){let{ex:P,ey:M,ez:H}=this,Z=this.is0();S==null&&(S=Z?Ex:r.inv(H));let j=f(P*S),it=f(M*S),J=f(H*S);if(Z)return{x:Ie,y:ue};if(J!==ue)throw new Error("invZ was invalid");return{x:j,y:it}}clearCofactor(){let{h:S}=t;return S===ue?this:this.multiplyUnsafe(S)}static fromHex(S,P=!1){let{d:M,a:H}=t,Z=r.BYTES;S=wt("pointHex",S,Z);let j=S.slice(),it=S[Z-1];j[Z-1]=it&-129;let J=Te(j);J===Ie||(P?g(J,u):g(J,r.ORDER));let et=f(J*J),xt=f(et-ue),yt=f(M*et-H),{isValid:qt,value:zt}=l(xt,yt);if(!qt)throw new Error("Point.fromHex: invalid y coordinate");let Ut=(zt&ue)===ue,Yt=(it&128)!==0;if(!P&&zt===Ie&&Yt)throw new Error("Point.fromHex: x=0 and x_0=1");return Yt!==Ut&&(zt=f(-zt)),v.fromAffine({x:zt,y:J})}static fromPrivateKey(S){return U(S).point}toRawBytes(){let{x:S,y:P}=this.toAffine(),M=sr(P,r.BYTES);return M[M.length-1]|=S&ue?128:0,M}toHex(){return ir(this.toRawBytes())}}v.BASE=new v(t.Gx,t.Gy,ue,f(t.Gx*t.Gy)),v.ZERO=new v(Ie,ue,ue,Ie);let{BASE:E,ZERO:C}=v,B=ss(v,a*8);function O(k){return ft(k,n)}function K(k){return O(Te(k))}function U(k){let S=a;k=wt("private key",k,S);let P=wt("hashed private key",o(k),2*S),M=d(P.slice(0,S)),H=P.slice(S,2*S),Z=K(M),j=E.multiply(Z),it=j.toRawBytes();return{head:M,prefix:H,scalar:Z,point:j,pointBytes:it}}function F(k){return U(k).pointBytes}function G(k=new Uint8Array,...S){let P=ar(...S);return K(o(m(P,wt("context",k),!!i)))}function Q(k,S,P={}){k=wt("message",k),i&&(k=i(k));let{prefix:M,scalar:H,pointBytes:Z}=U(S),j=G(P.context,M,k),it=E.multiply(j).toRawBytes(),J=G(P.context,it,Z,k),et=O(j+J*H);b(et);let xt=ar(it,sr(et,r.BYTES));return wt("result",xt,a*2)}let T=Sx;function R(k,S,P,M=T){let{context:H,zip215:Z}=M,j=r.BYTES;k=wt("signature",k,2*j),S=wt("message",S),i&&(S=i(S));let it=Te(k.slice(j,2*j)),J,et,xt;try{J=v.fromHex(P,Z),et=v.fromHex(k.slice(0,j),Z),xt=E.multiplyUnsafe(it)}catch{return!1}if(!Z&&J.isSmallOrder())return!1;let yt=G(H,et.toRawBytes(),J.toRawBytes(),S);return et.add(J.multiplyUnsafe(yt)).subtract(xt).clearCofactor().equals(v.ZERO)}return E._setWindowSize(8),{CURVE:t,getPublicKey:F,sign:Q,verify:R,ExtendedPoint:v,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>s(r.BYTES),precompute(k=8,S=v.BASE){return S._setWindowSize(k),S.multiply(BigInt(3)),S}}}}var Ii=BigInt(0),jc=BigInt(1);function Dx(e){return me(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function ih(e){let t=Dx(e),{P:r}=t,n=x=>ft(x,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(x=>x),c=t.powPminus2||(x=>$c(x,r-BigInt(2),r));function u(x,D,v){let E=n(x*(D-v));return D=n(D-E),v=n(v+E),[D,v]}function f(x){if(typeof x=="bigint"&&Ii<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(t.a-BigInt(2))/BigInt(4);function d(x,D){let v=f(x),E=f(D),C=v,B=jc,O=Ii,K=v,U=jc,F=Ii,G;for(let T=BigInt(i-1);T>=Ii;T--){let R=E>>T&jc;F^=R,G=u(F,B,K),B=G[0],K=G[1],G=u(F,O,U),O=G[0],U=G[1],F=R;let _=B+O,k=n(_*_),S=B-O,P=n(S*S),M=k-P,H=K+U,Z=K-U,j=n(Z*_),it=n(H*S),J=j+it,et=j-it;K=n(J*J),U=n(C*n(et*et)),B=n(k*P),O=n(M*(k+n(l*M)))}G=u(F,B,K),B=G[0],K=G[1],G=u(F,O,U),O=G[0],U=G[1];let Q=c(O);return n(B*Q)}function m(x){return sr(n(x),o)}function h(x){let D=wt("u coordinate",x,o);return s===32&&(D[31]&=127),Te(D)}function p(x){let D=wt("scalar",x),v=D.length;if(v!==o&&v!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${v}`);return Te(a(D))}function y(x,D){let v=h(D),E=p(x),C=d(v,E);if(C===Ii)throw new Error("Invalid private or public key received");return m(C)}let g=m(t.Gu);function b(x){return y(x,g)}return{scalarMult:y,scalarMultBase:b,getSharedSecret:(x,D)=>y(x,D),getPublicKey:x=>b(x),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:g}}var _i=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),oh=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),kC=BigInt(0),Cx=BigInt(1),Jc=BigInt(2),Bx=BigInt(5),sh=BigInt(10),Tx=BigInt(20),Ix=BigInt(40),ah=BigInt(80);function ch(e){let t=_i,n=e*e%t*e%t,i=vt(n,Jc,t)*n%t,o=vt(i,Cx,t)*e%t,s=vt(o,Bx,t)*o%t,a=vt(s,sh,t)*s%t,c=vt(a,Tx,t)*a%t,u=vt(c,Ix,t)*c%t,f=vt(u,ah,t)*u%t,l=vt(f,ah,t)*u%t,d=vt(l,sh,t)*s%t;return{pow_p_5_8:vt(d,Jc,t)*e%t,b2:n}}function uh(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function _x(e,t){let r=_i,n=ft(t*t*t,r),i=ft(n*n*t,r),o=ch(e*i).pow_p_5_8,s=ft(e*n*o,r),a=ft(t*s*s,r),c=s,u=ft(s*oh,r),f=a===e,l=a===ft(-e,r),d=a===ft(-e*oh,r);return f&&(s=c),(l||d)&&(s=u),th(s,r)&&(s=ft(-s,r)),{isValid:f||l,value:s}}var cr=os(_i,void 0,!0),t0={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:cr,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Hc,randomBytes:en,adjustScalarBytes:uh,uvRatio:_x},qn=cs(t0);function fh(e,t,r){if(t.length>255)throw new Error("Context is too big");return Jo(Mc("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var RC=cs({...t0,domain:fh}),LC=cs({...t0,domain:fh,prehash:Hc}),ki=ih({P:_i,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=_i,{pow_p_5_8:r,b2:n}=ch(e);return ft(vt(r,BigInt(3),t)*n,t)},adjustScalarBytes:uh,randomBytes:en});var kx=(cr.ORDER+BigInt(3))/BigInt(8),NC=cr.pow(Jc,kx),PC=cr.sqrt(cr.neg(cr.ONE)),UC=(cr.ORDER-BigInt(5))/BigInt(8),OC=BigInt(486662);var KC=eh(cr,cr.neg(BigInt(486664)));var MC=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),FC=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),VC=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),HC=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var qC=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var us=class extends Vn{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,Ci(t);let n=Cr(r);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?t.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=t.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(t){return Fn(this),this.iHash.update(t),this}digestInto(t){Fn(this),Kc(t,this.outputLen),this.finished=!0,this.iHash.digestInto(t),this.oHash.update(t),this.oHash.digestInto(t),this.destroy()}digest(){let t=new Uint8Array(this.oHash.outputLen);return this.digestInto(t),t}_cloneInto(t){t||(t=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return t=t,t.finished=i,t.destroyed=o,t.blockLen=s,t.outputLen=a,t.oHash=r._cloneInto(t.oHash),t.iHash=n._cloneInto(t.iHash),t}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},zn=(e,t,r)=>new us(e,t).update(r).digest();zn.create=(e,t)=>new us(e,t);function hh(e,t,r){return Ci(e),r===void 0&&(r=new Uint8Array(e.outputLen)),zn(e,Cr(r),Cr(t))}var e0=new Uint8Array([0]),lh=new Uint8Array;function dh(e,t,r,n=32){if(Ci(e),Zo(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=lh);let o=new Uint8Array(i*e.outputLen),s=zn.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let u=0;u<i;u++)e0[0]=u+1,a.update(u===0?lh:c).update(r).update(e0).digestInto(c),o.set(c,e.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),e0.fill(0),o.slice(0,n)}var Rx=(e,t,r)=>e&t^~e&r,Lx=(e,t,r)=>e&t^e&r^t&r,Nx=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]),_r=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),kr=new Uint32Array(64),r0=class extends Hn{constructor(){super(64,32,8,!1),this.A=_r[0]|0,this.B=_r[1]|0,this.C=_r[2]|0,this.D=_r[3]|0,this.E=_r[4]|0,this.F=_r[5]|0,this.G=_r[6]|0,this.H=_r[7]|0}get(){let{A:t,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[t,r,n,i,o,s,a,c]}set(t,r,n,i,o,s,a,c){this.A=t|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(t,r){for(let l=0;l<16;l++,r+=4)kr[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=kr[l-15],m=kr[l-2],h=Ce(d,7)^Ce(d,18)^d>>>3,p=Ce(m,17)^Ce(m,19)^m>>>10;kr[l]=p+kr[l-7]+h+kr[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:u,H:f}=this;for(let l=0;l<64;l++){let d=Ce(a,6)^Ce(a,11)^Ce(a,25),m=f+d+Rx(a,c,u)+Nx[l]+kr[l]|0,p=(Ce(n,2)^Ce(n,13)^Ce(n,22))+Lx(n,i,o)|0;f=u,u=c,c=a,a=s+m|0,s=o,o=i,i=n,n=m+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,u=u+this.G|0,f=f+this.H|0,this.set(n,i,o,s,a,c,u,f)}roundClean(){kr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Gn=ts(()=>new r0);var n0={hashSHA256(e){return Gn(e.subarray())},getHKDF(e,t){let r=hh(Gn,t,e),i=dh(Gn,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let e=ki.utils.randomPrivateKey();return{publicKey:ki.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:ki.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return ki.getSharedSecret(e.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return Oc(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return Oc(n,t,r).decrypt(e.subarray(),i)}};var ph=n0;var Wn=e=>{let t=Jr(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Wn.bytes=2;var Ri=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e instanceof Uint8Array?new DataView(e.buffer,e.byteOffset,e.byteLength).getUint16(0,!1):e.getUint16(0)};Ri.bytes=2;function mh(e){return new At(e.ne,e.ciphertext)}function yh(e){return new At(e.ne,e.ns,e.ciphertext)}function gh(e){return new At(e.ns,e.ciphertext)}function xh(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.subarray(0,32),ciphertext:e.subarray(32,e.length),ns:pt(0)}}function bh(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.subarray(0,32),ns:e.subarray(32,80),ciphertext:e.subarray(80,e.length)}}function wh(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:pt(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var Eh=16;function Sh(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new At(Wn(s.byteLength),s)}}}function Ah(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-Eh<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-Eh),{plaintext:c,valid:u}=e.decrypt(s,e.session,a);if(!u)throw t?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");t?.decryptedPackets.increment(),yield c}}}var Ni=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},on=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var WI=Xt(Ki(),1),$I=Xt(Fd(),1);var Uv=Xt(gt(),1);function ln(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Ts(e=0){return globalThis.Buffer?.allocUnsafe!=null?ln(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Hd(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Vd=Hd("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),C0=Hd("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Ts(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),ov={utf8:Vd,"utf-8":Vd,hex:Ot.base16,latin1:C0,ascii:C0,binary:C0,...Ot},Is=ov;function fe(e,t="utf8"){let r=Is[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ln(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var _0={};ct(_0,{Ed25519PrivateKey:()=>dn,Ed25519PublicKey:()=>Vi,generateKeyPair:()=>uv,generateKeyPairFromSeed:()=>Qd,unmarshalEd25519PrivateKey:()=>av,unmarshalEd25519PublicKey:()=>cv});function ze(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}var rT=Xt(Pt(),1),nT=Xt(As(),1),qd=Xt(gt(),1);function hn(e,t){if(globalThis.Buffer!=null)return ln(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Ts(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return ln(r)}function le(e,t="utf8"){let r=Is[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function Re(e,t){let r=Uint8Array.from(e.abs().toByteArray());if(r=r[0]===0?r.subarray(1):r,t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=hn([new Uint8Array(t-r.length),r])}return le(r,"base64url")}function he(e){let t=zd(e);return new qd.default.jsbn.BigInteger(le(t,"base16"),16)}function zd(e,t){let r=fe(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=hn([new Uint8Array(t-r.length),r])}return r}function xe(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var Qn=32,hr=64,_s=32;function Gd(){let e=qn.utils.randomPrivateKey(),t=qn.getPublicKey(e);return{privateKey:Xd(e,t),publicKey:t}}function Wd(e){if(e.length!==_s)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let t=e,r=qn.getPublicKey(t);return{privateKey:Xd(t,r),publicKey:r}}function $d(e,t){let r=e.subarray(0,_s);return qn.sign(t instanceof Uint8Array?t:t.subarray(),r)}function Yd(e,t,r){return qn.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function Xd(e,t){let r=new Uint8Array(hr);for(let n=0;n<_s;n++)r[n]=e[n],r[_s+n]=t[n];return r}var ae={get(e=globalThis){let t=e.crypto;if(t==null||t.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}};var B0={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function T0(e){let t=e?.algorithm??"AES-GCM",r=e?.keyLength??16,n=e?.nonceLength??12,i=e?.digest??"SHA-256",o=e?.saltLength??16,s=e?.iterations??32767,a=ae.get();r*=8;async function c(l,d){let m=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:t,iv:h};typeof d=="string"&&(d=fe(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",B0,{name:"AES-GCM"},!0,["encrypt"]);try{let b={name:"PBKDF2",salt:m,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(b,x,{name:t,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",B0,{name:"AES-GCM"},!0,["encrypt"])}}else{let b={name:"PBKDF2",salt:m,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(b,x,{name:t,length:r},!0,["encrypt"])}let g=await a.subtle.encrypt(p,y,l);return hn([m,p.iv,new Uint8Array(g)])}async function u(l,d){let m=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),y={name:t,iv:h};typeof d=="string"&&(d=fe(d));let g;if(d.length===0)try{let x={name:"PBKDF2",salt:m,iterations:s,hash:{name:i}},D=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,D,{name:t,length:r},!0,["decrypt"])}catch{g=await a.subtle.importKey("jwk",B0,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:m,iterations:s,hash:{name:i}},D=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,D,{name:t,length:r},!0,["decrypt"])}let b=await a.subtle.decrypt(y,g,p);return new Uint8Array(b)}return{encrypt:c,decrypt:u}}async function jn(e,t){let n=await T0().encrypt(e,t);return co.encode(n)}var Bt;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(Bt||(Bt={}));var I0;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(I0||(I0={}));(function(e){e.codec=()=>Xr(I0)})(Bt||(Bt={}));var Ge;(function(e){let t;e.codec=()=>(t==null&&(t=De((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Bt.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=Bt.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Ae(r,e.codec()),e.decode=r=>Se(r,e.codec())})(Ge||(Ge={}));var We;(function(e){let t;e.codec=()=>(t==null&&(t=De((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Bt.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=Bt.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Ae(r,e.codec()),e.decode=r=>Se(r,e.codec())})(We||(We={}));var Vi=class{_key;constructor(t){this._key=Jn(t,Qn)}verify(t,r){return Yd(this._key,r,t)}marshal(){return this._key}get bytes(){return Ge.encode({Type:Bt.Ed25519,Data:this.marshal()}).subarray()}equals(t){return ze(this.bytes,t.bytes)}hash(){let t=Gt.digest(this.bytes);return xe(t)?t.then(({bytes:r})=>r):t.bytes}},dn=class{_key;_publicKey;constructor(t,r){this._key=Jn(t,hr),this._publicKey=Jn(r,Qn)}sign(t){return $d(this._key,t)}get public(){return new Vi(this._publicKey)}marshal(){return this._key}get bytes(){return We.encode({Type:Bt.Ed25519,Data:this.marshal()}).subarray()}equals(t){return ze(this.bytes,t.bytes)}async hash(){let t=Gt.digest(this.bytes),r;return xe(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=xr.digest(this.public.bytes);return _t.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return jn(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function av(e){if(e.length>hr){e=Jn(e,hr+Qn);let n=e.subarray(0,hr),i=e.subarray(hr,e.length);return new dn(n,i)}e=Jn(e,hr);let t=e.subarray(0,hr),r=e.subarray(Qn);return new dn(t,r)}function cv(e){return e=Jn(e,Qn),new Vi(e)}async function uv(){let{privateKey:e,publicKey:t}=Gd();return new dn(e,t)}async function Qd(e){let{privateKey:t,publicKey:r}=Wd(e);return new dn(t,r)}function Jn(e,t){if(e=Uint8Array.from(e??[]),e.length!==t)throw new W(`Key must be a Uint8Array of length ${t}, got ${e.length}`,"ERR_INVALID_KEY_TYPE");return e}var fv={"P-256":256,"P-384":384,"P-521":521},lv=Object.keys(fv),IT=lv.join(" / ");var P0={};ct(P0,{MAX_KEY_SIZE:()=>Gi,RsaPrivateKey:()=>ti,RsaPublicKey:()=>zi,fromJwk:()=>Ev,generateKeyPair:()=>Sv,unmarshalRsaPrivateKey:()=>wv,unmarshalRsaPublicKey:()=>vv});var qi=Xt(gt(),1);var dI=Xt(rp(),1);function Rs(e){if(isNaN(e)||e<=0)throw new W("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return en(e)}var XT=Xt(Bs(),1),L0=Xt(gt(),1);function np(e,t){return t.map(r=>he(e[r]))}function ip(e){return L0.default.pki.setRsaPrivateKey(...np(e,["n","e","d","p","q","dp","dq","qi"]))}function op(e){return L0.default.pki.setRsaPublicKey(...np(e,["n","e"]))}var mn={};ct(mn,{jwkToPkcs1:()=>mv,jwkToPkix:()=>gv,pkcs1ToJwk:()=>pv,pkixToJwk:()=>yv});var jT=Xt(Ki(),1),JT=Xt(Bs(),1);var dr=Xt(gt(),1);function pv(e){let t=dr.default.asn1.fromDer(le(e,"ascii")),r=dr.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:Re(r.n),e:Re(r.e),d:Re(r.d),p:Re(r.p),q:Re(r.q),dp:Re(r.dP),dq:Re(r.dQ),qi:Re(r.qInv),alg:"RS256"}}function mv(e){if(e.n==null||e.e==null||e.d==null||e.p==null||e.q==null||e.dp==null||e.dq==null||e.qi==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let t=dr.default.pki.privateKeyToAsn1({n:he(e.n),e:he(e.e),d:he(e.d),p:he(e.p),q:he(e.q),dP:he(e.dp),dQ:he(e.dq),qInv:he(e.qi)});return fe(dr.default.asn1.toDer(t).getBytes(),"ascii")}function yv(e){let t=dr.default.asn1.fromDer(le(e,"ascii")),r=dr.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:Re(r.n),e:Re(r.e)}}function gv(e){if(e.n==null||e.e==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let t=dr.default.pki.publicKeyToAsn1({n:he(e.n),e:he(e.e)});return fe(dr.default.asn1.toDer(t).getBytes(),"ascii")}async function sp(e){let t=await ae.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await up(t);return{privateKey:r[0],publicKey:r[1]}}async function N0(e){let r=[await ae.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await xv(e)],n=await up({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function ap(e,t){let r=await ae.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ae.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function cp(e,t,r){let n=await ae.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ae.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r instanceof Uint8Array?r:r.subarray())}async function up(e){if(e.privateKey==null||e.publicKey==null)throw new W("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ae.get().subtle.exportKey("jwk",e.privateKey),ae.get().subtle.exportKey("jwk",e.publicKey)])}async function xv(e){return ae.get().subtle.importKey("jwk",{kty:e.kty,n:e.n,e:e.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function fp(e,t,r,n){let i=t?op(e):ip(e),o=le(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return fe(s,"ascii")}function lp(e,t){return fp(e,!0,t,(r,n)=>n.encrypt(r))}function hp(e,t){return fp(e,!1,t,(r,n)=>n.decrypt(r))}function Ls(e){if(e.kty!=="RSA")throw new W("invalid key type","ERR_INVALID_KEY_TYPE");if(e.n==null)throw new W("invalid key modulus","ERR_INVALID_KEY_MODULUS");return fe(e.n,"base64url").length*8}var Gi=8192,zi=class{_key;constructor(t){this._key=t}verify(t,r){return cp(this._key,r,t)}marshal(){return mn.jwkToPkix(this._key)}get bytes(){return Ge.encode({Type:Bt.RSA,Data:this.marshal()}).subarray()}encrypt(t){return lp(this._key,t)}equals(t){return ze(this.bytes,t.bytes)}hash(){let t=Gt.digest(this.bytes);return xe(t)?t.then(({bytes:r})=>r):t.bytes}},ti=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return Rs(16)}sign(t){return ap(this._key,t)}get public(){if(this._publicKey==null)throw new W("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new zi(this._publicKey)}decrypt(t){return hp(this._key,t)}marshal(){return mn.jwkToPkcs1(this._key)}get bytes(){return We.encode({Type:Bt.RSA,Data:this.marshal()}).subarray()}equals(t){return ze(this.bytes,t.bytes)}hash(){let t=Gt.digest(this.bytes);return xe(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return le(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new qi.default.util.ByteBuffer(this.marshal()),i=qi.default.asn1.fromDer(n),o=qi.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return qi.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return jn(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function wv(e){let t=mn.pkcs1ToJwk(e);if(Ls(t)>Gi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await N0(t);return new ti(r.privateKey,r.publicKey)}function vv(e){let t=mn.pkixToJwk(e);if(Ls(t)>Gi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new zi(t)}async function Ev(e){if(Ls(e)>Gi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await N0(e);return new ti(t.privateKey,t.publicKey)}async function Sv(e){if(e>Gi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await sp(e);return new ti(t.privateKey,t.publicKey)}var M0={};ct(M0,{Secp256k1PrivateKey:()=>$i,Secp256k1PublicKey:()=>Wi,generateKeyPair:()=>Pv,unmarshalSecp256k1PrivateKey:()=>Lv,unmarshalSecp256k1PublicKey:()=>Nv});function Av(e){let t=Ti(e);me(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=t;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}var{bytesToNumberBE:Dv,hexToBytes:Cv}=ns,yn={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=yn;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");let r=e[1],n=e.subarray(2,r+2);if(!r||n.length!==r)throw new t("Invalid signature integer: wrong length");if(n[0]&128)throw new t("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:Dv(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=yn,r=typeof e=="string"?Cv(e):e;if(!Be(r))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new t("Invalid signature tag");if(r[1]!==n-2)throw new t("Invalid signature: incorrect length");let{d:i,l:o}=yn._parseInt(r.subarray(2)),{d:s,l:a}=yn._parseInt(o);if(a.length)throw new t("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(e){let t=u=>Number.parseInt(u[0],16)&8?"00"+u:u,r=u=>{let f=u.toString(16);return f.length&1?`0${f}`:f},n=t(r(e.s)),i=t(r(e.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},pr=BigInt(0),be=BigInt(1),wI=BigInt(2),dp=BigInt(3),vI=BigInt(4);function Bv(e){let t=Av(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let g=p.toAffine();return ar(Uint8Array.from([4]),r.toBytes(g.x),r.toBytes(g.y))}),i=t.fromBytes||(h=>{let p=h.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),g=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:g}});function o(h){let{a:p,b:y}=t,g=r.sqr(h),b=r.mul(g,h);return r.add(r.add(b,r.mul(h,p)),y)}if(!r.eql(r.sqr(t.Gy),o(t.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&pr<h&&h<t.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:g,n:b}=t;if(p&&typeof h!="bigint"){if(Be(h)&&(h=ir(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(y*2,"0")}let x;try{x=typeof h=="bigint"?h:or(wt("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return g&&(x=ft(x,b)),a(x),x}let u=new Map;function f(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,g){if(this.px=p,this.py=y,this.pz=g,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(g==null||!r.isValid(g))throw new Error("z required")}static fromAffine(p){let{x:y,y:g}=p||{};if(!p||!r.isValid(y)||!r.isValid(g))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let b=x=>r.eql(x,r.ZERO);return b(y)&&b(g)?l.ZERO:new l(y,g,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(g=>g.pz));return p.map((g,b)=>g.toAffine(y[b])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(wt("pointHex",p)));return y.assertValidity(),y}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,u.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y}=this.toAffine();if(!r.isValid(p)||!r.isValid(y))throw new Error("bad point: x or y not FE");let g=r.sqr(y),b=o(p);if(!r.eql(g,b))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){f(p);let{px:y,py:g,pz:b}=this,{px:x,py:D,pz:v}=p,E=r.eql(r.mul(y,v),r.mul(x,b)),C=r.eql(r.mul(g,v),r.mul(D,b));return E&&C}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=t,g=r.mul(y,dp),{px:b,py:x,pz:D}=this,v=r.ZERO,E=r.ZERO,C=r.ZERO,B=r.mul(b,b),O=r.mul(x,x),K=r.mul(D,D),U=r.mul(b,x);return U=r.add(U,U),C=r.mul(b,D),C=r.add(C,C),v=r.mul(p,C),E=r.mul(g,K),E=r.add(v,E),v=r.sub(O,E),E=r.add(O,E),E=r.mul(v,E),v=r.mul(U,v),C=r.mul(g,C),K=r.mul(p,K),U=r.sub(B,K),U=r.mul(p,U),U=r.add(U,C),C=r.add(B,B),B=r.add(C,B),B=r.add(B,K),B=r.mul(B,U),E=r.add(E,B),K=r.mul(x,D),K=r.add(K,K),B=r.mul(K,U),v=r.sub(v,B),C=r.mul(K,O),C=r.add(C,C),C=r.add(C,C),new l(v,E,C)}add(p){f(p);let{px:y,py:g,pz:b}=this,{px:x,py:D,pz:v}=p,E=r.ZERO,C=r.ZERO,B=r.ZERO,O=t.a,K=r.mul(t.b,dp),U=r.mul(y,x),F=r.mul(g,D),G=r.mul(b,v),Q=r.add(y,g),T=r.add(x,D);Q=r.mul(Q,T),T=r.add(U,F),Q=r.sub(Q,T),T=r.add(y,b);let R=r.add(x,v);return T=r.mul(T,R),R=r.add(U,G),T=r.sub(T,R),R=r.add(g,b),E=r.add(D,v),R=r.mul(R,E),E=r.add(F,G),R=r.sub(R,E),B=r.mul(O,T),E=r.mul(K,G),B=r.add(E,B),E=r.sub(F,B),B=r.add(F,B),C=r.mul(E,B),F=r.add(U,U),F=r.add(F,U),G=r.mul(O,G),T=r.mul(K,T),F=r.add(F,G),G=r.sub(U,G),G=r.mul(O,G),T=r.add(T,G),U=r.mul(F,T),C=r.add(C,U),U=r.mul(R,T),E=r.mul(Q,E),E=r.sub(E,U),U=r.mul(Q,F),B=r.mul(R,B),B=r.add(B,U),new l(E,C,B)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return m.wNAFCached(this,u,p,y=>{let g=r.invertBatch(y.map(b=>b.pz));return y.map((b,x)=>b.toAffine(g[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===pr)return y;if(a(p),p===be)return this;let{endo:g}=t;if(!g)return m.unsafeLadder(this,p);let{k1neg:b,k1:x,k2neg:D,k2:v}=g.splitScalar(p),E=y,C=y,B=this;for(;x>pr||v>pr;)x&be&&(E=E.add(B)),v&be&&(C=C.add(B)),B=B.double(),x>>=be,v>>=be;return b&&(E=E.negate()),D&&(C=C.negate()),C=new l(r.mul(C.px,g.beta),C.py,C.pz),E.add(C)}multiply(p){a(p);let y=p,g,b,{endo:x}=t;if(x){let{k1neg:D,k1:v,k2neg:E,k2:C}=x.splitScalar(y),{p:B,f:O}=this.wNAF(v),{p:K,f:U}=this.wNAF(C);B=m.constTimeNegate(D,B),K=m.constTimeNegate(E,K),K=new l(r.mul(K.px,x.beta),K.py,K.pz),g=B.add(K),b=O.add(U)}else{let{p:D,f:v}=this.wNAF(y);g=D,b=v}return l.normalizeZ([g,b])[0]}multiplyAndAddUnsafe(p,y,g){let b=l.BASE,x=(v,E)=>E===pr||E===be||!v.equals(b)?v.multiplyUnsafe(E):v.multiply(E),D=x(this,y).add(x(p,g));return D.is0()?void 0:D}toAffine(p){let{px:y,py:g,pz:b}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(b));let D=r.mul(y,p),v=r.mul(g,p),E=r.mul(b,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:D,y:v}}isTorsionFree(){let{h:p,isTorsionFree:y}=t;if(p===be)return!0;if(y)return y(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:y}=t;return p===be?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return ir(this.toRawBytes(p))}}l.BASE=new l(t.Gx,t.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=t.nBitLength,m=ss(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Tv(e){let t=Ti(e);return me(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function pp(e){let t=Tv(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(T){return pr<T&&T<r.ORDER}function a(T){return ft(T,n)}function c(T){return is(T,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:d}=Bv({...t,toBytes(T,R,_){let k=R.toAffine(),S=r.toBytes(k.x),P=ar;return _?P(Uint8Array.from([R.hasEvenY()?2:3]),S):P(Uint8Array.from([4]),S,r.toBytes(k.y))},fromBytes(T){let R=T.length,_=T[0],k=T.subarray(1);if(R===i&&(_===2||_===3)){let S=or(k);if(!s(S))throw new Error("Point is not on curve");let P=l(S),M=r.sqrt(P),H=(M&be)===be;return(_&1)===1!==H&&(M=r.neg(M)),{x:S,y:M}}else if(R===o&&_===4){let S=r.fromBytes(k.subarray(0,r.BYTES)),P=r.fromBytes(k.subarray(r.BYTES,2*r.BYTES));return{x:S,y:P}}else throw new Error(`Point of length ${R} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),m=T=>ir(Ir(T,t.nByteLength));function h(T){let R=n>>be;return T>R}function p(T){return h(T)?a(-T):T}let y=(T,R,_)=>or(T.slice(R,_));class g{constructor(R,_,k){this.r=R,this.s=_,this.recovery=k,this.assertValidity()}static fromCompact(R){let _=t.nByteLength;return R=wt("compactSignature",R,_*2),new g(y(R,0,_),y(R,_,2*_))}static fromDER(R){let{r:_,s:k}=yn.toSig(wt("DER",R));return new g(_,k)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(R){return new g(this.r,this.s,R)}recoverPublicKey(R){let{r:_,s:k,recovery:S}=this,P=C(wt("msgHash",R));if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");let M=S===2||S===3?_+t.n:_;if(M>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let H=S&1?"03":"02",Z=u.fromHex(H+m(M)),j=c(M),it=a(-P*j),J=a(k*j),et=u.BASE.multiplyAndAddUnsafe(Z,it,J);if(!et)throw new Error("point at infinify");return et.assertValidity(),et}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new g(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return rn(this.toDERHex())}toDERHex(){return yn.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return rn(this.toCompactHex())}toCompactHex(){return m(this.r)+m(this.s)}}let b={isValidPrivateKey(T){try{return f(T),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let T=Zc(t.n);return nh(t.randomBytes(T),t.n)},precompute(T=8,R=u.BASE){return R._setWindowSize(T),R.multiply(BigInt(3)),R}};function x(T,R=!0){return u.fromPrivateKey(T).toRawBytes(R)}function D(T){let R=Be(T),_=typeof T=="string",k=(R||_)&&T.length;return R?k===i||k===o:_?k===2*i||k===2*o:T instanceof u}function v(T,R,_=!0){if(D(T))throw new Error("first arg must be private key");if(!D(R))throw new Error("second arg must be public key");return u.fromHex(R).multiply(f(T)).toRawBytes(_)}let E=t.bits2int||function(T){let R=or(T),_=T.length*8-t.nBitLength;return _>0?R>>BigInt(_):R},C=t.bits2int_modN||function(T){return a(E(T))},B=Bi(t.nBitLength);function O(T){if(typeof T!="bigint")throw new Error("bigint expected");if(!(pr<=T&&T<B))throw new Error(`bigint expected < 2^${t.nBitLength}`);return Ir(T,t.nByteLength)}function K(T,R,_=U){if(["recovered","canonical"].some(yt=>yt in _))throw new Error("sign() legacy options not supported");let{hash:k,randomBytes:S}=t,{lowS:P,prehash:M,extraEntropy:H}=_;P==null&&(P=!0),T=wt("msgHash",T),M&&(T=wt("prehashed msgHash",k(T)));let Z=C(T),j=f(R),it=[O(j),O(Z)];if(H!=null){let yt=H===!0?S(r.BYTES):H;it.push(wt("extraEntropy",yt))}let J=ar(...it),et=Z;function xt(yt){let qt=E(yt);if(!d(qt))return;let zt=c(qt),Ut=u.BASE.multiply(qt).toAffine(),Yt=a(Ut.x);if(Yt===pr)return;let Xe=a(zt*a(et+Yt*j));if(Xe===pr)return;let Kr=(Ut.x===Yt?0:2)|Number(Ut.y&be),fi=Xe;return P&&h(Xe)&&(fi=p(Xe),Kr^=1),new g(Yt,fi,Kr)}return{seed:J,k2sig:xt}}let U={lowS:t.lowS,prehash:!1},F={lowS:t.lowS,prehash:!1};function G(T,R,_=U){let{seed:k,k2sig:S}=K(T,R,_),P=t;return Gc(P.hash.outputLen,P.nByteLength,P.hmac)(k,S)}u.BASE._setWindowSize(8);function Q(T,R,_,k=F){let S=T;if(R=wt("msgHash",R),_=wt("publicKey",_),"strict"in k)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:M}=k,H,Z;try{if(typeof S=="string"||Be(S))try{H=g.fromDER(S)}catch(Ut){if(!(Ut instanceof yn.Err))throw Ut;H=g.fromCompact(S)}else if(typeof S=="object"&&typeof S.r=="bigint"&&typeof S.s=="bigint"){let{r:Ut,s:Yt}=S;H=new g(Ut,Yt)}else throw new Error("PARSE");Z=u.fromHex(_)}catch(Ut){if(Ut.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(P&&H.hasHighS())return!1;M&&(R=t.hash(R));let{r:j,s:it}=H,J=C(R),et=c(it),xt=a(J*et),yt=a(j*et),qt=u.BASE.multiplyAndAddUnsafe(Z,xt,yt)?.toAffine();return qt?a(qt.x)===j:!1}return{CURVE:t,getPublicKey:x,getSharedSecret:v,sign:G,verify:Q,ProjectivePoint:u,Signature:g,utils:b}}function Iv(e){return{hash:e,hmac:(t,...r)=>zn(e,t,Jo(...r)),randomBytes:en}}function mp(e,t){let r=n=>pp({...e,...Iv(n)});return Object.freeze({...r(t),create:r})}var xp=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),yp=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),_v=BigInt(1),U0=BigInt(2),gp=(e,t)=>(e+t/U0)/t;function kv(e){let t=xp,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=e*e*e%t,f=u*u*e%t,l=vt(f,r,t)*f%t,d=vt(l,r,t)*f%t,m=vt(d,U0,t)*u%t,h=vt(m,i,t)*m%t,p=vt(h,o,t)*h%t,y=vt(p,a,t)*p%t,g=vt(y,c,t)*y%t,b=vt(g,a,t)*p%t,x=vt(b,r,t)*f%t,D=vt(x,s,t)*h%t,v=vt(D,n,t)*u%t,E=vt(v,U0,t);if(!O0.eql(O0.sqr(E),e))throw new Error("Cannot find square root");return E}var O0=os(xp,void 0,void 0,{sqrt:kv}),Le=mp({a:BigInt(0),b:BigInt(7),Fp:O0,n:yp,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=yp,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-_v*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=gp(o*e,t),c=gp(-n*e,t),u=ft(e-a*r-c*i,t),f=ft(-a*n-c*o,t),l=u>s,d=f>s;if(l&&(u=t-u),d&&(f=t-f),u>s||f>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:l,k1:u,k2neg:d,k2:f}}}},Gn),_I=BigInt(0);var kI=Le.ProjectivePoint;function bp(){return Le.utils.randomPrivateKey()}function wp(e,t){let r=Gt.digest(t instanceof Uint8Array?t:t.subarray());if(xe(r))return r.then(({digest:n})=>Le.sign(n,e).toDERRawBytes()).catch(n=>{throw new W(String(n),"ERR_INVALID_INPUT")});try{return Le.sign(r.digest,e).toDERRawBytes()}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}function vp(e,t,r){let n=Gt.digest(r instanceof Uint8Array?r:r.subarray());if(xe(n))return n.then(({digest:i})=>Le.verify(t,i,e)).catch(i=>{throw new W(String(i),"ERR_INVALID_INPUT")});try{return Le.verify(t,n.digest,e)}catch(i){throw new W(String(i),"ERR_INVALID_INPUT")}}function Ep(e){return Le.ProjectivePoint.fromHex(e).toRawBytes(!0)}function Sp(e){try{Le.getPublicKey(e,!0)}catch(t){throw new W(String(t),"ERR_INVALID_PRIVATE_KEY")}}function K0(e){try{Le.ProjectivePoint.fromHex(e)}catch(t){throw new W(String(t),"ERR_INVALID_PUBLIC_KEY")}}function Ap(e){try{return Le.getPublicKey(e,!0)}catch(t){throw new W(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Wi=class{_key;constructor(t){K0(t),this._key=t}verify(t,r){return vp(this._key,r,t)}marshal(){return Ep(this._key)}get bytes(){return Ge.encode({Type:Bt.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return ze(this.bytes,t.bytes)}async hash(){let t=Gt.digest(this.bytes),r;return xe(t)?{bytes:r}=await t:r=t.bytes,r}},$i=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??Ap(t),Sp(this._key),K0(this._publicKey)}sign(t){return wp(this._key,t)}get public(){return new Wi(this._publicKey)}marshal(){return this._key}get bytes(){return We.encode({Type:Bt.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return ze(this.bytes,t.bytes)}hash(){let t=Gt.digest(this.bytes);return xe(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return le(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return jn(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Lv(e){return new $i(e)}function Nv(e){return new Wi(e)}async function Pv(){let e=bp();return new $i(e)}var gn={rsa:P0,ed25519:_0,secp256k1:M0};function Dp(e){let t=Object.keys(gn).join(" / ");return new W(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Cp(e){let t=Ge.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Bt.RSA:return gn.rsa.unmarshalRsaPublicKey(r);case Bt.Ed25519:return gn.ed25519.unmarshalEd25519PublicKey(r);case Bt.Secp256k1:return gn.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Dp(t.Type??"unknown")}}async function Bp(e){let t=We.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case Bt.RSA:return gn.rsa.unmarshalRsaPrivateKey(r);case Bt.Ed25519:return gn.ed25519.unmarshalEd25519PrivateKey(r);case Bt.Secp256k1:return gn.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Dp(t.Type??"RSA")}}function F0(e,t){if(globalThis.Buffer!=null)return er(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Jr(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return er(r)}function Ip(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Tp=Ip("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),V0=Ip("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=Jr(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),Ov={utf8:Tp,"utf-8":Tp,hex:Ot.base16,latin1:V0,ascii:V0,binary:V0,...Ot},Ns=Ov;function Yi(e,t="utf8"){let r=Ns[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?er(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var Ps;(function(e){let t;e.codec=()=>(t==null&&(t=De((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Ae(r,e.codec()),e.decode=r=>Se(r,e.codec())})(Ps||(Ps={}));var Xi;(function(e){let t;e.codec=()=>(t==null&&(t=De((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.identityKey!=null&&r.identityKey.byteLength>0&&(n.uint32(10),n.bytes(r.identityKey)),r.identitySig!=null&&r.identitySig.byteLength>0&&(n.uint32(18),n.bytes(r.identitySig)),r.extensions!=null&&(n.uint32(34),Ps.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:pt(0),identitySig:pt(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.identityKey=r.bytes();break}case 2:{i.identitySig=r.bytes();break}case 4:{i.extensions=Ps.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Ae(r,e.codec()),e.decode=r=>Se(r,e.codec())})(Xi||(Xi={}));async function _p(e,t,r){let n=await Mv(e,kp(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Kv(e.publicKey,n,r)}function Kv(e,t,r){return Xi.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Mv(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await Bp(e.privateKey)).sign(t)}async function H0(e){return Ba(e.identityKey)}function q0(e){return Xi.decode(e)}function kp(e){let t=Yi("noise-libp2p-static-key:");return e instanceof Uint8Array?F0([t,e],t.length+e.length):(e.prepend(t),e)}async function z0(e,t,r){let n=await Ba(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=kp(e);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(t.identitySig==null)throw new Error("Signature was missing from message");if(!await Cp(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Zi(e){return!(!(e instanceof Uint8Array)&&!Rn(e)||e.byteLength!==32)}function G0(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function $e(e,t="utf8"){let r=Ns[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}var Fv=0,Vv=4294967295,Hv="Cipherstate has reached maximum n, a new handshake must be performed",Us=class{n;bytes;view;constructor(t=Fv){this.n=t,this.bytes=pt(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,t,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>Vv)throw new Error(Hv)}};var Os=class{crypto;log;constructor(t,r){this.log=t.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(t,r,n){let i=this.encrypt(t.k,t.n,r,n);return t.n.increment(),i}decryptWithAd(t,r,n,i){let{plaintext:o,valid:s}=this.decrypt(t.k,t.n,r,n,i);return s&&t.n.increment(),{plaintext:o,valid:s}}hasKey(t){return!this.isEmptyKey(t.k)}createEmptyKey(){return pt(32)}isEmptyKey(t){let r=this.createEmptyKey();return G0(r,t)}encrypt(t,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,t)}encryptAndHash(t,r){let n;return this.hasKey(t.cs)?n=this.encryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,n),n}decrypt(t,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,t,o);return s?{plaintext:s,valid:!0}:{plaintext:pt(0),valid:!1}}decryptAndHash(t,r){let n,i=!0;return this.hasKey(t.cs)?{plaintext:n,valid:i}=this.decryptWithAd(t.cs,t.h,r):n=r,this.mixHash(t,r),{plaintext:n,valid:i}}dh(t,r){try{let n=this.crypto.generateX25519SharedKey(t,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),pt(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new At(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new Us}}initializeSymmetric(t){let r=Yi(t,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(t){if(t.length<=32){let r=pt(32);return r.set(t),r}else return this.getHash(t,pt(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,pt(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,pt(0),r),i=this.createEmptyKey(),o=pt(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,pt(0),r.ciphertext)}};var Ks=class extends Os{initializeInitiator(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=pt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,t);let a=pt(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=pt(0);n!==void 0?t.e=n:t.e=this.crypto.generateX25519KeyPair();let o=t.e.publicKey;this.mixHash(t.ss,o);let s=this.encryptAndHash(t.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(t,r){t.e=this.crypto.generateX25519KeyPair();let n=t.e.publicKey;this.mixHash(t.ss,n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let i=t.s.publicKey,o=this.encryptAndHash(t.ss,i);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let s=this.encryptAndHash(t.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(t,r){let n=t.s.publicKey,i=this.encryptAndHash(t.ss,n);this.mixKey(t.ss,this.dh(t.s.privateKey,t.re));let o=this.encryptAndHash(t.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:u}=this.split(t.ss);return{h:t.ss.h,messageBuffer:a,cs1:c,cs2:u}}readMessageA(t,r){return Zi(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Zi(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.re));let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);i&&Zi(n)&&(t.rs=n),this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(t,r){let{plaintext:n,valid:i}=this.decryptAndHash(t.ss,r.ns);if(i&&Zi(n)&&(t.rs=n),!t.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(t.ss,this.dh(t.e.privateKey,t.rs));let{plaintext:o,valid:s}=this.decryptAndHash(t.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(t.ss);return{h:t.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(t,r,n){let i=this.createEmptyKey(),o=pt(32),s;return t?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:t,mc:0}}sendMessage(t,r,n){let i;if(t.mc===0)i=this.writeMessageA(t.hs,r,n);else if(t.mc===1)i=this.writeMessageB(t.hs,r);else if(t.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(t.hs,r);i=s,t.h=o,t.cs1=a,t.cs2=c}else if(t.mc>2)if(t.i){if(!t.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(t.cs1,r)}else{if(!t.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(t.cs2,r)}else throw new Error("Session invalid.");return t.mc++,i}recvMessage(t,r){let n=pt(0),i=!1;if(t.mc===0)({plaintext:n,valid:i}=this.readMessageA(t.hs,r));else if(t.mc===1)({plaintext:n,valid:i}=this.readMessageB(t.hs,r));else if(t.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:u}=this.readMessageC(t.hs,r);n=s,i=a,t.h=o,t.cs1=c,t.cs2=u}return t.mc++,{plaintext:n,valid:i}}};function Rp(e,t){!t.enabled||!Kn||(t(`LOCAL_STATIC_PUBLIC_KEY ${$e(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${$e(e.privateKey,"hex")}`))}function W0(e,t){!t.enabled||!Kn||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${$e(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${$e(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function Lp(e,t){!t.enabled||!Kn||t(`REMOTE_STATIC_PUBLIC_KEY ${$e(e.subarray(),"hex")}`)}function $0(e,t){!t.enabled||!Kn||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${$e(e.subarray(),"hex")}`)}function Np(e,t){!t.enabled||!Kn||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${$e(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${$e(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var Ms=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;log;constructor(t,r,n,i,o,s,a,c,u){this.log=t.logger.forComponent("libp2p:noise:xxhandshake"),this.isInitiator=r,this.payload=n,this.prologue=i,this.staticKeypair=s,this.connection=a,c&&(this.remotePeer=c),this.xx=u??new Ks(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Rp(this.session.hs.s,this.log),this.isInitiator){this.log.trace("Stage 0 - Initiator starting to send first message.");let t=this.xx.sendMessage(this.session,pt(0));await this.connection.write(mh(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),W0(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=xh((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new on("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),$0(this.session.hs.re,this.log)}}async exchange(){if(this.isInitiator){this.log.trace("Stage 1 - Initiator waiting to receive first message from responder...");let t=bh((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new on("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),$0(this.session.hs.re,this.log),Lp(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=q0(r);this.remotePeer=this.remotePeer||await H0(i),await z0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ni(`Error occurred while verifying signed payload: ${o.message}`)}this.log.trace("All good with the signature!")}else{this.log.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(yh(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),W0(this.session.hs.e,this.log)}}async finish(){if(this.isInitiator){this.log.trace("Stage 2 - Initiator sending third handshake message.");let t=this.xx.sendMessage(this.session,this.payload);await this.connection.write(gh(t)),this.log.trace("Stage 2 - Initiator sent message with signed payload.")}else{this.log.trace("Stage 2 - Responder waiting for third handshake message...");let t=wh((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new on("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=q0(r);this.remotePeer=this.remotePeer||await H0(i),await z0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ni(`Error occurred while verifying signed payload: ${o.message}`)}}Np(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,pt(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,pt(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new on("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?t.cs1:t.cs2:r?t.cs2:t.cs1}setRemoteNoiseExtension(t){t&&(this.remoteExtensions=t)}};function Pp(e){return{xxHandshakeSuccesses:e.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:e.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:e.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:e.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:e.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var Fs=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(t,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=t;this.components=t,this.crypto=o??ph,this.extensions=i,this.metrics=a?Pp(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??pt(0)}async secureOutbound(t,r,n){let i=Di(r,{lengthEncoder:Wn,lengthDecoder:Ri,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(t,r,n){let i=Di(r,{lengthEncoder:Wn,lengthDecoder:Ri,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:t,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(t){let r=await _p(t.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(t,r)}async performXXHandshake(t,r){let{isInitiator:n,remotePeer:i,connection:o}=t,s=new Ms(this.components,n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(t,r){let[n,i]=Tl(),o=t.unwrap();return await _l(n,Sh(r,this.metrics),o,s=>Wr(s,{lengthDecoder:Ri}),Ah(r,this.metrics),n),i}};function Up(e={}){return t=>new Fs(t,e)}var y2=Xt(Su(),1);function wn(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function js(e=0){return globalThis.Buffer?.allocUnsafe!=null?wn(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function o2(e,t){if(globalThis.Buffer!=null)return wn(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=js(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return wn(r)}function a2(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var s2=a2("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),Au=a2("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);let t=js(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),YE={utf8:s2,"utf-8":s2,hex:Ot.base16,latin1:Au,ascii:Au,binary:Au,...Ot},c2=YE;function Du(e,t="utf8"){let r=c2[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?wn(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var u2=Xt(Su(),1);var Cu=Object.values(Ot).map(e=>e.decoder).reduce((e,t)=>e.or(t));function f2(e,t){let r=e.getConfiguration().certificates?.at(0);if(r==null||r.getFingerprints==null){t.log.trace("fetching fingerprint from local SDP");let i=e.localDescription;return i==null?void 0:ZE(i.sdp)}if(t.log.trace("fetching fingerprint from local certificate"),r.getFingerprints().length===0)return;let n=r.getFingerprints()[0].value;if(n==null)throw nc("","no fingerprint on local certificate");return n}var XE=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function ZE(e){return e.match(XE)?.groups?.fingerprint}function QE(e){for(let t of e.protoNames())if(t.startsWith("ip"))return t.toUpperCase();return"IP6"}function Js(e){let r=e.stringTuples().filter(n=>n[0]===d2).map(n=>n[1])[0];if(r===void 0||r==="")throw Ao(`Couldn't find a certhash component of multiaddr: ${e.toString()}`);return r}function Bu(e){let t=Cu.decode(e);return u2.decode(t)}function jE(e){let t=Bu(Js(e)),r=Tu(t.name),n=t.digest.reduce((o,s)=>o+s.toString(16).padStart(2,"0"),""),i=n.match(/.{1,2}/g);if(i==null)throw nc(n,e.toString());return[`${r.toUpperCase()} ${i.join(":").toUpperCase()}`,n]}function Tu(e){switch(e){case"sha1":return"sha-1";case"sha2-256":return"sha-256";case"sha2-512":return"sha-512";default:throw Kf(e)}}function JE(e,t){let{host:r,port:n}=e.toOptions(),i=QE(e),[o]=jE(e);return`v=0
|
|
29
|
+
`});var d1=le(()=>{h1();aa();Fr();au();go()});var uu,a9,p1=le(()=>{Vy();qy();Hy();zy();Gy();jf();$y();tu();Wy();Xy();i1();a1();c1();f1();d1();uu={...$f,...Wf,...Yf,...Xf,...Zf,...Qf,...Jf,...eu,...ru,...nu},a9={...cu,...fu}});function xi(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}var la=le(()=>{});function ha(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?xi(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var lu=le(()=>{la()});function y1(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var m1,hu,wS,da,du=le(()=>{p1();lu();m1=y1("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),hu=y1("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=ha(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),wS={utf8:m1,"utf-8":m1,hex:uu.base16,latin1:hu,ascii:hu,binary:hu,...uu},da=wS});var g1={};J(g1,{toString:()=>vS});function vS(t,e="utf8"){let r=da[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var x1=le(()=>{du()});var b1={};J(b1,{fromString:()=>ES});function ES(t,e="utf8"){let r=da[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?xi(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var w1=le(()=>{du();la()});var v1={};J(v1,{concat:()=>SS});function SS(t,e){e||(e=t.reduce((i,o)=>i+o.length,0));let r=ha(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return xi(r)}var E1=le(()=>{lu();la()});var mu=se((w9,T1)=>{"use strict";var S1=wy(),bi=ky(),{names:bo}=Ly(),{toString:pa}=(x1(),vo(g1)),{fromString:AS}=(w1(),vo(b1)),{concat:CS}=(E1(),vo(v1)),wi={};for(let t in bo){let e=t;wi[bo[e]]=e}Object.freeze(wi);function DS(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return pa(t,"base16")}function BS(t){return AS(t,"base16")}function TS(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return pa(S1.encode("base58btc",t)).slice(1)}function IS(t){let e=t instanceof Uint8Array?pa(t):t;return S1.decode("z"+e)}function A1(t){if(!(t instanceof Uint8Array))throw new Error("multihash must be a Uint8Array");if(t.length<2)throw new Error("multihash too short. must be > 2 bytes.");let e=bi.decode(t);if(!D1(e))throw new Error(`multihash unknown function code: 0x${e.toString(16)}`);t=t.slice(bi.decode.bytes);let r=bi.decode(t);if(r<0)throw new Error(`multihash invalid length: ${r}`);if(t=t.slice(bi.decode.bytes),t.length!==r)throw new Error(`multihash length inconsistent: 0x${pa(t,"base16")}`);return{code:e,name:wi[e],length:r,digest:t}}function _S(t,e,r){if(!t||e===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=C1(e);if(!(t instanceof Uint8Array))throw new Error("digest should be a Uint8Array");if(r==null&&(r=t.length),r&&t.length!==r)throw new Error("digest length should be equal to specified length.");let i=bi.encode(n),o=bi.encode(r);return CS([i,o,t],i.length+o.length+t.length)}function C1(t){let e=t;if(typeof t=="string"){if(bo[t]===void 0)throw new Error(`Unrecognized hash function named: ${t}`);e=bo[t]}if(typeof e!="number")throw new Error(`Hash function code should be a number. Got: ${e}`);if(wi[e]===void 0&&!pu(e))throw new Error(`Unrecognized function code: ${e}`);return e}function pu(t){return t>0&&t<16}function D1(t){return!!(pu(t)||wi[t])}function B1(t){A1(t)}function kS(t){return B1(t),t.subarray(0,2)}T1.exports={names:bo,codes:wi,toHexString:DS,fromHexString:BS,toB58String:TS,fromB58String:IS,decode:A1,encode:_S,coerceCode:C1,isAppCode:pu,validate:B1,prefix:kS,isValidCode:D1}});var qS={};J(qS,{webRTC:()=>VS,webRTCDirect:()=>FS});var zS=Symbol.for("@libp2p/connection");var $S=Symbol.for("@libp2p/content-routing");var XS=Symbol.for("@libp2p/peer-discovery");var _u=Symbol.for("@libp2p/peer-id");var jS=Symbol.for("@libp2p/peer-routing");var ku;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(ku||(ku={}));var Eo=Symbol.for("@libp2p/transport");var Ru;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Ru||(Ru={}));var $=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var So=class extends EventTarget{#e=new Map;listenerCount(e){let r=this.#e.get(e);return r==null?0:r.length}addEventListener(e,r,n){super.addEventListener(e,r,n);let i=this.#e.get(e);i==null&&(i=[],this.#e.set(e,i)),i.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,r,n){super.removeEventListener(e.toString(),r??null,n);let i=this.#e.get(e);i!=null&&(i=i.filter(({callback:o})=>o!==r),this.#e.set(e,i))}dispatchEvent(e){let r=super.dispatchEvent(e),n=this.#e.get(e.type);return n==null||(n=n.filter(({once:i})=>!i),this.#e.set(e.type,n)),r}safeDispatchEvent(e,r){return this.dispatchEvent(new eg(e,r))}},ba=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},eg=globalThis.CustomEvent??ba;var Lu=(t,...e)=>{try{[...e]}catch{}};var Aa={};J(Aa,{base58btc:()=>Oe,base58flickr:()=>sg});var L5=new Uint8Array(0);function Nu(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}function Qt(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")}function Uu(t){return new TextEncoder().encode(t)}function Pu(t){return new TextDecoder().decode(t)}function tg(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(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,m=0,g=0,b=h.length;g!==b&&h[g]===0;)g++,p++;for(var x=(b-g)*u+1>>>0,S=new Uint8Array(x);g!==b;){for(var w=h[g],E=0,D=x-1;(w!==0||E<m)&&D!==-1;D--,E++)w+=256*S[D]>>>0,S[D]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,g++}for(var B=x-m;B!==x&&S[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=t.charAt(S[B]);return U}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var m=0,g=0;h[p]===c;)m++,p++;for(var b=(h.length-p)*f+1>>>0,x=new Uint8Array(b);h[p];){var S=r[h.charCodeAt(p)];if(S===255)return;for(var w=0,E=b-1;(S!==0||w<g)&&E!==-1;E--,w++)S+=a*x[E]>>>0,x[E]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");g=w,p++}if(h[p]!==" "){for(var D=b-g;D!==b&&x[D]===0;)D++;for(var B=new Uint8Array(m+(b-D)),U=m;D!==b;)B[U++]=x[D++];return B}}}function y(h){var p=d(h);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:d,decode:y}}var rg=tg,ng=rg,Mu=ng;var wa=class{name;prefix;baseEncode;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")}},va=class{name;prefix;baseDecode;prefixCodePoint;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 Ku(this,e)}},Ea=class{decoders;constructor(e){this.decoders=e}or(e){return Ku(this,e)}decode(e){let r=e[0],n=this.decoders[r];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Ku(t,e){return new Ea({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var Sa=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new wa(e,r,n),this.decoder=new va(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function Bn({name:t,prefix:e,encode:r,decode:n}){return new Sa(t,e,r,n)}function wr({name:t,prefix:e,alphabet:r}){let{encode:n,decode:i}=Mu(r,t);return Bn({prefix:e,name:t,encode:n,decode:o=>Qt(i(o))})}function ig(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}function og(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!==0&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o}function Te({name:t,prefix:e,bitsPerChar:r,alphabet:n}){return Bn({prefix:e,name:t,encode(i){return og(i,n,r)},decode(i){return ig(i,n,r,t)}})}var Oe=wr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),sg=wr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ca={};J(Ca,{base10:()=>ag});var ag=wr({prefix:"9",name:"base10",alphabet:"0123456789"});var Da={};J(Da,{base16:()=>cg,base16upper:()=>fg});var cg=Te({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),fg=Te({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ba={};J(Ba,{base2:()=>ug});var ug=Te({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ta={};J(Ta,{base256emoji:()=>mg});var Fu=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}"),lg=Fu.reduce((t,e,r)=>(t[r]=e,t),[]),hg=Fu.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function dg(t){return t.reduce((e,r)=>(e+=lg[r],e),"")}function pg(t){let e=[];for(let r of t){let n=hg[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var mg=Bn({prefix:"\u{1F680}",name:"base256emoji",encode:dg,decode:pg});var Ia={};J(Ia,{base32:()=>jt,base32hex:()=>bg,base32hexpad:()=>vg,base32hexpadupper:()=>Eg,base32hexupper:()=>wg,base32pad:()=>gg,base32padupper:()=>xg,base32upper:()=>yg,base32z:()=>Sg});var jt=Te({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),yg=Te({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),gg=Te({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),xg=Te({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),bg=Te({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),wg=Te({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),vg=Te({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Eg=Te({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Sg=Te({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var _a={};J(_a,{base36:()=>Ag,base36upper:()=>Cg});var Ag=wr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Cg=wr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ka={};J(ka,{base64:()=>Ao,base64pad:()=>Dg,base64url:()=>Bg,base64urlpad:()=>Tg});var Ao=Te({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Dg=Te({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Bg=Te({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Tg=Te({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Ra={};J(Ra,{base8:()=>Ig});var Ig=Te({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var La={};J(La,{identity:()=>_g});var _g=Bn({prefix:"\0",name:"identity",encode:t=>Pu(t),decode:t=>Uu(t)});var X5=new TextEncoder,Z5=new TextDecoder;var Ua={};J(Ua,{identity:()=>vr});var Lg=Hu,Vu=128,Ng=127,Ug=~Ng,Pg=Math.pow(2,31);function Hu(t,e,r){e=e||[],r=r||0;for(var n=r;t>=Pg;)e[r++]=t&255|Vu,t/=128;for(;t&Ug;)e[r++]=t&255|Vu,t>>>=7;return e[r]=t|0,Hu.bytes=r-n+1,e}var Og=Na,Mg=128,qu=127;function Na(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw Na.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&qu)<<i:(s&qu)*Math.pow(2,i),i+=7}while(s>=Mg);return Na.bytes=o-n,r}var Kg=Math.pow(2,7),Fg=Math.pow(2,14),Vg=Math.pow(2,21),qg=Math.pow(2,28),Hg=Math.pow(2,35),zg=Math.pow(2,42),Gg=Math.pow(2,49),$g=Math.pow(2,56),Wg=Math.pow(2,63),Yg=function(t){return t<Kg?1:t<Fg?2:t<Vg?3:t<qg?4:t<Hg?5:t<zg?6:t<Gg?7:t<$g?8:t<Wg?9:10},Xg={encode:Lg,decode:Og,encodingLength:Yg},Zg=Xg,Ei=Zg;function Si(t,e=0){return[Ei.decode(t,e),Ei.decode.bytes]}function Tn(t,e,r=0){return Ei.encode(t,e,r),e}function In(t){return Ei.encodingLength(t)}function Ut(t,e){let r=e.byteLength,n=In(t),i=n+In(r),o=new Uint8Array(i+r);return Tn(t,o,0),Tn(r,o,n),o.set(e,i),new _n(t,r,e,o)}function Hr(t){let e=Qt(t),[r,n]=Si(e),[i,o]=Si(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new _n(r,i,s,e)}function zu(t,e){if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Nu(t.bytes,r.bytes)}}var _n=class{code;size;digest;bytes;constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Gu=0,Qg="identity",$u=Qt;function jg(t){return Ut(Gu,$u(t))}var vr={code:Gu,name:Qg,encode:$u,digest:jg};var Ma={};J(Ma,{sha256:()=>$e,sha512:()=>Jg});function Oa({name:t,code:e,encode:r}){return new Pa(t,e,r)}var Pa=class{name;code;encode;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?Ut(this.code,r):r.then(n=>Ut(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Yu(t){return async e=>new Uint8Array(await crypto.subtle.digest(t,e))}var $e=Oa({name:"sha2-256",code:18,encode:Yu("SHA-256")}),Jg=Oa({name:"sha2-512",code:19,encode:Yu("SHA-512")});function Xu(t,e){let{bytes:r,version:n}=t;switch(n){case 0:return tx(r,Ka(t),e??Oe.encoder);default:return rx(r,Ka(t),e??jt.encoder)}}var Zu=new WeakMap;function Ka(t){let e=Zu.get(t);if(e==null){let r=new Map;return Zu.set(t,r),r}return e}var wt=class t{code;version;multihash;bytes;"/";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!==Ai)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==nx)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=Ut(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!=null&&e.code===n.code&&e.version===n.version&&zu(e.multihash,n.multihash)}toString(e){return Xu(this,e)}toJSON(){return{"/":Xu(this)}}link(){return this}[Symbol.toStringTag]="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??Qu(n,i,o.bytes))}else if(r[ix]===!0){let{version:n,multihash:i,code:o}=r,s=Hr(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!==Ai)throw new Error(`Version 0 CID must use dag-pb (code: ${Ai}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=Qu(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Ai,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=Qt(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 _n(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,d]=Si(e.subarray(r));return r+=d,l},i=n(),o=Ai;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]=ex(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 Ka(o).set(n,e),o}};function ex(t,e){switch(t[0]){case"Q":{let r=e??Oe;return[Oe.prefix,r.decode(`${Oe.prefix}${t}`)]}case Oe.prefix:{let r=e??Oe;return[Oe.prefix,r.decode(t)]}case jt.prefix:{let r=e??jt;return[jt.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)]}}}function tx(t,e,r){let{prefix:n}=r;if(n!==Oe.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}function rx(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}var Ai=112,nx=18;function Qu(t,e,r){let n=In(t),i=n+In(e),o=new Uint8Array(i+r.byteLength);return Tn(t,o,0),Tn(e,o,n),o.set(r,i),o}var ix=Symbol.for("@ipld/js-cid/CID");var Me={...La,...Ba,...Ra,...Ca,...Da,...Ia,..._a,...Aa,...ka,...Ta},gA={...Ma,...Ua};function Fa(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 ox=Symbol.for("nodejs.util.inspect.custom"),ju=Object.values(Me).map(t=>t.decoder).reduce((t,e)=>t.or(e),Me.identity.decoder),Ju=114,Va=36,qa=37,Ci=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()})`}[_u]=!0;toString(){return this.string==null&&(this.string=Oe.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return wt.createV1(Ju,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e==null)return!1;if(e instanceof Uint8Array)return Fa(this.multihash.bytes,e);if(typeof e=="string")return Gr(e).equals(this);if(e?.multihash?.bytes!=null)return Fa(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[ox](){return`PeerId(${this.toString()})`}},kn=class extends Ci{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Rn=class extends Ci{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Ln=class extends Ci{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Gr(t,e){if(e=e??ju,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=Hr(Oe.decode(`z${t}`));return t.startsWith("12D")?new Rn({multihash:r}):t.startsWith("16U")?new Ln({multihash:r}):new kn({multihash:r})}return sx(ju.decode(t))}function sx(t){try{let e=Hr(t);if(e.code===vr.code){if(e.digest.length===Va)return new Rn({multihash:e});if(e.digest.length===qa)return new Ln({multihash:e})}if(e.code===$e.code)return new kn({multihash:e})}catch{return ax(wt.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function ax(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Ju)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===$e.code)return new kn({multihash:t.multihash});if(e.code===vr.code){if(e.digest.length===Va)return new Rn({multihash:t.multihash});if(e.digest.length===qa)return new Ln({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function Ha(t,e){return t.length===Va?new Rn({multihash:Ut(vr.code,t),privateKey:e}):t.length===qa?new Ln({multihash:Ut(vr.code,t),privateKey:e}):new kn({multihash:await $e.digest(t),publicKey:t,privateKey:e})}function el(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}function $r(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Do(t=0){return globalThis.Buffer?.allocUnsafe!=null?$r(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function rl(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var tl=rl("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),za=rl("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=Do(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),fx={utf8:tl,"utf-8":tl,hex:Me.base16,latin1:za,ascii:za,binary:za,...Me},Bo=fx;function rt(t,e="utf8"){let r=Bo[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 nl(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function il(t=0){return globalThis.Buffer?.allocUnsafe!=null?nl(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var ux=Math.pow(2,7),lx=Math.pow(2,14),hx=Math.pow(2,21),Ga=Math.pow(2,28),$a=Math.pow(2,35),Wa=Math.pow(2,42),Ya=Math.pow(2,49),he=128,Qe=127;function je(t){if(t<ux)return 1;if(t<lx)return 2;if(t<hx)return 3;if(t<Ga)return 4;if(t<$a)return 5;if(t<Wa)return 6;if(t<Ya)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function dx(t,e,r=0){switch(je(t)){case 8:e[r++]=t&255|he,t/=128;case 7:e[r++]=t&255|he,t/=128;case 6:e[r++]=t&255|he,t/=128;case 5:e[r++]=t&255|he,t/=128;case 4:e[r++]=t&255|he,t>>>=7;case 3:e[r++]=t&255|he,t>>>=7;case 2:e[r++]=t&255|he,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function px(t,e,r=0){switch(je(t)){case 8:e.set(r++,t&255|he),t/=128;case 7:e.set(r++,t&255|he),t/=128;case 6:e.set(r++,t&255|he),t/=128;case 5:e.set(r++,t&255|he),t/=128;case 4:e.set(r++,t&255|he),t>>>=7;case 3:e.set(r++,t&255|he),t>>>=7;case 2:e.set(r++,t&255|he),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function mx(t,e){let r=t[e],n=0;if(n+=r&Qe,r<he||(r=t[e+1],n+=(r&Qe)<<7,r<he)||(r=t[e+2],n+=(r&Qe)<<14,r<he)||(r=t[e+3],n+=(r&Qe)<<21,r<he)||(r=t[e+4],n+=(r&Qe)*Ga,r<he)||(r=t[e+5],n+=(r&Qe)*$a,r<he)||(r=t[e+6],n+=(r&Qe)*Wa,r<he)||(r=t[e+7],n+=(r&Qe)*Ya,r<he))return n;throw new RangeError("Could not decode varint")}function yx(t,e){let r=t.get(e),n=0;if(n+=r&Qe,r<he||(r=t.get(e+1),n+=(r&Qe)<<7,r<he)||(r=t.get(e+2),n+=(r&Qe)<<14,r<he)||(r=t.get(e+3),n+=(r&Qe)<<21,r<he)||(r=t.get(e+4),n+=(r&Qe)*Ga,r<he)||(r=t.get(e+5),n+=(r&Qe)*$a,r<he)||(r=t.get(e+6),n+=(r&Qe)*Wa,r<he)||(r=t.get(e+7),n+=(r&Qe)*Ya,r<he))return n;throw new RangeError("Could not decode varint")}function Er(t,e,r=0){return e==null&&(e=il(je(t))),e instanceof Uint8Array?dx(t,e,r):px(t,e,r)}function vt(t,e=0){return t instanceof Uint8Array?mx(t,e):yx(t,e)}function Jt(t,e){if(globalThis.Buffer!=null)return $r(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=Do(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return $r(r)}var To=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 d=Number.parseInt(l,e);if(!Number.isNaN(d))return d});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 ol=45,gx=15,Nn=new To;function Xa(t){if(!(t.length>gx))return Nn.new(t).parseWith(()=>Nn.readIPv4Addr())}function Za(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>ol))return Nn.new(t).parseWith(()=>Nn.readIPv6Addr())}function Io(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>ol))return Nn.new(t).parseWith(()=>Nn.readIPAddr())}var JA=parseInt("0xFFFF",16),e6=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Qa(t,e="utf8"){let r=Bo[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?$r(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function _o(t){return!!Xa(t)}function ko(t){return!!Za(t)}function Ro(t){return!!Io(t)}var cl=_o,Ex=ko,ja=function(t){let e=0;if(t=t.toString().trim(),cl(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(Ex(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=cl(r[n]),s;o&&(s=ja(r[n]),r[n]=rt(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,rt(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")},fl=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 Un={},Ja={},Ax=[[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"]];Ax.forEach(t=>{let e=Cx(...t);Ja[e.code]=e,Un[e.name]=e});function Cx(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function de(t){if(typeof t=="number"){if(Ja[t]!=null)return Ja[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(Un[t]!=null)return Un[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var F6=de("ip4"),V6=de("ip6"),q6=de("ipcidr");function tc(t,e){switch(de(t).code){case 4:case 41:return Bx(e);case 42:return hl(e);case 6:case 273:case 33:case 132:return pl(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return hl(e);case 421:return kx(e);case 444:return dl(e);case 445:return dl(e);case 466:return _x(e);default:return rt(e,"base16")}}function rc(t,e){switch(de(t).code){case 4:return ul(e);case 41:return ul(e);case 42:return ll(e);case 6:case 273:case 33:case 132:return nc(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return ll(e);case 421:return Tx(e);case 444:return Rx(e);case 445:return Lx(e);case 466:return Ix(e);default:return Qa(e,"base16")}}var ec=Object.values(Me).map(t=>t.decoder),Dx=function(){let t=ec[0].or(ec[1]);return ec.slice(2).forEach(e=>t=t.or(e)),t}();function ul(t){if(!Ro(t))throw new Error("invalid ip address");return ja(t)}function Bx(t){let e=fl(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!Ro(e))throw new Error("invalid ip address");return e}function nc(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function pl(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function ll(t){let e=Qa(t),r=Uint8Array.from(Er(e.length));return Jt([r,e],r.length+e.length)}function hl(t){let e=vt(t);if(t=t.slice(je(e)),t.length!==e)throw new Error("inconsistent lengths");return rt(t)}function Tx(t){let e;t[0]==="Q"||t[0]==="1"?e=Hr(Oe.decode(`z${t}`)).bytes:e=wt.parse(t).multihash.bytes;let r=Uint8Array.from(Er(e.length));return Jt([r,e],r.length+e.length)}function Ix(t){let e=Dx.decode(t),r=Uint8Array.from(Er(e.length));return Jt([r,e],r.length+e.length)}function _x(t){let e=vt(t),r=t.slice(je(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+rt(r,"base64url")}function kx(t){let e=vt(t),r=t.slice(je(e));if(r.length!==e)throw new Error("inconsistent lengths");return rt(r,"base58btc")}function Rx(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=jt.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=nc(n);return Jt([r,i],r.length+i.length)}function Lx(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=jt.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=nc(n);return Jt([r,i],r.length+i.length)}function dl(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=rt(e,"base32"),i=pl(r);return`${n}:${i}`}function ml(t){t=ic(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=de(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw gl("invalid address: "+t);if(a.path===!0){n=ic(i.slice(o).join("/")),e.push([a.code,rc(a.code,n)]),r.push([a.code,n]);break}let c=rc(a.code,i[o]);e.push([a.code,c]),r.push([a.code,tc(a.code,c)])}return{string:yl(r),bytes:sc(e),tuples:e,stringTuples:r,path:n}}function oc(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=vt(t,i),s=je(o),a=de(o),c=Nx(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 gl("Invalid address Uint8Array: "+rt(t,"base16"));e.push([o,f]);let u=tc(o,f);if(r.push([o,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:yl(r),tuples:e,stringTuples:r,path:n}}function yl(t){let e=[];return t.map(r=>{let n=de(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),ic(e.join("/"))}function sc(t){return Jt(t.map(e=>{let r=de(e[0]),n=Uint8Array.from(Er(r.code));return e.length>1&&e[1]!=null&&(n=Jt([n,e[1]])),n}))}function Nx(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=vt(e instanceof Uint8Array?e:Uint8Array.from(e));return r+je(r)}}function ic(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function gl(t){return new Error("Error parsing address: "+t)}var Ux=Symbol.for("nodejs.util.inspect.custom"),ac=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Px=[de("dns").code,de("dns4").code,de("dns6").code,de("dnsaddr").code],Lo=class t{bytes;#e;#t;#r;#n;[ac]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=oc(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=ml(e)}else if(bl(e))r=oc(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=de("tcp"),a=de("udp"),c=de("ip4"),f=de("ip6"),u=de("dns6"),l=de("ip6zone");for(let[y,h]of this.stringTuples())y===l.code&&(o=`%${h??""}`),Px.includes(y)&&(r=s.name,i=443,n=`${h??""}${o}`,e=y===u.code?6:4),(y===s.code||y===a.code)&&(r=de(y).name,i=parseInt(h??"")),(y===c.code||y===f.code)&&(r=de(y).name,n=`${h??""}${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.#t.map(([e])=>Object.assign({},de(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>de(e).name)}tuples(){return this.#t}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(sc(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Un.p2p.code&&e.push([n,i]),n===Un["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?rt(Oe.decode(`z${n}`),"base58btc"):rt(wt.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return el(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=xl.get(r.name);if(n==null)throw new $(`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)}[Ux](){return`Multiaddr(${this.#e})`}};var xl=new Map;function bl(t){return!!t?.[ac]}function er(t){return new Lo(t)}function Ox(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(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,m=0,g=0,b=h.length;g!==b&&h[g]===0;)g++,p++;for(var x=(b-g)*u+1>>>0,S=new Uint8Array(x);g!==b;){for(var w=h[g],E=0,D=x-1;(w!==0||E<m)&&D!==-1;D--,E++)w+=256*S[D]>>>0,S[D]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,g++}for(var B=x-m;B!==x&&S[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=t.charAt(S[B]);return U}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var m=0,g=0;h[p]===c;)m++,p++;for(var b=(h.length-p)*f+1>>>0,x=new Uint8Array(b);h[p];){var S=r[h.charCodeAt(p)];if(S===255)return;for(var w=0,E=b-1;(S!==0||w<g)&&E!==-1;E--,w++)S+=a*x[E]>>>0,x[E]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");g=w,p++}if(h[p]!==" "){for(var D=b-g;D!==b&&x[D]===0;)D++;for(var B=new Uint8Array(m+(b-D)),U=m;D!==b;)B[U++]=x[D++];return B}}}function y(h){var p=d(h);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:d,decode:y}}var Mx=Ox,Kx=Mx,wl=Kx;var pC=new Uint8Array(0);var vl=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 cc=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")}},fc=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 El(this,e)}},uc=class{constructor(e){this.decoders=e}or(e){return El(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`)}},El=(t,e)=>new uc({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),lc=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new cc(e,r,n),this.decoder=new fc(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Sl=({name:t,prefix:e,encode:r,decode:n})=>new lc(t,e,r,n),hc=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=wl(r,e);return Sl({prefix:t,name:e,encode:n,decode:o=>vl(i(o))})},Fx=(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},Vx=(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},Bi=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Sl({prefix:e,name:t,encode(i){return Vx(i,n,r)},decode(i){return Fx(i,n,r,t)}});var Al=hc({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),wC=hc({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var SC=Bi({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),AC=Bi({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Cl=Bi({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),CC=Bi({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var qx=t=>t.toString().split("/").slice(1),Ti=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),ke=t=>({match:e=>Ti(r=>r===t).match(e),pattern:t}),Po=()=>({match:t=>Ti(e=>typeof e=="string").match(t),pattern:"{string}"}),Dl=()=>({match:t=>Ti(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),pt=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{Al.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),No=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{Cl.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),Pt=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Ot=(...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(", ")})`}),Re=(...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 Ke(...t){function e(i){let o=qx(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 pc=Re(ke("dns4"),Po()),mc=Re(ke("dns6"),Po()),yc=Re(ke("dnsaddr"),Po()),Bl=Re(ke("dns"),Po()),kC=Ke(pc),RC=Ke(mc),LC=Ke(yc),NC=Ke(Ot(Bl,yc,pc,mc)),Tl=Re(ke("ip4"),Ti(_o)),Il=Re(ke("ip6"),Ti(ko)),_l=Ot(Tl,Il),Ii=Ot(_l,Bl,pc,mc,yc),UC=Ke(Ii),PC=Ke(Tl),OC=Ke(Il),MC=Ke(_l),Oo=Re(Ii,ke("tcp"),Dl()),_i=Re(Ii,ke("udp"),Dl()),Hx=Ot(Oo,_i),KC=Ke(Oo),FC=Ke(_i),gc=Re(_i,ke("quic")),Mo=Re(_i,ke("quic-v1")),zx=Ot(gc,Mo),VC=Ke(gc),qC=Ke(Mo),dc=Ot(Ii,Oo,_i,gc,Mo),kl=Ot(Re(dc,ke("ws"),Pt(pt()))),HC=Ke(kl),Rl=Ot(Re(dc,ke("wss"),Pt(pt())),Re(dc,ke("tls"),ke("ws"),Pt(pt()))),zC=Ke(Rl),Ll=Re(Hx,ke("webrtc-direct"),No(),Pt(No()),Pt(pt())),Nl=Ke(Ll),Ul=Re(Mo,ke("webtransport"),No(),No(),Pt(pt())),GC=Ke(Ul),Uo=Ot(kl,Rl,Re(Oo,Pt(pt())),Re(zx,Pt(pt())),Re(Ii,Pt(pt())),Ll,Ul,pt()),$C=Ke(Uo),Gx=Re(Uo,ke("p2p-circuit"),pt()),WC=Ke(Gx),$x=Ot(Re(Uo,ke("p2p-circuit"),ke("webrtc"),pt()),Re(Uo,ke("webrtc"),Pt(pt())),ke("webrtc")),Pl=Ke($x);var ft;(function(t){t.ERR_ALREADY_ABORTED="ERR_ALREADY_ABORTED",t.ERR_DATA_CHANNEL="ERR_DATA_CHANNEL",t.ERR_CONNECTION_CLOSED="ERR_CONNECTION_CLOSED",t.ERR_HASH_NOT_SUPPORTED="ERR_HASH_NOT_SUPPORTED",t.ERR_INVALID_MULTIADDR="ERR_INVALID_MULTIADDR",t.ERR_INVALID_FINGERPRINT="ERR_INVALID_FINGERPRINT",t.ERR_INVALID_PARAMETERS="ERR_INVALID_PARAMETERS",t.ERR_NOT_IMPLEMENTED="ERR_NOT_IMPLEMENTED",t.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS",t.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS="ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS"})(ft||(ft={}));var Sr=class extends ${constructor(e,r){super(`WebRTC transport error: ${e}`,r??""),this.name="WebRTCTransportError"}};var xc=class extends Sr{constructor(e,r){super(`[stream: ${e}] data channel error: ${r}`,ft.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function Ac(t,e){return new xc(t,e)}var bc=class extends Sr{constructor(e){super(`There was a problem with the Multiaddr which was passed in: ${e}`,ft.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function Ko(t){return new bc(t)}var wc=class extends Sr{constructor(e){super(`There was a problem with a provided argument: ${e}`,ft.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function ki(t){return new wc(t)}var vc=class extends Sr{constructor(e,r){super(`Invalid fingerprint "${e}" within ${r}`,ft.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function Cc(t,e){return new vc(t,e)}var Ec=class extends Sr{constructor(e){super(`A method (${e}) was called though it has been intentionally left unimplemented.`,ft.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function Ol(t){return new Ec(t)}var Sc=class extends Sr{constructor(e){super(`unsupported hash algorithm: ${e}`,ft.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function Ml(t){return new Sc(t)}var Kl=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,o;n<i;n++)(o||!(n in e))&&(o||(o=Array.prototype.slice.call(e,0,n)),o[n]=e[n]);return t.concat(o||Array.prototype.slice.call(e))},Wx=function(){function t(e,r,n){this.name=e,this.version=r,this.os=n,this.type="browser"}return t}();var Yx=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}();var Xx=function(){function t(e,r,n,i){this.name=e,this.version=r,this.os=n,this.bot=i,this.type="bot-device"}return t}();var Zx=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}();var Qx=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}();var jx=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,Jx=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Fl=3,e2=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["pie",/^Microsoft Pocket Internet Explorer\/(\d+\.\d+)$/],["pie",/^Mozilla\/\d\.\d+\s\(compatible;\s(?:MSP?IE|MSInternet Explorer) (\d+\.\d+);.*Windows CE.*\)$/],["netfront",/^Mozilla\/\d\.\d+.*NetFront\/(\d.\d)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FB[AS]V\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["curl",/^curl\/([0-9\.]+)$/],["searchbot",jx]],Vl=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Windows CE",/Windows CE|WinCE|Microsoft Pocket Internet Explorer/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function Hl(t){return t?ql(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new Qx:typeof navigator<"u"?ql(navigator.userAgent):n2()}function t2(t){return t!==""&&e2.reduce(function(e,r){var n=r[0],i=r[1];if(e)return e;var o=i.exec(t);return!!o&&[n,o]},!1)}function ql(t){var e=t2(t);if(!e)return null;var r=e[0],n=e[1];if(r==="searchbot")return new Zx;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Fl&&(i=Kl(Kl([],i,!0),i2(Fl-i.length),!0)):i=[];var o=i.join("."),s=r2(t),a=Jx.exec(t);return a&&a[1]?new Xx(r,o,s,a[1]):new Wx(r,o,s)}function r2(t){for(var e=0,r=Vl.length;e<r;e++){var n=Vl[e],i=n[0],o=n[1],s=o.exec(t);if(s)return i}return null}function n2(){var t=typeof process<"u"&&process.version;return t?new Yx(process.version.slice(1)):null}function i2(t){for(var e=[],r=0;r<t;r++)e.push("0");return e}function Ne(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var Pn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Dc=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},zl=t=>globalThis.DOMException===void 0?new Dc(t):new DOMException(t),Gl=t=>{let e=t.reason===void 0?zl("This operation was aborted."):t.reason;return e instanceof Error?e:zl(e)};function Wr(t,e){let{milliseconds:r,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,c=new Promise((f,u)=>{if(typeof r!="number"||Math.sign(r)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${r}\``);if(e.signal){let{signal:d}=e;d.aborted&&u(Gl(d)),d.addEventListener("abort",()=>{u(Gl(d))})}if(r===Number.POSITIVE_INFINITY){t.then(f,u);return}let l=new Pn;s=o.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(d){u(d)}return}typeof t.cancel=="function"&&t.cancel(),i===!1?f():i instanceof Error?u(i):(l.message=i??`Promise timed out after ${r} milliseconds`,u(l))},r),(async()=>{try{f(await t)}catch(d){u(d)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}var $l=Hl(),Ri=$l!=null&&$l.name==="firefox",Fo=async function*(){},Vo=async t=>{},o2=30*1e3;function Wl(t,e,r=o2,n){t.readyState==="open"&&Promise.resolve().then(async()=>{if(t.bufferedAmount>0){n.log("%s drain channel with %d buffered bytes",e,t.bufferedAmount);let i=Ne(),o=!1;t.bufferedAmountLowThreshold=0;let s=()=>{o||(n.log("%s drain channel closed before drain",e),i.resolve())};t.addEventListener("close",s,{once:!0}),t.addEventListener("bufferedamountlow",()=>{o=!0,t.removeEventListener("close",s),i.resolve()}),await Wr(i.promise,{milliseconds:r})}}).then(async()=>{t.readyState==="open"&&t.close()}).catch(i=>{n.log.error("error closing outbound stream",i)})}var Yr=class{log;peerConnection;remoteAddr;timeline;metrics;source=Fo();sink=Vo;constructor(e,r){this.log=e.logger.forComponent("libp2p:webrtc:maconn"),this.remoteAddr=r.remoteAddr,this.timeline=r.timeline,this.peerConnection=r.peerConnection;let n=this.peerConnection.connectionState;this.peerConnection.onconnectionstatechange=()=>{this.log.trace("peer connection state change",this.peerConnection.connectionState,"initial state",n),(this.peerConnection.connectionState==="disconnected"||this.peerConnection.connectionState==="failed"||this.peerConnection.connectionState==="closed")&&(this.timeline.close=Date.now())}}async close(e){this.log.trace("closing connection"),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({close:!0})}abort(e){this.log.error("closing connection due to error",e),this.peerConnection.close(),this.timeline.close=Date.now(),this.metrics?.increment({abort:!0})}};var qo=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},On=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new qo(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let r=this.head;this.head=r.next=new qo(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let r=this.tail.next;this.tail.next=null,this.tail=r,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var Bc=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Ar(t={}){return s2(r=>{let n=r.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},t)}function s2(t,e){e=e??{};let r=e.onEnd,n=new On,i,o,s,a=Ne(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((m,g)=>{o=b=>{o=null,n.push(b);try{m(t(n))}catch(x){g(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Ne()})}},f=m=>o!=null?o(m):(n.push(m),i),u=m=>(n=new On,o!=null?o({error:m}):(n.push({error:m}),i)),l=m=>{if(s)return i;if(e?.objectMode!==!0&&m?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return f({done:!1,value:m})},d=m=>s?i:(s=!0,m!=null?u(m):f({done:!0})),y=()=>(n=new On,d(),{done:!0}),h=m=>(d(m),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:y,throw:h,push:l,end:d,get readableLength(){return n.size},onEmpty:async m=>{let g=m?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let b,x;g!=null&&(b=new Promise((S,w)=>{x=()=>{w(new Bc)},g.addEventListener("abort",x)}));try{await Promise.race([a.promise,b])}finally{x!=null&&g!=null&&g?.removeEventListener("abort",x)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(m){return p.throw(m),r!=null&&(r(m),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(m){return p.end(m),r!=null&&(r(m),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:m=>p.onEmpty(m)},i}var Ho=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 Cr(t,e,r){if(e==null)return t;if(e.aborted)return Promise.reject(new Ho(r?.errorMessage,r?.errorCode));let n,i=new Ho(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)}}function Xr(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function tr(t=0){return globalThis.Buffer?.alloc!=null?Xr(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function nt(t=0){return globalThis.Buffer?.allocUnsafe!=null?Xr(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function Tc(t,e){e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=nt(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return Xr(r)}function Yl(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 Zl=Symbol.for("@achingbrain/uint8arraylist");function Xl(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 Mn(t){return!!t?.[Zl]}var Ae=class t{bufs;length;[Zl]=!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(Mn(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(Mn(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=Xl(this.bufs,e);return r.buf[r.index]}set(e,r){let n=Xl(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(Mn(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 Tc(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:Tc(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(!Mn(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 d=f;d>=0;d--){let y=this.get(l+d);if(n[d]!==y){u=Math.max(1,d-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=nt(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=tr(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=tr(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=tr(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=nt(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=tr(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=tr(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=tr(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=tr(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=tr(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(!Yl(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}};function Ql(t){if(t!=null){if(typeof t[Symbol.iterator]=="function")return t[Symbol.iterator]();if(typeof t[Symbol.asyncIterator]=="function")return t[Symbol.asyncIterator]();if(typeof t.next=="function")return t}throw new Error("argument is not an iterator or iterable")}function jl(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function Jl(t,e){let r=Ql(t).return?.();jl(r)&&r.catch(n=>{e.error("could not cause iterator to return",n)})}var a2="ERR_STREAM_RESET",c2="ERR_SINK_INVALID_STATE",f2=5e3;function Ic(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}var zo=class{id;direction;timeline;protocol;metadata;source;status;readStatus;writeStatus;log;sinkController;sinkEnd;closed;endErr;streamSource;onEnd;onCloseRead;onCloseWrite;onReset;onAbort;sendCloseWriteTimeout;constructor(e){this.sinkController=new AbortController,this.sinkEnd=Ne(),this.closed=Ne(),this.log=e.log,this.status="open",this.readStatus="ready",this.writeStatus="ready",this.id=e.id,this.metadata=e.metadata??{},this.direction=e.direction,this.timeline={open:Date.now()},this.sendCloseWriteTimeout=e.sendCloseWriteTimeout??f2,this.onEnd=e.onEnd,this.onCloseRead=e?.onCloseRead,this.onCloseWrite=e?.onCloseWrite,this.onReset=e?.onReset,this.onAbort=e?.onAbort,this.source=this.streamSource=Ar({onEnd:r=>{r!=null?this.log.trace("source ended with error",r):this.log.trace("source ended"),this.onSourceEnd(r)}}),this.sink=this.sink.bind(this)}async sink(e){if(this.writeStatus!=="ready")throw new $(`writable end state is "${this.writeStatus}" not "ready"`,c2);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let i=this.sendNewStream(r);Ic(i)&&await i}let n=()=>{Jl(e,this.log)};try{this.sinkController.signal.addEventListener("abort",n),this.log.trace("sink reading from source");for await(let i of e){i=i instanceof Uint8Array?new Ae(i):i;let o=this.sendData(i,r);Ic(o)&&await o}}finally{this.sinkController.signal.removeEventListener("abort",n)}this.log.trace('sink finished reading from source, write status is "%s"',this.writeStatus),this.writeStatus==="writing"&&(this.writeStatus="closing",this.log.trace("send close write to remote"),await this.sendCloseWrite({signal:AbortSignal.timeout(this.sendCloseWriteTimeout)}),this.writeStatus="closed"),this.onSinkEnd()}catch(r){throw this.log.trace("sink ended with error, calling abort with error",r),this.abort(r),r}finally{this.log.trace("resolve sink end"),this.sinkEnd.resolve()}}onSourceEnd(e){this.timeline.closeRead==null&&(this.timeline.closeRead=Date.now(),this.readStatus="closed",e!=null&&this.endErr==null&&(this.endErr=e),this.onCloseRead?.(),this.timeline.closeWrite!=null?(this.log.trace("source and sink ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr),this.closed.resolve()):this.log.trace("source ended, waiting for sink to end"))}onSinkEnd(e){this.timeline.closeWrite==null&&(this.timeline.closeWrite=Date.now(),this.writeStatus="closed",e!=null&&this.endErr==null&&(this.endErr=e),this.onCloseWrite?.(),this.timeline.closeRead!=null?(this.log.trace("sink and source ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr),this.closed.resolve()):this.log.trace("sink ended, waiting for source to end"))}async close(e){this.log.trace("closing gracefully"),this.status="closing",await Promise.all([this.closeRead(e),this.closeWrite(e)]),await Cr(this.closed.promise,e?.signal),this.status="closed",this.log.trace("closed gracefully")}async closeRead(e={}){if(this.readStatus==="closing"||this.readStatus==="closed")return;this.log.trace('closing readable end of stream with starting read status "%s"',this.readStatus);let r=this.readStatus;this.readStatus="closing",this.status!=="reset"&&this.status!=="aborted"&&this.timeline.closeRead==null&&(this.log.trace("send close read to remote"),await this.sendCloseRead(e)),r==="ready"&&(this.log.trace("ending internal source queue with %d queued bytes",this.streamSource.readableLength),this.streamSource.end()),this.log.trace("closed readable end of stream")}async closeWrite(e={}){this.writeStatus==="closing"||this.writeStatus==="closed"||(this.log.trace('closing writable end of stream with starting write status "%s"',this.writeStatus),this.writeStatus==="ready"&&(this.log.trace("sink was never sunk, sink an empty array"),await Cr(this.sink([]),e.signal)),this.writeStatus==="writing"&&await new Promise((r,n)=>{queueMicrotask(()=>{this.log.trace("aborting source passed to .sink"),this.sinkController.abort(),Cr(this.sinkEnd.promise,e.signal).then(r,n)})}),this.writeStatus="closed",this.log.trace("closed writable end of stream"))}abort(e){if(this.status==="closed"||this.status==="aborted"||this.status==="reset")return;this.log("abort with error",e),this.log("try to send reset to remote");let r=this.sendReset();Ic(r)&&r.catch(n=>{this.log.error("error sending reset message",n)}),this.status="aborted",this.timeline.abort=Date.now(),this._closeSinkAndSource(e),this.onAbort?.(e)}reset(){if(this.status==="closed"||this.status==="aborted"||this.status==="reset")return;let e=new $("stream reset",a2);this.status="reset",this.timeline.reset=Date.now(),this._closeSinkAndSource(e),this.onReset?.()}_closeSinkAndSource(e){this._closeSink(e),this._closeSource(e)}_closeSink(e){this.writeStatus==="writing"&&(this.log.trace("end sink source"),this.sinkController.abort()),this.onSinkEnd(e)}_closeSource(e){this.readStatus!=="closing"&&this.readStatus!=="closed"&&(this.log.trace("ending source with %d bytes to be read by consumer",this.streamSource.readableLength),this.readStatus="closing",this.streamSource.end(e))}remoteCloseWrite(){if(this.readStatus==="closing"||this.readStatus==="closed"){this.log("received remote close write but local source is already closed");return}this.log.trace("remote close write"),this._closeSource()}remoteCloseRead(){if(this.writeStatus==="closing"||this.writeStatus==="closed"){this.log("received remote close read but local sink is already closed");return}this.log.trace("remote close read"),this._closeSink()}destroy(){if(this.status==="closed"||this.status==="aborted"||this.status==="reset"){this.log("received destroy but we are already closed");return}this.log.trace("stream destroyed"),this._closeSinkAndSource()}sourcePush(e){this.streamSource.push(e)}sourceReadableLength(){return this.streamSource.readableLength}};function Go(t){return t[Symbol.asyncIterator]!=null}var $o=t=>{let e=je(t),r=nt(e);return Er(t,r),$o.bytes=e,r};$o.bytes=0;function Dr(t,e){e=e??{};let r=e.lengthEncoder??$o;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return Go(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}Dr.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??$o;return new Ae(r(t.byteLength),t)};var Kn=Ze(rh(),1);var l2=8,h2=1024*1024*4,Zr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(Zr||(Zr={}));var _c=t=>{let e=vt(t);return _c.bytes=je(e),e};_c.bytes=0;function Qr(t,e){let r=new Ae,n=Zr.LENGTH,i=-1,o=e?.lengthDecoder??_c,s=e?.maxLengthLength??l2,a=e?.maxDataLength??h2;function*c(){for(;r.byteLength>0;){if(n===Zr.LENGTH)try{if(i=o(r),i<0)throw(0,Kn.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Kn.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=Zr.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,Kn.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===Zr.DATA){if(r.byteLength<i)break;let f=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(f),yield f,n=Zr.LENGTH}}}return Go(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,Kn.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,Kn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}Qr.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 Qr(n,{...e??{},onLength:o=>{r=o}})};var d2=t=>{let e=t.on||t.addListener||t.addEventListener,r=t.off||t.removeListener||t.removeEventListener;if(!e||!r)throw new TypeError("Emitter is not compatible");return{addListener:e.bind(t),removeListener:r.bind(t)}};function p2(t,e,r){let n,i=new Promise((o,s)=>{if(r={rejectionEvents:["error"],multiArgs:!1,resolveImmediately:!1,...r},!(r.count>=0&&(r.count===Number.POSITIVE_INFINITY||Number.isInteger(r.count))))throw new TypeError("The `count` option should be at least 0 or more");r.signal?.throwIfAborted();let a=[e].flat(),c=[],{addListener:f,removeListener:u}=d2(t),l=(...y)=>{let h=r.multiArgs?y:y[0];r.filter&&!r.filter(h)||(c.push(h),r.count===c.length&&(n(),o(c)))},d=y=>{n(),s(y)};n=()=>{for(let y of a)u(y,l);for(let y of r.rejectionEvents)u(y,d)};for(let y of a)f(y,l);for(let y of r.rejectionEvents)f(y,d);r.signal&&r.signal.addEventListener("abort",()=>{d(r.signal.reason)},{once:!0}),r.resolveImmediately&&o(c)});if(i.cancel=n,typeof r.timeout=="number"){let o=Wr(i,{milliseconds:r.timeout});return o.cancel=n,o}return i}function kc(t,e,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=p2(t,e,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var Rc=new Float32Array([-0]),Br=new Uint8Array(Rc.buffer);function ih(t,e,r){Rc[0]=t,e[r]=Br[0],e[r+1]=Br[1],e[r+2]=Br[2],e[r+3]=Br[3]}function oh(t,e){return Br[0]=t[e],Br[1]=t[e+1],Br[2]=t[e+2],Br[3]=t[e+3],Rc[0]}var Lc=new Float64Array([-0]),Je=new Uint8Array(Lc.buffer);function sh(t,e,r){Lc[0]=t,e[r]=Je[0],e[r+1]=Je[1],e[r+2]=Je[2],e[r+3]=Je[3],e[r+4]=Je[4],e[r+5]=Je[5],e[r+6]=Je[6],e[r+7]=Je[7]}function ah(t,e){return Je[0]=t[e],Je[1]=t[e+1],Je[2]=t[e+2],Je[3]=t[e+3],Je[4]=t[e+4],Je[5]=t[e+5],Je[6]=t[e+6],Je[7]=t[e+7],Lc[0]}var m2=BigInt(Number.MAX_SAFE_INTEGER),y2=BigInt(Number.MIN_SAFE_INTEGER),it=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 jr;if(e<m2&&e>y2)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>ch&&(i=0n,++n>ch&&(n=0n))),new t(Number(i),Number(n))}static fromNumber(e){if(e===0)return jr;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):jr}},jr=new it(0,0);jr.toBigInt=function(){return 0n};jr.zzEncode=jr.zzDecode=function(){return this};jr.length=function(){return 1};var ch=4294967296n;function fh(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 uh(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 Nc(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 Et(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function Wo(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var Uc=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,Et(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 Et(this,4);return Wo(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Et(this,4);return Wo(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Et(this,4);let e=oh(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw Et(this,4);let e=ah(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 Et(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return uh(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Et(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Et(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 it(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 Et(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 Et(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 Et(this,8);let e=Wo(this.buf,this.pos+=4),r=Wo(this.buf,this.pos+=4);return new it(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 Pc(t){return new Uc(t instanceof Uint8Array?t:t.subarray())}function St(t,e){let r=Pc(t);return e.decode(r)}var Vc={};J(Vc,{base10:()=>E2});function g2(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(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var p=0,m=0,g=0,b=h.length;g!==b&&h[g]===0;)g++,p++;for(var x=(b-g)*u+1>>>0,S=new Uint8Array(x);g!==b;){for(var w=h[g],E=0,D=x-1;(w!==0||E<m)&&D!==-1;D--,E++)w+=256*S[D]>>>0,S[D]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,g++}for(var B=x-m;B!==x&&S[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=t.charAt(S[B]);return U}function d(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var p=0;if(h[p]!==" "){for(var m=0,g=0;h[p]===c;)m++,p++;for(var b=(h.length-p)*f+1>>>0,x=new Uint8Array(b);h[p];){var S=r[h.charCodeAt(p)];if(S===255)return;for(var w=0,E=b-1;(S!==0||w<g)&&E!==-1;E--,w++)S+=a*x[E]>>>0,x[E]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");g=w,p++}if(h[p]!==" "){for(var D=b-g;D!==b&&x[D]===0;)D++;for(var B=new Uint8Array(m+(b-D)),U=m;D!==b;)B[U++]=x[D++];return B}}}function y(h){var p=d(h);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:d,decode:y}}var x2=g2,b2=x2,hh=b2;var rB=new Uint8Array(0);var dh=(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},rr=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 ph=t=>new TextEncoder().encode(t),mh=t=>new TextDecoder().decode(t);var Oc=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")}},Mc=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 gh(this,e)}},Kc=class{constructor(e){this.decoders=e}or(e){return gh(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`)}},gh=(t,e)=>new Kc({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Fc=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Oc(e,r,n),this.decoder=new Mc(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Fn=({name:t,prefix:e,encode:r,decode:n})=>new Fc(t,e,r,n),Tr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=hh(r,e);return Fn({prefix:t,name:e,encode:n,decode:o=>rr(i(o))})},w2=(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},v2=(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},Ie=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Fn({prefix:e,name:t,encode(i){return v2(i,n,r)},decode(i){return w2(i,n,r,t)}});var E2=Tr({prefix:"9",name:"base10",alphabet:"0123456789"});var qc={};J(qc,{base16:()=>S2,base16upper:()=>A2});var S2=Ie({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),A2=Ie({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Hc={};J(Hc,{base2:()=>C2});var C2=Ie({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var zc={};J(zc,{base256emoji:()=>_2});var xh=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}"),D2=xh.reduce((t,e,r)=>(t[r]=e,t),[]),B2=xh.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function T2(t){return t.reduce((e,r)=>(e+=D2[r],e),"")}function I2(t){let e=[];for(let r of t){let n=B2[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var _2=Fn({prefix:"\u{1F680}",name:"base256emoji",encode:T2,decode:I2});var Gc={};J(Gc,{base32:()=>Vn,base32hex:()=>N2,base32hexpad:()=>P2,base32hexpadupper:()=>O2,base32hexupper:()=>U2,base32pad:()=>R2,base32padupper:()=>L2,base32upper:()=>k2,base32z:()=>M2});var Vn=Ie({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),k2=Ie({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),R2=Ie({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),L2=Ie({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),N2=Ie({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),U2=Ie({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),P2=Ie({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),O2=Ie({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),M2=Ie({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var $c={};J($c,{base36:()=>K2,base36upper:()=>F2});var K2=Tr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),F2=Tr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Wc={};J(Wc,{base58btc:()=>Mt,base58flickr:()=>V2});var Mt=Tr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),V2=Tr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Yc={};J(Yc,{base64:()=>q2,base64pad:()=>H2,base64url:()=>z2,base64urlpad:()=>G2});var q2=Ie({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),H2=Ie({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),z2=Ie({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),G2=Ie({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Xc={};J(Xc,{base8:()=>$2});var $2=Ie({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Zc={};J(Zc,{identity:()=>W2});var W2=Fn({prefix:"\0",name:"identity",encode:t=>mh(t),decode:t=>ph(t)});var gB=new TextEncoder,xB=new TextDecoder;var jc={};J(jc,{identity:()=>yb});var Z2=vh,bh=128,Q2=127,j2=~Q2,J2=Math.pow(2,31);function vh(t,e,r){e=e||[],r=r||0;for(var n=r;t>=J2;)e[r++]=t&255|bh,t/=128;for(;t&j2;)e[r++]=t&255|bh,t>>>=7;return e[r]=t|0,vh.bytes=r-n+1,e}var eb=Qc,tb=128,wh=127;function Qc(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw Qc.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&wh)<<i:(s&wh)*Math.pow(2,i),i+=7}while(s>=tb);return Qc.bytes=o-n,r}var rb=Math.pow(2,7),nb=Math.pow(2,14),ib=Math.pow(2,21),ob=Math.pow(2,28),sb=Math.pow(2,35),ab=Math.pow(2,42),cb=Math.pow(2,49),fb=Math.pow(2,56),ub=Math.pow(2,63),lb=function(t){return t<rb?1:t<nb?2:t<ib?3:t<ob?4:t<sb?5:t<ab?6:t<cb?7:t<fb?8:t<ub?9:10},hb={encode:Z2,decode:eb,encodingLength:lb},db=hb,Li=db;var Ni=(t,e=0)=>[Li.decode(t,e),Li.decode.bytes],qn=(t,e,r=0)=>(Li.encode(t,e,r),e),Hn=t=>Li.encodingLength(t);var Jr=(t,e)=>{let r=e.byteLength,n=Hn(t),i=n+Hn(r),o=new Uint8Array(i+r);return qn(t,o,0),qn(r,o,n),o.set(e,i),new zn(t,r,e,o)},Eh=t=>{let e=rr(t),[r,n]=Ni(e),[i,o]=Ni(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new zn(r,i,s,e)},Sh=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&dh(t.bytes,r.bytes)}},zn=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Ah=0,pb="identity",Ch=rr,mb=t=>Jr(Ah,Ch(t)),yb={code:Ah,name:pb,encode:Ch,digest:mb};var t0={};J(t0,{sha256:()=>gb,sha512:()=>xb});var e0=({name:t,code:e,encode:r})=>new Jc(t,e,r),Jc=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?Jr(this.code,r):r.then(n=>Jr(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Bh=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),gb=e0({name:"sha2-256",code:18,encode:Bh("SHA-256")}),xb=e0({name:"sha2-512",code:19,encode:Bh("SHA-512")});var Th=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return wb(r,r0(t),e||Mt.encoder);default:return vb(r,r0(t),e||Vn.encoder)}};var Ih=new WeakMap,r0=t=>{let e=Ih.get(t);if(e==null){let r=new Map;return Ih.set(t,r),r}return e},Xo=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!==Pi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Eb)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=Jr(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&&Sh(e.multihash,n.multihash)}toString(e){return Th(this,e)}toJSON(){return{"/":Th(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||_h(n,i,o.bytes))}else if(r[Sb]===!0){let{version:n,multihash:i,code:o}=r,s=Eh(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!==Pi)throw new Error(`Version 0 CID must use dag-pb (code: ${Pi}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=_h(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Pi,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=rr(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 zn(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,d]=Ni(e.subarray(r));return r+=d,l},i=n(),o=Pi;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]=bb(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 r0(o).set(n,e),o}},bb=(t,e)=>{switch(t[0]){case"Q":{let r=e||Mt;return[Mt.prefix,r.decode(`${Mt.prefix}${t}`)]}case Mt.prefix:{let r=e||Mt;return[Mt.prefix,r.decode(t)]}case Vn.prefix:{let r=e||Vn;return[Vn.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)]}}},wb=(t,e,r)=>{let{prefix:n}=r;if(n!==Mt.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},vb=(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},Pi=112,Eb=18,_h=(t,e,r)=>{let n=Hn(t),i=n+Hn(e),o=new Uint8Array(i+r.byteLength);return qn(t,o,0),qn(e,o,n),o.set(r,i),o},Sb=Symbol.for("@ipld/js-cid/CID");var n0={...Zc,...Hc,...Xc,...Vc,...qc,...Gc,...$c,...Wc,...Yc,...zc},NB={...t0,...jc};function Rh(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var kh=Rh("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),i0=Rh("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=nt(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Ab={utf8:kh,"utf-8":kh,hex:n0.base16,latin1:i0,ascii:i0,binary:i0,...n0},Lh=Ab;function Nh(t,e="utf8"){let r=Lh[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Xr(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function o0(t){let e=t??8192,r=e>>>1,n,i=e;return function(s){if(s<1||s>r)return nt(s);i+s>e&&(n=nt(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var en=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function s0(){}var c0=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Cb=o0();function Db(t){return globalThis.Buffer!=null?nt(t):Cb(t)}var Ki=class{len;head;tail;states;constructor(){this.len=0,this.head=new en(s0,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new en(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new f0((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(Oi,10,it.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=it.fromBigInt(e);return this._push(Oi,r.length(),r)}uint64Number(e){let r=it.fromNumber(e);return this._push(Oi,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=it.fromBigInt(e).zzEncode();return this._push(Oi,r.length(),r)}sint64Number(e){let r=it.fromNumber(e).zzEncode();return this._push(Oi,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(a0,1,e?1:0)}fixed32(e){return this._push(Mi,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=it.fromBigInt(e);return this._push(Mi,4,r.lo)._push(Mi,4,r.hi)}fixed64Number(e){let r=it.fromNumber(e);return this._push(Mi,4,r.lo)._push(Mi,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(ih,4,e)}double(e){return this._push(sh,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(a0,1,0):this.uint32(r)._push(Tb,r,e)}string(e){let r=fh(e);return r!==0?this.uint32(r)._push(Nc,r,e):this._push(a0,1,0)}fork(){return this.states=new c0(this),this.head=this.tail=new en(s0,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 en(s0,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=Db(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function a0(t,e,r){e[r]=t&255}function Bb(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var f0=class extends en{next;constructor(e,r){super(Bb,e,r),this.next=void 0}};function Oi(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 Mi(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 Tb(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Ki.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(Ib,e,t),this},Ki.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(_b,e,t),this});function Ib(t,e,r){e.set(t,r)}function _b(t,e,r){t.length<40?Nc(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(Nh(t),r)}function u0(){return new Ki}function At(t,e){let r=u0();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Gn;(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"})(Gn||(Gn={}));function Zo(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function tn(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 Zo("enum",Gn.VARINT,r,n)}function Ct(t,e){return Zo("message",Gn.LENGTH_DELIMITED,t,e)}var ot;(function(t){let e;(function(i){i.FIN="FIN",i.STOP_SENDING="STOP_SENDING",i.RESET="RESET",i.FIN_ACK="FIN_ACK"})(e=t.Flag||(t.Flag={}));let r;(function(i){i[i.FIN=0]="FIN",i[i.STOP_SENDING=1]="STOP_SENDING",i[i.RESET=2]="RESET",i[i.FIN_ACK=3]="FIN_ACK"})(r||(r={})),function(i){i.codec=()=>tn(r)}(e=t.Flag||(t.Flag={}));let n;t.codec=()=>(n==null&&(n=Ct((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.flag!=null&&(o.uint32(8),t.Flag.codec().encode(i.flag,o)),i.message!=null&&(o.uint32(18),o.bytes(i.message)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.flag=t.Flag.codec().decode(i);break;case 2:s.message=i.bytes();break;default:i.skipType(c&7);break}}return s})),n),t.encode=i=>At(i,t.codec()),t.decode=i=>St(i,t.codec())})(ot||(ot={}));var kb=16*1024*1024,Rb=30*1e3,Lb=5,Nb=2,Ub=16*1024,Pb=5e3,Ob=5e3,l0=class extends zo{channel;incomingData;maxBufferedAmount;bufferedAmountLowEventTimeout;maxMessageSize;receiveFinAck;finAckTimeout;openTimeout;constructor(e){let r=e.onEnd;switch(e.onEnd=i=>{this.log.trace("readable and writeable ends closed",this.status),Promise.resolve(async()=>{if(!(this.timeline.abort!=null||this.timeline.reset!==null))try{await Wr(this.receiveFinAck.promise,{milliseconds:this.finAckTimeout})}catch(o){this.log.error("error receiving FIN_ACK",o)}}).then(()=>{this.incomingData.end(),r?.(i)}).catch(o=>{this.log.error("error ending stream",o)})},super(e),this.channel=e.channel,this.channel.binaryType="arraybuffer",this.incomingData=Ar(),this.bufferedAmountLowEventTimeout=e.bufferedAmountLowEventTimeout??Rb,this.maxBufferedAmount=e.maxBufferedAmount??kb,this.maxMessageSize=(e.maxMessageSize??Ub)-Lb-Nb,this.receiveFinAck=Ne(),this.finAckTimeout=e.closeTimeout??Pb,this.openTimeout=e.openTimeout??Ob,this.channel.readyState){case"open":this.timeline.open=new Date().getTime();break;case"closed":case"closing":(this.timeline.close===void 0||this.timeline.close===0)&&(this.timeline.close=Date.now());break;case"connecting":break;default:throw this.log.error("unknown datachannel state %s",this.channel.readyState),new $("Unknown datachannel state","ERR_INVALID_STATE")}this.channel.onopen=i=>{this.timeline.open=new Date().getTime()},this.channel.onclose=i=>{this.receiveFinAck.resolve(),this.close().catch(o=>{this.log.error("error closing stream after channel closed",o)})},this.channel.onerror=i=>{let o=i.error;this.abort(o)},this.channel.onmessage=async i=>{let{data:o}=i;o===null||o.byteLength===0||this.incomingData.push(new Uint8Array(o,0,o.byteLength))};let n=this;Promise.resolve().then(async()=>{for await(let i of Qr(this.incomingData)){let o=n.processIncomingProtobuf(i);o!=null&&n.sourcePush(new Ae(o))}}).catch(i=>{this.log.error("error processing incoming data channel messages",i)})}sendNewStream(){}async _sendMessage(e,r=!0){if(r&&this.channel.bufferedAmount>this.maxBufferedAmount)try{this.log('channel buffer is %d, wait for "bufferedamountlow" event',this.channel.bufferedAmount),await kc(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof Pn?new $(`Timed out waiting for DataChannel buffer to clear after ${this.bufferedAmountLowEventTimeout}ms`,"ERR_BUFFER_CLEAR_TIMEOUT"):n}if(this.channel.readyState==="closed"||this.channel.readyState==="closing")throw new $(`Invalid datachannel state - ${this.channel.readyState}`,"ERR_INVALID_STATE");this.channel.readyState!=="open"&&(this.log('channel state is "%s" and not "open", waiting for "open" event before sending data',this.channel.readyState),await kc(this.channel,"open",{timeout:this.openTimeout}),this.log('channel state is now "%s", sending data',this.channel.readyState)),this.channel.send(e.subarray())}async sendData(e){for(e=e.sublist();e.byteLength>0;){let r=Math.min(e.byteLength,this.maxMessageSize),n=e.subarray(0,r),i=ot.encode({message:n}),o=Dr.single(i);await this._sendMessage(o),e.consume(r)}}async sendReset(){await this._sendFlag(ot.Flag.RESET)}async sendCloseWrite(e){if(await this._sendFlag(ot.Flag.FIN)){this.log.trace("awaiting FIN_ACK");try{await Cr(this.receiveFinAck.promise,e?.signal,{errorMessage:"sending close-write was aborted before FIN_ACK was received",errorCode:"ERR_FIN_ACK_NOT_RECEIVED"})}catch(n){this.log.error("failed to await FIN_ACK",n)}}else this.log.trace("sending FIN failed, not awaiting FIN_ACK");this.receiveFinAck.resolve()}async sendCloseRead(){await this._sendFlag(ot.Flag.STOP_SENDING)}processIncomingProtobuf(e){let r=ot.decode(e);if(r.flag!==void 0&&(this.log.trace('incoming flag %s, write status "%s", read status "%s"',r.flag,this.writeStatus,this.readStatus),r.flag===ot.Flag.FIN&&(this.remoteCloseWrite(),this.log.trace("sending FIN_ACK"),this._sendFlag(ot.Flag.FIN_ACK).catch(n=>{this.log.error("error sending FIN_ACK immediately",n)})),r.flag===ot.Flag.RESET&&this.reset(),r.flag===ot.Flag.STOP_SENDING&&this.remoteCloseRead(),r.flag===ot.Flag.FIN_ACK&&(this.log.trace("received FIN_ACK"),this.receiveFinAck.resolve())),this.readStatus==="ready")return r.message}async _sendFlag(e){if(this.channel.readyState!=="open")return this.log.trace('not sending flag %s because channel is "%s" and not "open"',this.channel.readyState,e.toString()),!1;this.log.trace("sending flag %s",e.toString());let r=ot.encode({flag:e}),n=Dr.single(r);try{return await this._sendMessage(n,!1),!0}catch(i){this.log.error("could not send flag %s",e.toString(),i)}return!1}};function $n(t){let{channel:e,direction:r}=t;return new l0({id:r==="inbound"?`i${e.id}`:`r${e.id}`,log:t.logger.forComponent(`libp2p:webrtc:stream:${r}:${e.id}`),...t})}var Uh="/webrtc",rn=class{protocol;peerConnection;bufferedStreams=[];metrics;dataChannelOptions;components;log;constructor(e,r){this.components=e,this.peerConnection=r.peerConnection,this.metrics=r.metrics,this.protocol=r.protocol??Uh,this.dataChannelOptions=r.dataChannelOptions??{},this.log=e.logger.forComponent("libp2p:webrtc:datachannelmuxerfactory"),this.peerConnection.ondatachannel=({channel:n})=>{if(this.log.trace('incoming early datachannel with channel id %d and label "%s"',n.id),n.label==="init"){this.log.trace("closing early init channel"),n.close();return}let i={},o=$n({channel:n,direction:"inbound",onEnd:s=>{i.onEnd(s)},logger:e.logger,...this.dataChannelOptions});i.stream=o,i.channel=n,i.onEnd=()=>{this.bufferedStreams=this.bufferedStreams.filter(s=>s.stream.id!==o.id)},this.bufferedStreams.push(i)}}createStreamMuxer(e){return new h0(this.components,{...e,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.bufferedStreams,protocol:this.protocol})}},h0=class{init;streams;protocol;log;peerConnection;dataChannelOptions;metrics;logger;constructor(e,r){this.init=r,this.log=e.logger.forComponent("libp2p:webrtc:muxer"),this.logger=e.logger,this.streams=r.streams.map(n=>n.stream),this.peerConnection=r.peerConnection,this.protocol=r.protocol??Uh,this.metrics=r.metrics,this.dataChannelOptions=r.dataChannelOptions??{},this.peerConnection.ondatachannel=({channel:n})=>{if(this.log.trace("incoming datachannel with channel id %d",n.id),n.label==="init"){this.log.trace("closing init channel"),n.close();return}let i=$n({channel:n,direction:"inbound",onEnd:()=>{this.log("incoming channel %s ended with state %s",n.id,n.readyState),this.#e(i,n)},logger:this.logger,...this.dataChannelOptions});this.streams.push(i),this.metrics?.increment({incoming_stream:!0}),r?.onIncomingStream?.(i)},this.init.streams.length>0&&queueMicrotask(()=>{this.init.streams.forEach(n=>{n.onEnd=()=>{this.log("incoming early channel %s ended with state %s",n.channel.id,n.channel.readyState),this.#e(n.stream,n.channel)},this.metrics?.increment({incoming_stream:!0}),this.init?.onIncomingStream?.(n.stream)})})}#e(e,r){this.log.trace("stream %s %s %s onEnd",e.direction,e.id,e.protocol),Wl(r,`${e.direction} ${e.id} ${e.protocol}`,this.dataChannelOptions.drainTimeout,{log:this.log}),this.streams=this.streams.filter(n=>n.id!==e.id),this.metrics?.increment({stream_end:!0}),this.init?.onStreamEnd?.(e)}async close(e){try{await Promise.all(this.streams.map(async r=>r.close(e)))}catch(r){this.abort(r)}}abort(e){for(let r of this.streams)r.abort(e)}source=Fo();sink=Vo;newStream(){let e=this.peerConnection.createDataChannel("");this.log.trace("opened outgoing datachannel with channel id %s",e.id);let r=$n({channel:e,direction:"outbound",onEnd:()=>{this.log("outgoing channel %s ended with state %s",e.id,e.readyState),this.#e(r,e)},logger:this.logger,...this.dataChannelOptions});return this.streams.push(r),this.metrics?.increment({outgoing_stream:!0}),r}};var Wn=globalThis.RTCPeerConnection,Qo=globalThis.RTCSessionDescription,Ph=globalThis.RTCIceCandidate;var d0=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=Ne(),this.haveNext=Ne()}[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=Ne(),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=Ne(),await Cr(this.needNext.promise,r?.signal,r)}};function Oh(){return new d0}var jo=class extends Error{code;constructor(e,r){super(e),this.code=r}},p0=class extends jo{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function Mh(t,e){let r=Oh();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 Ae;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new p0("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:d}=await Promise.race([n.next(),f]);return l===!0?new Ae:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),f]);if(d===!0)throw new jo("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}}}var Jo=class extends Error{code;constructor(e,r){super(e),this.code=r}},Kh=t=>vt(t);Kh.bytes=0;function Fi(t,e={}){let r=Mh(t,e);return e.maxDataLength!=null&&e.maxLengthLength==null&&(e.maxLengthLength=je(e.maxDataLength)),{read:async i=>{let o=-1,s=new Ae,a=e?.lengthDecoder??Kh;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 Jo("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new Jo("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(Dr.single(i,e),o)},writeV:async(i,o)=>{let s=new Ae(...i.map(a=>Dr.single(a,e)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function es(t,e){let r=Fi(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 st;(function(t){let e;(function(i){i.SDP_OFFER="SDP_OFFER",i.SDP_ANSWER="SDP_ANSWER",i.ICE_CANDIDATE="ICE_CANDIDATE"})(e=t.Type||(t.Type={}));let r;(function(i){i[i.SDP_OFFER=0]="SDP_OFFER",i[i.SDP_ANSWER=1]="SDP_ANSWER",i[i.ICE_CANDIDATE=2]="ICE_CANDIDATE"})(r||(r={})),function(i){i.codec=()=>tn(r)}(e=t.Type||(t.Type={}));let n;t.codec=()=>(n==null&&(n=Ct((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),t.Type.codec().encode(i.type,o)),i.data!=null&&(o.uint32(18),o.string(i.data)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.type=t.Type.codec().decode(i);break;case 2:s.data=i.string();break;default:i.skipType(c&7);break}}return s})),n),t.encode=i=>At(i,t.codec()),t.decode=i=>St(i,t.codec())})(st||(st={}));var ts=async(t,e,r)=>{try{let n=Ne();for(Kb(t,n);;){let i=await Promise.race([n.promise,e.read({signal:r.signal})]);if(i==null)break;if(i.type!==st.Type.ICE_CANDIDATE)throw new $("ICE candidate message expected","ERR_NOT_ICE_CANDIDATE");let o=JSON.parse(i.data??"null");if(o===""||o===null){r.log.trace("end-of-candidates received");continue}let s=new Ph(o);r.log.trace("%s received new ICE candidate",r.direction,s);try{await t.addIceCandidate(s)}catch(a){r.log.error("%s bad candidate received",r.direction,o,a)}}}catch(n){if(r.log.error("%s error parsing ICE candidate",r.direction,n),r.signal?.aborted===!0)throw n}};function Mb(t){return Ri?t.iceConnectionState:t.connectionState}function Kb(t,e){t[Ri?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(Mb(t)){case"connected":e.resolve();break;case"failed":case"disconnected":case"closed":e.reject(new $("RTCPeerConnection was closed","ERR_CONNECTION_CLOSED_BEFORE_CONNECTED"));break;default:break}}}async function Fh({peerConnection:t,signal:e,metrics:r,multiaddr:n,connectionManager:i,transportManager:o,log:s}){let{baseAddr:a}=Vh(n);r?.dialerEvents.increment({open:!0}),s.trace("dialing base address: %a",a);let c=a.getPeerId();if(c==null)throw new $("Relay peer was missing","ERR_INVALID_ADDRESS");let f=i.getConnections(Gr(c)),u,l=!1;f.length===0?(u=await o.dial(a,{signal:e}),l=!0):u=f[0];try{let d=await u.newStream(rs,{signal:e,runOnTransientConnection:!0}),y=es(d).pb(st);try{let h=t.createDataChannel("init");t.onicecandidate=({candidate:b})=>{let x=JSON.stringify(b?.toJSON()??null);s.trace("initiator sending ICE candidate %s",x),y.write({type:st.Type.ICE_CANDIDATE,data:x},{signal:e}).catch(S=>{s.error("error sending ICE candidate",S)})},t.onicecandidateerror=b=>{s.error("initiator ICE candidate error",b)};let p=await t.createOffer().catch(b=>{throw s.error("could not execute createOffer",b),new $("Failed to set createOffer","ERR_SDP_HANDSHAKE_FAILED")});s.trace("initiator send SDP offer %s",p.sdp),await y.write({type:st.Type.SDP_OFFER,data:p.sdp},{signal:e}),await t.setLocalDescription(p).catch(b=>{throw s.error("could not execute setLocalDescription",b),new $("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")});let m=await y.read({signal:e});if(m.type!==st.Type.SDP_ANSWER)throw new $("Remote should send an SDP answer","ERR_SDP_HANDSHAKE_FAILED");s.trace("initiator receive SDP answer %s",m.data);let g=new Qo({type:"answer",sdp:m.data});return await t.setRemoteDescription(g).catch(b=>{throw s.error("could not execute setRemoteDescription",b),new $("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")}),s.trace("initiator read candidates until connected"),await ts(t,y,{direction:"initiator",signal:e,log:s}),s.trace("initiator connected, closing init channel"),h.close(),s.trace("initiator closing signalling stream"),await y.unwrap().unwrap().close({signal:e}),s.trace("initiator connected to remote address %s",n),{remoteAddress:n}}catch(h){throw t.close(),d.abort(h),h}finally{t.onicecandidate=null,t.onicecandidateerror=null}}finally{if(l)try{await u.close({signal:e})}catch(d){u.abort(d)}}}var Fb=H("dns4"),Vb=H("dns6"),qb=H("dnsaddr"),nn=Le(H("dns"),qb,Fb,Vb),os=Le(H("ip4"),H("ip6")),Yn=Le(X(os,H("tcp")),X(nn,H("tcp"))),ss=X(os,H("udp")),Hb=X(ss,H("utp")),zb=X(ss,H("quic")),Gb=X(ss,H("quic-v1")),m0=Le(X(Yn,H("ws")),X(nn,H("ws"))),ns=Le(X(m0,H("p2p")),m0),y0=Le(X(Yn,H("wss")),X(nn,H("wss")),X(Yn,H("tls"),H("ws")),X(nn,H("tls"),H("ws"))),is=Le(X(y0,H("p2p")),y0),g0=Le(X(Yn,H("http")),X(os,H("http")),X(nn,H("http"))),x0=Le(X(Yn,H("https")),X(os,H("https")),X(nn,H("https"))),qh=X(ss,H("webrtc-direct"),H("certhash")),Gh=Le(X(qh,H("p2p")),qh),Hh=X(Gb,H("webtransport"),H("certhash"),H("certhash")),$h=Le(X(Hh,H("p2p")),Hh),Wh=Le(X(ns,H("p2p-webrtc-star"),H("p2p")),X(is,H("p2p-webrtc-star"),H("p2p")),X(ns,H("p2p-webrtc-star")),X(is,H("p2p-webrtc-star"))),tI=Le(X(ns,H("p2p-websocket-star"),H("p2p")),X(is,H("p2p-websocket-star"),H("p2p")),X(ns,H("p2p-websocket-star")),X(is,H("p2p-websocket-star"))),Yh=Le(X(g0,H("p2p-webrtc-direct"),H("p2p")),X(x0,H("p2p-webrtc-direct"),H("p2p")),X(g0,H("p2p-webrtc-direct")),X(x0,H("p2p-webrtc-direct"))),on=Le(m0,y0,g0,x0,Wh,Yh,Yn,Hb,zb,nn,Gh,$h),rI=Le(X(on,H("p2p-stardust"),H("p2p")),X(on,H("p2p-stardust"))),Ir=Le(X(on,H("p2p")),Wh,Yh,Gh,$h,H("p2p")),zh=Le(X(Ir,H("p2p-circuit"),Ir),X(Ir,H("p2p-circuit")),X(H("p2p-circuit"),Ir),X(on,H("p2p-circuit")),X(H("p2p-circuit"),on),H("p2p-circuit")),Xh=()=>Le(X(zh,Xh),zh),nr=Xh(),nI=Le(X(nr,Ir,nr),X(Ir,nr),X(nr,Ir),nr,Ir);var iI=Le(X(nr,H("webrtc"),H("p2p")),X(nr,H("webrtc")),X(on,H("webrtc"),H("p2p")),X(on,H("webrtc")),H("webrtc"));function Zh(t){function e(r){let n;try{n=er(r)}catch{return!1}let i=t(n.protoNames());return i===null?!1:i===!0||i===!1?i:i.length===0}return e}function X(...t){function e(r){if(r.length<t.length)return null;let n=r;return t.some(i=>(n=typeof i=="function"?i().partialMatch(r):i.partialMatch(r),Array.isArray(n)&&(r=n),n===null)),n}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:Zh(e),partialMatch:e}}function Le(...t){function e(n){let i=null;return t.some(o=>{let s=typeof o=="function"?o().partialMatch(n):o.partialMatch(n);return s!=null?(i=s,!0):!1}),i}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:Zh(e),partialMatch:e}}function H(t){let e=t;function r(i){let o;try{o=er(i)}catch{return!1}let s=o.protoNames();return s.length===1&&s[0]===e}function n(i){return i.length===0?null:i[0]===e?i.slice(1):null}return{toString:function(){return e},matches:r,partialMatch:n}}var as=class extends So{peerId;transportManager;shutdownController;constructor(e,r){super(),this.peerId=e.peerId,this.transportManager=e.transportManager,this.shutdownController=r.shutdownController}async listen(){this.safeDispatchEvent("listening",{})}getAddrs(){return this.transportManager.getListeners().filter(e=>e!==this).map(e=>e.getAddrs().filter(r=>nr.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};async function Qh({peerConnection:t,stream:e,signal:r,connection:n,log:i}){i.trace("new inbound signaling stream");let o=es(e).pb(st);try{t.onicecandidate=({candidate:u})=>{let l=JSON.stringify(u?.toJSON()??null);i.trace("recipient sending ICE candidate %s",l),o.write({type:st.Type.ICE_CANDIDATE,data:l},{signal:r}).catch(d=>{i.error("error sending ICE candidate",d)})};let a=await o.read({signal:r});if(a.type!==st.Type.SDP_OFFER)throw new $(`expected message type SDP_OFFER, received: ${a.type??"undefined"} `,"ERR_SDP_HANDSHAKE_FAILED");i.trace("recipient receive SDP offer %s",a.data);let c=new Qo({type:"offer",sdp:a.data});await t.setRemoteDescription(c).catch(u=>{throw i.error("could not execute setRemoteDescription",u),new $("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")});let f=await t.createAnswer().catch(u=>{throw i.error("could not execute createAnswer",u),new $("Failed to create answer","ERR_SDP_HANDSHAKE_FAILED")});i.trace("recipient send SDP answer %s",f.sdp),await o.write({type:st.Type.SDP_ANSWER,data:f.sdp},{signal:r}),await t.setLocalDescription(f).catch(u=>{throw i.error("could not execute setLocalDescription",u),new $("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")}),i.trace("recipient read candidates until connected"),await ts(t,o,{direction:"recipient",signal:r,log:i})}catch(a){if(t.connectionState!=="connected")throw i.error("error while handling signaling stream from peer %a",n.remoteAddr,a),t.close(),a;i("error while handling signaling stream from peer %a, ignoring as the RTCPeerConnection is already connected",n.remoteAddr,a)}let s=er(`/webrtc/p2p/${n.remoteAddr.getPeerId()}`);return i.trace("recipient connected to remote address %s",s),{remoteAddress:s}}var $b="/webrtc",Wb="/p2p-circuit",rs="/webrtc-signaling/0.0.1",Yb=30*1e3,cs=class{components;init;log;_started=!1;metrics;shutdownController;constructor(e,r={}){this.components=e,this.init=r,this.log=e.logger.forComponent("libp2p:webrtc"),this.shutdownController=new AbortController,Lu(1/0,this.shutdownController.signal),e.metrics!=null&&(this.metrics={dialerEvents:e.metrics.registerCounterGroup("libp2p_webrtc_dialer_events_total",{label:"event",help:"Total count of WebRTC dialer events by type"}),listenerEvents:e.metrics.registerCounterGroup("libp2p_webrtc_listener_events_total",{label:"event",help:"Total count of WebRTC listener events by type"})})}isStarted(){return this._started}async start(){await this.components.registrar.handle(rs,e=>{this._onProtocol(e).catch(r=>{this.log.error("failed to handle incoming connect from %p",e.connection.remotePeer,r)})},{runOnTransientConnection:!0}),this._started=!0}async stop(){await this.components.registrar.unhandle(rs),this._started=!1}createListener(e){return new as(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[Eo]=!0;filter(e){return e.filter(Pl.exactMatch)}async dial(e,r){this.log.trace("dialing address: %a",e);let n=new Wn(this.init.rtcConfiguration),i=new rn(this.components,{peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:o}=await Fh({peerConnection:n,multiaddr:e,dataChannelOptions:this.init.dataChannel,signal:r.signal,connectionManager:this.components.connectionManager,transportManager:this.components.transportManager,log:this.log}),s=new Yr(this.components,{peerConnection:n,timeline:{open:Date.now()},remoteAddr:o,metrics:this.metrics?.dialerEvents}),a=await r.upgrader.upgradeOutbound(s,{skipProtection:!0,skipEncryption:!0,muxerFactory:i});return this._closeOnShutdown(n,s),a}async _onProtocol({connection:e,stream:r}){let n=AbortSignal.timeout(this.init.inboundConnectionTimeout??Yb),i=new Wn(this.init.rtcConfiguration),o=new rn(this.components,{peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await Qh({peerConnection:i,connection:e,stream:r,signal:n,log:this.log}),a=new Yr(this.components,{peerConnection:i,timeline:{open:new Date().getTime()},remoteAddr:s,metrics:this.metrics?.listenerEvents});this._closeOnShutdown(i,a),await this.components.upgrader.upgradeInbound(a,{skipEncryption:!0,skipProtection:!0,muxerFactory:o}),await r.close({signal:n})}catch(s){throw r.abort(s),s}}_closeOnShutdown(e,r){let n=()=>{r.close().catch(i=>{this.log.error("could not close WebRTCMultiaddrConnection",i)})};this.shutdownController.signal.addEventListener("abort",n),e.addEventListener("close",()=>{this.shutdownController.signal.removeEventListener("abort",n)})}};function Vh(t){let e=t.toString().split($b+"/");if(e.length!==2)throw new $("webrtc protocol was not present in multiaddr",ft.ERR_INVALID_MULTIADDR);if(!e[0].includes(Wb))throw new $("p2p-circuit protocol was not present in multiaddr",ft.ERR_INVALID_MULTIADDR);let r=er(e[0]),i=er("/"+e[1]).getPeerId();if(i==null)throw new $("destination peer id was missing",ft.ERR_INVALID_MULTIADDR);let o=r.protos().pop();if(o===void 0)throw new $("invalid multiaddr",ft.ERR_INVALID_MULTIADDR);return o.name!=="p2p"&&(r=r.encapsulate(`/p2p/${i}`)),{baseAddr:r,peerId:Gr(i)}}function b0(){let t=Ne(),e=!1;return{sink:async r=>{if(e)throw new Error("already piped");e=!0,t.resolve(r)},source:async function*(){yield*await t.promise}()}}function jh(){let t=b0(),e=b0();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function Xb(t){return t[Symbol.asyncIterator]!=null}function Zb(...t){let e=[];for(let r of t)Xb(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Ar({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var Jh=Zb;function ed(t,...e){if(t==null)throw new Error("Empty pipeline");if(w0(t)){let n=t;t=()=>n.source}else if(rd(t)||td(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&w0(r[r.length-1])&&(r[r.length-1]=r[r.length-1].sink),r.length>2)for(let n=1;n<r.length-1;n++)w0(r[n])&&(r[n]=jb(r[n]));return Qb(...r)}var Qb=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},td=t=>t?.[Symbol.asyncIterator]!=null,rd=t=>t?.[Symbol.iterator]!=null,w0=t=>t==null?!1:t.sink!=null&&t.source!=null,jb=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Ar({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(td(o))i=async function*(){yield*o,n.end()};else if(rd(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Jh(n,i())}return t.source};function ir(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function pe(t=0){return globalThis.Buffer?.alloc!=null?ir(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function sn(t=0){return globalThis.Buffer?.allocUnsafe!=null?ir(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var Xn=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var or=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4));function nd(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var id=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Jb=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Jb)throw new Error("Non little-endian hardware is not supported");function fs(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function us(t){if(typeof t=="string")t=fs(t);else if(nd(t))t=t.slice();else throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var ew=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function od(t,e){if(e!==void 0&&(typeof e!="object"||!ew(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function an(t,e){if(!nd(t))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function sd(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}var v0=(t,e)=>(Object.assign(e,t),e);function E0(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)}function ls(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`wrong positive integer: ${t}`)}function S0(t){if(typeof t!="boolean")throw new Error(`boolean expected, not ${t}`)}function tw(t){return t!=null&&typeof t=="object"&&(t instanceof Uint8Array||t.constructor.name==="Uint8Array")}function Zn(t,...e){if(!tw(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${t.length}`)}function A0(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 ad(t,e){Zn(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var We=(t,e)=>t[e++]&255|(t[e++]&255)<<8,C0=class{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=us(e),an(e,32);let r=We(e,0),n=We(e,2),i=We(e,4),o=We(e,6),s=We(e,8),a=We(e,10),c=We(e,12),f=We(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|f<<8)&8191,this.r[9]=f>>>5&127;for(let u=0;u<8;u++)this.pad[u]=We(e,16+2*u)}process(e,r,n=!1){let i=n?0:2048,{h:o,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],d=s[5],y=s[6],h=s[7],p=s[8],m=s[9],g=We(e,r+0),b=We(e,r+2),x=We(e,r+4),S=We(e,r+6),w=We(e,r+8),E=We(e,r+10),D=We(e,r+12),B=We(e,r+14),U=o[0]+(g&8191),M=o[1]+((g>>>13|b<<3)&8191),O=o[2]+((b>>>10|x<<6)&8191),F=o[3]+((x>>>7|S<<9)&8191),G=o[4]+((S>>>4|w<<12)&8191),Q=o[5]+(w>>>1&8191),T=o[6]+((w>>>14|E<<2)&8191),R=o[7]+((E>>>11|D<<5)&8191),_=o[8]+((D>>>8|B<<8)&8191),k=o[9]+(B>>>5|i),A=0,P=A+U*a+M*(5*m)+O*(5*p)+F*(5*h)+G*(5*y);A=P>>>13,P&=8191,P+=Q*(5*d)+T*(5*l)+R*(5*u)+_*(5*f)+k*(5*c),A+=P>>>13,P&=8191;let K=A+U*c+M*a+O*(5*m)+F*(5*p)+G*(5*h);A=K>>>13,K&=8191,K+=Q*(5*y)+T*(5*d)+R*(5*l)+_*(5*u)+k*(5*f),A+=K>>>13,K&=8191;let q=A+U*f+M*c+O*a+F*(5*m)+G*(5*p);A=q>>>13,q&=8191,q+=Q*(5*h)+T*(5*y)+R*(5*d)+_*(5*l)+k*(5*u),A+=q>>>13,q&=8191;let Z=A+U*u+M*f+O*c+F*a+G*(5*m);A=Z>>>13,Z&=8191,Z+=Q*(5*p)+T*(5*h)+R*(5*y)+_*(5*d)+k*(5*l),A+=Z>>>13,Z&=8191;let j=A+U*l+M*u+O*f+F*c+G*a;A=j>>>13,j&=8191,j+=Q*(5*m)+T*(5*p)+R*(5*h)+_*(5*y)+k*(5*d),A+=j>>>13,j&=8191;let oe=A+U*d+M*l+O*u+F*f+G*c;A=oe>>>13,oe&=8191,oe+=Q*a+T*(5*m)+R*(5*p)+_*(5*h)+k*(5*y),A+=oe>>>13,oe&=8191;let ee=A+U*y+M*d+O*l+F*u+G*f;A=ee>>>13,ee&=8191,ee+=Q*c+T*a+R*(5*m)+_*(5*p)+k*(5*h),A+=ee>>>13,ee&=8191;let re=A+U*h+M*y+O*d+F*l+G*u;A=re>>>13,re&=8191,re+=Q*f+T*c+R*a+_*(5*m)+k*(5*p),A+=re>>>13,re&=8191;let xe=A+U*p+M*h+O*y+F*d+G*l;A=xe>>>13,xe&=8191,xe+=Q*u+T*f+R*c+_*a+k*(5*m),A+=xe>>>13,xe&=8191;let ye=A+U*m+M*p+O*h+F*y+G*d;A=ye>>>13,ye&=8191,ye+=Q*l+T*u+R*f+_*c+k*a,A+=ye>>>13,ye&=8191,A=(A<<2)+A|0,A=A+P|0,P=A&8191,A=A>>>13,K+=A,o[0]=P,o[1]=K,o[2]=q,o[3]=Z,o[4]=j,o[5]=oe,o[6]=ee,o[7]=re,o[8]=xe,o[9]=ye}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=i,i=e[a]>>>13,e[a]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,n[0]=e[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)e[a]=e[a]&o|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+r[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+r[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){A0(this);let{buffer:r,blockLen:n}=this;e=us(e);let i=e.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(e,o);continue}r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){A0(this),ad(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)e[o++]=n[s]>>>0,e[o++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}};function rw(t){let e=(n,i)=>t(i).update(us(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var cd=rw(t=>new C0(t));var nw=fs("expand 16-byte k"),iw=fs("expand 32-byte k"),ow=or(nw),sw=or(iw);function W(t,e){return t<<e|t>>>32-e}function D0(t){return t.byteOffset%4===0}var hs=64,aw=16,ud=2**32-1,fd=new Uint32Array;function cw(t,e,r,n,i,o,s,a){let c=i.length,f=new Uint8Array(hs),u=or(f),l=D0(i)&&D0(o),d=l?or(i):fd,y=l?or(o):fd;for(let h=0;h<c;s++){if(t(e,r,n,u,s,a),s>=ud)throw new Error("arx: counter overflow");let p=Math.min(hs,c-h);if(l&&p===hs){let m=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let g=0,b;g<aw;g++)b=m+g,y[b]=d[b]^u[g];h+=hs;continue}for(let m=0,g;m<p;m++)g=h+m,o[g]=i[g]^f[m];h+=p}}function B0(t,e){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=od({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return ls(i),ls(s),S0(o),S0(r),(a,c,f,u,l=0)=>{Zn(a),Zn(c),Zn(f);let d=f.length;if(u||(u=new Uint8Array(d)),Zn(u),ls(l),l<0||l>=ud)throw new Error("arx: counter overflow");if(u.length<d)throw new Error(`arx: output (${u.length}) is shorter than data (${d})`);let y=[],h=a.length,p,m;if(h===32)p=a.slice(),y.push(p),m=sw;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),m=ow,y.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);D0(c)||(c=c.slice(),y.push(c));let g=or(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(m,g,or(c.subarray(0,16)),g),c=c.subarray(16)}let b=16-i;if(b!==c.length)throw new Error(`arx: nonce must be ${b} or 16 bytes`);if(b!==12){let S=new Uint8Array(12);S.set(c,o?0:12-c.length),c=S,y.push(c)}let x=or(c);for(cw(t,m,g,x,f,u,l,s);y.length>0;)y.pop().fill(0);return u}}function dd(t,e,r,n,i,o=20){let s=t[0],a=t[1],c=t[2],f=t[3],u=e[0],l=e[1],d=e[2],y=e[3],h=e[4],p=e[5],m=e[6],g=e[7],b=i,x=r[0],S=r[1],w=r[2],E=s,D=a,B=c,U=f,M=u,O=l,F=d,G=y,Q=h,T=p,R=m,_=g,k=b,A=x,P=S,K=w;for(let Z=0;Z<o;Z+=2)E=E+M|0,k=W(k^E,16),Q=Q+k|0,M=W(M^Q,12),E=E+M|0,k=W(k^E,8),Q=Q+k|0,M=W(M^Q,7),D=D+O|0,A=W(A^D,16),T=T+A|0,O=W(O^T,12),D=D+O|0,A=W(A^D,8),T=T+A|0,O=W(O^T,7),B=B+F|0,P=W(P^B,16),R=R+P|0,F=W(F^R,12),B=B+F|0,P=W(P^B,8),R=R+P|0,F=W(F^R,7),U=U+G|0,K=W(K^U,16),_=_+K|0,G=W(G^_,12),U=U+G|0,K=W(K^U,8),_=_+K|0,G=W(G^_,7),E=E+O|0,K=W(K^E,16),R=R+K|0,O=W(O^R,12),E=E+O|0,K=W(K^E,8),R=R+K|0,O=W(O^R,7),D=D+F|0,k=W(k^D,16),_=_+k|0,F=W(F^_,12),D=D+F|0,k=W(k^D,8),_=_+k|0,F=W(F^_,7),B=B+G|0,A=W(A^B,16),Q=Q+A|0,G=W(G^Q,12),B=B+G|0,A=W(A^B,8),Q=Q+A|0,G=W(G^Q,7),U=U+M|0,P=W(P^U,16),T=T+P|0,M=W(M^T,12),U=U+M|0,P=W(P^U,8),T=T+P|0,M=W(M^T,7);let q=0;n[q++]=s+E|0,n[q++]=a+D|0,n[q++]=c+B|0,n[q++]=f+U|0,n[q++]=u+M|0,n[q++]=l+O|0,n[q++]=d+F|0,n[q++]=y+G|0,n[q++]=h+Q|0,n[q++]=p+T|0,n[q++]=m+R|0,n[q++]=g+_|0,n[q++]=b+k|0,n[q++]=x+A|0,n[q++]=S+P|0,n[q++]=w+K|0}function fw(t,e,r,n){let i=t[0],o=t[1],s=t[2],a=t[3],c=e[0],f=e[1],u=e[2],l=e[3],d=e[4],y=e[5],h=e[6],p=e[7],m=r[0],g=r[1],b=r[2],x=r[3];for(let w=0;w<20;w+=2)i=i+c|0,m=W(m^i,16),d=d+m|0,c=W(c^d,12),i=i+c|0,m=W(m^i,8),d=d+m|0,c=W(c^d,7),o=o+f|0,g=W(g^o,16),y=y+g|0,f=W(f^y,12),o=o+f|0,g=W(g^o,8),y=y+g|0,f=W(f^y,7),s=s+u|0,b=W(b^s,16),h=h+b|0,u=W(u^h,12),s=s+u|0,b=W(b^s,8),h=h+b|0,u=W(u^h,7),a=a+l|0,x=W(x^a,16),p=p+x|0,l=W(l^p,12),a=a+l|0,x=W(x^a,8),p=p+x|0,l=W(l^p,7),i=i+f|0,x=W(x^i,16),h=h+x|0,f=W(f^h,12),i=i+f|0,x=W(x^i,8),h=h+x|0,f=W(f^h,7),o=o+u|0,m=W(m^o,16),p=p+m|0,u=W(u^p,12),o=o+u|0,m=W(m^o,8),p=p+m|0,u=W(u^p,7),s=s+l|0,g=W(g^s,16),d=d+g|0,l=W(l^d,12),s=s+l|0,g=W(g^s,8),d=d+g|0,l=W(l^d,7),a=a+c|0,b=W(b^a,16),y=y+b|0,c=W(c^y,12),a=a+c|0,b=W(b^a,8),y=y+b|0,c=W(c^y,7);let S=0;n[S++]=i,n[S++]=o,n[S++]=s,n[S++]=a,n[S++]=m,n[S++]=g,n[S++]=b,n[S++]=x}var uw=B0(dd,{counterRight:!1,counterLength:4,allowShortKeys:!1}),lw=B0(dd,{counterRight:!1,counterLength:8,extendNonceFn:fw,allowShortKeys:!1});var hw=new Uint8Array(16),ld=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(hw.subarray(r))},dw=new Uint8Array(32);function hd(t,e,r,n,i){let o=t(e,r,dw),s=cd.create(o);i&&ld(s,i),ld(s,n);let a=new Uint8Array(16),c=id(a);E0(c,0,BigInt(i?i.length:0),!0),E0(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return o.fill(0),f}var pd=t=>(e,r,n)=>(an(e,32),an(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?an(s,c):s=new Uint8Array(c),t(e,r,o,s,1);let f=hd(t,e,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(o,s)=>{let a=o.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?an(s,c):s=new Uint8Array(c);let f=o.subarray(0,-16),u=o.subarray(-16),l=hd(t,e,r,f,n);if(!sd(u,l))throw new Error("invalid tag");return t(e,r,f,s,1),s}}),T0=v0({blockSize:64,nonceLength:12,tagLength:16},pd(uw)),e_=v0({blockSize:64,nonceLength:24,tagLength:16},pd(lw));function ds(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function pw(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function I0(t,...e){if(!pw(t))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Vi(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");ds(t.outputLen),ds(t.blockLen)}function Qn(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 md(t,e){I0(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var ps=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function yd(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var ms=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Dt=(t,e)=>t<<32-e|t>>>e,mw=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!mw)throw new Error("Non little-endian hardware is not supported");function _0(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function _r(t){if(typeof t=="string"&&(t=_0(t)),!yd(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function ys(...t){let e=0;for(let n=0;n<t.length;n++){let i=t[n];if(!yd(i))throw new Error("Uint8Array expected");e+=i.length}let r=new Uint8Array(e);for(let n=0,i=0;n<t.length;n++){let o=t[n];r.set(o,i),i+=o.length}return r}var jn=class{clone(){return this._cloneInto()}},o_={}.toString;function gs(t){let e=n=>t().update(_r(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function cn(t=32){if(ps&&typeof ps.getRandomValues=="function")return ps.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function yw(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 Jn=class extends jn{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=ms(this.buffer)}update(e){Qn(this);let{view:r,buffer:n,blockLen:i}=this;e=_r(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=ms(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){Qn(this),md(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;yw(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=ms(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 xs=BigInt(4294967295),k0=BigInt(32);function gd(t,e=!1){return e?{h:Number(t&xs),l:Number(t>>k0&xs)}:{h:Number(t>>k0&xs)|0,l:Number(t&xs)|0}}function gw(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}=gd(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var xw=(t,e)=>BigInt(t>>>0)<<k0|BigInt(e>>>0),bw=(t,e,r)=>t>>>r,ww=(t,e,r)=>t<<32-r|e>>>r,vw=(t,e,r)=>t>>>r|e<<32-r,Ew=(t,e,r)=>t<<32-r|e>>>r,Sw=(t,e,r)=>t<<64-r|e>>>r-32,Aw=(t,e,r)=>t>>>r-32|e<<64-r,Cw=(t,e)=>e,Dw=(t,e)=>t,Bw=(t,e,r)=>t<<r|e>>>32-r,Tw=(t,e,r)=>e<<r|t>>>32-r,Iw=(t,e,r)=>e<<r-32|t>>>64-r,_w=(t,e,r)=>t<<r-32|e>>>64-r;function kw(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Rw=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Lw=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Nw=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),Uw=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,Pw=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Ow=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var Mw={fromBig:gd,split:gw,toBig:xw,shrSH:bw,shrSL:ww,rotrSH:vw,rotrSL:Ew,rotrBH:Sw,rotrBL:Aw,rotr32H:Cw,rotr32L:Dw,rotlSH:Bw,rotlSL:Tw,rotlBH:Iw,rotlBL:_w,add:kw,add3L:Rw,add3H:Lw,add4L:Nw,add4H:Uw,add5H:Ow,add5L:Pw},ne=Mw;var[Kw,Fw]=ne.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))),kr=new Uint32Array(80),Rr=new Uint32Array(80),R0=class extends Jn{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:d,Gh:y,Gl:h,Hh:p,Hl:m}=this;return[e,r,n,i,o,s,a,c,f,u,l,d,y,h,p,m]}set(e,r,n,i,o,s,a,c,f,u,l,d,y,h,p,m){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=d|0,this.Gh=y|0,this.Gl=h|0,this.Hh=p|0,this.Hl=m|0}process(e,r){for(let x=0;x<16;x++,r+=4)kr[x]=e.getUint32(r),Rr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let S=kr[x-15]|0,w=Rr[x-15]|0,E=ne.rotrSH(S,w,1)^ne.rotrSH(S,w,8)^ne.shrSH(S,w,7),D=ne.rotrSL(S,w,1)^ne.rotrSL(S,w,8)^ne.shrSL(S,w,7),B=kr[x-2]|0,U=Rr[x-2]|0,M=ne.rotrSH(B,U,19)^ne.rotrBH(B,U,61)^ne.shrSH(B,U,6),O=ne.rotrSL(B,U,19)^ne.rotrBL(B,U,61)^ne.shrSL(B,U,6),F=ne.add4L(D,O,Rr[x-7],Rr[x-16]),G=ne.add4H(F,E,M,kr[x-7],kr[x-16]);kr[x]=G|0,Rr[x]=F|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:d,Fh:y,Fl:h,Gh:p,Gl:m,Hh:g,Hl:b}=this;for(let x=0;x<80;x++){let S=ne.rotrSH(l,d,14)^ne.rotrSH(l,d,18)^ne.rotrBH(l,d,41),w=ne.rotrSL(l,d,14)^ne.rotrSL(l,d,18)^ne.rotrBL(l,d,41),E=l&y^~l&p,D=d&h^~d&m,B=ne.add5L(b,w,D,Fw[x],Rr[x]),U=ne.add5H(B,g,S,E,Kw[x],kr[x]),M=B|0,O=ne.rotrSH(n,i,28)^ne.rotrBH(n,i,34)^ne.rotrBH(n,i,39),F=ne.rotrSL(n,i,28)^ne.rotrBL(n,i,34)^ne.rotrBL(n,i,39),G=n&o^n&a^o&a,Q=i&s^i&c^s&c;g=p|0,b=m|0,p=y|0,m=h|0,y=l|0,h=d|0,{h:l,l:d}=ne.add(f|0,u|0,U|0,M|0),f=a|0,u=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let T=ne.add3L(M,F,Q);n=ne.add3H(T,U,O,G),i=T|0}({h:n,l:i}=ne.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=ne.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=ne.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:f,l:u}=ne.add(this.Dh|0,this.Dl|0,f|0,u|0),{h:l,l:d}=ne.add(this.Eh|0,this.El|0,l|0,d|0),{h:y,l:h}=ne.add(this.Fh|0,this.Fl|0,y|0,h|0),{h:p,l:m}=ne.add(this.Gh|0,this.Gl|0,p|0,m|0),{h:g,l:b}=ne.add(this.Hh|0,this.Hl|0,g|0,b|0),this.set(n,i,o,s,a,c,f,u,l,d,y,h,p,m,g,b)}roundClean(){kr.fill(0),Rr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var L0=gs(()=>new R0);var ws={};J(ws,{bitGet:()=>Ww,bitLen:()=>$w,bitMask:()=>qi,bitSet:()=>Yw,bytesToHex:()=>ar,bytesToNumberBE:()=>cr,bytesToNumberLE:()=>Tt,concatBytes:()=>ur,createHmacDrbg:()=>P0,ensureBytes:()=>we,equalBytes:()=>zw,hexToBytes:()=>fn,hexToNumber:()=>U0,isBytes:()=>Bt,numberToBytesBE:()=>Lr,numberToBytesLE:()=>fr,numberToHexUnpadded:()=>vd,numberToVarBytesBE:()=>Hw,utf8ToBytes:()=>Gw,validateObject:()=>mt});var wd=BigInt(0),bs=BigInt(1),Vw=BigInt(2);function Bt(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var qw=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function ar(t){if(!Bt(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=qw[t[r]];return e}function vd(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function U0(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}var sr={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function xd(t){if(t>=sr._0&&t<=sr._9)return t-sr._0;if(t>=sr._A&&t<=sr._F)return t-(sr._A-10);if(t>=sr._a&&t<=sr._f)return t-(sr._a-10)}function fn(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length,r=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=xd(t.charCodeAt(o)),a=xd(t.charCodeAt(o+1));if(s===void 0||a===void 0){let c=t[o]+t[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}n[i]=s*16+a}return n}function cr(t){return U0(ar(t))}function Tt(t){if(!Bt(t))throw new Error("Uint8Array expected");return U0(ar(Uint8Array.from(t).reverse()))}function Lr(t,e){return fn(t.toString(16).padStart(e*2,"0"))}function fr(t,e){return Lr(t,e).reverse()}function Hw(t){return fn(vd(t))}function we(t,e,r){let n;if(typeof e=="string")try{n=fn(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Bt(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 ur(...t){let e=0;for(let i=0;i<t.length;i++){let o=t[i];if(!Bt(o))throw new Error("Uint8Array expected");e+=o.length}let r=new Uint8Array(e),n=0;for(let i=0;i<t.length;i++){let o=t[i];r.set(o,n),n+=o.length}return r}function zw(t,e){if(t.length!==e.length)return!1;let r=0;for(let n=0;n<t.length;n++)r|=t[n]^e[n];return r===0}function Gw(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function $w(t){let e;for(e=0;t>wd;t>>=bs,e+=1);return e}function Ww(t,e){return t>>BigInt(e)&bs}var Yw=(t,e,r)=>t|(r?bs:wd)<<BigInt(e),qi=t=>(Vw<<BigInt(t-1))-bs,N0=t=>new Uint8Array(t),bd=t=>Uint8Array.from(t);function P0(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=N0(t),i=N0(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=N0())=>{i=a(bd([0]),l),n=a(),l.length!==0&&(i=a(bd([1]),l),n=a())},f=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,d=[];for(;l<e;){n=a();let y=n.slice();d.push(y),l+=n.length}return ur(...d)};return(l,d)=>{s(),c(l);let y;for(;!(y=d(f()));)c();return s(),y}}var Xw={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"||Bt(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function mt(t,e,r={}){let n=(i,o,s)=>{let a=Xw[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 Fe=BigInt(0),Ce=BigInt(1),un=BigInt(2),Zw=BigInt(3),O0=BigInt(4),Ed=BigInt(5),Sd=BigInt(8),Qw=BigInt(9),jw=BigInt(16);function ue(t,e){let r=t%e;return r>=Fe?r:e+r}function M0(t,e,r){if(r<=Fe||e<Fe)throw new Error("Expected power/modulo > 0");if(r===Ce)return Fe;let n=Ce;for(;e>Fe;)e&Ce&&(n=n*t%r),t=t*t%r,e>>=Ce;return n}function ve(t,e,r){let n=t;for(;e-- >Fe;)n*=n,n%=r;return n}function vs(t,e){if(t===Fe||e<=Fe)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ue(t,e),n=e,i=Fe,o=Ce,s=Ce,a=Fe;for(;r!==Fe;){let f=n/r,u=n%r,l=i-s*f,d=o-a*f;n=r,r=u,i=s,o=a,s=l,a=d}if(n!==Ce)throw new Error("invert: does not exist");return ue(i,e)}function Jw(t){let e=(t-Ce)/un,r,n,i;for(r=t-Ce,n=0;r%un===Fe;r/=un,n++);for(i=un;i<t&&M0(i,e,t)!==t-Ce;i++);if(n===1){let s=(t+Ce)/O0;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+Ce)/un;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),d=a.pow(c,r);for(;!a.eql(d,a.ONE);){if(a.eql(d,a.ZERO))return a.ZERO;let y=1;for(let p=a.sqr(d);y<f&&!a.eql(p,a.ONE);y++)p=a.sqr(p);let h=a.pow(u,Ce<<BigInt(f-y-1));u=a.sqr(h),l=a.mul(l,h),d=a.mul(d,u),f=y}return l}}function ev(t){if(t%O0===Zw){let e=(t+Ce)/O0;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%Sd===Ed){let e=(t-Ed)/Sd;return function(n,i){let o=n.mul(i,un),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,un),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%jw,Jw(t)}var Ad=(t,e)=>(ue(t,e)&Ce)===Ce,tv=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function K0(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=tv.reduce((n,i)=>(n[i]="function",n),e);return mt(t,r)}function rv(t,e,r){if(r<Fe)throw new Error("Expected power > 0");if(r===Fe)return t.ONE;if(r===Ce)return e;let n=t.ONE,i=e;for(;r>Fe;)r&Ce&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Ce;return n}function nv(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 F0(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Es(t,e,r=!1,n={}){if(t<=Fe)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=F0(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=ev(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:qi(i),ZERO:Fe,ONE:Ce,create:c=>ue(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Fe<=c&&c<t},is0:c=>c===Fe,isOdd:c=>(c&Ce)===Ce,neg:c=>ue(-c,t),eql:(c,f)=>c===f,sqr:c=>ue(c*c,t),add:(c,f)=>ue(c+f,t),sub:(c,f)=>ue(c-f,t),mul:(c,f)=>ue(c*f,t),pow:(c,f)=>rv(a,c,f),div:(c,f)=>ue(c*vs(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>vs(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>nv(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?fr(c,o):Lr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?Tt(c):cr(c)}});return Object.freeze(a)}function Cd(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 Dd(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 V0(t){let e=Dd(t);return e+Math.ceil(e/2)}function Bd(t,e,r=!1){let n=t.length,i=Dd(e),o=V0(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?cr(t):Tt(t),a=ue(s,e-Ce)+Ce;return r?fr(a,i):Lr(a,i)}var ov=BigInt(0),q0=BigInt(1);function Ss(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>ov;)o&q0&&(s=s.add(a)),a=a.double(),o>>=q0;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],f=i,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let d=1;d<a;d++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),f=t.ZERO,u=t.BASE,l=BigInt(2**i-1),d=2**i,y=BigInt(i);for(let h=0;h<a;h++){let p=h*c,m=Number(s&l);s>>=y,m>c&&(m-=d,s+=q0);let g=p,b=p+Math.abs(m)-1,x=h%2!==0,S=m<0;m===0?u=u.add(r(x,o[g])):f=f.add(r(S,o[b]))}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 Hi(t){return K0(t.Fp),mt(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...F0(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var It=BigInt(0),ut=BigInt(1),As=BigInt(2),sv=BigInt(8),av={zip215:!0};function cv(t){let e=Hi(t);return mt(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Cs(t){let e=cv(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,f=As<<BigInt(a*8)-ut,u=r.create,l=e.uvRatio||((k,A)=>{try{return{isValid:!0,value:r.sqrt(k*r.inv(A))}}catch{return{isValid:!1,value:It}}}),d=e.adjustScalarBytes||(k=>k),y=e.domain||((k,A,P)=>{if(A.length||P)throw new Error("Contexts/pre-hash are not supported");return k}),h=k=>typeof k=="bigint"&&It<k,p=(k,A)=>h(k)&&h(A)&&k<A,m=k=>k===It||p(k,f);function g(k,A){if(p(k,A))return k;throw new Error(`Expected valid scalar < ${A}, got ${typeof k} ${k}`)}function b(k){return k===It?k:g(k,n)}let x=new Map;function S(k){if(!(k instanceof w))throw new Error("ExtendedPoint expected")}class w{constructor(A,P,K,q){if(this.ex=A,this.ey=P,this.ez=K,this.et=q,!m(A))throw new Error("x required");if(!m(P))throw new Error("y required");if(!m(K))throw new Error("z required");if(!m(q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(A){if(A instanceof w)throw new Error("extended point not allowed");let{x:P,y:K}=A||{};if(!m(P)||!m(K))throw new Error("invalid affine point");return new w(P,K,ut,u(P*K))}static normalizeZ(A){let P=r.invertBatch(A.map(K=>K.ez));return A.map((K,q)=>K.toAffine(P[q])).map(w.fromAffine)}_setWindowSize(A){this._WINDOW_SIZE=A,x.delete(this)}assertValidity(){let{a:A,d:P}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:q,ez:Z,et:j}=this,oe=u(K*K),ee=u(q*q),re=u(Z*Z),xe=u(re*re),ye=u(oe*A),ze=u(re*u(ye+ee)),Ge=u(xe+u(P*u(oe*ee)));if(ze!==Ge)throw new Error("bad point: equation left != right (1)");let Pe=u(K*q),Xe=u(Z*j);if(Pe!==Xe)throw new Error("bad point: equation left != right (2)")}equals(A){S(A);let{ex:P,ey:K,ez:q}=this,{ex:Z,ey:j,ez:oe}=A,ee=u(P*oe),re=u(Z*q),xe=u(K*oe),ye=u(j*q);return ee===re&&xe===ye}is0(){return this.equals(w.ZERO)}negate(){return new w(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:A}=e,{ex:P,ey:K,ez:q}=this,Z=u(P*P),j=u(K*K),oe=u(As*u(q*q)),ee=u(A*Z),re=P+K,xe=u(u(re*re)-Z-j),ye=ee+j,ze=ye-oe,Ge=ee-j,Pe=u(xe*ze),Xe=u(ye*Ge),Zt=u(xe*Ge),qr=u(ze*ye);return new w(Pe,Xe,qr,Zt)}add(A){S(A);let{a:P,d:K}=e,{ex:q,ey:Z,ez:j,et:oe}=this,{ex:ee,ey:re,ez:xe,et:ye}=A;if(P===BigInt(-1)){let Eu=u((Z-q)*(re+ee)),Su=u((Z+q)*(re-ee)),xa=u(Su-Eu);if(xa===It)return this.double();let Au=u(j*As*ye),Cu=u(oe*As*xe),Du=Cu+Au,Bu=Su+Eu,Tu=Cu-Au,G1=u(Du*xa),$1=u(Bu*Tu),W1=u(Du*Tu),Y1=u(xa*Bu);return new w(G1,$1,Y1,W1)}let ze=u(q*ee),Ge=u(Z*re),Pe=u(oe*K*ye),Xe=u(j*xe),Zt=u((q+Z)*(ee+re)-ze-Ge),qr=Xe-Pe,vi=Xe+Pe,vu=u(Ge-P*ze),V1=u(Zt*qr),q1=u(vi*vu),H1=u(Zt*vu),z1=u(qr*vi);return new w(V1,q1,z1,H1)}subtract(A){return this.add(A.negate())}wNAF(A){return B.wNAFCached(this,x,A,w.normalizeZ)}multiply(A){let{p:P,f:K}=this.wNAF(g(A,n));return w.normalizeZ([P,K])[0]}multiplyUnsafe(A){let P=b(A);return P===It?D:this.equals(D)||P===ut?this:this.equals(E)?this.wNAF(P).p:B.unsafeLadder(this,P)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return B.unsafeLadder(this,n).is0()}toAffine(A){let{ex:P,ey:K,ez:q}=this,Z=this.is0();A==null&&(A=Z?sv:r.inv(q));let j=u(P*A),oe=u(K*A),ee=u(q*A);if(Z)return{x:It,y:ut};if(ee!==ut)throw new Error("invZ was invalid");return{x:j,y:oe}}clearCofactor(){let{h:A}=e;return A===ut?this:this.multiplyUnsafe(A)}static fromHex(A,P=!1){let{d:K,a:q}=e,Z=r.BYTES;A=we("pointHex",A,Z);let j=A.slice(),oe=A[Z-1];j[Z-1]=oe&-129;let ee=Tt(j);ee===It||(P?g(ee,f):g(ee,r.ORDER));let re=u(ee*ee),xe=u(re-ut),ye=u(K*re-q),{isValid:ze,value:Ge}=l(xe,ye);if(!ze)throw new Error("Point.fromHex: invalid y coordinate");let Pe=(Ge&ut)===ut,Xe=(oe&128)!==0;if(!P&&Ge===It&&Xe)throw new Error("Point.fromHex: x=0 and x_0=1");return Xe!==Pe&&(Ge=u(-Ge)),w.fromAffine({x:Ge,y:ee})}static fromPrivateKey(A){return O(A).point}toRawBytes(){let{x:A,y:P}=this.toAffine(),K=fr(P,r.BYTES);return K[K.length-1]|=A&ut?128:0,K}toHex(){return ar(this.toRawBytes())}}w.BASE=new w(e.Gx,e.Gy,ut,u(e.Gx*e.Gy)),w.ZERO=new w(It,ut,ut,It);let{BASE:E,ZERO:D}=w,B=Ss(w,a*8);function U(k){return ue(k,n)}function M(k){return U(Tt(k))}function O(k){let A=a;k=we("private key",k,A);let P=we("hashed private key",o(k),2*A),K=d(P.slice(0,A)),q=P.slice(A,2*A),Z=M(K),j=E.multiply(Z),oe=j.toRawBytes();return{head:K,prefix:q,scalar:Z,point:j,pointBytes:oe}}function F(k){return O(k).pointBytes}function G(k=new Uint8Array,...A){let P=ur(...A);return M(o(y(P,we("context",k),!!i)))}function Q(k,A,P={}){k=we("message",k),i&&(k=i(k));let{prefix:K,scalar:q,pointBytes:Z}=O(A),j=G(P.context,K,k),oe=E.multiply(j).toRawBytes(),ee=G(P.context,oe,Z,k),re=U(j+ee*q);b(re);let xe=ur(oe,fr(re,r.BYTES));return we("result",xe,a*2)}let T=av;function R(k,A,P,K=T){let{context:q,zip215:Z}=K,j=r.BYTES;k=we("signature",k,2*j),A=we("message",A),i&&(A=i(A));let oe=Tt(k.slice(j,2*j)),ee,re,xe;try{ee=w.fromHex(P,Z),re=w.fromHex(k.slice(0,j),Z),xe=E.multiplyUnsafe(oe)}catch{return!1}if(!Z&&ee.isSmallOrder())return!1;let ye=G(q,re.toRawBytes(),ee.toRawBytes(),A);return re.add(ee.multiplyUnsafe(ye)).subtract(xe).clearCofactor().equals(w.ZERO)}return E._setWindowSize(8),{CURVE:e,getPublicKey:F,sign:Q,verify:R,ExtendedPoint:w,utils:{getExtendedPublicKey:O,randomPrivateKey:()=>s(r.BYTES),precompute(k=8,A=w.BASE){return A._setWindowSize(k),A.multiply(BigInt(3)),A}}}}var zi=BigInt(0),H0=BigInt(1);function fv(t){return mt(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function Td(t){let e=fv(t),{P:r}=e,n=x=>ue(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>M0(x,r-BigInt(2),r));function f(x,S,w){let E=n(x*(S-w));return S=n(S-E),w=n(w+E),[S,w]}function u(x){if(typeof x=="bigint"&&zi<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function d(x,S){let w=u(x),E=u(S),D=w,B=H0,U=zi,M=w,O=H0,F=zi,G;for(let T=BigInt(i-1);T>=zi;T--){let R=E>>T&H0;F^=R,G=f(F,B,M),B=G[0],M=G[1],G=f(F,U,O),U=G[0],O=G[1],F=R;let _=B+U,k=n(_*_),A=B-U,P=n(A*A),K=k-P,q=M+O,Z=M-O,j=n(Z*_),oe=n(q*A),ee=j+oe,re=j-oe;M=n(ee*ee),O=n(D*n(re*re)),B=n(k*P),U=n(K*(k+n(l*K)))}G=f(F,B,M),B=G[0],M=G[1],G=f(F,U,O),U=G[0],O=G[1];let Q=c(U);return n(B*Q)}function y(x){return fr(n(x),o)}function h(x){let S=we("u coordinate",x,o);return s===32&&(S[31]&=127),Tt(S)}function p(x){let S=we("scalar",x),w=S.length;if(w!==o&&w!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${w}`);return Tt(a(S))}function m(x,S){let w=h(S),E=p(x),D=d(w,E);if(D===zi)throw new Error("Invalid private or public key received");return y(D)}let g=y(e.Gu);function b(x){return m(x,g)}return{scalarMult:m,scalarMultBase:b,getSharedSecret:(x,S)=>m(x,S),getPublicKey:x=>b(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:g}}var Gi=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Id=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),k_=BigInt(0),uv=BigInt(1),z0=BigInt(2),lv=BigInt(5),_d=BigInt(10),hv=BigInt(20),dv=BigInt(40),kd=BigInt(80);function Rd(t){let e=Gi,n=t*t%e*t%e,i=ve(n,z0,e)*n%e,o=ve(i,uv,e)*t%e,s=ve(o,lv,e)*o%e,a=ve(s,_d,e)*s%e,c=ve(a,hv,e)*a%e,f=ve(c,dv,e)*c%e,u=ve(f,kd,e)*f%e,l=ve(u,kd,e)*f%e,d=ve(l,_d,e)*s%e;return{pow_p_5_8:ve(d,z0,e)*t%e,b2:n}}function Ld(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function pv(t,e){let r=Gi,n=ue(e*e*e,r),i=ue(n*n*e,r),o=Rd(t*i).pow_p_5_8,s=ue(t*n*o,r),a=ue(e*s*s,r),c=s,f=ue(s*Id,r),u=a===t,l=a===ue(-t,r),d=a===ue(-t*Id,r);return u&&(s=c),(l||d)&&(s=f),Ad(s,r)&&(s=ue(-s,r)),{isValid:u||l,value:s}}var lr=Es(Gi,void 0,!0),G0={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:lr,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:L0,randomBytes:cn,adjustScalarBytes:Ld,uvRatio:pv},ei=Cs(G0);function Nd(t,e,r){if(e.length>255)throw new Error("Context is too big");return ys(_0("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var R_=Cs({...G0,domain:Nd}),L_=Cs({...G0,domain:Nd,prehash:L0}),$i=Td({P:Gi,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Gi,{pow_p_5_8:r,b2:n}=Rd(t);return ue(ve(r,BigInt(3),e)*n,e)},adjustScalarBytes:Ld,randomBytes:cn});var mv=(lr.ORDER+BigInt(3))/BigInt(8),N_=lr.pow(z0,mv),U_=lr.sqrt(lr.neg(lr.ONE)),P_=(lr.ORDER-BigInt(5))/BigInt(8),O_=BigInt(486662);var M_=Cd(lr,lr.neg(BigInt(486664)));var K_=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),F_=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),V_=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),q_=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var H_=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Ds=class extends jn{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Vi(e);let n=_r(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 Qn(this),this.iHash.update(e),this}digestInto(e){Qn(this),I0(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()}},ti=(t,e,r)=>new Ds(t,e).update(r).digest();ti.create=(t,e)=>new Ds(t,e);function Pd(t,e,r){return Vi(t),r===void 0&&(r=new Uint8Array(t.outputLen)),ti(t,_r(r),_r(e))}var $0=new Uint8Array([0]),Ud=new Uint8Array;function Od(t,e,r,n=32){if(Vi(t),ds(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=Ud);let o=new Uint8Array(i*t.outputLen),s=ti.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<i;f++)$0[0]=f+1,a.update(f===0?Ud:c).update(r).update($0).digestInto(c),o.set(c,t.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),$0.fill(0),o.slice(0,n)}var yv=(t,e,r)=>t&e^~t&r,gv=(t,e,r)=>t&e^t&r^e&r,xv=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Nr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ur=new Uint32Array(64),W0=class extends Jn{constructor(){super(64,32,8,!1),this.A=Nr[0]|0,this.B=Nr[1]|0,this.C=Nr[2]|0,this.D=Nr[3]|0,this.E=Nr[4]|0,this.F=Nr[5]|0,this.G=Nr[6]|0,this.H=Nr[7]|0}get(){let{A:e,B:r,C:n,D:i,E: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)Ur[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let d=Ur[l-15],y=Ur[l-2],h=Dt(d,7)^Dt(d,18)^d>>>3,p=Dt(y,17)^Dt(y,19)^y>>>10;Ur[l]=p+Ur[l-7]+h+Ur[l-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let d=Dt(a,6)^Dt(a,11)^Dt(a,25),y=u+d+yv(a,c,f)+xv[l]+Ur[l]|0,p=(Dt(n,2)^Dt(n,13)^Dt(n,22))+gv(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(){Ur.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var ri=gs(()=>new W0);var Y0={hashSHA256(t){return ri(t.subarray())},getHKDF(t,e){let r=Pd(ri,e,t),i=Od(ri,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let t=$i.utils.randomPrivateKey();return{publicKey:$i.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:$i.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return $i.getSharedSecret(t.subarray(),e.subarray())},chaCha20Poly1305Encrypt(t,e,r,n){return T0(n,e,r).encrypt(t.subarray())},chaCha20Poly1305Decrypt(t,e,r,n,i){return T0(n,e,r).decrypt(t.subarray(),i)}};var Md=Y0;var ni=t=>{let e=sn(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};ni.bytes=2;var Wi=t=>{if(t.length<2)throw RangeError("Could not decode int16BE");return t instanceof Uint8Array?new DataView(t.buffer,t.byteOffset,t.byteLength).getUint16(0,!1):t.getUint16(0)};Wi.bytes=2;function Kd(t){return new Ae(t.ne,t.ciphertext)}function Fd(t){return new Ae(t.ne,t.ns,t.ciphertext)}function Vd(t){return new Ae(t.ns,t.ciphertext)}function qd(t){if(t.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:t.subarray(0,32),ciphertext:t.subarray(32,t.length),ns:pe(0)}}function Hd(t){if(t.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:t.subarray(0,32),ns:t.subarray(32,80),ciphertext:t.subarray(80,t.length)}}function zd(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:pe(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var $d=16;function Wd(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=t.encrypt(n.subarray(i,o),t.session):s=t.encrypt(n.sublist(i,o),t.session),e?.encryptedPackets.increment(),yield new Ae(ni(s.byteLength),s)}}}function Yd(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-$d<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-$d),{plaintext:c,valid:f}=t.decrypt(s,t.session,a);if(!f)throw e?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");e?.decryptedPackets.increment(),yield c}}}var Xi=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},ln=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var $L=Ze(Ji(),1),WL=Ze(um(),1);var w3=Ze(ge(),1);function gn(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Gs(t=0){return globalThis.Buffer?.allocUnsafe!=null?gn(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function hm(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var lm=hm("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),xf=hm("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=Gs(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),HE={utf8:lm,"utf-8":lm,hex:Me.base16,latin1:xf,ascii:xf,binary:xf,...Me},$s=HE;function lt(t,e="utf8"){let r=$s[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?gn(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var Ef={};J(Ef,{Ed25519PrivateKey:()=>bn,Ed25519PublicKey:()=>ro,generateKeyPair:()=>WE,generateKeyPairFromSeed:()=>vm,unmarshalEd25519PrivateKey:()=>GE,unmarshalEd25519PublicKey:()=>$E});function Gt(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 rR=Ze(Ue(),1),nR=Ze(Vs(),1),dm=Ze(ge(),1);function xn(t,e){if(globalThis.Buffer!=null)return gn(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=Gs(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return gn(r)}function ht(t,e="utf8"){let r=$s[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 Rt(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=xn([new Uint8Array(e-r.length),r])}return ht(r,"base64url")}function dt(t){let e=pm(t);return new dm.default.jsbn.BigInteger(ht(e,"base16"),16)}function pm(t,e){let r=lt(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=xn([new Uint8Array(e-r.length),r])}return r}function xt(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}var ci=32,mr=64,Ws=32;function mm(){let t=ei.utils.randomPrivateKey(),e=ei.getPublicKey(t);return{privateKey:bm(t,e),publicKey:e}}function ym(t){if(t.length!==Ws)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=ei.getPublicKey(e);return{privateKey:bm(e,r),publicKey:r}}function gm(t,e){let r=t.subarray(0,Ws);return ei.sign(e instanceof Uint8Array?e:e.subarray(),r)}function xm(t,e,r){return ei.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function bm(t,e){let r=new Uint8Array(mr);for(let n=0;n<Ws;n++)r[n]=t[n],r[Ws+n]=e[n];return r}var ct={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 bf={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function wf(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=ct.get();r*=8;async function c(l,d){let y=a.getRandomValues(new Uint8Array(o)),h=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:h};typeof d=="string"&&(d=lt(d));let m;if(d.length===0){m=await a.subtle.importKey("jwk",bf,{name:"AES-GCM"},!0,["encrypt"]);try{let b={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,x,{name:e,length:r},!0,["encrypt"])}catch{m=await a.subtle.importKey("jwk",bf,{name:"AES-GCM"},!0,["encrypt"])}}else{let b={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,x,{name:e,length:r},!0,["encrypt"])}let g=await a.subtle.encrypt(p,m,l);return xn([y,p.iv,new Uint8Array(g)])}async function f(l,d){let y=l.subarray(0,o),h=l.subarray(o,o+n),p=l.subarray(o+n),m={name:e,iv:h};typeof d=="string"&&(d=lt(d));let g;if(d.length===0)try{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},S=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,S,{name:e,length:r},!0,["decrypt"])}catch{g=await a.subtle.importKey("jwk",bf,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},S=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,S,{name:e,length:r},!0,["decrypt"])}let b=await a.subtle.decrypt(m,g,p);return new Uint8Array(b)}return{encrypt:c,decrypt:f}}async function fi(t,e){let n=await wf().encrypt(t,e);return Ao.encode(n)}var Be;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(Be||(Be={}));var vf;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(vf||(vf={}));(function(t){t.codec=()=>tn(vf)})(Be||(Be={}));var $t;(function(t){let e;t.codec=()=>(e==null&&(e=Ct((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Be.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=Be.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>At(r,t.codec()),t.decode=r=>St(r,t.codec())})($t||($t={}));var Wt;(function(t){let e;t.codec=()=>(e==null&&(e=Ct((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Be.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=Be.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>At(r,t.codec()),t.decode=r=>St(r,t.codec())})(Wt||(Wt={}));var ro=class{_key;constructor(e){this._key=ui(e,ci)}verify(e,r){return xm(this._key,r,e)}marshal(){return this._key}get bytes(){return $t.encode({Type:Be.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Gt(this.bytes,e.bytes)}hash(){let e=$e.digest(this.bytes);return xt(e)?e.then(({bytes:r})=>r):e.bytes}},bn=class{_key;_publicKey;constructor(e,r){this._key=ui(e,mr),this._publicKey=ui(r,ci)}sign(e){return gm(this._key,e)}get public(){return new ro(this._publicKey)}marshal(){return this._key}get bytes(){return Wt.encode({Type:Be.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Gt(this.bytes,e.bytes)}async hash(){let e=$e.digest(this.bytes),r;return xt(e)?{bytes:r}=await e:r=e.bytes,r}async id(){let e=vr.digest(this.public.bytes);return Oe.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return fi(this.bytes,e);throw new $(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function GE(t){if(t.length>mr){t=ui(t,mr+ci);let n=t.subarray(0,mr),i=t.subarray(mr,t.length);return new bn(n,i)}t=ui(t,mr);let e=t.subarray(0,mr),r=t.subarray(ci);return new bn(e,r)}function $E(t){return t=ui(t,ci),new ro(t)}async function WE(){let{privateKey:t,publicKey:e}=mm();return new bn(t,e)}async function vm(t){let{privateKey:e,publicKey:r}=ym(t);return new bn(e,r)}function ui(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new $(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}var YE={"P-256":256,"P-384":384,"P-521":521},XE=Object.keys(YE),IR=XE.join(" / ");var Bf={};J(Bf,{MAX_KEY_SIZE:()=>so,RsaPrivateKey:()=>li,RsaPublicKey:()=>oo,fromJwk:()=>s3,generateKeyPair:()=>a3,unmarshalRsaPrivateKey:()=>i3,unmarshalRsaPublicKey:()=>o3});var io=Ze(ge(),1);var dL=Ze(Dm(),1);function Xs(t){if(isNaN(t)||t<=0)throw new $("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return cn(t)}var XR=Ze(zs(),1),Cf=Ze(ge(),1);function Bm(t,e){return e.map(r=>dt(t[r]))}function Tm(t){return Cf.default.pki.setRsaPrivateKey(...Bm(t,["n","e","d","p","q","dp","dq","qi"]))}function Im(t){return Cf.default.pki.setRsaPublicKey(...Bm(t,["n","e"]))}var vn={};J(vn,{jwkToPkcs1:()=>JE,jwkToPkix:()=>t3,pkcs1ToJwk:()=>jE,pkixToJwk:()=>e3});var jR=Ze(Ji(),1),JR=Ze(zs(),1);var yr=Ze(ge(),1);function jE(t){let e=yr.default.asn1.fromDer(ht(t,"ascii")),r=yr.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Rt(r.n),e:Rt(r.e),d:Rt(r.d),p:Rt(r.p),q:Rt(r.q),dp:Rt(r.dP),dq:Rt(r.dQ),qi:Rt(r.qInv),alg:"RS256"}}function JE(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 $("JWK was missing components","ERR_INVALID_PARAMETERS");let e=yr.default.pki.privateKeyToAsn1({n:dt(t.n),e:dt(t.e),d:dt(t.d),p:dt(t.p),q:dt(t.q),dP:dt(t.dp),dQ:dt(t.dq),qInv:dt(t.qi)});return lt(yr.default.asn1.toDer(e).getBytes(),"ascii")}function e3(t){let e=yr.default.asn1.fromDer(ht(t,"ascii")),r=yr.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Rt(r.n),e:Rt(r.e)}}function t3(t){if(t.n==null||t.e==null)throw new $("JWK was missing components","ERR_INVALID_PARAMETERS");let e=yr.default.pki.publicKeyToAsn1({n:dt(t.n),e:dt(t.e)});return lt(yr.default.asn1.toDer(e).getBytes(),"ascii")}async function _m(t){let e=await ct.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 Lm(e);return{privateKey:r[0],publicKey:r[1]}}async function Df(t){let r=[await ct.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await r3(t)],n=await Lm({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function km(t,e){let r=await ct.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ct.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function Rm(t,e,r){let n=await ct.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ct.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r instanceof Uint8Array?r:r.subarray())}async function Lm(t){if(t.privateKey==null||t.publicKey==null)throw new $("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ct.get().subtle.exportKey("jwk",t.privateKey),ct.get().subtle.exportKey("jwk",t.publicKey)])}async function r3(t){return ct.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 Nm(t,e,r,n){let i=e?Im(t):Tm(t),o=ht(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return lt(s,"ascii")}function Um(t,e){return Nm(t,!0,e,(r,n)=>n.encrypt(r))}function Pm(t,e){return Nm(t,!1,e,(r,n)=>n.decrypt(r))}function Zs(t){if(t.kty!=="RSA")throw new $("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new $("invalid key modulus","ERR_INVALID_KEY_MODULUS");return lt(t.n,"base64url").length*8}var so=8192,oo=class{_key;constructor(e){this._key=e}verify(e,r){return Rm(this._key,r,e)}marshal(){return vn.jwkToPkix(this._key)}get bytes(){return $t.encode({Type:Be.RSA,Data:this.marshal()}).subarray()}encrypt(e){return Um(this._key,e)}equals(e){return Gt(this.bytes,e.bytes)}hash(){let e=$e.digest(this.bytes);return xt(e)?e.then(({bytes:r})=>r):e.bytes}},li=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return Xs(16)}sign(e){return km(this._key,e)}get public(){if(this._publicKey==null)throw new $("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new oo(this._publicKey)}decrypt(e){return Pm(this._key,e)}marshal(){return vn.jwkToPkcs1(this._key)}get bytes(){return Wt.encode({Type:Be.RSA,Data:this.marshal()}).subarray()}equals(e){return Gt(this.bytes,e.bytes)}hash(){let e=$e.digest(this.bytes);return xt(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return ht(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new io.default.util.ByteBuffer(this.marshal()),i=io.default.asn1.fromDer(n),o=io.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return io.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return fi(this.bytes,e);throw new $(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function i3(t){let e=vn.pkcs1ToJwk(t);if(Zs(e)>so)throw new $("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await Df(e);return new li(r.privateKey,r.publicKey)}function o3(t){let e=vn.pkixToJwk(t);if(Zs(e)>so)throw new $("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new oo(e)}async function s3(t){if(Zs(t)>so)throw new $("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Df(t);return new li(e.privateKey,e.publicKey)}async function a3(t){if(t>so)throw new $("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await _m(t);return new li(e.privateKey,e.publicKey)}var kf={};J(kf,{Secp256k1PrivateKey:()=>co,Secp256k1PublicKey:()=>ao,generateKeyPair:()=>b3,unmarshalSecp256k1PrivateKey:()=>g3,unmarshalSecp256k1PublicKey:()=>x3});function c3(t){let e=Hi(t);mt(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:f3,hexToBytes:u3}=ws,En={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=En;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:f3(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=En,r=typeof t=="string"?u3(t):t;if(!Bt(r))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=En._parseInt(r.subarray(2)),{d:s,l:a}=En._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}`}},gr=BigInt(0),bt=BigInt(1),wL=BigInt(2),Om=BigInt(3),vL=BigInt(4);function l3(t){let e=c3(t),{Fp:r}=e,n=e.toBytes||((h,p,m)=>{let g=p.toAffine();return ur(Uint8Array.from([4]),r.toBytes(g.x),r.toBytes(g.y))}),i=e.fromBytes||(h=>{let p=h.subarray(1),m=r.fromBytes(p.subarray(0,r.BYTES)),g=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:m,y:g}});function o(h){let{a:p,b:m}=e,g=r.sqr(h),b=r.mul(g,h);return r.add(r.add(b,r.mul(h,p)),m)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&gr<h&&h<e.n}function a(h){if(!s(h))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(h){let{allowedPrivateKeyLengths:p,nByteLength:m,wrapPrivateKey:g,n:b}=e;if(p&&typeof h!="bigint"){if(Bt(h)&&(h=ar(h)),typeof h!="string"||!p.includes(h.length))throw new Error("Invalid key");h=h.padStart(m*2,"0")}let x;try{x=typeof h=="bigint"?h:cr(we("private key",h,m))}catch{throw new Error(`private key must be ${m} bytes, hex or bigint, not ${typeof h}`)}return g&&(x=ue(x,b)),a(x),x}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,m,g){if(this.px=p,this.py=m,this.pz=g,p==null||!r.isValid(p))throw new Error("x required");if(m==null||!r.isValid(m))throw new Error("y required");if(g==null||!r.isValid(g))throw new Error("z required")}static fromAffine(p){let{x:m,y:g}=p||{};if(!p||!r.isValid(m)||!r.isValid(g))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let b=x=>r.eql(x,r.ZERO);return b(m)&&b(g)?l.ZERO:new l(m,g,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let m=r.invertBatch(p.map(g=>g.pz));return p.map((g,b)=>g.toAffine(m[b])).map(l.fromAffine)}static fromHex(p){let m=l.fromAffine(i(we("pointHex",p)));return m.assertValidity(),m}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:m}=this.toAffine();if(!r.isValid(p)||!r.isValid(m))throw new Error("bad point: x or y not FE");let g=r.sqr(m),b=o(p);if(!r.eql(g,b))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:m,py:g,pz:b}=this,{px:x,py:S,pz:w}=p,E=r.eql(r.mul(m,w),r.mul(x,b)),D=r.eql(r.mul(g,w),r.mul(S,b));return E&&D}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:m}=e,g=r.mul(m,Om),{px:b,py:x,pz:S}=this,w=r.ZERO,E=r.ZERO,D=r.ZERO,B=r.mul(b,b),U=r.mul(x,x),M=r.mul(S,S),O=r.mul(b,x);return O=r.add(O,O),D=r.mul(b,S),D=r.add(D,D),w=r.mul(p,D),E=r.mul(g,M),E=r.add(w,E),w=r.sub(U,E),E=r.add(U,E),E=r.mul(w,E),w=r.mul(O,w),D=r.mul(g,D),M=r.mul(p,M),O=r.sub(B,M),O=r.mul(p,O),O=r.add(O,D),D=r.add(B,B),B=r.add(D,B),B=r.add(B,M),B=r.mul(B,O),E=r.add(E,B),M=r.mul(x,S),M=r.add(M,M),B=r.mul(M,O),w=r.sub(w,B),D=r.mul(M,U),D=r.add(D,D),D=r.add(D,D),new l(w,E,D)}add(p){u(p);let{px:m,py:g,pz:b}=this,{px:x,py:S,pz:w}=p,E=r.ZERO,D=r.ZERO,B=r.ZERO,U=e.a,M=r.mul(e.b,Om),O=r.mul(m,x),F=r.mul(g,S),G=r.mul(b,w),Q=r.add(m,g),T=r.add(x,S);Q=r.mul(Q,T),T=r.add(O,F),Q=r.sub(Q,T),T=r.add(m,b);let R=r.add(x,w);return T=r.mul(T,R),R=r.add(O,G),T=r.sub(T,R),R=r.add(g,b),E=r.add(S,w),R=r.mul(R,E),E=r.add(F,G),R=r.sub(R,E),B=r.mul(U,T),E=r.mul(M,G),B=r.add(E,B),E=r.sub(F,B),B=r.add(F,B),D=r.mul(E,B),F=r.add(O,O),F=r.add(F,O),G=r.mul(U,G),T=r.mul(M,T),F=r.add(F,G),G=r.sub(O,G),G=r.mul(U,G),T=r.add(T,G),O=r.mul(F,T),D=r.add(D,O),O=r.mul(R,T),E=r.mul(Q,E),E=r.sub(E,O),O=r.mul(Q,F),B=r.mul(R,B),B=r.add(B,O),new l(E,D,B)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return y.wNAFCached(this,f,p,m=>{let g=r.invertBatch(m.map(b=>b.pz));return m.map((b,x)=>b.toAffine(g[x])).map(l.fromAffine)})}multiplyUnsafe(p){let m=l.ZERO;if(p===gr)return m;if(a(p),p===bt)return this;let{endo:g}=e;if(!g)return y.unsafeLadder(this,p);let{k1neg:b,k1:x,k2neg:S,k2:w}=g.splitScalar(p),E=m,D=m,B=this;for(;x>gr||w>gr;)x&bt&&(E=E.add(B)),w&bt&&(D=D.add(B)),B=B.double(),x>>=bt,w>>=bt;return b&&(E=E.negate()),S&&(D=D.negate()),D=new l(r.mul(D.px,g.beta),D.py,D.pz),E.add(D)}multiply(p){a(p);let m=p,g,b,{endo:x}=e;if(x){let{k1neg:S,k1:w,k2neg:E,k2:D}=x.splitScalar(m),{p:B,f:U}=this.wNAF(w),{p:M,f:O}=this.wNAF(D);B=y.constTimeNegate(S,B),M=y.constTimeNegate(E,M),M=new l(r.mul(M.px,x.beta),M.py,M.pz),g=B.add(M),b=U.add(O)}else{let{p:S,f:w}=this.wNAF(m);g=S,b=w}return l.normalizeZ([g,b])[0]}multiplyAndAddUnsafe(p,m,g){let b=l.BASE,x=(w,E)=>E===gr||E===bt||!w.equals(b)?w.multiplyUnsafe(E):w.multiply(E),S=x(this,m).add(x(p,g));return S.is0()?void 0:S}toAffine(p){let{px:m,py:g,pz:b}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(b));let S=r.mul(m,p),w=r.mul(g,p),E=r.mul(b,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:S,y:w}}isTorsionFree(){let{h:p,isTorsionFree:m}=e;if(p===bt)return!0;if(m)return m(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:m}=e;return p===bt?this:m?m(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return ar(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let d=e.nBitLength,y=Ss(l,e.endo?Math.ceil(d/2):d);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function h3(t){let e=Hi(t);return mt(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Mm(t){let e=h3(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(T){return gr<T&&T<r.ORDER}function a(T){return ue(T,n)}function c(T){return vs(T,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=l3({...e,toBytes(T,R,_){let k=R.toAffine(),A=r.toBytes(k.x),P=ur;return _?P(Uint8Array.from([R.hasEvenY()?2:3]),A):P(Uint8Array.from([4]),A,r.toBytes(k.y))},fromBytes(T){let R=T.length,_=T[0],k=T.subarray(1);if(R===i&&(_===2||_===3)){let A=cr(k);if(!s(A))throw new Error("Point is not on curve");let P=l(A),K=r.sqrt(P),q=(K&bt)===bt;return(_&1)===1!==q&&(K=r.neg(K)),{x:A,y:K}}else if(R===o&&_===4){let A=r.fromBytes(k.subarray(0,r.BYTES)),P=r.fromBytes(k.subarray(r.BYTES,2*r.BYTES));return{x:A,y:P}}else throw new Error(`Point of length ${R} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),y=T=>ar(Lr(T,e.nByteLength));function h(T){let R=n>>bt;return T>R}function p(T){return h(T)?a(-T):T}let m=(T,R,_)=>cr(T.slice(R,_));class g{constructor(R,_,k){this.r=R,this.s=_,this.recovery=k,this.assertValidity()}static fromCompact(R){let _=e.nByteLength;return R=we("compactSignature",R,_*2),new g(m(R,0,_),m(R,_,2*_))}static fromDER(R){let{r:_,s:k}=En.toSig(we("DER",R));return new g(_,k)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(R){return new g(this.r,this.s,R)}recoverPublicKey(R){let{r:_,s:k,recovery:A}=this,P=D(we("msgHash",R));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",Z=f.fromHex(q+y(K)),j=c(K),oe=a(-P*j),ee=a(k*j),re=f.BASE.multiplyAndAddUnsafe(Z,oe,ee);if(!re)throw new Error("point at infinify");return re.assertValidity(),re}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new g(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return fn(this.toDERHex())}toDERHex(){return En.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return fn(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let b={isValidPrivateKey(T){try{return u(T),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let T=V0(e.n);return Bd(e.randomBytes(T),e.n)},precompute(T=8,R=f.BASE){return R._setWindowSize(T),R.multiply(BigInt(3)),R}};function x(T,R=!0){return f.fromPrivateKey(T).toRawBytes(R)}function S(T){let R=Bt(T),_=typeof T=="string",k=(R||_)&&T.length;return R?k===i||k===o:_?k===2*i||k===2*o:T instanceof f}function w(T,R,_=!0){if(S(T))throw new Error("first arg must be private key");if(!S(R))throw new Error("second arg must be public key");return f.fromHex(R).multiply(u(T)).toRawBytes(_)}let E=e.bits2int||function(T){let R=cr(T),_=T.length*8-e.nBitLength;return _>0?R>>BigInt(_):R},D=e.bits2int_modN||function(T){return a(E(T))},B=qi(e.nBitLength);function U(T){if(typeof T!="bigint")throw new Error("bigint expected");if(!(gr<=T&&T<B))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Lr(T,e.nByteLength)}function M(T,R,_=O){if(["recovered","canonical"].some(ye=>ye in _))throw new Error("sign() legacy options not supported");let{hash:k,randomBytes:A}=e,{lowS:P,prehash:K,extraEntropy:q}=_;P==null&&(P=!0),T=we("msgHash",T),K&&(T=we("prehashed msgHash",k(T)));let Z=D(T),j=u(R),oe=[U(j),U(Z)];if(q!=null){let ye=q===!0?A(r.BYTES):q;oe.push(we("extraEntropy",ye))}let ee=ur(...oe),re=Z;function xe(ye){let ze=E(ye);if(!d(ze))return;let Ge=c(ze),Pe=f.BASE.multiply(ze).toAffine(),Xe=a(Pe.x);if(Xe===gr)return;let Zt=a(Ge*a(re+Xe*j));if(Zt===gr)return;let qr=(Pe.x===Xe?0:2)|Number(Pe.y&bt),vi=Zt;return P&&h(Zt)&&(vi=p(Zt),qr^=1),new g(Xe,vi,qr)}return{seed:ee,k2sig:xe}}let O={lowS:e.lowS,prehash:!1},F={lowS:e.lowS,prehash:!1};function G(T,R,_=O){let{seed:k,k2sig:A}=M(T,R,_),P=e;return P0(P.hash.outputLen,P.nByteLength,P.hmac)(k,A)}f.BASE._setWindowSize(8);function Q(T,R,_,k=F){let A=T;if(R=we("msgHash",R),_=we("publicKey",_),"strict"in k)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:K}=k,q,Z;try{if(typeof A=="string"||Bt(A))try{q=g.fromDER(A)}catch(Pe){if(!(Pe instanceof En.Err))throw Pe;q=g.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:Pe,s:Xe}=A;q=new g(Pe,Xe)}else throw new Error("PARSE");Z=f.fromHex(_)}catch(Pe){if(Pe.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(P&&q.hasHighS())return!1;K&&(R=e.hash(R));let{r:j,s:oe}=q,ee=D(R),re=c(oe),xe=a(ee*re),ye=a(j*re),ze=f.BASE.multiplyAndAddUnsafe(Z,xe,ye)?.toAffine();return ze?a(ze.x)===j:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:w,sign:G,verify:Q,ProjectivePoint:f,Signature:g,utils:b}}function d3(t){return{hash:t,hmac:(e,...r)=>ti(t,e,ys(...r)),randomBytes:cn}}function Km(t,e){let r=n=>Mm({...t,...d3(n)});return Object.freeze({...r(e),create:r})}var qm=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Fm=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),p3=BigInt(1),Tf=BigInt(2),Vm=(t,e)=>(t+e/Tf)/e;function m3(t){let e=qm,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=ve(u,r,e)*u%e,d=ve(l,r,e)*u%e,y=ve(d,Tf,e)*f%e,h=ve(y,i,e)*y%e,p=ve(h,o,e)*h%e,m=ve(p,a,e)*p%e,g=ve(m,c,e)*m%e,b=ve(g,a,e)*p%e,x=ve(b,r,e)*u%e,S=ve(x,s,e)*h%e,w=ve(S,n,e)*f%e,E=ve(w,Tf,e);if(!If.eql(If.sqr(E),t))throw new Error("Cannot find square root");return E}var If=Es(qm,void 0,void 0,{sqrt:m3}),Lt=Km({a:BigInt(0),b:BigInt(7),Fp:If,n:Fm,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=Fm,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-p3*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Vm(o*t,e),c=Vm(-n*t,e),f=ue(t-a*r-c*i,e),u=ue(-a*n-c*o,e),l=f>s,d=u>s;if(l&&(f=e-f),d&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:d,k2:u}}}},ri),_L=BigInt(0);var kL=Lt.ProjectivePoint;function Hm(){return Lt.utils.randomPrivateKey()}function zm(t,e){let r=$e.digest(e instanceof Uint8Array?e:e.subarray());if(xt(r))return r.then(({digest:n})=>Lt.sign(n,t).toDERRawBytes()).catch(n=>{throw new $(String(n),"ERR_INVALID_INPUT")});try{return Lt.sign(r.digest,t).toDERRawBytes()}catch(n){throw new $(String(n),"ERR_INVALID_INPUT")}}function Gm(t,e,r){let n=$e.digest(r instanceof Uint8Array?r:r.subarray());if(xt(n))return n.then(({digest:i})=>Lt.verify(e,i,t)).catch(i=>{throw new $(String(i),"ERR_INVALID_INPUT")});try{return Lt.verify(e,n.digest,t)}catch(i){throw new $(String(i),"ERR_INVALID_INPUT")}}function $m(t){return Lt.ProjectivePoint.fromHex(t).toRawBytes(!0)}function Wm(t){try{Lt.getPublicKey(t,!0)}catch(e){throw new $(String(e),"ERR_INVALID_PRIVATE_KEY")}}function _f(t){try{Lt.ProjectivePoint.fromHex(t)}catch(e){throw new $(String(e),"ERR_INVALID_PUBLIC_KEY")}}function Ym(t){try{return Lt.getPublicKey(t,!0)}catch(e){throw new $(String(e),"ERR_INVALID_PRIVATE_KEY")}}var ao=class{_key;constructor(e){_f(e),this._key=e}verify(e,r){return Gm(this._key,r,e)}marshal(){return $m(this._key)}get bytes(){return $t.encode({Type:Be.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Gt(this.bytes,e.bytes)}async hash(){let e=$e.digest(this.bytes),r;return xt(e)?{bytes:r}=await e:r=e.bytes,r}},co=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??Ym(e),Wm(this._key),_f(this._publicKey)}sign(e){return zm(this._key,e)}get public(){return new ao(this._publicKey)}marshal(){return this._key}get bytes(){return Wt.encode({Type:Be.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Gt(this.bytes,e.bytes)}hash(){let e=$e.digest(this.bytes);return xt(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return ht(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return fi(this.bytes,e);throw new $(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function g3(t){return new co(t)}function x3(t){return new ao(t)}async function b3(){let t=Hm();return new co(t)}var Sn={rsa:Bf,ed25519:Ef,secp256k1:kf};function Xm(t){let e=Object.keys(Sn).join(" / ");return new $(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Zm(t){let e=$t.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Be.RSA:return Sn.rsa.unmarshalRsaPublicKey(r);case Be.Ed25519:return Sn.ed25519.unmarshalEd25519PublicKey(r);case Be.Secp256k1:return Sn.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw Xm(e.Type??"unknown")}}async function Qm(t){let e=Wt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Be.RSA:return Sn.rsa.unmarshalRsaPrivateKey(r);case Be.Ed25519:return Sn.ed25519.unmarshalEd25519PrivateKey(r);case Be.Secp256k1:return Sn.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw Xm(e.Type??"RSA")}}function Rf(t,e){if(globalThis.Buffer!=null)return ir(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=sn(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ir(r)}function Jm(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var jm=Jm("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Lf=Jm("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=sn(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),v3={utf8:jm,"utf-8":jm,hex:Me.base16,latin1:Lf,ascii:Lf,binary:Lf,...Me},Qs=v3;function fo(t,e="utf8"){let r=Qs[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ir(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var js;(function(t){let e;t.codec=()=>(e==null&&(e=Ct((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return i})),e),t.encode=r=>At(r,t.codec()),t.decode=r=>St(r,t.codec())})(js||(js={}));var uo;(function(t){let e;t.codec=()=>(e==null&&(e=Ct((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.identityKey!=null&&r.identityKey.byteLength>0&&(n.uint32(10),n.bytes(r.identityKey)),r.identitySig!=null&&r.identitySig.byteLength>0&&(n.uint32(18),n.bytes(r.identitySig)),r.extensions!=null&&(n.uint32(34),js.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:pe(0),identitySig:pe(0)},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.identityKey=r.bytes();break}case 2:{i.identitySig=r.bytes();break}case 4:{i.extensions=js.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),e),t.encode=r=>At(r,t.codec()),t.decode=r=>St(r,t.codec())})(uo||(uo={}));async function ey(t,e,r){let n=await S3(t,ty(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return E3(t.publicKey,n,r)}function E3(t,e,r){return uo.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function S3(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await Qm(t.privateKey)).sign(e)}async function Nf(t){return Ha(t.identityKey)}function Uf(t){return uo.decode(t)}function ty(t){let e=fo("noise-libp2p-static-key:");return t instanceof Uint8Array?Rf([e,t],e.length+t.length):(t.prepend(e),t)}async function Pf(t,e,r){let n=await Ha(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=ty(t);if(n.publicKey==null)throw new Error("PublicKey was missing from PeerId");if(e.identitySig==null)throw new Error("Signature was missing from message");if(!await Zm(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function lo(t){return!(!(t instanceof Uint8Array)&&!Mn(t)||t.byteLength!==32)}function Of(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}function Yt(t,e="utf8"){let r=Qs[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var A3=0,C3=4294967295,D3="Cipherstate has reached maximum n, a new handshake must be performed",Js=class{n;bytes;view;constructor(e=A3){this.n=e,this.bytes=pe(12),this.view=new DataView(this.bytes.buffer,this.bytes.byteOffset,this.bytes.byteLength),this.view.setUint32(4,e,!0)}increment(){this.n++,this.view.setUint32(4,this.n,!0)}getBytes(){return this.bytes}getUint64(){return this.n}assertValue(){if(this.n>C3)throw new Error(D3)}};var ea=class{crypto;log;constructor(e,r){this.log=e.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(e,r,n){let i=this.encrypt(e.k,e.n,r,n);return e.n.increment(),i}decryptWithAd(e,r,n,i){let{plaintext:o,valid:s}=this.decrypt(e.k,e.n,r,n,i);return s&&e.n.increment(),{plaintext:o,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return pe(32)}isEmptyKey(e){let r=this.createEmptyKey();return Of(r,e)}encrypt(e,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,e)}encryptAndHash(e,r){let n;return this.hasKey(e.cs)?n=this.encryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,n),n}decrypt(e,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,e,o);return s?{plaintext:s,valid:!0}:{plaintext:pe(0),valid:!1}}decryptAndHash(e,r){let n,i=!0;return this.hasKey(e.cs)?{plaintext:n,valid:i}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:i}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return this.log.error("error deriving shared key",i),pe(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(new Ae(e,r))}mixKey(e,r){let[n,i]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(i),e.ck=n}initializeKey(e){return{k:e,n:new Js}}initializeSymmetric(e){let r=fo(e,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(e){if(e.length<=32){let r=pe(32);return r.set(e),r}else return this.getHash(e,pe(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,pe(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,pe(0),r),i=this.createEmptyKey(),o=pe(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,pe(0),r.ciphertext)}};var ta=class extends ea{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=pe(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=pe(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=pe(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let o=e.e.publicKey;this.mixHash(e.ss,o);let s=this.encryptAndHash(e.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(e,r){e.e=this.crypto.generateX25519KeyPair();let n=e.e.publicKey;this.mixHash(e.ss,n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let i=e.s.publicKey,o=this.encryptAndHash(e.ss,i);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,i=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let o=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:f}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(e,r){return lo(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(lo(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&lo(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&lo(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=pe(32),s;return e?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let i;if(e.mc===0)i=this.writeMessageA(e.hs,r,n);else if(e.mc===1)i=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);i=s,e.h=o,e.cs1=a,e.cs2=c}else if(e.mc>2)if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,i}recvMessage(e,r){let n=pe(0),i=!1;if(e.mc===0)({plaintext:n,valid:i}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:i}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(e.hs,r);n=s,i=a,e.h=o,e.cs1=c,e.cs2=f}return e.mc++,{plaintext:n,valid:i}}};function ry(t,e){!e.enabled||!Xn||(e(`LOCAL_STATIC_PUBLIC_KEY ${Yt(t.publicKey,"hex")}`),e(`LOCAL_STATIC_PRIVATE_KEY ${Yt(t.privateKey,"hex")}`))}function Mf(t,e){!e.enabled||!Xn||(t?(e(`LOCAL_PUBLIC_EPHEMERAL_KEY ${Yt(t.publicKey,"hex")}`),e(`LOCAL_PRIVATE_EPHEMERAL_KEY ${Yt(t.privateKey,"hex")}`)):e("Missing local ephemeral keys."))}function ny(t,e){!e.enabled||!Xn||e(`REMOTE_STATIC_PUBLIC_KEY ${Yt(t.subarray(),"hex")}`)}function Kf(t,e){!e.enabled||!Xn||e(`REMOTE_EPHEMERAL_PUBLIC_KEY ${Yt(t.subarray(),"hex")}`)}function iy(t,e){!e.enabled||!Xn||(t.cs1&&t.cs2?(e(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${Yt(t.cs1.k,"hex")}`),e(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${Yt(t.cs2.k,"hex")}`)):e("Missing cipher state."))}var ra=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;log;constructor(e,r,n,i,o,s,a,c,f){this.log=e.logger.forComponent("libp2p:noise:xxhandshake"),this.isInitiator=r,this.payload=n,this.prologue=i,this.staticKeypair=s,this.connection=a,c&&(this.remotePeer=c),this.xx=f??new ta(e,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(ry(this.session.hs.s,this.log),this.isInitiator){this.log.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,pe(0));await this.connection.write(Kd(e)),this.log.trace("Stage 0 - Initiator finished sending first message."),Mf(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let e=qd((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new ln("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),Kf(this.session.hs.re,this.log)}}async exchange(){if(this.isInitiator){this.log.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=Hd((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new ln("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),Kf(this.session.hs.re,this.log),ny(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=Uf(r);this.remotePeer=this.remotePeer||await Nf(i),await Pf(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Xi(`Error occurred while verifying signed payload: ${o.message}`)}this.log.trace("All good with the signature!")}else{this.log.trace("Stage 1 - Responder sending out first message with signed payload and static key.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Fd(e)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),Mf(this.session.hs.e,this.log)}}async finish(){if(this.isInitiator){this.log.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(Vd(e)),this.log.trace("Stage 2 - Initiator sent message with signed payload.")}else{this.log.trace("Stage 2 - Responder waiting for third handshake message...");let e=zd((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new ln("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=Uf(r);this.remotePeer=this.remotePeer||await Nf(i),await Pf(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Xi(`Error occurred while verifying signed payload: ${o.message}`)}}iy(this.session,this.log)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,pe(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,pe(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new ln("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?r?e.cs1:e.cs2:r?e.cs2:e.cs1}setRemoteNoiseExtension(e){e&&(this.remoteExtensions=e)}};function oy(t){return{xxHandshakeSuccesses:t.registerCounter("libp2p_noise_xxhandshake_successes_total",{help:"Total count of noise xxHandshakes successes_"}),xxHandshakeErrors:t.registerCounter("libp2p_noise_xxhandshake_error_total",{help:"Total count of noise xxHandshakes errors"}),encryptedPackets:t.registerCounter("libp2p_noise_encrypted_packets_total",{help:"Total count of noise encrypted packets successfully"}),decryptedPackets:t.registerCounter("libp2p_noise_decrypted_packets_total",{help:"Total count of noise decrypted packets"}),decryptErrors:t.registerCounter("libp2p_noise_decrypt_errors_total",{help:"Total count of noise decrypt errors"})}}var na=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(e,r={}){let{staticNoiseKey:n,extensions:i,crypto:o,prologueBytes:s}=r,{metrics:a}=e;this.components=e,this.crypto=o??Md,this.extensions=i,this.metrics=a?oy(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??pe(0)}async secureOutbound(e,r,n){let i=Fi(r,{lengthEncoder:ni,lengthDecoder:Wi,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:e,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(e,r,n){let i=Fi(r,{lengthEncoder:ni,lengthDecoder:Wi,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:e,remotePeer:n}),s=await this.createSecureConnection(i,o);return r.source=s.source,r.sink=s.sink,{conn:r,remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(e){let r=await ey(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:i,connection:o}=e,s=new ra(this.components,n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(e,r){let[n,i]=jh(),o=e.unwrap();return await ed(n,Wd(r,this.metrics),o,s=>Qr(s,{lengthDecoder:Wi}),Yd(r,this.metrics),n),i}};function sy(t={}){return e=>new na(e,t)}var F1=Ze(mu(),1);function Dn(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function ma(t=0){return globalThis.Buffer?.allocUnsafe!=null?Dn(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function I1(t,e){if(globalThis.Buffer!=null)return Dn(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=ma(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return Dn(r)}function k1(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var _1=k1("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),yu=k1("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=ma(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),RS={utf8:_1,"utf-8":_1,hex:Me.base16,latin1:yu,ascii:yu,binary:yu,...Me},R1=RS;function gu(t,e="utf8"){let r=R1[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Dn(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var L1=Ze(mu(),1);var xu=Object.values(Me).map(t=>t.decoder).reduce((t,e)=>t.or(e));function N1(t,e){let r=t.getConfiguration().certificates?.at(0);if(r==null||r.getFingerprints==null){e.log.trace("fetching fingerprint from local SDP");let i=t.localDescription;return i==null?void 0:NS(i.sdp)}if(e.log.trace("fetching fingerprint from local certificate"),r.getFingerprints().length===0)return;let n=r.getFingerprints()[0].value;if(n==null)throw Cc("","no fingerprint on local certificate");return n}var LS=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function NS(t){return t.match(LS)?.groups?.fingerprint}function US(t){for(let e of t.protoNames())if(e.startsWith("ip"))return e.toUpperCase();return"IP6"}function ya(t){let r=t.stringTuples().filter(n=>n[0]===O1).map(n=>n[1])[0];if(r===void 0||r==="")throw Ko(`Couldn't find a certhash component of multiaddr: ${t.toString()}`);return r}function bu(t){let e=xu.decode(t);return L1.decode(e)}function PS(t){let e=bu(ya(t)),r=wu(e.name),n=e.digest.reduce((o,s)=>o+s.toString(16).padStart(2,"0"),""),i=n.match(/.{1,2}/g);if(i==null)throw Cc(n,t.toString());return[`${r.toUpperCase()} ${i.join(":").toUpperCase()}`,n]}function wu(t){switch(t){case"sha1":return"sha-1";case"sha2-256":return"sha-256";case"sha2-512":return"sha-512";default:throw Ml(t)}}function OS(t,e){let{host:r,port:n}=t.toOptions(),i=US(t),[o]=PS(t);return`v=0
|
|
30
30
|
o=- 0 0 IN ${i} ${r}
|
|
31
31
|
s=-
|
|
32
32
|
c=IN ${i} ${r}
|
|
@@ -35,17 +35,17 @@ a=ice-lite
|
|
|
35
35
|
m=application ${n} UDP/DTLS/SCTP webrtc-datachannel
|
|
36
36
|
a=mid:0
|
|
37
37
|
a=setup:passive
|
|
38
|
-
a=ice-ufrag:${
|
|
39
|
-
a=ice-pwd:${
|
|
38
|
+
a=ice-ufrag:${e}
|
|
39
|
+
a=ice-pwd:${e}
|
|
40
40
|
a=fingerprint:${o}
|
|
41
41
|
a=sctp-port:5000
|
|
42
42
|
a=max-message-size:16384
|
|
43
43
|
a=candidate:1467250027 1 UDP 1467250027 ${r} ${n} typ host\r
|
|
44
|
-
`}function
|
|
45
|
-
a=ice-ufrag:`+
|
|
44
|
+
`}function U1(t,e){return{type:"answer",sdp:OS(t,e)}}function P1(t,e){if(t.sdp===void 0)throw ki("Can't munge a missing SDP");return t.sdp=t.sdp.replace(/\na=ice-ufrag:[^\n]*\n/,`
|
|
45
|
+
a=ice-ufrag:`+e+`
|
|
46
46
|
`).replace(/\na=ice-pwd:[^\n]*\n/,`
|
|
47
|
-
a=ice-pwd:`+
|
|
48
|
-
`),
|
|
47
|
+
a=ice-pwd:`+e+`
|
|
48
|
+
`),t}var M1=Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),K1=t=>[...Array(t)].map(()=>M1.at(Math.floor(Math.random()*M1.length))).join("");var KS=1e4,Z9=de("webrtc-direct").code,O1=de("certhash").code,ga=class{log;metrics;components;init;constructor(e,r={}){this.log=e.logger.forComponent("libp2p:webrtc-direct"),this.components=e,this.init=r,e.metrics!=null&&(this.metrics={dialerEvents:e.metrics.registerCounterGroup("libp2p_webrtc-direct_dialer_events_total",{label:"event",help:"Total count of WebRTC-direct dial events by type"})})}async dial(e,r){let n=await this._connect(e,r);return this.log("dialing address: %a",e),n}createListener(e){throw Ol("WebRTCTransport.createListener")}filter(e){return e.filter(Nl.exactMatch)}[Symbol.toStringTag]="@libp2p/webrtc-direct";[Eo]=!0;async _connect(e,r){let n=new AbortController,i=n.signal,o=e.getPeerId();if(o===null)throw Ko("we need to have the remote's PeerId");let s=Gr(o),a=bu(ya(e)),c=await Wn.generateCertificate({name:"ECDSA",namedCurve:"P-256",hash:wu(a.name)}),f=new Wn({certificates:[c]});try{let u=new Promise((B,U)=>{let M=f.createDataChannel("",{negotiated:!0,id:0}),O=setTimeout(()=>{let F=`Data channel was never opened: state: ${M.readyState}`;this.log.error(F),this.metrics?.dialerEvents.increment({open_error:!0}),U(Ac("data",F))},KS);M.onopen=F=>{clearTimeout(O),B(M)},M.onerror=F=>{clearTimeout(O);let Q=`Error opening a data channel for handshaking: ${F.target?.toString()??"not specified"}`;this.log.error(Q),this.metrics?.dialerEvents.increment({unknown_error:!0}),U(Ac("data",Q))}}),l="libp2p+webrtc+v1/"+K1(32),d=await f.createOffer(),y=P1(d,l);await f.setLocalDescription(y);let h=U1(e,l);await f.setRemoteDescription(h);let p=await u,m=this.components.peerId,g=this.generateNoisePrologue(f,a.code,e),b=sy({prologueBytes:g})(this.components),x=$n({channel:p,direction:"inbound",logger:this.components.logger,...this.init.dataChannel??{}}),S={...x,sink:x.sink.bind(x),source:async function*(){for await(let B of x.source)for(let U of B)yield U}()},w=new Yr(this.components,{peerConnection:f,remoteAddr:e,timeline:{open:Date.now()},metrics:this.metrics?.dialerEvents}),E=Ri?"iceconnectionstatechange":"connectionstatechange";f.addEventListener(E,()=>{switch(f.connectionState){case"failed":case"disconnected":case"closed":w.close().catch(B=>{this.log.error("error closing connection",B)}).finally(()=>{n.abort()});break;default:break}},{signal:i}),this.metrics?.dialerEvents.increment({peer_connection:!0});let D=new rn(this.components,{peerConnection:f,metrics:this.metrics?.dialerEvents,dataChannelOptions:this.init.dataChannel});return await b.secureInbound(m,S,s),await r.upgrader.upgradeOutbound(w,{skipProtection:!0,skipEncryption:!0,muxerFactory:D})}catch(u){throw f.close(),u}}generateNoisePrologue(e,r,n){if(e.getConfiguration().certificates?.length===0)throw ki("no local certificate");let i=N1(e,{log:this.log});if(i==null)throw ki("no local fingerprint found");let o=i.trim().toLowerCase().replaceAll(":",""),s=gu(o,"hex"),a=F1.encode(s,r),c=xu.decode(ya(n)),f=gu("libp2p-webrtc-noise:");return I1([f,a,c])}};function FS(t){return e=>new ga(e,t)}function VS(t){return e=>new cs(e,t)}return vo(qS);})();
|
|
49
49
|
/*! Bundled license information:
|
|
50
50
|
|
|
51
51
|
@noble/ciphers/esm/utils.js:
|