@libp2p/webrtc 4.0.12-5d1f68e92 → 4.0.13-388d02b33
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 +24 -24
- package/package.json +11 -11
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};Au.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=Hx[e];if(!r){r=Hx[e]=[];for(var n=0;n<e.length;++n)r[e.charCodeAt(n)]=n}t=t.replace(/\s/g,"");for(var o=e.length,i=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]*o,s[c]=f&255,f>>=8;for(;f>0;)s.push(f&255),f>>=8}for(var u=0;t[u]===i&&u<t.length-1;++u)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function ES(t,e){var r=0,n=e.length,o=e.charAt(0),i=[0];for(r=0;r<t.length();++r){for(var s=0,a=t.at(r);s<i.length;++s)a+=i[s]<<8,i[s]=a%n,a=a/n|0;for(;a>0;)i.push(a%n),a=a/n|0}var c="";for(r=0;t.at(r)===0&&r<t.length()-1;++r)c+=o;for(r=i.length-1;r>=0;--r)c+=e[i[r]];return c}});var Fe=se((aM,jx)=>{var Wx=ye(),Yx=Gx(),A=jx.exports=Wx.util=Wx.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){A.nextTick=process.nextTick,typeof setImmediate=="function"?A.setImmediate=setImmediate:A.setImmediate=A.nextTick;return}if(typeof setImmediate=="function"){A.setImmediate=function(){return setImmediate.apply(void 0,arguments)},A.nextTick=function(a){return setImmediate(a)};return}if(A.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=[];A.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,o=document.createElement("div"),e=[];new MutationObserver(function(){var c=e.slice();e.length=0,c.forEach(function(f){f()})}).observe(o,{attributes:!0});var i=A.setImmediate;A.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),i(c)):(e.push(c),e.length===1&&o.setAttribute("a",n=!n))}}A.nextTick=A.setImmediate})();A.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;A.globalScope=function(){return A.isNodejs?globalThis:typeof self>"u"?window:self}();A.isArray=Array.isArray||function(t){return Object.prototype.toString.call(t)==="[object Array]"};A.isArrayBuffer=function(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer};A.isArrayBufferView=function(t){return t&&A.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)}A.ByteBuffer=Cu;function Cu(t){if(this.data="",this.read=0,typeof t=="string")this.data=t;else if(A.isArrayBuffer(t)||A.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 Cu||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}A.ByteStringBuffer=Cu;var SS=4096;A.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>SS&&(this.data.substr(0,1),this._constructedStringLength=0)};A.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};A.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};A.ByteStringBuffer.prototype.putByte=function(t){return this.putBytes(String.fromCharCode(t))};A.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};A.ByteStringBuffer.prototype.putBytes=function(t){return this.data+=t,this._optimizeConstructedString(t.length),this};A.ByteStringBuffer.prototype.putString=function(t){return this.putBytes(A.encodeUtf8(t))};A.ByteStringBuffer.prototype.putInt16=function(t){return this.putBytes(String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};A.ByteStringBuffer.prototype.putInt24=function(t){return this.putBytes(String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};A.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))};A.ByteStringBuffer.prototype.putInt16Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255))};A.ByteStringBuffer.prototype.putInt24Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255))};A.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))};A.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)};A.ByteStringBuffer.prototype.putSignedInt=function(t,e){return t<0&&(t+=2<<e-1),this.putInt(t,e)};A.ByteStringBuffer.prototype.putBuffer=function(t){return this.putBytes(t.getBytes())};A.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};A.ByteStringBuffer.prototype.getInt16=function(){var t=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,t};A.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};A.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};A.ByteStringBuffer.prototype.getInt16Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,t};A.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};A.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};A.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};A.ByteStringBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};A.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};A.ByteStringBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};A.ByteStringBuffer.prototype.at=function(t){return this.data.charCodeAt(this.read+t)};A.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};A.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};A.ByteStringBuffer.prototype.copy=function(){var t=A.createBuffer(this.data);return t.read=this.read,t};A.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};A.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};A.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};A.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};A.ByteStringBuffer.prototype.toString=function(){return A.decodeUtf8(this.bytes())};function AS(t,e){e=e||{},this.read=e.readOffset||0,this.growSize=e.growSize||1024;var r=A.isArrayBuffer(t),n=A.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)}A.DataBuffer=AS;A.DataBuffer.prototype.length=function(){return this.write-this.read};A.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};A.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};A.DataBuffer.prototype.putByte=function(t){return this.accommodate(1),this.data.setUint8(this.write++,t),this};A.DataBuffer.prototype.fillWithByte=function(t,e){this.accommodate(e);for(var r=0;r<e;++r)this.data.setUint8(t);return this};A.DataBuffer.prototype.putBytes=function(t,e){if(A.isArrayBufferView(t)){var r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var o=new Uint8Array(this.data.buffer,this.write);return o.set(r),this.write+=n,this}if(A.isArrayBuffer(t)){var r=new Uint8Array(t);this.accommodate(r.byteLength);var o=new Uint8Array(this.data.buffer);return o.set(r,this.write),this.write+=r.byteLength,this}if(t instanceof A.DataBuffer||typeof t=="object"&&typeof t.read=="number"&&typeof t.write=="number"&&A.isArrayBufferView(t.data)){var r=new Uint8Array(t.data.byteLength,t.read,t.length());this.accommodate(r.byteLength);var o=new Uint8Array(t.data.byteLength,this.write);return o.set(r),this.write+=r.byteLength,this}if(t instanceof A.ByteStringBuffer&&(t=t.data,e="binary"),e=e||"binary",typeof t=="string"){var i;if(e==="hex")return this.accommodate(Math.ceil(t.length/2)),i=new Uint8Array(this.data.buffer,this.write),this.write+=A.binary.hex.decode(t,i,this.write),this;if(e==="base64")return this.accommodate(Math.ceil(t.length/4)*3),i=new Uint8Array(this.data.buffer,this.write),this.write+=A.binary.base64.decode(t,i,this.write),this;if(e==="utf8"&&(t=A.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),i=new Uint8Array(this.data.buffer,this.write),this.write+=A.binary.raw.decode(i),this;if(e==="utf16")return this.accommodate(t.length*2),i=new Uint16Array(this.data.buffer,this.write),this.write+=A.text.utf16.encode(i),this;throw new Error("Invalid encoding: "+e)}throw Error("Invalid parameter: "+t)};A.DataBuffer.prototype.putBuffer=function(t){return this.putBytes(t),t.clear(),this};A.DataBuffer.prototype.putString=function(t){return this.putBytes(t,"utf16")};A.DataBuffer.prototype.putInt16=function(t){return this.accommodate(2),this.data.setInt16(this.write,t),this.write+=2,this};A.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};A.DataBuffer.prototype.putInt32=function(t){return this.accommodate(4),this.data.setInt32(this.write,t),this.write+=4,this};A.DataBuffer.prototype.putInt16Le=function(t){return this.accommodate(2),this.data.setInt16(this.write,t,!0),this.write+=2,this};A.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};A.DataBuffer.prototype.putInt32Le=function(t){return this.accommodate(4),this.data.setInt32(this.write,t,!0),this.write+=4,this};A.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};A.DataBuffer.prototype.putSignedInt=function(t,e){return zi(e),this.accommodate(e/8),t<0&&(t+=2<<e-1),this.putInt(t,e)};A.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};A.DataBuffer.prototype.getInt16=function(){var t=this.data.getInt16(this.read);return this.read+=2,t};A.DataBuffer.prototype.getInt24=function(){var t=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,t};A.DataBuffer.prototype.getInt32=function(){var t=this.data.getInt32(this.read);return this.read+=4,t};A.DataBuffer.prototype.getInt16Le=function(){var t=this.data.getInt16(this.read,!0);return this.read+=2,t};A.DataBuffer.prototype.getInt24Le=function(){var t=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,t};A.DataBuffer.prototype.getInt32Le=function(){var t=this.data.getInt32(this.read,!0);return this.read+=4,t};A.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};A.DataBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};A.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};A.DataBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};A.DataBuffer.prototype.at=function(t){return this.data.getUint8(this.read+t)};A.DataBuffer.prototype.setAt=function(t,e){return this.data.setUint8(t,e),this};A.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};A.DataBuffer.prototype.copy=function(){return new A.DataBuffer(this)};A.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};A.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};A.DataBuffer.prototype.truncate=function(t){return this.write=Math.max(0,this.length()-t),this.read=Math.min(this.read,this.write),this};A.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};A.DataBuffer.prototype.toString=function(t){var e=new Uint8Array(this.data,this.read,this.length());if(t=t||"utf8",t==="binary"||t==="raw")return A.binary.raw.encode(e);if(t==="hex")return A.binary.hex.encode(e);if(t==="base64")return A.binary.base64.encode(e);if(t==="utf8")return A.text.utf8.decode(e);if(t==="utf16")return A.text.utf16.decode(e);throw new Error("Invalid encoding: "+t)};A.createBuffer=function(t,e){return e=e||"raw",t!==void 0&&e==="utf8"&&(t=A.encodeUtf8(t)),new A.ByteBuffer(t)};A.fillString=function(t,e){for(var r="";e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return r};A.xorBytes=function(t,e,r){for(var n="",o="",i="",s=0,a=0;r>0;--r,++s)o=t.charCodeAt(s)^e.charCodeAt(s),a>=10&&(n+=i,i="",a=0),i+=String.fromCharCode(o),++a;return n+=i,n};A.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};A.bytesToHex=function(t){return A.createBuffer(t).toHex()};A.int32ToBytes=function(t){return String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255)};var Yr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Xr=[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],Xx="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";A.encode64=function(t,e){for(var r="",n="",o,i,s,a=0;a<t.length;)o=t.charCodeAt(a++),i=t.charCodeAt(a++),s=t.charCodeAt(a++),r+=Yr.charAt(o>>2),r+=Yr.charAt((o&3)<<4|i>>4),isNaN(i)?r+="==":(r+=Yr.charAt((i&15)<<2|s>>6),r+=isNaN(s)?"=":Yr.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
|
|
4
|
-
`,r=r.substr(
|
|
5
|
-
`,r=r.substr(e));return n+=r,n};A.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 o,i,s,a,c=0,f=r;c<t.length;)o=Xr[t.charCodeAt(c++)-43],i=Xr[t.charCodeAt(c++)-43],s=Xr[t.charCodeAt(c++)-43],a=Xr[t.charCodeAt(c++)-43],n[f++]=o<<2|i>>4,s!==64&&(n[f++]=(i&15)<<4|s>>2,a!==64&&(n[f++]=(s&3)<<6|a));return e?f-r:n.subarray(0,f)};A.binary.base58.encode=function(t,e){return A.binary.baseN.encode(t,Xx,e)};A.binary.base58.decode=function(t,e){return A.binary.baseN.decode(t,Xx,e)};A.text={utf8:{},utf16:{}};A.text.utf8.encode=function(t,e,r){t=A.encodeUtf8(t);var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var o=r,i=0;i<t.length;++i)n[o++]=t.charCodeAt(i);return e?o-r:n};A.text.utf8.decode=function(t){return A.decodeUtf8(String.fromCharCode.apply(null,t))};A.text.utf16.encode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length*2));var o=new Uint16Array(n.buffer);r=r||0;for(var i=r,s=r,a=0;a<t.length;++a)o[s++]=t.charCodeAt(a),i+=2;return e?i-r:n};A.text.utf16.decode=function(t){return String.fromCharCode.apply(null,new Uint16Array(t.buffer))};A.deflate=function(t,e,r){if(e=A.decode64(t.deflate(A.encode64(e)).rval),r){var n=2,o=e.charCodeAt(1);o&32&&(n=6),e=e.substring(n,e.length-4)}return e};A.inflate=function(t,e,r){var n=t.inflate(A.encode64(e)).rval;return n===null?null:A.decode64(n)};var Du=function(t,e,r){if(!t)throw new Error("WebStorage not available.");var n;if(r===null?n=t.removeItem(e):(r=A.encode64(JSON.stringify(r)),n=t.setItem(e,r)),typeof n<"u"&&n.rval!==!0){var o=new Error(n.error.message);throw o.id=n.error.id,o.name=n.error.name,o}},Bu=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(A.decode64(r))),r},CS=function(t,e,r,n){var o=Bu(t,e);o===null&&(o={}),o[r]=n,Du(t,e,o)},DS=function(t,e,r){var n=Bu(t,e);return n!==null&&(n=r in n?n[r]:null),n},BS=function(t,e,r){var n=Bu(t,e);if(n!==null&&r in n){delete n[r];var o=!0;for(var i in n){o=!1;break}o&&(n=null),Du(t,e,n)}},IS=function(t,e){Du(t,e,null)},Ra=function(t,e,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var o,i=!1,s=null;for(var a in r){o=r[a];try{if(o==="flash"||o==="both"){if(e[0]===null)throw new Error("Flash local storage not available.");n=t.apply(this,e),i=o==="flash"}(o==="web"||o==="both")&&(e[0]=localStorage,n=t.apply(this,e),i=!0)}catch(c){s=c}if(i)break}if(!i)throw s;return n};A.setItem=function(t,e,r,n,o){Ra(CS,arguments,o)};A.getItem=function(t,e,r,n){return Ra(DS,arguments,n)};A.removeItem=function(t,e,r,n){Ra(BS,arguments,n)};A.clearItems=function(t,e,r){Ra(IS,arguments,r)};A.isEmpty=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0};A.format=function(t){for(var e=/%./g,r,n,o=0,i=[],s=0;r=e.exec(t);){n=t.substring(s,e.lastIndex-2),n.length>0&&i.push(n),s=e.lastIndex;var a=r[0][1];switch(a){case"s":case"o":o<arguments.length?i.push(arguments[o+++1]):i.push("<?>");break;case"%":i.push("%");break;default:i.push("<%"+a+"?>")}}return i.push(t.substring(s)),i.join("")};A.formatNumber=function(t,e,r,n){var o=t,i=isNaN(e=Math.abs(e))?2:e,s=r===void 0?",":r,a=n===void 0?".":n,c=o<0?"-":"",f=parseInt(o=Math.abs(+o||0).toFixed(i),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)+(i?s+Math.abs(o-f).toFixed(i).slice(2):"")};A.formatSize=function(t){return t>=1073741824?t=A.formatNumber(t/1073741824,2,".","")+" GiB":t>=1048576?t=A.formatNumber(t/1048576,2,".","")+" MiB":t>=1024?t=A.formatNumber(t/1024,0)+" KiB":t=A.formatNumber(t,0)+" bytes",t};A.bytesFromIP=function(t){return t.indexOf(".")!==-1?A.bytesFromIPv4(t):t.indexOf(":")!==-1?A.bytesFromIPv6(t):null};A.bytesFromIPv4=function(t){if(t=t.split("."),t.length!==4)return null;for(var e=A.createBuffer(),r=0;r<t.length;++r){var n=parseInt(t[r],10);if(isNaN(n))return null;e.putByte(n)}return e.getBytes()};A.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=A.createBuffer(),o=0;o<8;++o){if(!t[o]||t[o].length===0){n.fillWithByte(0,r),r=0;continue}var i=A.hexToBytes(t[o]);i.length<2&&n.putByte(0),n.putBytes(i)}return n.getBytes()};A.bytesToIP=function(t){return t.length===4?A.bytesToIPv4(t):t.length===16?A.bytesToIPv6(t):null};A.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(".")};A.bytesToIPv6=function(t){if(t.length!==16)return null;for(var e=[],r=[],n=0,o=0;o<t.length;o+=2){for(var i=A.bytesToHex(t[o]+t[o+1]);i[0]==="0"&&i!=="0";)i=i.substr(1);if(i==="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(i)}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(":")};A.estimateCores=function(t,e){if(typeof t=="function"&&(e=t,t={}),t=t||{},"cores"in A&&!t.update)return e(null,A.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return A.cores=navigator.hardwareConcurrency,e(null,A.cores);if(typeof Worker>"u")return A.cores=1,e(null,A.cores);if(typeof Blob>"u")return A.cores=2,e(null,A.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 A.cores=Math.max(1,f),URL.revokeObjectURL(r),e(null,A.cores)}o(c,function(u,l){s.push(i(c,l)),n(s,a-1,c)})}function o(s,a){for(var c=[],f=[],u=0;u<s;++u){var l=new Worker(r);l.addEventListener("message",function(p){if(f.push(p.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 i(s,a){for(var c=[],f=0;f<s;++f)for(var u=a[f],l=c[f]=[],p=0;p<s;++p)if(f!==p){var y=a[p];(u.st>y.st&&u.st<y.et||y.st>u.st&&y.st<u.et)&&l.push(p)}return c.reduce(function(h,d){return Math.max(h,d.length)},0)}}});var La=se((cM,Zx)=>{var qi=ye();qi.pki=qi.pki||{};var Iu=Zx.exports=qi.pki.oids=qi.oids=qi.oids||{};function U(t,e){Iu[t]=e,Iu[e]=t}function me(t,e){Iu[t]=e}U("1.2.840.113549.1.1.1","rsaEncryption");U("1.2.840.113549.1.1.4","md5WithRSAEncryption");U("1.2.840.113549.1.1.5","sha1WithRSAEncryption");U("1.2.840.113549.1.1.7","RSAES-OAEP");U("1.2.840.113549.1.1.8","mgf1");U("1.2.840.113549.1.1.9","pSpecified");U("1.2.840.113549.1.1.10","RSASSA-PSS");U("1.2.840.113549.1.1.11","sha256WithRSAEncryption");U("1.2.840.113549.1.1.12","sha384WithRSAEncryption");U("1.2.840.113549.1.1.13","sha512WithRSAEncryption");U("1.3.101.112","EdDSA25519");U("1.2.840.10040.4.3","dsa-with-sha1");U("1.3.14.3.2.7","desCBC");U("1.3.14.3.2.26","sha1");U("1.3.14.3.2.29","sha1WithRSASignature");U("2.16.840.1.101.3.4.2.1","sha256");U("2.16.840.1.101.3.4.2.2","sha384");U("2.16.840.1.101.3.4.2.3","sha512");U("2.16.840.1.101.3.4.2.4","sha224");U("2.16.840.1.101.3.4.2.5","sha512-224");U("2.16.840.1.101.3.4.2.6","sha512-256");U("1.2.840.113549.2.2","md2");U("1.2.840.113549.2.5","md5");U("1.2.840.113549.1.7.1","data");U("1.2.840.113549.1.7.2","signedData");U("1.2.840.113549.1.7.3","envelopedData");U("1.2.840.113549.1.7.4","signedAndEnvelopedData");U("1.2.840.113549.1.7.5","digestedData");U("1.2.840.113549.1.7.6","encryptedData");U("1.2.840.113549.1.9.1","emailAddress");U("1.2.840.113549.1.9.2","unstructuredName");U("1.2.840.113549.1.9.3","contentType");U("1.2.840.113549.1.9.4","messageDigest");U("1.2.840.113549.1.9.5","signingTime");U("1.2.840.113549.1.9.6","counterSignature");U("1.2.840.113549.1.9.7","challengePassword");U("1.2.840.113549.1.9.8","unstructuredAddress");U("1.2.840.113549.1.9.14","extensionRequest");U("1.2.840.113549.1.9.20","friendlyName");U("1.2.840.113549.1.9.21","localKeyId");U("1.2.840.113549.1.9.22.1","x509Certificate");U("1.2.840.113549.1.12.10.1.1","keyBag");U("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");U("1.2.840.113549.1.12.10.1.3","certBag");U("1.2.840.113549.1.12.10.1.4","crlBag");U("1.2.840.113549.1.12.10.1.5","secretBag");U("1.2.840.113549.1.12.10.1.6","safeContentsBag");U("1.2.840.113549.1.5.13","pkcs5PBES2");U("1.2.840.113549.1.5.12","pkcs5PBKDF2");U("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");U("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");U("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");U("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");U("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");U("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");U("1.2.840.113549.2.7","hmacWithSHA1");U("1.2.840.113549.2.8","hmacWithSHA224");U("1.2.840.113549.2.9","hmacWithSHA256");U("1.2.840.113549.2.10","hmacWithSHA384");U("1.2.840.113549.2.11","hmacWithSHA512");U("1.2.840.113549.3.7","des-EDE3-CBC");U("2.16.840.1.101.3.4.1.2","aes128-CBC");U("2.16.840.1.101.3.4.1.22","aes192-CBC");U("2.16.840.1.101.3.4.1.42","aes256-CBC");U("2.5.4.3","commonName");U("2.5.4.4","surname");U("2.5.4.5","serialNumber");U("2.5.4.6","countryName");U("2.5.4.7","localityName");U("2.5.4.8","stateOrProvinceName");U("2.5.4.9","streetAddress");U("2.5.4.10","organizationName");U("2.5.4.11","organizationalUnitName");U("2.5.4.12","title");U("2.5.4.13","description");U("2.5.4.15","businessCategory");U("2.5.4.17","postalCode");U("2.5.4.42","givenName");U("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");U("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");U("2.16.840.1.113730.1.1","nsCertType");U("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");U("2.5.29.14","subjectKeyIdentifier");U("2.5.29.15","keyUsage");me("2.5.29.16","privateKeyUsagePeriod");U("2.5.29.17","subjectAltName");U("2.5.29.18","issuerAltName");U("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");U("2.5.29.31","cRLDistributionPoints");U("2.5.29.32","certificatePolicies");me("2.5.29.33","policyMappings");me("2.5.29.34","policyConstraints");U("2.5.29.35","authorityKeyIdentifier");me("2.5.29.36","policyConstraints");U("2.5.29.37","extKeyUsage");me("2.5.29.46","freshestCRL");me("2.5.29.54","inhibitAnyPolicy");U("1.3.6.1.4.1.11129.2.4.2","timestampList");U("1.3.6.1.5.5.7.1.1","authorityInfoAccess");U("1.3.6.1.5.5.7.3.1","serverAuth");U("1.3.6.1.5.5.7.3.2","clientAuth");U("1.3.6.1.5.5.7.3.3","codeSigning");U("1.3.6.1.5.5.7.3.4","emailProtection");U("1.3.6.1.5.5.7.3.8","timeStamping")});var $i=se((fM,Jx)=>{var Ee=ye();Fe();La();var z=Jx.exports=Ee.asn1=Ee.asn1||{};z.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};z.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};z.create=function(t,e,r,n,o){if(Ee.util.isArray(n)){for(var i=[],s=0;s<n.length;++s)n[s]!==void 0&&i.push(n[s]);n=i}var a={tagClass:t,type:e,constructed:r,composed:r||Ee.util.isArray(n),value:n};return o&&"bitStringContents"in o&&(a.bitStringContents=o.bitStringContents,a.original=z.copy(a)),a};z.copy=function(t,e){var r;if(Ee.util.isArray(t)){r=[];for(var n=0;n<t.length;++n)r.push(z.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:z.copy(t.value,e)},e&&!e.excludeBitStringContents&&(r.bitStringContents=t.bitStringContents),r)};z.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(!z.equals(t[n],e[n]))return!1;return!0}if(typeof t!=typeof e)return!1;if(typeof t=="string")return t===e;var o=t.tagClass===e.tagClass&&t.type===e.type&&t.constructed===e.constructed&&t.composed===e.composed&&z.equals(t.value,e.value);return r&&r.includeBitStringContents&&(o=o&&t.bitStringContents===e.bitStringContents),o};z.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 Hi(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 TS=function(t,e){var r=t.getByte();if(e--,r!==128){var n,o=r&128;if(!o)n=r;else{var i=r&127;Hi(t,e,i),n=t.getInt(i<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};z.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=Na(t,t.length(),0,e);if(e.parseAllBytes&&t.length()!==0){var o=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw o.byteCount=r,o.remaining=t.length(),o}return n};function Na(t,e,r,n){var o;Hi(t,e,2);var i=t.getByte();e--;var s=i&192,a=i&31;o=t.length();var c=TS(t,e);if(e-=o-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,p=(i&32)===32;if(p)if(u=[],c===void 0)for(;;){if(Hi(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}o=t.length(),u.push(Na(t,e,r+1,n)),e-=o-t.length()}else for(;c>0;)o=t.length(),u.push(Na(t,c,r+1,n)),e-=o-t.length(),c-=o-t.length();if(u===void 0&&s===z.Class.UNIVERSAL&&a===z.Type.BITSTRING&&(l=t.bytes(c)),u===void 0&&n.decodeBitStrings&&s===z.Class.UNIVERSAL&&a===z.Type.BITSTRING&&c>1){var y=t.read,h=e,d=0;if(a===z.Type.BITSTRING&&(Hi(t,e,1),d=t.getByte(),e--),d===0)try{o=t.length();var m={strict:!0,decodeBitStrings:!0},x=Na(t,e,r+1,m),b=o-t.length();e-=b,a==z.Type.BITSTRING&&b++;var g=x.tagClass;b===c&&(g===z.Class.UNIVERSAL||g===z.Class.CONTEXT_SPECIFIC)&&(u=[x])}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===z.Type.BMPSTRING)for(u="";c>0;c-=2)Hi(t,e,2),u+=String.fromCharCode(t.getInt16()),e-=2;else u=t.getBytes(c),e-=c}var v=l===void 0?null:{bitStringContents:l};return z.create(s,a,p,u,v)}z.toDer=function(t){var e=Ee.util.createBuffer(),r=t.tagClass|t.type,n=Ee.util.createBuffer(),o=!1;if("bitStringContents"in t&&(o=!0,t.original&&(o=z.equals(t,t.original))),o)n.putBytes(t.bitStringContents);else if(t.composed){t.constructed?r|=32:n.putByte(0);for(var i=0;i<t.value.length;++i)t.value[i]!==void 0&&n.putBuffer(z.toDer(t.value[i]))}else if(t.type===z.Type.BMPSTRING)for(var i=0;i<t.value.length;++i)n.putInt16(t.value.charCodeAt(i));else t.type===z.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 i=a.length-1;i>=0;--i)e.putByte(a.charCodeAt(i))}return e.putBuffer(n),e};z.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,o,i,s,a=2;a<e.length;++a){n=!0,o=[],i=parseInt(e[a],10);do s=i&127,i=i>>>7,n||(s|=128),o.push(s),n=!1;while(i>0);for(var c=o.length-1;c>=0;--c)r.putByte(o[c])}return r};z.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};z.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,o=parseInt(t.substr(4,2),10),i=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,o),e.setUTCHours(i,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),p=u*60+l;p*=6e4,c==="+"?e.setTime(+e-p):e.setTime(+e+p)}return e};z.generalizedTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,4),10),n=parseInt(t.substr(4,2),10)-1,o=parseInt(t.substr(6,2),10),i=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,p=t.charAt(l);if(p==="+"||p==="-"){var y=parseInt(t.substr(l+1,2),10),h=parseInt(t.substr(l+4,2),10);f=y*60+h,f*=6e4,p==="+"&&(f*=-1),u=!0}return t.charAt(14)==="."&&(c=parseFloat(t.substr(14),10)*1e3),u?(e.setUTCFullYear(r,n,o),e.setUTCHours(i,s,a,c),e.setTime(+e+f)):(e.setFullYear(r,n,o),e.setHours(i,s,a,c)),e};z.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};z.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};z.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};z.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)};z.validate=function(t,e,r,n){var o=!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(o=!0,e.value&&Ee.util.isArray(e.value))for(var i=0,s=0;o&&s<e.value.length;++s)o=e.value[s].optional||!1,t.value[i]&&(o=z.validate(t.value[i],e.value[s],r,n),o?++i:e.value[s].optional&&(o=!0)),!o&&n&&n.push("["+e.name+'] Tag class "'+e.tagClass+'", type "'+e.type+'" expected value length "'+e.value.length+'", got "'+t.value.length+'"');if(o&&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 o};var Qx=/[^\\u0000-\\u00ff]/;z.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
|
|
6
|
-
`);for(var
|
|
7
|
-
`,n+=
|
|
8
|
-
`,t.composed){for(var s=0,a="",i=0;i<t.value.length;++i)t.value[i]!==void 0&&(s+=1,a+=z.prettyPrint(t.value[i],e+1,r),i+1<t.value.length&&(a+=","));n+=o+"Sub values: "+s+a}else{if(n+=o+"Value: ",t.type===z.Type.OID){var c=z.derToOid(t.value);n+=c,Ee.pki&&Ee.pki.oids&&c in Ee.pki.oids&&(n+=" ("+Ee.pki.oids[c]+") ")}if(t.type===z.Type.INTEGER)try{n+=z.derToInteger(t.value)}catch{n+="0x"+Ee.util.bytesToHex(t.value)}else if(t.type===z.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===z.Type.OCTETSTRING)Qx.test(t.value)||(n+="("+t.value+") "),n+="0x"+Ee.util.bytesToHex(t.value);else if(t.type===z.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===z.Type.PRINTABLESTRING||t.type===z.Type.IA5String?n+=t.value:Qx.test(t.value)?n+="0x"+Ee.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var _u=se((uM,ey)=>{var qe=ye();Fe();ey.exports=qe.cipher=qe.cipher||{};qe.cipher.algorithms=qe.cipher.algorithms||{};qe.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=qe.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new qe.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};qe.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=qe.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new qe.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};qe.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),qe.cipher.algorithms[t]=e};qe.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in qe.cipher.algorithms?qe.cipher.algorithms[t]:null};var Tu=qe.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)};Tu.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=qe.util.createBuffer(),this.output=t.output||qe.util.createBuffer(),this.mode.start(e)};Tu.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()};Tu.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 Ru=se((hM,ty)=>{var He=ye();Fe();He.cipher=He.cipher||{};var ae=ty.exports=He.cipher.modes=He.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=Ua(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=He.util.createBuffer(),this._partialBytes=0};ae.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Ua(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 o=0;o<this._ints;++o)this._inBlock[o]=t.getInt32()^this._outBlock[o],e.putInt32(this._inBlock[o]);return}var i=(this.blockSize-n)%this.blockSize;i>0&&(i=this.blockSize-i),this._partialOutput.clear();for(var o=0;o<this._ints;++o)this._partialBlock[o]=t.getInt32()^this._outBlock[o],this._partialOutput.putInt32(this._partialBlock[o]);if(i>0)t.read-=this.blockSize;else for(var o=0;o<this._ints;++o)this._inBlock[o]=this._partialBlock[o];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),i>0&&!r)return e.putBytes(this._partialOutput.getBytes(i-this._partialBytes)),this._partialBytes=i,!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 o=0;o<this._ints;++o)this._inBlock[o]=t.getInt32(),e.putInt32(this._inBlock[o]^this._outBlock[o]);return}var i=(this.blockSize-n)%this.blockSize;i>0&&(i=this.blockSize-i),this._partialOutput.clear();for(var o=0;o<this._ints;++o)this._partialBlock[o]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[o]^this._outBlock[o]);if(i>0)t.read-=this.blockSize;else for(var o=0;o<this._ints;++o)this._inBlock[o]=this._partialBlock[o];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),i>0&&!r)return e.putBytes(this._partialOutput.getBytes(i-this._partialBytes)),this._partialBytes=i,!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=He.util.createBuffer(),this._partialBytes=0};ae.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Ua(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 o=0;o<this._ints;++o)e.putInt32(t.getInt32()^this._outBlock[o]),this._inBlock[o]=this._outBlock[o];return}var i=(this.blockSize-n)%this.blockSize;i>0&&(i=this.blockSize-i),this._partialOutput.clear();for(var o=0;o<this._ints;++o)this._partialOutput.putInt32(t.getInt32()^this._outBlock[o]);if(i>0)t.read-=this.blockSize;else for(var o=0;o<this._ints;++o)this._inBlock[o]=this._outBlock[o];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),i>0&&!r)return e.putBytes(this._partialOutput.getBytes(i-this._partialBytes)),this._partialBytes=i,!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=He.util.createBuffer(),this._partialBytes=0};ae.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=Ua(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 o=0;o<this._ints;++o)e.putInt32(t.getInt32()^this._outBlock[o]);else{var i=(this.blockSize-n)%this.blockSize;i>0&&(i=this.blockSize-i),this._partialOutput.clear();for(var o=0;o<this._ints;++o)this._partialOutput.putInt32(t.getInt32()^this._outBlock[o]);if(i>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),i>0&&!r)return e.putBytes(this._partialOutput.getBytes(i-this._partialBytes)),this._partialBytes=i,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}Pa(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=He.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=He.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=He.util.createBuffer(t.additionalData):r=He.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=He.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(ku(n*8)))}this._inBlock=this._j0.slice(0),Pa(this._inBlock),this._partialBytes=0,r=He.util.createBuffer(r),this._aDataLength=ku(r.length()*8);var o=r.length()%this.blockSize;for(o&&r.fillWithByte(0,this.blockSize-o),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 o=0;o<this._ints;++o)e.putInt32(this._outBlock[o]^=t.getInt32());this._cipherLength+=this.blockSize}else{var i=(this.blockSize-n)%this.blockSize;i>0&&(i=this.blockSize-i),this._partialOutput.clear();for(var o=0;o<this._ints;++o)this._partialOutput.putInt32(t.getInt32()^this._outBlock[o]);if(i<=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 o=0;o<this._ints;++o)this._outBlock[o]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),i>0&&!r)return t.read-=this.blockSize,e.putBytes(this._partialOutput.getBytes(i-this._partialBytes)),this._partialBytes=i,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Pa(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),Pa(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 o=0;o<this._ints;++o)e.putInt32(this._outBlock[o]^this._hashBlock[o]);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=He.util.createBuffer();var n=this._aDataLength.concat(ku(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var o=[];this.cipher.encrypt(this._j0,o);for(var i=0;i<this._ints;++i)this.tag.putInt32(this._s[i]^o[i]);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),o=0;o<128;++o){var i=t[o/32|0]&1<<31-o%32;i&&(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,o=t[n]>>>(7-r%8)*4&15,i=this._m[r][o];e[0]^=i[0],e[1]^=i[1],e[2]^=i[2],e[3]^=i[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,o=16*r,i=new Array(o),s=0;s<o;++s){var a=[0,0,0,0],c=s/n|0,f=(n-1-s%n)*e;a[c]=1<<e-1<<f,i[s]=this.generateSubHashTable(this.multiply(a,t),e)}return i};ae.gcm.prototype.generateSubHashTable=function(t,e){var r=1<<e,n=r>>>1,o=new Array(r);o[n]=t.slice(0);for(var i=n>>>1;i>0;)this.pow(o[2*i],o[i]=[]),i>>=1;for(i=2;i<n;){for(var s=1;s<i;++s){var a=o[i],c=o[s];o[i+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}i*=2}for(o[0]=[0,0,0,0],i=n+1;i<r;++i){var f=o[i^n];o[i]=[t[0]^f[0],t[1]^f[1],t[2]^f[2],t[3]^f[3]]}return o};function Ua(t,e){if(typeof t=="string"&&(t=He.util.createBuffer(t)),He.util.isArray(t)&&t.length>4){var r=t;t=He.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(!He.util.isArray(t)){for(var o=[],i=e/4,n=0;n<i;++n)o.push(t.getInt32());t=o}return t}function Pa(t){t[t.length-1]=t[t.length-1]+1&4294967295}function ku(t){return[t/4294967296|0,t&4294967295]}});var Pu=se((lM,iy)=>{var be=ye();_u();Ru();Fe();iy.exports=be.aes=be.aes||{};be.aes.startEncrypting=function(t,e,r,n){var o=Oa({key:t,output:r,decrypt:!1,mode:n});return o.start(e),o};be.aes.createEncryptionCipher=function(t,e){return Oa({key:t,output:null,decrypt:!1,mode:e})};be.aes.startDecrypting=function(t,e,r,n){var o=Oa({key:t,output:r,decrypt:!0,mode:n});return o.start(e),o};be.aes.createDecryptionCipher=function(t,e){return Oa({key:t,output:null,decrypt:!0,mode:e})};be.aes.Algorithm=function(t,e){Uu||ny();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,o){return Nu(r._w,n,o,!1)},decrypt:function(n,o){return Nu(r._w,n,o,!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 o=r.length();if(o===16||o===24||o===32){o=o>>>2;for(var n=0;n<o;++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 i=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(i)!==-1;this._w=oy(e,t.decrypt&&!s),this._init=!0}};be.aes._expandKey=function(t,e){return Uu||ny(),oy(t,e)};be.aes._updateBlock=Nu;_o("AES-ECB",be.cipher.modes.ecb);_o("AES-CBC",be.cipher.modes.cbc);_o("AES-CFB",be.cipher.modes.cfb);_o("AES-OFB",be.cipher.modes.ofb);_o("AES-CTR",be.cipher.modes.ctr);_o("AES-GCM",be.cipher.modes.gcm);function _o(t,e){var r=function(){return new be.aes.Algorithm(t,e)};be.cipher.registerAlgorithm(t,r)}var Uu=!1,To=4,ot,Lu,ry,Dn,Nt;function ny(){Uu=!0,ry=[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;ot=new Array(256),Lu=new Array(256),Dn=new Array(4),Nt=new Array(4);for(var e=0;e<4;++e)Dn[e]=new Array(256),Nt[e]=new Array(256);for(var r=0,n=0,o,i,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,ot[r]=a,Lu[a]=r,c=t[a],o=t[r],i=t[o],s=t[i],f=c<<24^a<<16^a<<8^(a^c),u=(o^i^s)<<24^(r^s)<<16^(r^i^s)<<8^(r^o^s);for(var l=0;l<4;++l)Dn[l][r]=f,Nt[l][a]=u,f=f<<24|f>>>8,u=u<<24|u>>>8;r===0?r=n=1:(r=o^t[t[t[o^s]]],n^=t[t[n]])}}function oy(t,e){for(var r=t.slice(0),n,o=1,i=r.length,s=i+6+1,a=To*s,c=i;c<a;++c)n=r[c-1],c%i===0?(n=ot[n>>>16&255]<<24^ot[n>>>8&255]<<16^ot[n&255]<<8^ot[n>>>24]^ry[o]<<24,o++):i>6&&c%i===4&&(n=ot[n>>>24]<<24^ot[n>>>16&255]<<16^ot[n>>>8&255]<<8^ot[n&255]),r[c]=r[c-i]^n;if(e){var f,u=Nt[0],l=Nt[1],p=Nt[2],y=Nt[3],h=r.slice(0);a=r.length;for(var c=0,d=a-To;c<a;c+=To,d-=To)if(c===0||c===a-To)h[c]=r[d],h[c+1]=r[d+3],h[c+2]=r[d+2],h[c+3]=r[d+1];else for(var m=0;m<To;++m)f=r[d+m],h[c+(3&-m)]=u[ot[f>>>24]]^l[ot[f>>>16&255]]^p[ot[f>>>8&255]]^y[ot[f&255]];r=h}return r}function Nu(t,e,r,n){var o=t.length/4-1,i,s,a,c,f;n?(i=Nt[0],s=Nt[1],a=Nt[2],c=Nt[3],f=Lu):(i=Dn[0],s=Dn[1],a=Dn[2],c=Dn[3],f=ot);var u,l,p,y,h,d,m;u=e[0]^t[0],l=e[n?3:1]^t[1],p=e[2]^t[2],y=e[n?1:3]^t[3];for(var x=3,b=1;b<o;++b)h=i[u>>>24]^s[l>>>16&255]^a[p>>>8&255]^c[y&255]^t[++x],d=i[l>>>24]^s[p>>>16&255]^a[y>>>8&255]^c[u&255]^t[++x],m=i[p>>>24]^s[y>>>16&255]^a[u>>>8&255]^c[l&255]^t[++x],y=i[y>>>24]^s[u>>>16&255]^a[l>>>8&255]^c[p&255]^t[++x],u=h,l=d,p=m;r[0]=f[u>>>24]<<24^f[l>>>16&255]<<16^f[p>>>8&255]<<8^f[y&255]^t[++x],r[n?3:1]=f[l>>>24]<<24^f[p>>>16&255]<<16^f[y>>>8&255]<<8^f[u&255]^t[++x],r[2]=f[p>>>24]<<24^f[y>>>16&255]<<16^f[u>>>8&255]<<8^f[l&255]^t[++x],r[n?1:3]=f[y>>>24]<<24^f[u>>>16&255]<<16^f[l>>>8&255]<<8^f[p&255]^t[++x]}function Oa(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 o=n.start;return n.start=function(i,s){var a=null;s instanceof be.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=i,o.call(n,s)},n}});var cy=se((dM,ay)=>{var De=ye();_u();Ru();Fe();ay.exports=De.des=De.des||{};De.des.startEncrypting=function(t,e,r,n){var o=Ma({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return o.start(e),o};De.des.createEncryptionCipher=function(t,e){return Ma({key:t,output:null,decrypt:!1,mode:e})};De.des.startDecrypting=function(t,e,r,n){var o=Ma({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return o.start(e),o};De.des.createDecryptionCipher=function(t,e){return Ma({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,o){return sy(r._keys,n,o,!1)},decrypt:function(n,o){return sy(r._keys,n,o,!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=MS(e),this._init=!0}};qt("DES-ECB",De.cipher.modes.ecb);qt("DES-CBC",De.cipher.modes.cbc);qt("DES-CFB",De.cipher.modes.cfb);qt("DES-OFB",De.cipher.modes.ofb);qt("DES-CTR",De.cipher.modes.ctr);qt("3DES-ECB",De.cipher.modes.ecb);qt("3DES-CBC",De.cipher.modes.cbc);qt("3DES-CFB",De.cipher.modes.cfb);qt("3DES-OFB",De.cipher.modes.ofb);qt("3DES-CTR",De.cipher.modes.ctr);function qt(t,e){var r=function(){return new De.des.Algorithm(t,e)};De.cipher.registerAlgorithm(t,r)}var _S=[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],kS=[-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],RS=[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],LS=[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],NS=[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],US=[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],PS=[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],OS=[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 MS(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],o=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],i=[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],p=[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],d=t.length()>8?3:1,m=[],x=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],b=0,g,v=0;v<d;v++){var w=t.getInt32(),E=t.getInt32();g=(w>>>4^E)&252645135,E^=g,w^=g<<4,g=(E>>>-16^w)&65535,w^=g,E^=g<<-16,g=(w>>>2^E)&858993459,E^=g,w^=g<<2,g=(E>>>-16^w)&65535,w^=g,E^=g<<-16,g=(w>>>1^E)&1431655765,E^=g,w^=g<<1,g=(E>>>8^w)&16711935,w^=g,E^=g<<8,g=(w>>>1^E)&1431655765,E^=g,w^=g<<1,g=w<<8|E>>>20&240,w=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=g;for(var S=0;S<x.length;++S){x[S]?(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 C=e[w>>>28]|r[w>>>24&15]|n[w>>>20&15]|o[w>>>16&15]|i[w>>>12&15]|s[w>>>8&15]|a[w>>>4&15],k=c[E>>>28]|f[E>>>24&15]|u[E>>>20&15]|l[E>>>16&15]|p[E>>>12&15]|y[E>>>8&15]|h[E>>>4&15];g=(k>>>16^C)&65535,m[b++]=C^g,m[b++]=k^g<<16}}return m}function sy(t,e,r,n){var o=t.length===32?3:9,i;o===3?i=n?[30,-2,-2]:[0,32,2]:i=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<o;f+=3){for(var u=i[f+1],l=i[f+2],p=i[f];p!=u;p+=l){var y=c^t[p],h=(c>>>4|c<<28)^t[p+1];s=a,a=c,c=s^(kS[y>>>24&63]|LS[y>>>16&63]|US[y>>>8&63]|OS[y&63]|_S[h>>>24&63]|RS[h>>>16&63]|NS[h>>>8&63]|PS[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 Ma(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 o=n.start;return n.start=function(i,s){var a=null;s instanceof De.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=i,o.call(n,s)},n}});var Bn=se((pM,fy)=>{var Fa=ye();fy.exports=Fa.md=Fa.md||{};Fa.md.algorithms=Fa.md.algorithms||{}});var hy=se((mM,uy)=>{var br=ye();Bn();Fe();var FS=uy.exports=br.hmac=br.hmac||{};FS.create=function(){var t=null,e=null,r=null,n=null,o={};return o.start=function(i,s){if(i!==null)if(typeof i=="string")if(i=i.toLowerCase(),i in br.md.algorithms)e=br.md.algorithms[i].create();else throw new Error('Unknown hash algorithm "'+i+'"');else e=i;if(s===null)s=t;else{if(typeof s=="string")s=br.util.createBuffer(s);else if(br.util.isArray(s)){var a=s;s=br.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=br.util.createBuffer(),n=br.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)},o.update=function(i){e.update(i)},o.getMac=function(){var i=e.digest().bytes();return e.start(),e.update(n),e.update(i),e.digest()},o.digest=o.getMac,o}});var Ka=se(()=>{});var dy=se((gM,ly)=>{var it=ye();hy();Bn();Fe();var KS=it.pkcs5=it.pkcs5||{},wr;it.util.isNodejs&&!it.options.usePureJavaScript&&(wr=Ka());ly.exports=it.pbkdf2=KS.pbkdf2=function(t,e,r,n,o,i){if(typeof o=="function"&&(i=o,o=null),it.util.isNodejs&&!it.options.usePureJavaScript&&wr.pbkdf2&&(o===null||typeof o!="object")&&(wr.pbkdf2Sync.length>4||!o||o==="sha1"))return typeof o!="string"&&(o="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),i?wr.pbkdf2Sync.length===4?wr.pbkdf2(t,e,r,n,function(g,v){if(g)return i(g);i(null,v.toString("binary"))}):wr.pbkdf2(t,e,r,n,o,function(g,v){if(g)return i(g);i(null,v.toString("binary"))}):wr.pbkdf2Sync.length===4?wr.pbkdf2Sync(t,e,r,n).toString("binary"):wr.pbkdf2Sync(t,e,r,n,o).toString("binary");if((typeof o>"u"||o===null)&&(o="sha1"),typeof o=="string"){if(!(o in it.md.algorithms))throw new Error("Unknown hash algorithm: "+o);o=it.md[o].create()}var s=o.digestLength;if(n>4294967295*s){var a=new Error("Derived key is too long.");if(i)return i(a);throw a}var c=Math.ceil(n/s),f=n-(c-1)*s,u=it.hmac.create();u.start(o,t);var l="",p,y,h;if(!i){for(var d=1;d<=c;++d){u.start(null,null),u.update(e),u.update(it.util.int32ToBytes(d)),p=h=u.digest().getBytes();for(var m=2;m<=r;++m)u.start(null,null),u.update(h),y=u.digest().getBytes(),p=it.util.xorBytes(p,y,s),h=y;l+=d<c?p:p.substr(0,f)}return l}var d=1,m;function x(){if(d>c)return i(null,l);u.start(null,null),u.update(e),u.update(it.util.int32ToBytes(d)),p=h=u.digest().getBytes(),m=2,b()}function b(){if(m<=r)return u.start(null,null),u.update(h),y=u.digest().getBytes(),p=it.util.xorBytes(p,y,s),h=y,++m,it.util.setImmediate(b);l+=d<c?p:p.substr(0,f),++d,x()}x()}});var xy=se((bM,my)=>{var za=ye();Fe();var py=my.exports=za.pem=za.pem||{};py.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
|
|
9
|
-
`,n;if(
|
|
10
|
-
`),r+=
|
|
11
|
-
`,r+="-----END "+
|
|
12
|
-
`,r};
|
|
13
|
-
`;for(var
|
|
14
|
-
`+
|
|
15
|
-
`+a+e.substr(s+1),i=o-s-1,s=-1,++o}else(e[o]===" "||e[o]===" "||e[o]===",")&&(s=o);return e}function VS(t){return t.replace(/^\s+/,"")}});var Ey=se((wM,vy)=>{var Ht=ye();Bn();Fe();var gy=vy.exports=Ht.sha256=Ht.sha256||{};Ht.md.sha256=Ht.md.algorithms.sha256=gy;gy.create=function(){by||zS();var t=null,e=Ht.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 o=n.messageLengthSize/4,i=0;i<o;++i)n.fullMessageLength.push(0);return e=Ht.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(o,i){i==="utf8"&&(o=Ht.util.encodeUtf8(o));var s=o.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(o),yy(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var o=Ht.util.createBuffer();o.putBytes(e.bytes());var i=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=i&n.blockLength-1;o.putBytes(Ou.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,o.putInt32(f>>>0),f=a>>>0;o.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};yy(l,r,o);var p=Ht.util.createBuffer();return p.putInt32(l.h0),p.putInt32(l.h1),p.putInt32(l.h2),p.putInt32(l.h3),p.putInt32(l.h4),p.putInt32(l.h5),p.putInt32(l.h6),p.putInt32(l.h7),p},n};var Ou=null,by=!1,wy=null;function zS(){Ou="\x80",Ou+=Ht.util.fillString("\0",64),wy=[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],by=!0}function yy(t,e,r){for(var n,o,i,s,a,c,f,u,l,p,y,h,d,m,x,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,o=e[f-15],o=(o>>>7|o<<25)^(o>>>18|o<<14)^o>>>3,e[f]=n+e[f-7]+o+e[f-16]|0;for(u=t.h0,l=t.h1,p=t.h2,y=t.h3,h=t.h4,d=t.h5,m=t.h6,x=t.h7,f=0;f<64;++f)s=(h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7),a=m^h&(d^m),i=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),c=u&l|p&(u^l),n=x+s+a+wy[f]+e[f],o=i+c,x=m,m=d,d=h,h=y+n>>>0,y=p,p=l,l=u,u=n+o>>>0;t.h0=t.h0+u|0,t.h1=t.h1+l|0,t.h2=t.h2+p|0,t.h3=t.h3+y|0,t.h4=t.h4+h|0,t.h5=t.h5+d|0,t.h6=t.h6+m|0,t.h7=t.h7+x|0,b-=64}}});var Ay=se((vM,Sy)=>{var $t=ye();Fe();var qa=null;$t.util.isNodejs&&!$t.options.usePureJavaScript&&!process.versions["node-webkit"]&&(qa=Ka());var qS=Sy.exports=$t.prng=$t.prng||{};qS.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),o=0;o<32;++o)n[o]=r.create();e.pools=n,e.pool=0,e.generate=function(f,u){if(!u)return e.generateSync(f);var l=e.plugin.cipher,p=e.plugin.increment,y=e.plugin.formatKey,h=e.plugin.formatSeed,d=$t.util.createBuffer();e.key=null,m();function m(x){if(x)return u(x);if(d.length()>=f)return u(null,d.getBytes(f));if(e.generated>1048575&&(e.key=null),e.key===null)return $t.util.nextTick(function(){i(m)});var b=l(e.key,e.seed);e.generated+=b.length,d.putBytes(b),e.key=y(l(e.key,p(e.seed))),e.seed=h(l(e.key,e.seed)),$t.util.setImmediate(m)}},e.generateSync=function(f){var u=e.plugin.cipher,l=e.plugin.increment,p=e.plugin.formatKey,y=e.plugin.formatSeed;e.key=null;for(var h=$t.util.createBuffer();h.length()<f;){e.generated>1048575&&(e.key=null),e.key===null&&s();var d=u(e.key,e.seed);e.generated+=d.length,h.putBytes(d),e.key=p(u(e.key,l(e.seed))),e.seed=y(u(e.key,e.seed))}return h.getBytes(f)};function i(f){if(e.pools[0].messageLength>=32)return a(),f();var u=32-e.pools[0].messageLength<<5;e.seedFile(u,function(l,p){if(l)return f(l);e.collect(p),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 p=f.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(p),e.generated=0}function c(f){var u=null,l=$t.util.globalScope,p=l.crypto||l.msCrypto;p&&p.getRandomValues&&(u=function(w){return p.getRandomValues(w)});var y=$t.util.createBuffer();if(u)for(;y.length()<f;){var h=Math.max(1,Math.min(f-y.length(),65536)/4),d=new Uint32Array(Math.floor(h));try{u(d);for(var m=0;m<d.length;++m)y.putInt32(d[m])}catch(w){if(!(typeof QuotaExceededError<"u"&&w instanceof QuotaExceededError))throw w}}if(y.length()<f)for(var x,b,g,v=Math.floor(Math.random()*65536);y.length()<f;){b=16807*(v&65535),x=16807*(v>>16),b+=(x&32767)<<16,b+=x>>15,b=(b&2147483647)+(b>>31),v=b&4294967295;for(var m=0;m<3;++m)g=v>>>(m<<3),g^=Math.floor(Math.random()*256),y.putByte(g&255)}return y.getBytes(f)}return qa?(e.seedFile=function(f,u){qa.randomBytes(f,function(l,p){if(l)return u(l);u(null,p.toString())})},e.seedFileSync=function(f){return qa.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="",p=0;p<u;p+=8)l+=String.fromCharCode(f>>p&255);e.collect(l)},e.registerWorker=function(f){if(f===self)e.seedFile=function(l,p){function y(h){var d=h.data;d.forge&&d.forge.prng&&(self.removeEventListener("message",y),p(d.forge.prng.err,d.forge.prng.bytes))}self.addEventListener("message",y),self.postMessage({forge:{prng:{needed:l}}})};else{var u=function(l){var p=l.data;p.forge&&p.forge.prng&&e.seedFile(p.forge.prng.needed,function(y,h){f.postMessage({forge:{prng:{err:y,bytes:h}}})})};f.addEventListener("message",u)}},e}});var Gi=se((EM,Mu)=>{var $e=ye();Pu();Ey();Ay();Fe();(function(){if($e.random&&$e.random.getBytes){Mu.exports=$e.random;return}(function(t){var e={},r=new Array(4),n=$e.util.createBuffer();e.formatKey=function(l){var p=$e.util.createBuffer(l);return l=new Array(4),l[0]=p.getInt32(),l[1]=p.getInt32(),l[2]=p.getInt32(),l[3]=p.getInt32(),$e.aes._expandKey(l,!1)},e.formatSeed=function(l){var p=$e.util.createBuffer(l);return l=new Array(4),l[0]=p.getInt32(),l[1]=p.getInt32(),l[2]=p.getInt32(),l[3]=p.getInt32(),l},e.cipher=function(l,p){return $e.aes._updateBlock(l,p,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=$e.md.sha256;function o(){var l=$e.prng.create(e);return l.getBytes=function(p,y){return l.generate(p,y)},l.getBytesSync=function(p){return l.generate(p)},l}var i=o(),s=null,a=$e.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),$e.options.usePureJavaScript||!$e.util.isNodejs&&!s){if(typeof window>"u"||window.document,i.collectInt(+new Date,32),typeof navigator<"u"){var f="";for(var u in navigator)try{typeof navigator[u]=="string"&&(f+=navigator[u])}catch{}i.collect(f),f=null}t&&(t().mousemove(function(l){i.collectInt(l.clientX,16),i.collectInt(l.clientY,16)}),t().keypress(function(l){i.collectInt(l.charCode,8)}))}if(!$e.random)$e.random=i;else for(var u in i)$e.random[u]=i[u];$e.random.createInstance=o,Mu.exports=$e.random})(typeof jQuery<"u"?jQuery:null)})()});var Iy=se((SM,By)=>{var ht=ye();Fe();var Fu=[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],Cy=[1,2,3,5],HS=function(t,e){return t<<e&65535|(t&65535)>>16-e},$S=function(t,e){return(t&65535)>>e|t<<16-e&65535};By.exports=ht.rc2=ht.rc2||{};ht.rc2.expandKey=function(t,e){typeof t=="string"&&(t=ht.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),o=e,i=Math.ceil(o/8),s=255>>(o&7),a;for(a=n;a<128;a++)r.putByte(Fu[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-i,Fu[r.at(128-i)&s]),a=127-i;a>=0;a--)r.setAt(a,Fu[r.at(a+1)^r.at(a+i)]);return r};var Dy=function(t,e,r){var n=!1,o=null,i=null,s=null,a,c,f,u,l=[];for(t=ht.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]=HS(h[f],Cy[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]=$S(h[f],Cy[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 p=function(h){var d=[];for(f=0;f<4;f++){var m=o.getInt16Le();s!==null&&(r?m^=s.getInt16Le():s.putInt16Le(m)),d.push(m&65535)}u=r?0:63;for(var x=0;x<h.length;x++)for(var b=0;b<h[x][0];b++)h[x][1](d);for(f=0;f<4;f++)s!==null&&(r?s.putInt16Le(d[f]):d[f]^=s.getInt16Le()),i.putInt16Le(d[f])},y=null;return y={start:function(h,d){h&&typeof h=="string"&&(h=ht.util.createBuffer(h)),n=!1,o=ht.util.createBuffer(),i=d||new ht.util.createBuffer,s=h,y.output=i},update:function(h){for(n||o.putBuffer(h);o.length()>=8;)p([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(h){var d=!0;if(r)if(h)d=h(8,o,!r);else{var m=o.length()===8?8:8-o.length();o.fillWithByte(m,m)}if(d&&(n=!0,y.update()),!r&&(d=o.length()===0,d))if(h)d=h(8,i,!r);else{var x=i.length(),b=i.at(x-1);b>x?d=!1:i.truncate(b)}return d}},y};ht.rc2.startEncrypting=function(t,e,r){var n=ht.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};ht.rc2.createEncryptionCipher=function(t,e){return Dy(t,e,!0)};ht.rc2.startDecrypting=function(t,e,r){var n=ht.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};ht.rc2.createDecryptionCipher=function(t,e){return Dy(t,e,!1)}});var Ga=se((AM,Py)=>{var Ku=ye();Py.exports=Ku.jsbn=Ku.jsbn||{};var vr,GS=0xdeadbeefcafe,Ty=(GS&16777215)==15715070;function N(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))}Ku.jsbn.BigInteger=N;function fe(){return new N(null)}function WS(t,e,r,n,o,i){for(;--i>=0;){var s=e*this.data[t++]+r.data[n]+o;o=Math.floor(s/67108864),r.data[n++]=s&67108863}return o}function YS(t,e,r,n,o,i){for(var s=e&32767,a=e>>15;--i>=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]+(o&1073741823),o=(c>>>30)+(u>>>15)+a*f+(o>>>30),r.data[n++]=c&1073741823}return o}function _y(t,e,r,n,o,i){for(var s=e&16383,a=e>>14;--i>=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]+o,o=(c>>28)+(u>>14)+a*f,r.data[n++]=c&268435455}return o}typeof navigator>"u"?(N.prototype.am=_y,vr=28):Ty&&navigator.appName=="Microsoft Internet Explorer"?(N.prototype.am=YS,vr=30):Ty&&navigator.appName!="Netscape"?(N.prototype.am=WS,vr=26):(N.prototype.am=_y,vr=28);N.prototype.DB=vr;N.prototype.DM=(1<<vr)-1;N.prototype.DV=1<<vr;var Vu=52;N.prototype.FV=Math.pow(2,Vu);N.prototype.F1=Vu-vr;N.prototype.F2=2*vr-Vu;var XS="0123456789abcdefghijklmnopqrstuvwxyz",Ha=new Array,ko,vt;ko=48;for(vt=0;vt<=9;++vt)Ha[ko++]=vt;ko=97;for(vt=10;vt<36;++vt)Ha[ko++]=vt;ko=65;for(vt=10;vt<36;++vt)Ha[ko++]=vt;function ky(t){return XS.charAt(t)}function Ry(t,e){var r=Ha[t.charCodeAt(e)];return r??-1}function jS(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 ZS(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 jr(t){var e=fe();return e.fromInt(t),e}function QS(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,o=!1,i=0;--n>=0;){var s=r==8?t[n]&255:Ry(t,n);if(s<0){t.charAt(n)=="-"&&(o=!0);continue}o=!1,i==0?this.data[this.t++]=s:i+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-i)-1)<<i,this.data[this.t++]=s>>this.DB-i):this.data[this.t-1]|=s<<i,i+=r,i>=this.DB&&(i-=this.DB)}r==8&&t[0]&128&&(this.s=-1,i>0&&(this.data[this.t-1]|=(1<<this.DB-i)-1<<i)),this.clamp(),o&&N.ZERO.subTo(this,this)}function JS(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function e5(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,o=!1,i="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(o=!0,i=ky(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&&(o=!0),o&&(i+=ky(n));return o?i:"0"}function t5(){var t=fe();return N.ZERO.subTo(this,t),t}function r5(){return this.s<0?this.negate():this}function n5(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 $a(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 o5(){return this.t<=0?0:this.DB*(this.t-1)+$a(this.data[this.t-1]^this.s&this.DM)}function i5(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 s5(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 a5(t,e){var r=t%this.DB,n=this.DB-r,o=(1<<n)-1,i=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+i+1]=this.data[a]>>n|s,s=(this.data[a]&o)<<r;for(a=i-1;a>=0;--a)e.data[a]=0;e.data[i]=s,e.t=this.t+i+1,e.s=this.s,e.clamp()}function c5(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,o=this.DB-n,i=(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]&i)<<o,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&i)<<o),e.t=this.t-r,e.clamp()}function f5(t,e){for(var r=0,n=0,o=Math.min(t.t,this.t);r<o;)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 u5(t,e){var r=this.abs(),n=t.abs(),o=r.t;for(e.t=o+n.t;--o>=0;)e.data[o]=0;for(o=0;o<n.t;++o)e.data[o+r.t]=r.am(0,n.data[o],e,o,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&N.ZERO.subTo(e,e)}function h5(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 l5(t,e,r){var n=t.abs();if(!(n.t<=0)){var o=this.abs();if(o.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=fe());var i=fe(),s=this.s,a=t.s,c=this.DB-$a(n.data[n.t-1]);c>0?(n.lShiftTo(c,i),o.lShiftTo(c,r)):(n.copyTo(i),o.copyTo(r));var f=i.t,u=i.data[f-1];if(u!=0){var l=u*(1<<this.F1)+(f>1?i.data[f-2]>>this.F2:0),p=this.FV/l,y=(1<<this.F1)/l,h=1<<this.F2,d=r.t,m=d-f,x=e??fe();for(i.dlShiftTo(m,x),r.compareTo(x)>=0&&(r.data[r.t++]=1,r.subTo(x,r)),N.ONE.dlShiftTo(f,x),x.subTo(i,i);i.t<f;)i.data[i.t++]=0;for(;--m>=0;){var b=r.data[--d]==u?this.DM:Math.floor(r.data[d]*p+(r.data[d-1]+h)*y);if((r.data[d]+=i.am(0,b,r,m,0,f))<b)for(i.dlShiftTo(m,x),r.subTo(x,r);r.data[d]<--b;)r.subTo(x,r)}e!=null&&(r.drShiftTo(f,e),s!=a&&N.ZERO.subTo(e,e)),r.t=f,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&N.ZERO.subTo(r,r)}}}function d5(t){var e=fe();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(N.ZERO)>0&&t.subTo(e,e),e}function In(t){this.m=t}function p5(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function m5(t){return t}function x5(t){t.divRemTo(this.m,null,t)}function y5(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function g5(t,e){t.squareTo(e),this.reduce(e)}In.prototype.convert=p5;In.prototype.revert=m5;In.prototype.reduce=x5;In.prototype.mulTo=y5;In.prototype.sqrTo=g5;function b5(){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 Tn(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 w5(t){var e=fe();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(N.ZERO)>0&&this.m.subTo(e,e),e}function v5(t){var e=fe();return t.copyTo(e),this.reduce(e),e}function E5(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 S5(t,e){t.squareTo(e),this.reduce(e)}function A5(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Tn.prototype.convert=w5;Tn.prototype.revert=v5;Tn.prototype.reduce=E5;Tn.prototype.mulTo=A5;Tn.prototype.sqrTo=S5;function C5(){return(this.t>0?this.data[0]&1:this.s)==0}function D5(t,e){if(t>4294967295||t<1)return N.ONE;var r=fe(),n=fe(),o=e.convert(this),i=$a(t)-1;for(o.copyTo(r);--i>=0;)if(e.sqrTo(r,n),(t&1<<i)>0)e.mulTo(n,o,r);else{var s=r;r=n,n=s}return e.revert(r)}function B5(t,e){var r;return t<256||e.isEven()?r=new In(e):r=new Tn(e),this.exp(t,r)}N.prototype.copyTo=jS;N.prototype.fromInt=ZS;N.prototype.fromString=QS;N.prototype.clamp=JS;N.prototype.dlShiftTo=i5;N.prototype.drShiftTo=s5;N.prototype.lShiftTo=a5;N.prototype.rShiftTo=c5;N.prototype.subTo=f5;N.prototype.multiplyTo=u5;N.prototype.squareTo=h5;N.prototype.divRemTo=l5;N.prototype.invDigit=b5;N.prototype.isEven=C5;N.prototype.exp=D5;N.prototype.toString=e5;N.prototype.negate=t5;N.prototype.abs=r5;N.prototype.compareTo=n5;N.prototype.bitLength=o5;N.prototype.mod=d5;N.prototype.modPowInt=B5;N.ZERO=jr(0);N.ONE=jr(1);function I5(){var t=fe();return this.copyTo(t),t}function T5(){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 _5(){return this.t==0?this.s:this.data[0]<<24>>24}function k5(){return this.t==0?this.s:this.data[0]<<16>>16}function R5(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function L5(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function N5(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=jr(r),o=fe(),i=fe(),s="";for(this.divRemTo(n,o,i);o.signum()>0;)s=(r+i.intValue()).toString(t).substr(1)+s,o.divRemTo(n,o,i);return i.intValue().toString(t)+s}function U5(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),o=!1,i=0,s=0,a=0;a<t.length;++a){var c=Ry(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(o=!0);continue}s=e*s+c,++i>=r&&(this.dMultiply(n),this.dAddOffset(s,0),i=0,s=0)}i>0&&(this.dMultiply(Math.pow(e,i)),this.dAddOffset(s,0)),o&&N.ZERO.subTo(this,this)}function P5(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(N.ONE.shiftLeft(t-1),zu,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(N.ONE.shiftLeft(t-1),this);else{var n=new Array,o=t&7;n.length=(t>>3)+1,e.nextBytes(n),o>0?n[0]&=(1<<o)-1:n[0]=0,this.fromString(n,256)}}function O5(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,o=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[o++]=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),o==0&&(this.s&128)!=(n&128)&&++o,(o>0||n!=this.s)&&(e[o++]=n);return e}function M5(t){return this.compareTo(t)==0}function F5(t){return this.compareTo(t)<0?this:t}function K5(t){return this.compareTo(t)>0?this:t}function V5(t,e,r){var n,o,i=Math.min(t.t,this.t);for(n=0;n<i;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(o=t.s&this.DM,n=i;n<this.t;++n)r.data[n]=e(this.data[n],o);r.t=this.t}else{for(o=this.s&this.DM,n=i;n<t.t;++n)r.data[n]=e(o,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function z5(t,e){return t&e}function q5(t){var e=fe();return this.bitwiseTo(t,z5,e),e}function zu(t,e){return t|e}function H5(t){var e=fe();return this.bitwiseTo(t,zu,e),e}function Ly(t,e){return t^e}function $5(t){var e=fe();return this.bitwiseTo(t,Ly,e),e}function Ny(t,e){return t&~e}function G5(t){var e=fe();return this.bitwiseTo(t,Ny,e),e}function W5(){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 Y5(t){var e=fe();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function X5(t){var e=fe();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function j5(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 Z5(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+j5(this.data[t]);return this.s<0?this.t*this.DB:-1}function Q5(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function J5(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=Q5(this.data[r]^e);return t}function e6(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function t6(t,e){var r=N.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function r6(t){return this.changeBit(t,zu)}function n6(t){return this.changeBit(t,Ny)}function o6(t){return this.changeBit(t,Ly)}function i6(t,e){for(var r=0,n=0,o=Math.min(t.t,this.t);r<o;)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 s6(t){var e=fe();return this.addTo(t,e),e}function a6(t){var e=fe();return this.subTo(t,e),e}function c6(t){var e=fe();return this.multiplyTo(t,e),e}function f6(t){var e=fe();return this.divRemTo(t,e,null),e}function u6(t){var e=fe();return this.divRemTo(t,null,e),e}function h6(t){var e=fe(),r=fe();return this.divRemTo(t,e,r),new Array(e,r)}function l6(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function d6(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 Wi(){}function Uy(t){return t}function p6(t,e,r){t.multiplyTo(e,r)}function m6(t,e){t.squareTo(e)}Wi.prototype.convert=Uy;Wi.prototype.revert=Uy;Wi.prototype.mulTo=p6;Wi.prototype.sqrTo=m6;function x6(t){return this.exp(t,new Wi)}function y6(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 o;for(o=r.t-this.t;n<o;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(o=Math.min(t.t,e);n<o;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function g6(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 Ro(t){this.r2=fe(),this.q3=fe(),N.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function b6(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 w6(t){return t}function v6(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 E6(t,e){t.squareTo(e),this.reduce(e)}function S6(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Ro.prototype.convert=b6;Ro.prototype.revert=w6;Ro.prototype.reduce=v6;Ro.prototype.mulTo=S6;Ro.prototype.sqrTo=E6;function A6(t,e){var r=t.bitLength(),n,o=jr(1),i;if(r<=0)return o;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?i=new In(e):e.isEven()?i=new Ro(e):i=new Tn(e);var s=new Array,a=3,c=n-1,f=(1<<n)-1;if(s[1]=i.convert(this),n>1){var u=fe();for(i.sqrTo(s[1],u);a<=f;)s[a]=fe(),i.mulTo(u,s[a-2],s[a]),a+=2}var l=t.t-1,p,y=!0,h=fe(),d;for(r=$a(t.data[l])-1;l>=0;){for(r>=c?p=t.data[l]>>r-c&f:(p=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(p|=t.data[l-1]>>this.DB+r-c)),a=n;!(p&1);)p>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),y)s[p].copyTo(o),y=!1;else{for(;a>1;)i.sqrTo(o,h),i.sqrTo(h,o),a-=2;a>0?i.sqrTo(o,h):(d=o,o=h,h=d),i.mulTo(h,s[p],o)}for(;l>=0&&!(t.data[l]&1<<r);)i.sqrTo(o,h),d=o,o=h,h=d,--r<0&&(r=this.DB-1,--l)}return i.revert(o)}function C6(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 o=e.getLowestSetBit(),i=r.getLowestSetBit();if(i<0)return e;for(o<i&&(i=o),i>0&&(e.rShiftTo(i,e),r.rShiftTo(i,r));e.signum()>0;)(o=e.getLowestSetBit())>0&&e.rShiftTo(o,e),(o=r.getLowestSetBit())>0&&r.rShiftTo(o,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return i>0&&r.lShiftTo(i,r),r}function D6(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 B6(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return N.ZERO;for(var r=t.clone(),n=this.clone(),o=jr(1),i=jr(0),s=jr(0),a=jr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!o.isEven()||!i.isEven())&&(o.addTo(this,o),i.subTo(t,i)),o.rShiftTo(1,o)):i.isEven()||i.subTo(t,i),i.rShiftTo(1,i);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&&o.subTo(s,o),i.subTo(a,i)):(n.subTo(r,n),e&&s.subTo(o,s),a.subTo(i,a))}if(n.compareTo(N.ONE)!=0)return N.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 Ut=[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],I6=(1<<26)/Ut[Ut.length-1];function T6(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=Ut[Ut.length-1]){for(e=0;e<Ut.length;++e)if(r.data[0]==Ut[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<Ut.length;){for(var n=Ut[e],o=e+1;o<Ut.length&&n<I6;)n*=Ut[o++];for(n=r.modInt(n);e<o;)if(n%Ut[e++]==0)return!1}return r.millerRabin(t)}function _6(t){var e=this.subtract(N.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),o=k6(),i,s=0;s<t;++s){do i=new N(this.bitLength(),o);while(i.compareTo(N.ONE)<=0||i.compareTo(e)>=0);var a=i.modPow(n,this);if(a.compareTo(N.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(N.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function k6(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}N.prototype.chunkSize=R5;N.prototype.toRadix=N5;N.prototype.fromRadix=U5;N.prototype.fromNumber=P5;N.prototype.bitwiseTo=V5;N.prototype.changeBit=t6;N.prototype.addTo=i6;N.prototype.dMultiply=l6;N.prototype.dAddOffset=d6;N.prototype.multiplyLowerTo=y6;N.prototype.multiplyUpperTo=g6;N.prototype.modInt=D6;N.prototype.millerRabin=_6;N.prototype.clone=I5;N.prototype.intValue=T5;N.prototype.byteValue=_5;N.prototype.shortValue=k5;N.prototype.signum=L5;N.prototype.toByteArray=O5;N.prototype.equals=M5;N.prototype.min=F5;N.prototype.max=K5;N.prototype.and=q5;N.prototype.or=H5;N.prototype.xor=$5;N.prototype.andNot=G5;N.prototype.not=W5;N.prototype.shiftLeft=Y5;N.prototype.shiftRight=X5;N.prototype.getLowestSetBit=Z5;N.prototype.bitCount=J5;N.prototype.testBit=e6;N.prototype.setBit=r6;N.prototype.clearBit=n6;N.prototype.flipBit=o6;N.prototype.add=s6;N.prototype.subtract=a6;N.prototype.multiply=c6;N.prototype.divide=f6;N.prototype.remainder=u6;N.prototype.divideAndRemainder=h6;N.prototype.modPow=A6;N.prototype.modInverse=B6;N.prototype.pow=x6;N.prototype.gcd=C6;N.prototype.isProbablePrime=T6});var Vy=se((CM,Ky)=>{var Gt=ye();Bn();Fe();var My=Ky.exports=Gt.sha1=Gt.sha1||{};Gt.md.sha1=Gt.md.algorithms.sha1=My;My.create=function(){Fy||R6();var t=null,e=Gt.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 o=n.messageLengthSize/4,i=0;i<o;++i)n.fullMessageLength.push(0);return e=Gt.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(o,i){i==="utf8"&&(o=Gt.util.encodeUtf8(o));var s=o.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(o),Oy(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var o=Gt.util.createBuffer();o.putBytes(e.bytes());var i=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=i&n.blockLength-1;o.putBytes(qu.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,o.putInt32(f>>>0),f=a>>>0;o.putInt32(f);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};Oy(l,r,o);var p=Gt.util.createBuffer();return p.putInt32(l.h0),p.putInt32(l.h1),p.putInt32(l.h2),p.putInt32(l.h3),p.putInt32(l.h4),p},n};var qu=null,Fy=!1;function R6(){qu="\x80",qu+=Gt.util.fillString("\0",64),Fy=!0}function Oy(t,e,r){for(var n,o,i,s,a,c,f,u,l=r.length();l>=64;){for(o=t.h0,i=t.h1,s=t.h2,a=t.h3,c=t.h4,u=0;u<16;++u)n=r.getInt32(),e[u]=n,f=a^i&(s^a),n=(o<<5|o>>>27)+f+c+1518500249+n,c=a,a=s,s=(i<<30|i>>>2)>>>0,i=o,o=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^i&(s^a),n=(o<<5|o>>>27)+f+c+1518500249+n,c=a,a=s,s=(i<<30|i>>>2)>>>0,i=o,o=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=i^s^a,n=(o<<5|o>>>27)+f+c+1859775393+n,c=a,a=s,s=(i<<30|i>>>2)>>>0,i=o,o=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=i^s^a,n=(o<<5|o>>>27)+f+c+1859775393+n,c=a,a=s,s=(i<<30|i>>>2)>>>0,i=o,o=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=i&s|a&(i^s),n=(o<<5|o>>>27)+f+c+2400959708+n,c=a,a=s,s=(i<<30|i>>>2)>>>0,i=o,o=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=i^s^a,n=(o<<5|o>>>27)+f+c+3395469782+n,c=a,a=s,s=(i<<30|i>>>2)>>>0,i=o,o=n;t.h0=t.h0+o|0,t.h1=t.h1+i|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var Hy=se((DM,qy)=>{var Wt=ye();Fe();Gi();Vy();var zy=qy.exports=Wt.pkcs1=Wt.pkcs1||{};zy.encode_rsa_oaep=function(t,e,r){var n,o,i,s;typeof r=="string"?(n=r,o=arguments[3]||void 0,i=arguments[4]||void 0):r&&(n=r.label||void 0,o=r.seed||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),i?i.start():i=Wt.md.sha1.create(),s||(s=i);var a=Math.ceil(t.n.bitLength()/8),c=a-2*i.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=""),i.update(n,"raw");for(var u=i.digest(),l="",p=c-e.length,y=0;y<p;y++)l+="\0";var h=u.getBytes()+l+""+e;if(!o)o=Wt.random.getBytes(i.digestLength);else if(o.length!==i.digestLength){var f=new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw f.seedLength=o.length,f.digestLength=i.digestLength,f}var d=Wa(o,a-i.digestLength-1,s),m=Wt.util.xorBytes(h,d,h.length),x=Wa(m,i.digestLength,s),b=Wt.util.xorBytes(o,x,o.length);return"\0"+b+m};zy.decode_rsa_oaep=function(t,e,r){var n,o,i;typeof r=="string"?(n=r,o=arguments[3]||void 0):r&&(n=r.label||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(i=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(o===void 0?o=Wt.md.sha1.create():o.start(),i||(i=o),s<2*o.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),o.update(n,"raw");for(var a=o.digest().getBytes(),c=e.charAt(0),f=e.substring(1,o.digestLength+1),u=e.substring(1+o.digestLength),l=Wa(u,o.digestLength,i),p=Wt.util.xorBytes(f,l,f.length),y=Wa(p,s-o.digestLength-1,i),h=Wt.util.xorBytes(u,y,u.length),d=h.substring(0,o.digestLength),m=c!=="\0",x=0;x<o.digestLength;++x)m|=a.charAt(x)!==d.charAt(x);for(var b=1,g=o.digestLength,v=o.digestLength;v<h.length;v++){var w=h.charCodeAt(v),E=w&1^1,S=b?65534:0;m|=w&S,b=b&E,g+=b}if(m||h.charCodeAt(g)!==1)throw new Error("Invalid RSAES-OAEP padding.");return h.substring(g+1)};function Wa(t,e,r){r||(r=Wt.md.sha1.create());for(var n="",o=Math.ceil(e/r.digestLength),i=0;i<o;++i){var s=String.fromCharCode(i>>24&255,i>>16&255,i>>8&255,i&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var $y=se((BM,Hu)=>{var Zr=ye();Fe();Ga();Gi();(function(){if(Zr.prime){Hu.exports=Zr.prime;return}var t=Hu.exports=Zr.prime=Zr.prime||{},e=Zr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var o=function(l,p){return l|p};t.generateProbablePrime=function(l,p,y){typeof p=="function"&&(y=p,p={}),p=p||{};var h=p.algorithm||"PRIMEINC";typeof h=="string"&&(h={name:h}),h.options=h.options||{};var d=p.prng||Zr.random,m={nextBytes:function(x){for(var b=d.getBytesSync(x.length),g=0;g<x.length;++g)x[g]=b.charCodeAt(g)}};if(h.name==="PRIMEINC")return i(l,m,h.options,y);throw new Error("Invalid prime generation algorithm: "+h.name)};function i(l,p,y,h){return"workers"in y?c(l,p,y,h):s(l,p,y,h)}function s(l,p,y,h){var d=f(l,p),m=0,x=u(d.bitLength());"millerRabinTests"in y&&(x=y.millerRabinTests);var b=10;"maxBlockTime"in y&&(b=y.maxBlockTime),a(d,l,p,m,x,b,h)}function a(l,p,y,h,d,m,x){var b=+new Date;do{if(l.bitLength()>p&&(l=f(p,y)),l.isProbablePrime(d))return x(null,l);l.dAddOffset(r[h++%8],0)}while(m<0||+new Date-b<m);Zr.util.setImmediate(function(){a(l,p,y,h,d,m,x)})}function c(l,p,y,h){if(typeof Worker>"u")return s(l,p,y,h);var d=f(l,p),m=y.workers,x=y.workLoad||100,b=x*30/8,g=y.workerScript||"forge/prime.worker.js";if(m===-1)return Zr.util.estimateCores(function(w,E){w&&(E=2),m=E-1,v()});v();function v(){m=Math.max(1,m);for(var w=[],E=0;E<m;++E)w[E]=new Worker(g);for(var S=m,E=0;E<m;++E)w[E].addEventListener("message",k);var C=!1;function k(F){if(!C){--S;var M=F.data;if(M.found){for(var V=0;V<w.length;++V)w[V].terminate();return C=!0,h(null,new e(M.prime,16))}d.bitLength()>l&&(d=f(l,p));var G=d.toString(16);F.target.postMessage({hex:G,workLoad:x}),d.dAddOffset(b,0)}}}}function f(l,p){var y=new e(l,p),h=l-1;return y.testBit(h)||y.bitwiseTo(e.ONE.shiftLeft(h),o,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 Xa=se((IM,Qy)=>{var X=ye();$i();Ga();La();Hy();$y();Gi();Fe();typeof ce>"u"&&(ce=X.jsbn.BigInteger);var ce,$u=X.util.isNodejs?Ka():null,B=X.asn1,Et=X.util;X.pki=X.pki||{};Qy.exports=X.pki.rsa=X.rsa=X.rsa||{};var te=X.pki,L6=[6,4,2,4,2,4,6,2],N6={name:"PrivateKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},U6={name:"RSAPrivateKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},P6={name:"RSAPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:B.Class.UNIVERSAL,type:B.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},O6=X.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},M6={name:"DigestInfo",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:B.Class.UNIVERSAL,type:B.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:B.Class.UNIVERSAL,type:B.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:B.Class.UNIVERSAL,type:B.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:B.Class.UNIVERSAL,type:B.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},F6=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=B.oidToDer(e).getBytes(),o=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[]),i=B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[]);i.value.push(B.create(B.Class.UNIVERSAL,B.Type.OID,!1,n)),i.value.push(B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,""));var s=B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,t.digest().getBytes());return o.value.push(i),o.value.push(s),B.toDer(o).getBytes()},jy=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(X.util.bytesToHex(X.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 o=t.mod(e.p).modPow(e.dP,e.p),i=t.mod(e.q).modPow(e.dQ,e.q);o.compareTo(i)<0;)o=o.add(e.p);var s=o.subtract(i).multiply(e.qInv).mod(e.p).multiply(e.q).add(i);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};te.rsa.encrypt=function(t,e,r){var n=r,o,i=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,o=Zy(t,e,r)):(o=X.util.createBuffer(),o.putBytes(t));for(var s=new ce(o.toHex(),16),a=jy(s,e,n),c=a.toString(16),f=X.util.createBuffer(),u=i-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(X.util.hexToBytes(c)),f.getBytes()};te.rsa.decrypt=function(t,e,r,n){var o=Math.ceil(e.n.bitLength()/8);if(t.length!==o){var i=new Error("Encrypted message length is invalid.");throw i.length=t.length,i.expected=o,i}var s=new ce(X.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=jy(s,e,r),c=a.toString(16),f=X.util.createBuffer(),u=o-Math.ceil(c.length/2);u>0;)f.putByte(0),--u;return f.putBytes(X.util.hexToBytes(c)),n!==!1?Ya(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||X.random,o={nextBytes:function(a){for(var c=n.getBytesSync(a.length),f=0;f<a.length;++f)a[f]=c.charCodeAt(f)}},i=r.algorithm||"PRIMEINC",s;if(i==="PRIMEINC")s={algorithm:i,state:0,bits:t,rng:o,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: "+i);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,o=function(l,p){return l|p},i=+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),o,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(V6(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(L6[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-i,i=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),!X.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(Gy("generateKeyPair"))return $u.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(Wy("generateKey")&&Wy("exportKey"))return Et.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Xy(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return Et.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=te.privateKeyFromAsn1(B.fromDer(X.util.createBuffer(a)));n(null,{privateKey:c,publicKey:te.setRsaPublicKey(c.n,c.e)})}});if(Yy("generateKey")&&Yy("exportKey")){var o=Et.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Xy(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);o.oncomplete=function(a){var c=a.target.result,f=Et.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);f.oncomplete=function(u){var l=u.target.result,p=te.privateKeyFromAsn1(B.fromDer(X.util.createBuffer(l)));n(null,{privateKey:p,publicKey:te.setRsaPublicKey(p.n,p.e)})},f.onerror=function(u){n(u)}},o.onerror=function(a){n(a)};return}}else if(Gy("generateKeyPairSync")){var i=$u.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:te.privateKeyFromPem(i.privateKey),publicKey:te.publicKeyFromPem(i.publicKey)}}}var s=te.rsa.createKeyPairGenerationState(t,e,r);if(!n)return te.rsa.stepKeyPairGenerationState(s,0),s.keys;K6(s,r,n)};te.setRsaPublicKey=te.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,o,i){if(typeof o=="string"?o=o.toUpperCase():o===void 0&&(o="RSAES-PKCS1-V1_5"),o==="RSAES-PKCS1-V1_5")o={encode:function(a,c,f){return Zy(a,c,2).getBytes()}};else if(o==="RSA-OAEP"||o==="RSAES-OAEP")o={encode:function(a,c){return X.pkcs1.encode_rsa_oaep(c,a,i)}};else if(["RAW","NONE","NULL",null].indexOf(o)!==-1)o={encode:function(a){return a}};else if(typeof o=="string")throw new Error('Unsupported encryption scheme: "'+o+'".');var s=o.encode(n,r,!0);return te.rsa.encrypt(s,r,!0)},r.verify=function(n,o,i,s){typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSASSA-PKCS1-V1_5"),s===void 0&&(s={_parseAllDigestBytes:!0}),"_parseAllDigestBytes"in s||(s._parseAllDigestBytes=!0),i==="RSASSA-PKCS1-V1_5"?i={verify:function(c,f){f=Ya(f,r,!0);var u=B.fromDer(f,{parseAllBytes:s._parseAllDigestBytes}),l={},p=[];if(!B.validate(u,M6,l,p)){var y=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw y.errors=p,y}var h=B.derToOid(l.algorithmIdentifier);if(!(h===X.oids.md2||h===X.oids.md5||h===X.oids.sha1||h===X.oids.sha224||h===X.oids.sha256||h===X.oids.sha384||h===X.oids.sha512||h===X.oids["sha512-224"]||h===X.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=h,y}if((h===X.oids.md2||h===X.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}}:(i==="NONE"||i==="NULL"||i===null)&&(i={verify:function(c,f){return f=Ya(f,r,!0),c===f}});var a=te.rsa.decrypt(o,r,!0,!1);return i.verify(n,a,r.n.bitLength())},r};te.setRsaPrivateKey=te.rsa.setPrivateKey=function(t,e,r,n,o,i,s,a){var c={n:t,e,d:r,p:n,q:o,dP:i,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 p=te.rsa.decrypt(f,c,!1,!1);if(u==="RSAES-PKCS1-V1_5")u={decode:Ya};else if(u==="RSA-OAEP"||u==="RSAES-OAEP")u={decode:function(y,h){return X.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(p,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:F6},l=1):(u==="NONE"||u==="NULL"||u===null)&&(u={encode:function(){return f}},l=1);var p=u.encode(f,c.n.bitLength());return te.rsa.encrypt(p,c,l)},c};te.wrapRsaPrivateKey=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,B.integerToDer(0).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(te.oids.rsaEncryption).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,"")]),B.create(B.Class.UNIVERSAL,B.Type.OCTETSTRING,!1,B.toDer(t).getBytes())])};te.privateKeyFromAsn1=function(t){var e={},r=[];if(B.validate(t,N6,e,r)&&(t=B.fromDer(X.util.createBuffer(e.privateKey))),e={},r=[],!B.validate(t,U6,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var o,i,s,a,c,f,u,l;return o=X.util.createBuffer(e.privateKeyModulus).toHex(),i=X.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=X.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=X.util.createBuffer(e.privateKeyPrime1).toHex(),c=X.util.createBuffer(e.privateKeyPrime2).toHex(),f=X.util.createBuffer(e.privateKeyExponent1).toHex(),u=X.util.createBuffer(e.privateKeyExponent2).toHex(),l=X.util.createBuffer(e.privateKeyCoefficient).toHex(),te.setRsaPrivateKey(new ce(o,16),new ce(i,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 B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,B.integerToDer(0).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.n)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.e)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.d)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.p)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.q)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.dP)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.dQ)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.qInv))])};te.publicKeyFromAsn1=function(t){var e={},r=[];if(B.validate(t,O6,e,r)){var n=B.derToOid(e.publicKeyOid);if(n!==te.oids.rsaEncryption){var o=new Error("Cannot read public key. Unknown OID.");throw o.oid=n,o}t=e.rsaPublicKey}if(r=[],!B.validate(t,P6,e,r)){var o=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw o.errors=r,o}var i=X.util.createBuffer(e.publicKeyModulus).toHex(),s=X.util.createBuffer(e.publicKeyExponent).toHex();return te.setRsaPublicKey(new ce(i,16),new ce(s,16))};te.publicKeyToAsn1=te.publicKeyToSubjectPublicKeyInfo=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.OID,!1,B.oidToDer(te.oids.rsaEncryption).getBytes()),B.create(B.Class.UNIVERSAL,B.Type.NULL,!1,"")]),B.create(B.Class.UNIVERSAL,B.Type.BITSTRING,!1,[te.publicKeyToRSAPublicKey(t)])])};te.publicKeyToRSAPublicKey=function(t){return B.create(B.Class.UNIVERSAL,B.Type.SEQUENCE,!0,[B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.n)),B.create(B.Class.UNIVERSAL,B.Type.INTEGER,!1,Yt(t.e))])};function Zy(t,e,r){var n=X.util.createBuffer(),o=Math.ceil(e.n.bitLength()/8);if(t.length>o-11){var i=new Error("Message is too long for PKCS#1 v1.5 padding.");throw i.length=t.length,i.max=o-11,i}n.putByte(0),n.putByte(r);var s=o-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=X.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 Ya(t,e,r,n){var o=Math.ceil(e.n.bitLength()/8),i=X.util.createBuffer(t),s=i.getByte(),a=i.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=o-3-n;for(var f=0;f<c;++f)if(i.getByte()!==0)throw new Error("Encryption block is invalid.")}else if(a===1)for(c=0;i.length()>1;){if(i.getByte()!==255){--i.read;break}++c}else if(a===2)for(c=0;i.length()>1;){if(i.getByte()===0){--i.read;break}++c}var u=i.getByte();if(u!==0||c!==o-3-i.length())throw new Error("Encryption block is invalid.");return i.getBytes()}function K6(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),o();function o(){i(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);i(t.qBits,s)})}function i(a,c){X.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,o();return}if(t.q.subtract(ce.ONE).gcd(t.e).compareTo(ce.ONE)!==0){t.q=null,i(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,o();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,i(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 Yt(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=X.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 V6(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 Gy(t){return X.util.isNodejs&&typeof $u[t]=="function"}function Wy(t){return typeof Et.globalScope<"u"&&typeof Et.globalScope.crypto=="object"&&typeof Et.globalScope.crypto.subtle=="object"&&typeof Et.globalScope.crypto.subtle[t]=="function"}function Yy(t){return typeof Et.globalScope<"u"&&typeof Et.globalScope.msCrypto=="object"&&typeof Et.globalScope.msCrypto.subtle=="object"&&typeof Et.globalScope.msCrypto.subtle[t]=="function"}function Xy(t){for(var e=X.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var og=se((TM,ng)=>{var $=ye();Pu();$i();cy();Bn();La();dy();xy();Gi();Iy();Xa();Fe();typeof Jy>"u"&&(Jy=$.jsbn.BigInteger);var Jy,T=$.asn1,oe=$.pki=$.pki||{};ng.exports=oe.pbe=$.pbe=$.pbe||{};var _n=oe.oids,z6={name:"EncryptedPrivateKeyInfo",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:T.Class.UNIVERSAL,type:T.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:T.Class.UNIVERSAL,type:T.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},q6={name:"PBES2Algorithms",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:T.Class.UNIVERSAL,type:T.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:T.Class.UNIVERSAL,type:T.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:T.Class.UNIVERSAL,type:T.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:T.Class.UNIVERSAL,type:T.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:T.Class.UNIVERSAL,type:T.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:T.Class.UNIVERSAL,type:T.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:T.Class.UNIVERSAL,type:T.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},H6={name:"pkcs-12PbeParams",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:T.Class.UNIVERSAL,type:T.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:T.Class.UNIVERSAL,type:T.Type.INTEGER,constructed:!1,capture:"iterations"}]};oe.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=$.random.getBytesSync(r.saltSize),o=r.count,i=T.integerToDer(o),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=_n["aes128-CBC"],l=$.aes.createEncryptionCipher;break;case"aes192":s=24,f=16,u=_n["aes192-CBC"],l=$.aes.createEncryptionCipher;break;case"aes256":s=32,f=16,u=_n["aes256-CBC"],l=$.aes.createEncryptionCipher;break;case"des":s=8,f=8,u=_n.desCBC,l=$.des.createEncryptionCipher;break;default:var p=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw p.algorithm=r.algorithm,p}var y="hmacWith"+r.prfAlgorithm.toUpperCase(),h=rg(y),d=$.pkcs5.pbkdf2(e,n,o,s,h),m=$.random.getBytesSync(f),x=l(d);x.start(m),x.update(T.toDer(t)),x.finish(),c=x.output.getBytes();var b=$6(n,i,s,y);a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(_n.pkcs5PBES2).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(_n.pkcs5PBKDF2).getBytes()),b]),T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(u).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,m)])])])}else if(r.algorithm==="3des"){s=24;var g=new $.util.ByteBuffer(n),d=oe.pbe.generatePkcs12Key(e,g,1,o,s),m=oe.pbe.generatePkcs12Key(e,g,2,o,s),x=$.des.createEncryptionCipher(d);x.start(m),x.update(T.toDer(t)),x.finish(),c=x.output.getBytes(),a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(_n["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,n),T.create(T.Class.UNIVERSAL,T.Type.INTEGER,!1,i.getBytes())])])}else{var p=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw p.algorithm=r.algorithm,p}var v=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[a,T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,c)]);return v};oe.decryptPrivateKeyInfo=function(t,e){var r=null,n={},o=[];if(!T.validate(t,z6,n,o)){var i=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw i.errors=o,i}var s=T.derToOid(n.encryptionOid),a=oe.pbe.getCipher(s,n.encryptionParams,e),c=$.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=T.fromDer(a.output)),r};oe.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:T.toDer(t).getBytes()};return $.pem.encode(r,{maxline:e})};oe.encryptedPrivateKeyFromPem=function(t){var e=$.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 T.fromDer(e.body)};oe.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=oe.wrapRsaPrivateKey(oe.privateKeyToAsn1(t));return n=oe.encryptPrivateKeyInfo(n,e,r),oe.encryptedPrivateKeyToPem(n)}var o,i,s,a;switch(r.algorithm){case"aes128":o="AES-128-CBC",s=16,i=$.random.getBytesSync(16),a=$.aes.createEncryptionCipher;break;case"aes192":o="AES-192-CBC",s=24,i=$.random.getBytesSync(16),a=$.aes.createEncryptionCipher;break;case"aes256":o="AES-256-CBC",s=32,i=$.random.getBytesSync(16),a=$.aes.createEncryptionCipher;break;case"3des":o="DES-EDE3-CBC",s=24,i=$.random.getBytesSync(8),a=$.des.createEncryptionCipher;break;case"des":o="DES-CBC",s=8,i=$.random.getBytesSync(8),a=$.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=$.pbe.opensslDeriveBytes(e,i.substr(0,8),s),u=a(f);u.start(i),u.update(T.toDer(oe.privateKeyToAsn1(t))),u.finish();var l={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:o,parameters:$.util.bytesToHex(i).toUpperCase()},body:u.output.getBytes()};return $.pem.encode(l)};oe.decryptRsaPrivateKey=function(t,e){var r=null,n=$.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var o=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw o.headerType=o,o}if(n.procType&&n.procType.type==="ENCRYPTED"){var i,s;switch(n.dekInfo.algorithm){case"DES-CBC":i=8,s=$.des.createDecryptionCipher;break;case"DES-EDE3-CBC":i=24,s=$.des.createDecryptionCipher;break;case"AES-128-CBC":i=16,s=$.aes.createDecryptionCipher;break;case"AES-192-CBC":i=24,s=$.aes.createDecryptionCipher;break;case"AES-256-CBC":i=32,s=$.aes.createDecryptionCipher;break;case"RC2-40-CBC":i=5,s=function(l){return $.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":i=8,s=function(l){return $.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":i=16,s=function(l){return $.rc2.createDecryptionCipher(l,128)};break;default:var o=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw o.algorithm=n.dekInfo.algorithm,o}var a=$.util.hexToBytes(n.dekInfo.parameters),c=$.pbe.opensslDeriveBytes(e,a.substr(0,8),i),f=s(c);if(f.start(a),f.update($.util.createBuffer(n.body)),f.finish())r=f.output.getBytes();else return r}else r=n.body;return n.type==="ENCRYPTED PRIVATE KEY"?r=oe.decryptPrivateKeyInfo(T.fromDer(r),e):r=T.fromDer(r),r!==null&&(r=oe.privateKeyFromAsn1(r)),r};oe.pbe.generatePkcs12Key=function(t,e,r,n,o,i){var s,a;if(typeof i>"u"||i===null){if(!("sha1"in $.md))throw new Error('"sha1" hash algorithm unavailable.');i=$.md.sha1.create()}var c=i.digestLength,f=i.blockLength,u=new $.util.ByteBuffer,l=new $.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var p=l.length(),y=e.length(),h=new $.util.ByteBuffer;h.fillWithByte(r,f);var d=f*Math.ceil(y/f),m=new $.util.ByteBuffer;for(a=0;a<d;a++)m.putByte(e.at(a%y));var x=f*Math.ceil(p/f),b=new $.util.ByteBuffer;for(a=0;a<x;a++)b.putByte(l.at(a%p));var g=m;g.putBuffer(b);for(var v=Math.ceil(o/c),w=1;w<=v;w++){var E=new $.util.ByteBuffer;E.putBytes(h.bytes()),E.putBytes(g.bytes());for(var S=0;S<n;S++)i.start(),i.update(E.getBytes()),E=i.digest();var C=new $.util.ByteBuffer;for(a=0;a<f;a++)C.putByte(E.at(a%c));var k=Math.ceil(y/f)+Math.ceil(p/f),F=new $.util.ByteBuffer;for(s=0;s<k;s++){var M=new $.util.ByteBuffer(g.getBytes(f)),V=511;for(a=C.length()-1;a>=0;a--)V=V>>8,V+=C.at(a)+M.at(a),M.setAt(a,V&255);F.putBuffer(M)}g=F,u.putBuffer(E)}return u.truncate(u.length()-o),u};oe.pbe.getCipher=function(t,e,r){switch(t){case oe.oids.pkcs5PBES2:return oe.pbe.getCipherForPBES2(t,e,r);case oe.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case oe.oids["pbewithSHAAnd40BitRC2-CBC"]:return oe.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}};oe.pbe.getCipherForPBES2=function(t,e,r){var n={},o=[];if(!T.validate(e,q6,n,o)){var i=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw i.errors=o,i}if(t=T.derToOid(n.kdfOid),t!==oe.oids.pkcs5PBKDF2){var i=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw i.oid=t,i.supportedOids=["pkcs5PBKDF2"],i}if(t=T.derToOid(n.encOid),t!==oe.oids["aes128-CBC"]&&t!==oe.oids["aes192-CBC"]&&t!==oe.oids["aes256-CBC"]&&t!==oe.oids["des-EDE3-CBC"]&&t!==oe.oids.desCBC){var i=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw i.oid=t,i.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],i}var s=n.kdfSalt,a=$.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,f;switch(oe.oids[t]){case"aes128-CBC":c=16,f=$.aes.createDecryptionCipher;break;case"aes192-CBC":c=24,f=$.aes.createDecryptionCipher;break;case"aes256-CBC":c=32,f=$.aes.createDecryptionCipher;break;case"des-EDE3-CBC":c=24,f=$.des.createDecryptionCipher;break;case"desCBC":c=8,f=$.des.createDecryptionCipher;break}var u=tg(n.prfOid),l=$.pkcs5.pbkdf2(r,s,a,c,u),p=n.encIv,y=f(l);return y.start(p),y};oe.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},o=[];if(!T.validate(e,H6,n,o)){var i=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw i.errors=o,i}var s=$.util.createBuffer(n.salt),a=$.util.createBuffer(n.iterations);a=a.getInt(a.length()<<3);var c,f,u;switch(t){case oe.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,f=8,u=$.des.startDecrypting;break;case oe.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,f=8,u=function(d,m){var x=$.rc2.createDecryptionCipher(d,40);return x.start(m,null),x};break;default:var i=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw i.oid=t,i}var l=tg(n.prfOid),p=oe.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=oe.pbe.generatePkcs12Key(r,s,2,a,f,l);return u(p,y)};oe.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in $.md))throw new Error('"md5" hash algorithm unavailable.');n=$.md.md5.create()}e===null&&(e="");for(var o=[eg(n,t+e)],i=16,s=1;i<r;++s,i+=16)o.push(eg(n,o[s-1]+t+e));return o.join("").substr(0,r)};function eg(t,e){return t.start().update(e).digest().getBytes()}function tg(t){var e;if(!t)e="hmacWithSHA1";else if(e=oe.oids[T.derToOid(t)],!e){var r=new Error("Unsupported PRF OID.");throw r.oid=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return rg(e)}function rg(t){var e=$.md;switch(t){case"hmacWithSHA224":e=$.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 $6(t,e,r,n){var o=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,t),T.create(T.Class.UNIVERSAL,T.Type.INTEGER,!1,e.getBytes())]);return n!=="hmacWithSHA1"&&o.value.push(T.create(T.Class.UNIVERSAL,T.Type.INTEGER,!1,$.util.hexToBytes(r.toString(16))),T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(oe.oids[n]).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.NULL,!1,"")])),o}});var Fg=se((mK,Mg)=>{var Se=ye();Bn();Fe();var Ji=Mg.exports=Se.sha512=Se.sha512||{};Se.md.sha512=Se.md.algorithms.sha512=Ji;var Pg=Se.sha384=Se.sha512.sha384=Se.sha512.sha384||{};Pg.create=function(){return Ji.create("SHA-384")};Se.md.sha384=Se.md.algorithms.sha384=Pg;Se.sha512.sha256=Se.sha512.sha256||{create:function(){return Ji.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 Ji.create("SHA-512/224")}};Se.md["sha512/224"]=Se.md.algorithms["sha512/224"]=Se.sha512.sha224;Ji.create=function(t){if(Og||aC(),typeof t>"u"&&(t="SHA-512"),!(t in Un))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=Un[t],r=null,n=Se.util.createBuffer(),o=new Array(80),i=0;i<80;++i)o[i]=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),Ug(r,o,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(gh.substr(0,a.blockLength-u));for(var l,p,y=a.fullMessageLength[0]*8,h=0;h<a.fullMessageLength.length-1;++h)l=a.fullMessageLength[h+1]*8,p=l/4294967296>>>0,y+=p,c.putInt32(y>>>0),y=l>>>0;c.putInt32(y);for(var d=new Array(r.length),h=0;h<r.length;++h)d[h]=r[h].slice(0);Ug(d,o,c);var m=Se.util.createBuffer(),x;t==="SHA-512"?x=d.length:t==="SHA-384"?x=d.length-2:x=d.length-4;for(var h=0;h<x;++h)m.putInt32(d[h][0]),(h!==x-1||t!=="SHA-512/224")&&m.putInt32(d[h][1]);return m},a};var gh=null,Og=!1,bh=null,Un=null;function aC(){gh="\x80",gh+=Se.util.fillString("\0",128),bh=[[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]],Un={},Un["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],Un["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],Un["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],Un["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Og=!0}function Ug(t,e,r){for(var n,o,i,s,a,c,f,u,l,p,y,h,d,m,x,b,g,v,w,E,S,C,k,F,M,V,G,Q,I,L,_,R,D,P,K,q=r.length();q>=128;){for(I=0;I<16;++I)e[I][0]=r.getInt32()>>>0,e[I][1]=r.getInt32()>>>0;for(;I<80;++I)R=e[I-2],L=R[0],_=R[1],n=((L>>>19|_<<13)^(_>>>29|L<<3)^L>>>6)>>>0,o=((L<<13|_>>>19)^(_<<3|L>>>29)^(L<<26|_>>>6))>>>0,P=e[I-15],L=P[0],_=P[1],i=((L>>>1|_<<31)^(L>>>8|_<<24)^L>>>7)>>>0,s=((L<<31|_>>>1)^(L<<24|_>>>8)^(L<<25|_>>>7))>>>0,D=e[I-7],K=e[I-16],_=o+D[1]+s+K[1],e[I][0]=n+D[0]+i+K[0]+(_/4294967296>>>0)>>>0,e[I][1]=_>>>0;for(d=t[0][0],m=t[0][1],x=t[1][0],b=t[1][1],g=t[2][0],v=t[2][1],w=t[3][0],E=t[3][1],S=t[4][0],C=t[4][1],k=t[5][0],F=t[5][1],M=t[6][0],V=t[6][1],G=t[7][0],Q=t[7][1],I=0;I<80;++I)f=((S>>>14|C<<18)^(S>>>18|C<<14)^(C>>>9|S<<23))>>>0,u=((S<<18|C>>>14)^(S<<14|C>>>18)^(C<<23|S>>>9))>>>0,l=(M^S&(k^M))>>>0,p=(V^C&(F^V))>>>0,a=((d>>>28|m<<4)^(m>>>2|d<<30)^(m>>>7|d<<25))>>>0,c=((d<<4|m>>>28)^(m<<30|d>>>2)^(m<<25|d>>>7))>>>0,y=(d&x|g&(d^x))>>>0,h=(m&b|v&(m^b))>>>0,_=Q+u+p+bh[I][1]+e[I][1],n=G+f+l+bh[I][0]+e[I][0]+(_/4294967296>>>0)>>>0,o=_>>>0,_=c+h,i=a+y+(_/4294967296>>>0)>>>0,s=_>>>0,G=M,Q=V,M=k,V=F,k=S,F=C,_=E+o,S=w+n+(_/4294967296>>>0)>>>0,C=_>>>0,w=g,E=v,g=x,v=b,x=d,b=m,_=o+s,d=n+i+(_/4294967296>>>0)>>>0,m=_>>>0;_=t[0][1]+m,t[0][0]=t[0][0]+d+(_/4294967296>>>0)>>>0,t[0][1]=_>>>0,_=t[1][1]+b,t[1][0]=t[1][0]+x+(_/4294967296>>>0)>>>0,t[1][1]=_>>>0,_=t[2][1]+v,t[2][0]=t[2][0]+g+(_/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]+C,t[4][0]=t[4][0]+S+(_/4294967296>>>0)>>>0,t[4][1]=_>>>0,_=t[5][1]+F,t[5][0]=t[5][0]+k+(_/4294967296>>>0)>>>0,t[5][1]=_>>>0,_=t[6][1]+V,t[6][0]=t[6][0]+M+(_/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 Kb=se((Cq,Fb)=>{"use strict";function HD(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 o=t.charAt(n),i=o.charCodeAt(0);if(e[i]!==255)throw new TypeError(o+" is ambiguous");e[i]=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,d=0,m=0,x=y.length;m!==x&&y[m]===0;)m++,h++;for(var b=(x-m)*f+1>>>0,g=new Uint8Array(b);m!==x;){for(var v=y[m],w=0,E=b-1;(v!==0||w<d)&&E!==-1;E--,w++)v+=256*g[E]>>>0,g[E]=v%s>>>0,v=v/s>>>0;if(v!==0)throw new Error("Non-zero carry");d=w,m++}for(var S=b-d;S!==b&&g[S]===0;)S++;for(var C=a.repeat(h);S<b;++S)C+=t.charAt(g[S]);return C}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 d=0,m=0;y[h]===a;)d++,h++;for(var x=(y.length-h)*c+1>>>0,b=new Uint8Array(x);y[h];){var g=e[y.charCodeAt(h)];if(g===255)return;for(var v=0,w=x-1;(g!==0||v<m)&&w!==-1;w--,v++)g+=s*b[w]>>>0,b[w]=g%256>>>0,g=g/256>>>0;if(g!==0)throw new Error("Non-zero carry");m=v,h++}if(y[h]!==" "){for(var E=x-m;E!==x&&b[E]===0;)E++;for(var S=new Uint8Array(d+(x-E)),C=d;E!==x;)S[C++]=b[E++];return S}}}function p(y){var h=l(y);if(h)return h;throw new Error("Non-base"+s+" character")}return{encode:u,decodeUnsafe:l,decode:p}}Fb.exports=HD});var dc=se((Dq,Vb)=>{"use strict";var $D=new TextDecoder,GD=t=>$D.decode(t),WD=new TextEncoder,YD=t=>WD.encode(t);function XD(t,e){let r=new Uint8Array(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return r}Vb.exports={decodeText:GD,encodeText:YD,concat:XD}});var qb=se((Bq,zb)=>{"use strict";var{encodeText:jD}=dc(),rl=class{constructor(e,r,n,o){this.name=e,this.code=r,this.codeBuf=jD(this.code),this.alphabet=o,this.codec=n(o)}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)}};zb.exports=rl});var $b=se((Iq,Hb)=>{"use strict";var ZD=(t,e,r)=>{let n={};for(let f=0;f<e.length;++f)n[e[f]]=f;let o=t.length;for(;t[o-1]==="=";)--o;let i=new Uint8Array(o*r/8|0),s=0,a=0,c=0;for(let f=0;f<o;++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,i[c++]=255&a>>s)}if(s>=r||255&a<<8-s)throw new SyntaxError("Unexpected end of data");return i},QD=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i},JD=t=>e=>({encode(r){return QD(r,e,t)},decode(r){return ZD(r,e,t)}});Hb.exports={rfc4648:JD}});var Xb=se((Tq,Yb)=>{"use strict";var ls=Kb(),eB=qb(),{rfc4648:je}=$b(),{decodeText:tB,encodeText:rB}=dc(),nB=()=>({encode:tB,decode:rB}),Gb=[["identity","\0",nB,""],["base2","0",je(1),"01"],["base8","7",je(3),"01234567"],["base10","9",ls,"0123456789"],["base16","f",je(4),"0123456789abcdef"],["base16upper","F",je(4),"0123456789ABCDEF"],["base32hex","v",je(5),"0123456789abcdefghijklmnopqrstuv"],["base32hexupper","V",je(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV"],["base32hexpad","t",je(5),"0123456789abcdefghijklmnopqrstuv="],["base32hexpadupper","T",je(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV="],["base32","b",je(5),"abcdefghijklmnopqrstuvwxyz234567"],["base32upper","B",je(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"],["base32pad","c",je(5),"abcdefghijklmnopqrstuvwxyz234567="],["base32padupper","C",je(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567="],["base32z","h",je(5),"ybndrfg8ejkmcpqxot1uwisza345h769"],["base36","k",ls,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",ls,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",ls,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",ls,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],Wb=Gb.reduce((t,e)=>(t[e[0]]=new eB(e[0],e[1],e[2],e[3]),t),{}),oB=Gb.reduce((t,e)=>(t[e[1]]=Wb[e[0]],t),{});Yb.exports={names:Wb,codes:oB}});var Qb=se((Br,Zb)=>{"use strict";var Wo=Xb(),{encodeText:iB,decodeText:pc,concat:jb}=dc();function sB(t,e){if(!e)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=Kn(t);return uB(r,e),jb([n,e],n.length+e.length)}function aB(t,e){let r=Kn(t),n=iB(r.encode(e));return jb([r.codeBuf,n],r.codeBuf.length+n.length)}function cB(t){t instanceof Uint8Array&&(t=pc(t));let e=t[0];return["f","F","v","V","t","T","b","B","c","C","h","k","K"].includes(e)&&(t=t.toLowerCase()),Kn(t[0]).decode(t.substring(1))}function fB(t){if(t instanceof Uint8Array&&(t=pc(t)),Object.prototype.toString.call(t)!=="[object String]")return!1;try{return Kn(t[0]).name}catch{return!1}}function uB(t,e){Kn(t).decode(pc(e))}function Kn(t){if(Object.prototype.hasOwnProperty.call(Wo.names,t))return Wo.names[t];if(Object.prototype.hasOwnProperty.call(Wo.codes,t))return Wo.codes[t];throw new Error(`Unsupported encoding: ${t}`)}function hB(t){return t instanceof Uint8Array&&(t=pc(t)),Kn(t[0])}Br=Zb.exports=sB;Br.encode=aB;Br.decode=cB;Br.isEncoded=fB;Br.encoding=Kn;Br.encodingFromData=hB;var lB=Object.freeze(Wo.names),dB=Object.freeze(Wo.codes);Br.names=lB;Br.codes=dB});var r2=se((_q,t2)=>{t2.exports=e2;var Jb=128,pB=127,mB=~pB,xB=Math.pow(2,31);function e2(t,e,r){e=e||[],r=r||0;for(var n=r;t>=xB;)e[r++]=t&255|Jb,t/=128;for(;t&mB;)e[r++]=t&255|Jb,t>>>=7;return e[r]=t|0,e2.bytes=r-n+1,e}});var i2=se((kq,o2)=>{o2.exports=nl;var yB=128,n2=127;function nl(t,n){var r=0,n=n||0,o=0,i=n,s,a=t.length;do{if(i>=a)throw nl.bytes=0,new RangeError("Could not decode varint");s=t[i++],r+=o<28?(s&n2)<<o:(s&n2)*Math.pow(2,o),o+=7}while(s>=yB);return nl.bytes=i-n,r}});var a2=se((Rq,s2)=>{var gB=Math.pow(2,7),bB=Math.pow(2,14),wB=Math.pow(2,21),vB=Math.pow(2,28),EB=Math.pow(2,35),SB=Math.pow(2,42),AB=Math.pow(2,49),CB=Math.pow(2,56),DB=Math.pow(2,63);s2.exports=function(t){return t<gB?1:t<bB?2:t<wB?3:t<vB?4:t<EB?5:t<SB?6:t<AB?7:t<CB?8:t<DB?9:10}});var f2=se((Lq,c2)=>{c2.exports={encode:r2(),decode:i2(),encodingLength:a2()}});var h2=se((Nq,u2)=>{"use strict";var BB=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});u2.exports={names:BB}});function IB(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 o=0;o<t.length;o++){var i=t.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}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 d=0,m=0,x=0,b=h.length;x!==b&&h[x]===0;)x++,d++;for(var g=(b-x)*u+1>>>0,v=new Uint8Array(g);x!==b;){for(var w=h[x],E=0,S=g-1;(w!==0||E<m)&&S!==-1;S--,E++)w+=256*v[S]>>>0,v[S]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,x++}for(var C=g-m;C!==g&&v[C]===0;)C++;for(var k=c.repeat(d);C<g;++C)k+=t.charAt(v[C]);return k}function p(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var d=0;if(h[d]!==" "){for(var m=0,x=0;h[d]===c;)m++,d++;for(var b=(h.length-d)*f+1>>>0,g=new Uint8Array(b);h[d];){var v=r[h.charCodeAt(d)];if(v===255)return;for(var w=0,E=b-1;(v!==0||w<x)&&E!==-1;E--,w++)v+=a*g[E]>>>0,g[E]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");x=w,d++}if(h[d]!==" "){for(var S=b-x;S!==b&&g[S]===0;)S++;for(var C=new Uint8Array(m+(b-S)),k=m;S!==b;)C[k++]=g[S++];return C}}}function y(h){var d=p(h);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:y}}var TB,_B,l2,d2=he(()=>{TB=IB,_B=TB,l2=_B});var Pq,p2,Ir,m2,x2,en=he(()=>{Pq=new Uint8Array(0),p2=(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},Ir=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")},m2=t=>new TextEncoder().encode(t),x2=t=>new TextDecoder().decode(t)});var ol,il,sl,g2,al,Yo,tn,kB,RB,Le,Mt=he(()=>{d2();en();ol=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")}},il=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 g2(this,e)}},sl=class{constructor(e){this.decoders=e}or(e){return g2(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`)}},g2=(t,e)=>new sl({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),al=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new ol(e,r,n),this.decoder=new il(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Yo=({name:t,prefix:e,encode:r,decode:n})=>new al(t,e,r,n),tn=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=l2(r,e);return Yo({prefix:t,name:e,encode:n,decode:i=>Ir(o(i))})},kB=(t,e,r,n)=>{let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let s=new Uint8Array(i*r/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[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},RB=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i},Le=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Yo({prefix:e,name:t,encode(o){return RB(o,n,r)},decode(o){return kB(o,n,r,t)}})});var cl={};O(cl,{identity:()=>LB});var LB,b2=he(()=>{Mt();en();LB=Yo({prefix:"\0",name:"identity",encode:t=>x2(t),decode:t=>m2(t)})});var fl={};O(fl,{base2:()=>NB});var NB,w2=he(()=>{Mt();NB=Le({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var ul={};O(ul,{base8:()=>UB});var UB,v2=he(()=>{Mt();UB=Le({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var hl={};O(hl,{base10:()=>PB});var PB,E2=he(()=>{Mt();PB=tn({prefix:"9",name:"base10",alphabet:"0123456789"})});var ll={};O(ll,{base16:()=>OB,base16upper:()=>MB});var OB,MB,S2=he(()=>{Mt();OB=Le({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),MB=Le({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var dl={};O(dl,{base32:()=>Xo,base32hex:()=>zB,base32hexpad:()=>HB,base32hexpadupper:()=>$B,base32hexupper:()=>qB,base32pad:()=>KB,base32padupper:()=>VB,base32upper:()=>FB,base32z:()=>GB});var Xo,FB,KB,VB,zB,qB,HB,$B,GB,pl=he(()=>{Mt();Xo=Le({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),FB=Le({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),KB=Le({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),VB=Le({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),zB=Le({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),qB=Le({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),HB=Le({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),$B=Le({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),GB=Le({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var ml={};O(ml,{base36:()=>WB,base36upper:()=>YB});var WB,YB,A2=he(()=>{Mt();WB=tn({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),YB=tn({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var xl={};O(xl,{base58btc:()=>tr,base58flickr:()=>XB});var tr,XB,yl=he(()=>{Mt();tr=tn({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),XB=tn({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var gl={};O(gl,{base64:()=>jB,base64pad:()=>ZB,base64url:()=>QB,base64urlpad:()=>JB});var jB,ZB,QB,JB,C2=he(()=>{Mt();jB=Le({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),ZB=Le({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),QB=Le({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),JB=Le({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var bl={};O(bl,{base256emoji:()=>oI});function rI(t){return t.reduce((e,r)=>(e+=eI[r],e),"")}function nI(t){let e=[];for(let r of t){let n=tI[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var D2,eI,tI,oI,B2=he(()=>{Mt();D2=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}"),eI=D2.reduce((t,e,r)=>(t[r]=e,t),[]),tI=D2.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);oI=Yo({prefix:"\u{1F680}",name:"base256emoji",encode:rI,decode:nI})});function _2(t,e,r){e=e||[],r=r||0;for(var n=r;t>=cI;)e[r++]=t&255|I2,t/=128;for(;t&aI;)e[r++]=t&255|I2,t>>>=7;return e[r]=t|0,_2.bytes=r-n+1,e}function wl(t,n){var r=0,n=n||0,o=0,i=n,s,a=t.length;do{if(i>=a)throw wl.bytes=0,new RangeError("Could not decode varint");s=t[i++],r+=o<28?(s&T2)<<o:(s&T2)*Math.pow(2,o),o+=7}while(s>=uI);return wl.bytes=i-n,r}var iI,I2,sI,aI,cI,fI,uI,T2,hI,lI,dI,pI,mI,xI,yI,gI,bI,wI,vI,EI,ds,k2=he(()=>{iI=_2,I2=128,sI=127,aI=~sI,cI=Math.pow(2,31);fI=wl,uI=128,T2=127;hI=Math.pow(2,7),lI=Math.pow(2,14),dI=Math.pow(2,21),pI=Math.pow(2,28),mI=Math.pow(2,35),xI=Math.pow(2,42),yI=Math.pow(2,49),gI=Math.pow(2,56),bI=Math.pow(2,63),wI=function(t){return t<hI?1:t<lI?2:t<dI?3:t<pI?4:t<mI?5:t<xI?6:t<yI?7:t<gI?8:t<bI?9:10},vI={encode:iI,decode:fI,encodingLength:wI},EI=vI,ds=EI});var ps,jo,Zo,xc=he(()=>{k2();ps=(t,e=0)=>[ds.decode(t,e),ds.decode.bytes],jo=(t,e,r=0)=>(ds.encode(t,e,r),e),Zo=t=>ds.encodingLength(t)});var Vn,R2,L2,Qo,xs=he(()=>{en();xc();Vn=(t,e)=>{let r=e.byteLength,n=Zo(t),o=n+Zo(r),i=new Uint8Array(o+r);return jo(t,i,0),jo(r,i,n),i.set(e,o),new Qo(t,r,e,i)},R2=t=>{let e=Ir(t),[r,n]=ps(e),[o,i]=ps(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new Qo(r,o,s,e)},L2=(t,e)=>t===e?!0:t.code===e.code&&t.size===e.size&&p2(t.bytes,e.bytes),Qo=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}}});var El,vl,Sl=he(()=>{xs();El=({name:t,code:e,encode:r})=>new vl(t,e,r),vl=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?Vn(this.code,r):r.then(n=>Vn(this.code,n))}else throw Error("Unknown type, must be binary type")}}});var Al={};O(Al,{sha256:()=>SI,sha512:()=>AI});var U2,SI,AI,P2=he(()=>{Sl();U2=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),SI=El({name:"sha2-256",code:18,encode:U2("SHA-256")}),AI=El({name:"sha2-512",code:19,encode:U2("SHA-512")})});var Cl={};O(Cl,{identity:()=>BI});var O2,CI,M2,DI,BI,F2=he(()=>{en();xs();O2=0,CI="identity",M2=Ir,DI=t=>Vn(O2,M2(t)),BI={code:O2,name:CI,encode:M2,digest:DI}});var K2=he(()=>{en()});var nH,oH,V2=he(()=>{nH=new TextEncoder,oH=new TextDecoder});var bc,_I,kI,RI,ys,LI,z2,q2,yc,gc,NI,UI,PI,H2=he(()=>{xc();xs();yl();pl();en();bc=class t{constructor(e,r,n,o){this.code=r,this.version=e,this.multihash=n,this.bytes=o,this.byteOffset=o.byteOffset,this.byteLength=o.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:gc,byteLength:gc,code:yc,version:yc,multihash:yc,bytes:yc,_baseCache:gc,asCID:gc})}toV0(){switch(this.version){case 0:return this;default:{let{code:e,multihash:r}=this;if(e!==ys)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==LI)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=Vn(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&&L2(this.multihash,e.multihash)}toString(e){let{bytes:r,version:n,_baseCache:o}=this;switch(n){case 0:return kI(r,o,e||tr.encoder);default:return RI(r,o,e||Xo.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 UI(/^0\.0/,PI),!!(e&&(e[q2]||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:o,bytes:i}=e;return new t(r,n,o,i||z2(r,n,o.bytes))}else if(e!=null&&e[q2]===!0){let{version:r,multihash:n,code:o}=e,i=R2(n);return t.create(r,o,i)}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!==ys)throw new Error(`Version 0 CID must use dag-pb (code: ${ys}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=z2(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,ys,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,o=Ir(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new Qo(r.multihashCode,r.digestSize,i,o);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,p]=ps(e.subarray(r));return r+=p,l},o=n(),i=ys;if(o===18?(o=0,r=0):o===1&&(i=n()),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,o]=_I(e,r),i=t.decode(o);return i._baseCache.set(n,e),i}},_I=(t,e)=>{switch(t[0]){case"Q":{let r=e||tr;return[tr.prefix,r.decode(`${tr.prefix}${t}`)]}case tr.prefix:{let r=e||tr;return[tr.prefix,r.decode(t)]}case Xo.prefix:{let r=e||Xo;return[Xo.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)]}}},kI=(t,e,r)=>{let{prefix:n}=r;if(n!==tr.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let i=r.encode(t).slice(1);return e.set(n,i),i}else return o},RI=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let i=r.encode(t);return e.set(n,i),i}else return o},ys=112,LI=18,z2=(t,e,r)=>{let n=Zo(t),o=n+Zo(e),i=new Uint8Array(o+r.byteLength);return jo(t,i,0),jo(e,i,n),i.set(r,o),i},q2=Symbol.for("@ipld/js-cid/CID"),yc={writable:!1,configurable:!1,enumerable:!0},gc={writable:!1,enumerable:!1,configurable:!1},NI="0.0.0-dev",UI=(t,e)=>{if(t.test(NI))console.warn(e);else throw new Error(e)},PI=`CID.isCID(v) is deprecated and will be removed in the next major release.
|
|
2
|
+
"use strict";var Libp2PWebrtc=(()=>{var s2=Object.create;var Xi=Object.defineProperty;var a2=Object.getOwnPropertyDescriptor;var c2=Object.getOwnPropertyNames;var u2=Object.getPrototypeOf,f2=Object.prototype.hasOwnProperty;var dt=(e,t)=>()=>(e&&(t=e(e=0)),t);var st=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ft=(e,t)=>{for(var r in t)Xi(e,r,{get:t[r],enumerable:!0})},wu=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of c2(t))!f2.call(e,i)&&i!==r&&Xi(e,i,{get:()=>t[i],enumerable:!(n=a2(t,i))||n.enumerable});return e};var Jt=(e,t,r)=>(r=e!=null?s2(u2(e)):{},wu(t||!e||!e.__esModule?Xi(r,"default",{value:e,enumerable:!0}):r,e)),Zi=e=>wu(Xi({},"__esModule",{value:!0}),e);var zf=st((I6,qf)=>{"use strict";function Hf(e,t){for(let r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}function vm(e,t,r){if(!e||typeof e=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof t=="object"&&(r=t,t=""),t&&(r.code=t);try{return Hf(e,r)}catch{r.message=e.message,r.stack=e.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),Hf(new i,r)}}qf.exports=vm});var xt=st((yB,ph)=>{ph.exports={options:{usePureJavaScript:!1}}});var gh=st((mB,mh)=>{var $c={};mh.exports=$c;var yh={};$c.encode=function(e,t,r){if(typeof t!="string")throw new TypeError('"alphabet" must be a string.');if(r!==void 0&&typeof r!="number")throw new TypeError('"maxline" must be a number.');var n="";if(!(e instanceof Uint8Array))n=Ex(e,t);else{var i=0,o=t.length,s=t.charAt(0),a=[0];for(i=0;i<e.length;++i){for(var c=0,u=e[i];c<a.length;++c)u+=a[c]<<8,a[c]=u%o,u=u/o|0;for(;u>0;)a.push(u%o),u=u/o|0}for(i=0;e[i]===0&&i<e.length-1;++i)n+=s;for(i=a.length-1;i>=0;--i)n+=t[a[i]]}if(r){var f=new RegExp(".{1,"+r+"}","g");n=n.match(f).join(`\r
|
|
3
|
+
`)}return n};$c.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=yh[t];if(!r){r=yh[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 Ex(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 Kt=st((gB,vh)=>{var xh=xt(),bh=gh(),v=vh.exports=xh.util=xh.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===e){c.stopPropagation();var u=t.slice();t.length=0,u.forEach(function(f){f()})}};var s=a,e="forge.setImmediate",t=[];v.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=v.setImmediate;v.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(t.push(c),t.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(e){return Object.prototype.toString.call(e)==="[object Array]"};v.isArrayBuffer=function(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer};v.isArrayBufferView=function(e){return e&&v.isArrayBuffer(e.buffer)&&e.byteLength!==void 0};function Bi(e){if(!(e===8||e===16||e===24||e===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}v.ByteBuffer=Yc;function Yc(e){if(this.data="",this.read=0,typeof e=="string")this.data=e;else if(v.isArrayBuffer(e)||v.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 Yc||typeof e=="object"&&typeof e.data=="string"&&typeof e.read=="number")&&(this.data=e.data,this.read=e.read);this._constructedStringLength=0}v.ByteStringBuffer=Yc;var Sx=4096;v.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>Sx&&(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(e){return this.putBytes(String.fromCharCode(e))};v.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};v.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this};v.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(v.encodeUtf8(e))};v.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};v.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255))};v.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))};v.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255))};v.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(e&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))};v.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))};v.ByteStringBuffer.prototype.putInt=function(e,t){Bi(t);var r="";do t-=8,r+=String.fromCharCode(e>>t&255);while(t>0);return this.putBytes(r)};v.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<<t-1),this.putInt(e,t)};v.ByteStringBuffer.prototype.putBuffer=function(e){return this.putBytes(e.getBytes())};v.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};v.ByteStringBuffer.prototype.getInt16=function(){var e=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,e};v.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};v.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};v.ByteStringBuffer.prototype.getInt16Le=function(){var e=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,e};v.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};v.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};v.ByteStringBuffer.prototype.getInt=function(e){Bi(e);var t=0;do t=(t<<8)+this.data.charCodeAt(this.read++),e-=8;while(e>0);return t};v.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};v.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};v.ByteStringBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};v.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)};v.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};v.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};v.ByteStringBuffer.prototype.copy=function(){var e=v.createBuffer(this.data);return e.read=this.read,e};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(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this};v.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};v.ByteStringBuffer.prototype.toString=function(){return v.decodeUtf8(this.bytes())};function Ax(e,t){t=t||{},this.read=t.readOffset||0,this.growSize=t.growSize||1024;var r=v.isArrayBuffer(e),n=v.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)}v.DataBuffer=Ax;v.DataBuffer.prototype.length=function(){return this.write-this.read};v.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};v.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};v.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this};v.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r<t;++r)this.data.setUint8(e);return this};v.DataBuffer.prototype.putBytes=function(e,t){if(v.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(v.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 v.DataBuffer||typeof e=="object"&&typeof e.read=="number"&&typeof e.write=="number"&&v.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 v.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+=v.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+=v.binary.base64.decode(e,o,this.write),this;if(t==="utf8"&&(e=v.encodeUtf8(e),t="binary"),t==="binary"||t==="raw")return this.accommodate(e.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=v.binary.raw.decode(o),this;if(t==="utf16")return this.accommodate(e.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=v.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+t)}throw Error("Invalid parameter: "+e)};v.DataBuffer.prototype.putBuffer=function(e){return this.putBytes(e),e.clear(),this};v.DataBuffer.prototype.putString=function(e){return this.putBytes(e,"utf16")};v.DataBuffer.prototype.putInt16=function(e){return this.accommodate(2),this.data.setInt16(this.write,e),this.write+=2,this};v.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};v.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this};v.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this};v.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};v.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this};v.DataBuffer.prototype.putInt=function(e,t){Bi(t),this.accommodate(t/8);do t-=8,this.data.setInt8(this.write++,e>>t&255);while(t>0);return this};v.DataBuffer.prototype.putSignedInt=function(e,t){return Bi(t),this.accommodate(t/8),e<0&&(e+=2<<t-1),this.putInt(e,t)};v.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};v.DataBuffer.prototype.getInt16=function(){var e=this.data.getInt16(this.read);return this.read+=2,e};v.DataBuffer.prototype.getInt24=function(){var e=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,e};v.DataBuffer.prototype.getInt32=function(){var e=this.data.getInt32(this.read);return this.read+=4,e};v.DataBuffer.prototype.getInt16Le=function(){var e=this.data.getInt16(this.read,!0);return this.read+=2,e};v.DataBuffer.prototype.getInt24Le=function(){var e=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,e};v.DataBuffer.prototype.getInt32Le=function(){var e=this.data.getInt32(this.read,!0);return this.read+=4,e};v.DataBuffer.prototype.getInt=function(e){Bi(e);var t=0;do t=(t<<8)+this.data.getInt8(this.read++),e-=8;while(e>0);return t};v.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<<e-2;return t>=r&&(t-=r<<1),t};v.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};v.DataBuffer.prototype.bytes=function(e){return typeof e>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+e)};v.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)};v.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),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 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};v.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};v.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this};v.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};v.DataBuffer.prototype.toString=function(e){var t=new Uint8Array(this.data,this.read,this.length());if(e=e||"utf8",e==="binary"||e==="raw")return v.binary.raw.encode(t);if(e==="hex")return v.binary.hex.encode(t);if(e==="base64")return v.binary.base64.encode(t);if(e==="utf8")return v.text.utf8.decode(t);if(e==="utf16")return v.text.utf16.decode(t);throw new Error("Invalid encoding: "+e)};v.createBuffer=function(e,t){return t=t||"raw",e!==void 0&&t==="utf8"&&(e=v.encodeUtf8(e)),new v.ByteBuffer(e)};v.fillString=function(e,t){for(var r="";t>0;)t&1&&(r+=e),t>>>=1,t>0&&(e+=e);return r};v.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};v.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};v.bytesToHex=function(e){return v.createBuffer(e).toHex()};v.int32ToBytes=function(e){return String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(e&255)};var Tr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_r=[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],wh="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";v.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+=Tr.charAt(i>>2),r+=Tr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Tr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Tr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
|
|
4
|
+
`,r=r.substr(t));return n+=r,n};v.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t="",r,n,i,o,s=0;s<e.length;)r=_r[e.charCodeAt(s++)-43],n=_r[e.charCodeAt(s++)-43],i=_r[e.charCodeAt(s++)-43],o=_r[e.charCodeAt(s++)-43],t+=String.fromCharCode(r<<2|n>>4),i!==64&&(t+=String.fromCharCode((n&15)<<4|i>>2),o!==64&&(t+=String.fromCharCode((i&3)<<6|o)));return t};v.encodeUtf8=function(e){return unescape(encodeURIComponent(e))};v.decodeUtf8=function(e){return decodeURIComponent(escape(e))};v.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:bh.encode,decode:bh.decode}};v.binary.raw.encode=function(e){return String.fromCharCode.apply(null,e)};v.binary.raw.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length)),r=r||0;for(var i=r,o=0;o<e.length;++o)n[i++]=e.charCodeAt(o);return t?i-r:n};v.binary.hex.encode=v.bytesToHex;v.binary.hex.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(Math.ceil(e.length/2))),r=r||0;var i=0,o=r;for(e.length&1&&(i=1,n[o++]=parseInt(e[0],16));i<e.length;i+=2)n[o++]=parseInt(e.substr(i,2),16);return t?o-r:n};v.binary.base64.encode=function(e,t){for(var r="",n="",i,o,s,a=0;a<e.byteLength;)i=e[a++],o=e[a++],s=e[a++],r+=Tr.charAt(i>>2),r+=Tr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Tr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Tr.charAt(s&63)),t&&r.length>t&&(n+=r.substr(0,t)+`\r
|
|
5
|
+
`,r=r.substr(t));return n+=r,n};v.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=_r[e.charCodeAt(c++)-43],o=_r[e.charCodeAt(c++)-43],s=_r[e.charCodeAt(c++)-43],a=_r[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)};v.binary.base58.encode=function(e,t){return v.binary.baseN.encode(e,wh,t)};v.binary.base58.decode=function(e,t){return v.binary.baseN.decode(e,wh,t)};v.text={utf8:{},utf16:{}};v.text.utf8.encode=function(e,t,r){e=v.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};v.text.utf8.decode=function(e){return v.decodeUtf8(String.fromCharCode.apply(null,e))};v.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};v.text.utf16.decode=function(e){return String.fromCharCode.apply(null,new Uint16Array(e.buffer))};v.deflate=function(e,t,r){if(t=v.decode64(e.deflate(v.encode64(t)).rval),r){var n=2,i=t.charCodeAt(1);i&32&&(n=6),t=t.substring(n,t.length-4)}return t};v.inflate=function(e,t,r){var n=e.inflate(v.encode64(t)).rval;return n===null?null:v.decode64(n)};var Xc=function(e,t,r){if(!e)throw new Error("WebStorage not available.");var n;if(r===null?n=e.removeItem(t):(r=v.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}},Zc=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(v.decode64(r))),r},Dx=function(e,t,r,n){var i=Zc(e,t);i===null&&(i={}),i[r]=n,Xc(e,t,i)},Cx=function(e,t,r){var n=Zc(e,t);return n!==null&&(n=r in n?n[r]:null),n},Bx=function(e,t,r){var n=Zc(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),Xc(e,t,n)}},Ix=function(e,t){Xc(e,t,null)},ts=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};v.setItem=function(e,t,r,n,i){ts(Dx,arguments,i)};v.getItem=function(e,t,r,n){return ts(Cx,arguments,n)};v.removeItem=function(e,t,r,n){ts(Bx,arguments,n)};v.clearItems=function(e,t,r){ts(Ix,arguments,r)};v.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0};v.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("")};v.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):"")};v.formatSize=function(e){return e>=1073741824?e=v.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?e=v.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?e=v.formatNumber(e/1024,0)+" KiB":e=v.formatNumber(e,0)+" bytes",e};v.bytesFromIP=function(e){return e.indexOf(".")!==-1?v.bytesFromIPv4(e):e.indexOf(":")!==-1?v.bytesFromIPv6(e):null};v.bytesFromIPv4=function(e){if(e=e.split("."),e.length!==4)return null;for(var t=v.createBuffer(),r=0;r<e.length;++r){var n=parseInt(e[r],10);if(isNaN(n))return null;t.putByte(n)}return t.getBytes()};v.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=v.createBuffer(),i=0;i<8;++i){if(!e[i]||e[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=v.hexToBytes(e[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};v.bytesToIP=function(e){return e.length===4?v.bytesToIPv4(e):e.length===16?v.bytesToIPv6(e):null};v.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(".")};v.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=v.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(":")};v.estimateCores=function(e,t){if(typeof e=="function"&&(t=e,e={}),e=e||{},"cores"in v&&!e.update)return t(null,v.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return v.cores=navigator.hardwareConcurrency,t(null,v.cores);if(typeof Worker>"u")return v.cores=1,t(null,v.cores);if(typeof Blob>"u")return v.cores=2,t(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 u=Math.floor(s.reduce(function(f,l){return f+l},0)/s.length);return v.cores=Math.max(1,u),URL.revokeObjectURL(r),t(null,v.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 es=st((xB,Eh)=>{var Ii=xt();Ii.pki=Ii.pki||{};var Qc=Eh.exports=Ii.pki.oids=Ii.oids=Ii.oids||{};function N(e,t){Qc[e]=t,Qc[t]=e}function mt(e,t){Qc[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 _i=st((bB,Ah)=>{var At=xt();Kt();es();var V=Ah.exports=At.asn1=At.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(At.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||At.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(At.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(At.util.isArray(e)){if(!At.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 Ti(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 Tx=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;Ti(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=At.util.createBuffer(e));var r=e.length(),n=rs(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 rs(e,t,r,n){var i;Ti(e,t,2);var o=e.getByte();t--;var s=o&192,a=o&31;i=e.length();var c=Tx(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(Ti(e,t,2),e.bytes(2)==="\0\0"){e.getBytes(2),t-=2;break}i=e.length(),f.push(rs(e,t,r+1,n)),t-=i-e.length()}else for(;c>0;)i=e.length(),f.push(rs(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&&(Ti(e,t,1),p=e.getByte(),t--),p===0)try{i=e.length();var y={strict:!0,decodeBitStrings:!0},g=rs(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)Ti(e,t,2),f+=String.fromCharCode(e.getInt16()),t-=2;else f=e.getBytes(c),t-=c}var S=l===void 0?null:{bitStringContents:l};return V.create(s,a,d,f,S)}V.toDer=function(e){var t=At.util.createBuffer(),r=e.tagClass|e.type,n=At.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=At.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=At.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=At.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=At.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&&At.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 Sh=/[^\\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<t*r;++o)i+=" ";switch(n+=i+"Tag: ",e.tagClass){case V.Class.UNIVERSAL:n+="Universal:";break;case V.Class.APPLICATION:n+="Application:";break;case V.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case V.Class.PRIVATE:n+="Private:";break}if(e.tagClass===V.Class.UNIVERSAL)switch(n+=e.type,e.type){case V.Type.NONE:n+=" (None)";break;case V.Type.BOOLEAN:n+=" (Boolean)";break;case V.Type.INTEGER:n+=" (Integer)";break;case V.Type.BITSTRING:n+=" (Bit string)";break;case V.Type.OCTETSTRING:n+=" (Octet string)";break;case V.Type.NULL:n+=" (Null)";break;case V.Type.OID:n+=" (Object Identifier)";break;case V.Type.ODESC:n+=" (Object Descriptor)";break;case V.Type.EXTERNAL:n+=" (External or Instance of)";break;case V.Type.REAL:n+=" (Real)";break;case V.Type.ENUMERATED:n+=" (Enumerated)";break;case V.Type.EMBEDDED:n+=" (Embedded PDV)";break;case V.Type.UTF8:n+=" (UTF8)";break;case V.Type.ROID:n+=" (Relative Object Identifier)";break;case V.Type.SEQUENCE:n+=" (Sequence)";break;case V.Type.SET:n+=" (Set)";break;case V.Type.PRINTABLESTRING:n+=" (Printable String)";break;case V.Type.IA5String:n+=" (IA5String (ASCII))";break;case V.Type.UTCTIME:n+=" (UTC time)";break;case V.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case V.Type.BMPSTRING:n+=" (BMP String)";break}else n+=e.type;if(n+=`
|
|
7
|
+
`,n+=i+"Constructed: "+e.constructed+`
|
|
8
|
+
`,e.composed){for(var s=0,a="",o=0;o<e.value.length;++o)e.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(e.value[o],t+1,r),o+1<e.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",e.type===V.Type.OID){var c=V.derToOid(e.value);n+=c,At.pki&&At.pki.oids&&c in At.pki.oids&&(n+=" ("+At.pki.oids[c]+") ")}if(e.type===V.Type.INTEGER)try{n+=V.derToInteger(e.value)}catch{n+="0x"+At.util.bytesToHex(e.value)}else if(e.type===V.Type.BITSTRING){if(e.value.length>1?n+="0x"+At.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)Sh.test(e.value)||(n+="("+e.value+") "),n+="0x"+At.util.bytesToHex(e.value);else if(e.type===V.Type.UTF8)try{n+=At.util.decodeUtf8(e.value)}catch(f){if(f.message==="URI malformed")n+="0x"+At.util.bytesToHex(e.value)+" (malformed UTF8)";else throw f}else e.type===V.Type.PRINTABLESTRING||e.type===V.Type.IA5String?n+=e.value:Sh.test(e.value)?n+="0x"+At.util.bytesToHex(e.value):e.value.length===0?n+="[null]":n+=e.value}return n}});var Jc=st((wB,Dh)=>{var zt=xt();Kt();Dh.exports=zt.cipher=zt.cipher||{};zt.cipher.algorithms=zt.cipher.algorithms||{};zt.cipher.createCipher=function(e,t){var r=e;if(typeof r=="string"&&(r=zt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new zt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})};zt.cipher.createDecipher=function(e,t){var r=e;if(typeof r=="string"&&(r=zt.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+e);return new zt.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})};zt.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),zt.cipher.algorithms[e]=t};zt.cipher.getAlgorithm=function(e){return e=e.toUpperCase(),e in zt.cipher.algorithms?zt.cipher.algorithms[e]:null};var jc=zt.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)};jc.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=zt.util.createBuffer(),this.output=e.output||zt.util.createBuffer(),this.mode.start(t)};jc.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()};jc.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 e0=st((vB,Ch)=>{var Gt=xt();Kt();Gt.cipher=Gt.cipher||{};var ct=Ch.exports=Gt.cipher.modes=Gt.cipher.modes||{};ct.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)};ct.ecb.prototype.start=function(e){};ct.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])};ct.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])};ct.ecb.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};ct.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)};ct.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)};ct.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=ns(e.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};ct.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};ct.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)};ct.cbc.prototype.pad=function(e,t){var r=e.length()===this.blockSize?this.blockSize:this.blockSize-e.length();return e.fillWithByte(r,r),!0};ct.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)};ct.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=Gt.util.createBuffer(),this._partialBytes=0};ct.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=ns(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ct.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};ct.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};ct.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=Gt.util.createBuffer(),this._partialBytes=0};ct.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=ns(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ct.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};ct.ofb.prototype.decrypt=ct.ofb.prototype.encrypt;ct.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=Gt.util.createBuffer(),this._partialBytes=0};ct.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=ns(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ct.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}is(this._inBlock)};ct.ctr.prototype.decrypt=ct.ctr.prototype.encrypt;ct.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=Gt.util.createBuffer(),this._partialBytes=0,this._R=3774873600};ct.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t=Gt.util.createBuffer(e.iv);this._cipherLength=0;var r;if("additionalData"in e?r=Gt.util.createBuffer(e.additionalData):r=Gt.util.createBuffer(),"tagLength"in e?this._tagLength=e.tagLength:this._tagLength=128,this._tag=null,e.decrypt&&(this._tag=Gt.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(t0(n*8)))}this._inBlock=this._j0.slice(0),is(this._inBlock),this._partialBytes=0,r=Gt.util.createBuffer(r),this._aDataLength=t0(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()])};ct.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),is(this._inBlock)};ct.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),is(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};ct.gcm.prototype.afterFinish=function(e,t){var r=!0;t.decrypt&&t.overflow&&e.truncate(this.blockSize-t.overflow),this.tag=Gt.util.createBuffer();var n=this._aDataLength.concat(t0(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};ct.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};ct.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)};ct.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};ct.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)};ct.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};ct.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 ns(e,t){if(typeof e=="string"&&(e=Gt.util.createBuffer(e)),Gt.util.isArray(e)&&e.length>4){var r=e;e=Gt.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(!Gt.util.isArray(e)){for(var i=[],o=t/4,n=0;n<o;++n)i.push(e.getInt32());e=i}return e}function is(e){e[e.length-1]=e[e.length-1]+1&4294967295}function t0(e){return[e/4294967296|0,e&4294967295]}});var o0=st((EB,_h)=>{var vt=xt();Jc();e0();Kt();_h.exports=vt.aes=vt.aes||{};vt.aes.startEncrypting=function(e,t,r,n){var i=os({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i};vt.aes.createEncryptionCipher=function(e,t){return os({key:e,output:null,decrypt:!1,mode:t})};vt.aes.startDecrypting=function(e,t,r,n){var i=os({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i};vt.aes.createDecryptionCipher=function(e,t){return os({key:e,output:null,decrypt:!0,mode:t})};vt.aes.Algorithm=function(e,t){i0||Ih();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(n,i){return n0(r._w,n,i,!1)},decrypt:function(n,i){return n0(r._w,n,i,!0)}}}),r._init=!1};vt.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=vt.util.createBuffer(t);else if(vt.util.isArray(t)&&(t.length===16||t.length===24||t.length===32)){r=t,t=vt.util.createBuffer();for(var n=0;n<r.length;++n)t.putByte(r[n])}if(!vt.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(!vt.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=Th(t,e.decrypt&&!s),this._init=!0}};vt.aes._expandKey=function(e,t){return i0||Ih(),Th(e,t)};vt.aes._updateBlock=n0;Fn("AES-ECB",vt.cipher.modes.ecb);Fn("AES-CBC",vt.cipher.modes.cbc);Fn("AES-CFB",vt.cipher.modes.cfb);Fn("AES-OFB",vt.cipher.modes.ofb);Fn("AES-CTR",vt.cipher.modes.ctr);Fn("AES-GCM",vt.cipher.modes.gcm);function Fn(e,t){var r=function(){return new vt.aes.Algorithm(e,t)};vt.cipher.registerAlgorithm(e,r)}var i0=!1,Mn=4,ne,r0,Bh,tn,Te;function Ih(){i0=!0,Bh=[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;ne=new Array(256),r0=new Array(256),tn=new Array(4),Te=new Array(4);for(var t=0;t<4;++t)tn[t]=new Array(256),Te[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,ne[r]=a,r0[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)tn[l][r]=u,Te[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 Th(e,t){for(var r=e.slice(0),n,i=1,o=r.length,s=o+6+1,a=Mn*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=ne[n>>>16&255]<<24^ne[n>>>8&255]<<16^ne[n&255]<<8^ne[n>>>24]^Bh[i]<<24,i++):o>6&&c%o===4&&(n=ne[n>>>24]<<24^ne[n>>>16&255]<<16^ne[n>>>8&255]<<8^ne[n&255]),r[c]=r[c-o]^n;if(t){var u,f=Te[0],l=Te[1],d=Te[2],m=Te[3],h=r.slice(0);a=r.length;for(var c=0,p=a-Mn;c<a;c+=Mn,p-=Mn)if(c===0||c===a-Mn)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<Mn;++y)u=r[p+y],h[c+(3&-y)]=f[ne[u>>>24]]^l[ne[u>>>16&255]]^d[ne[u>>>8&255]]^m[ne[u&255]];r=h}return r}function n0(e,t,r,n){var i=e.length/4-1,o,s,a,c,u;n?(o=Te[0],s=Te[1],a=Te[2],c=Te[3],u=r0):(o=tn[0],s=tn[1],a=tn[2],c=tn[3],u=ne);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 os(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="AES-"+t,n;e.decrypt?n=vt.cipher.createDecipher(r,e.key):n=vt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof vt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Lh=st((SB,Rh)=>{var Tt=xt();Jc();e0();Kt();Rh.exports=Tt.des=Tt.des||{};Tt.des.startEncrypting=function(e,t,r,n){var i=ss({key:e,output:r,decrypt:!1,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Tt.des.createEncryptionCipher=function(e,t){return ss({key:e,output:null,decrypt:!1,mode:t})};Tt.des.startDecrypting=function(e,t,r,n){var i=ss({key:e,output:r,decrypt:!0,mode:n||(t===null?"ECB":"CBC")});return i.start(t),i};Tt.des.createDecryptionCipher=function(e,t){return ss({key:e,output:null,decrypt:!0,mode:t})};Tt.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(n,i){return kh(r._keys,n,i,!1)},decrypt:function(n,i){return kh(r._keys,n,i,!0)}}}),r._init=!1};Tt.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=Tt.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=Kx(t),this._init=!0}};Ke("DES-ECB",Tt.cipher.modes.ecb);Ke("DES-CBC",Tt.cipher.modes.cbc);Ke("DES-CFB",Tt.cipher.modes.cfb);Ke("DES-OFB",Tt.cipher.modes.ofb);Ke("DES-CTR",Tt.cipher.modes.ctr);Ke("3DES-ECB",Tt.cipher.modes.ecb);Ke("3DES-CBC",Tt.cipher.modes.cbc);Ke("3DES-CFB",Tt.cipher.modes.cfb);Ke("3DES-OFB",Tt.cipher.modes.ofb);Ke("3DES-CTR",Tt.cipher.modes.ctr);function Ke(e,t){var r=function(){return new Tt.des.Algorithm(e,t)};Tt.cipher.registerAlgorithm(e,r)}var _x=[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],kx=[-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],Rx=[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],Lx=[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],Nx=[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],Px=[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],Ux=[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],Ox=[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 Kx(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,S=0;S<p;S++){var w=e.getInt32(),E=e.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 C=0;C<g.length;++C){g[C]?(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=t[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]|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=(U>>>16^B)&65535,y[b++]=B^x,y[b++]=U^x<<16}}return y}function kh(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^(kx[m>>>24&63]|Lx[m>>>16&63]|Px[m>>>8&63]|Ox[m&63]|_x[h>>>24&63]|Rx[h>>>16&63]|Nx[h>>>8&63]|Ux[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 ss(e){e=e||{};var t=(e.mode||"CBC").toUpperCase(),r="DES-"+t,n;e.decrypt?n=Tt.cipher.createDecipher(r,e.key):n=Tt.cipher.createCipher(r,e.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Tt.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var en=st((AB,Nh)=>{var as=xt();Nh.exports=as.md=as.md||{};as.md.algorithms=as.md.algorithms||{}});var Uh=st((DB,Ph)=>{var sr=xt();en();Kt();var Mx=Ph.exports=sr.hmac=sr.hmac||{};Mx.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 sr.md.algorithms)t=sr.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=sr.util.createBuffer(s);else if(sr.util.isArray(s)){var a=s;s=sr.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=sr.util.createBuffer(),n=sr.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 cs=st(()=>{});var Kh=st((IB,Oh)=>{var ie=xt();Uh();en();Kt();var Fx=ie.pkcs5=ie.pkcs5||{},ar;ie.util.isNodejs&&!ie.options.usePureJavaScript&&(ar=cs());Oh.exports=ie.pbkdf2=Fx.pbkdf2=function(e,t,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),ie.util.isNodejs&&!ie.options.usePureJavaScript&&ar.pbkdf2&&(i===null||typeof i!="object")&&(ar.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),o?ar.pbkdf2Sync.length===4?ar.pbkdf2(e,t,r,n,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):ar.pbkdf2(e,t,r,n,i,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):ar.pbkdf2Sync.length===4?ar.pbkdf2Sync(e,t,r,n).toString("binary"):ar.pbkdf2Sync(e,t,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in ie.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=ie.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=ie.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(ie.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=ie.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(ie.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=ie.util.xorBytes(d,m,s),h=m,++y,ie.util.setImmediate(b);l+=p<c?d:d.substr(0,u),++p,g()}g()}});var Vh=st((TB,Fh)=>{var fs=xt();Kt();var Mh=Fh.exports=fs.pem=fs.pem||{};Mh.encode=function(e,t){t=t||{};var r="-----BEGIN "+e.type+`-----\r
|
|
9
|
+
`,n;if(e.procType&&(n={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]},r+=us(n)),e.contentDomain&&(n={name:"Content-Domain",values:[e.contentDomain]},r+=us(n)),e.dekInfo&&(n={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&n.values.push(e.dekInfo.parameters),r+=us(n)),e.headers)for(var i=0;i<e.headers.length;++i)r+=us(e.headers[i]);return e.procType&&(r+=`\r
|
|
10
|
+
`),r+=fs.util.encode64(e.body,t.maxline||64)+`\r
|
|
11
|
+
`,r+="-----END "+e.type+`-----\r
|
|
12
|
+
`,r};Mh.decode=function(e){for(var t=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(e),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:fs.util.decode64(o[3])};if(t.push(a),!!o[2]){for(var c=o[2].split(i),u=0;o&&u<c.length;){for(var f=c[u].replace(/\s+$/,""),l=u+1;l<c.length;++l){var d=c[l];if(!/\s/.test(d[0]))break;f+=d,u=l}if(o=f.match(n),o){for(var m={name:o[1],values:[]},h=o[2].split(","),p=0;p<h.length;++p)m.values.push(Vx(h[p]));if(a.procType)if(!a.contentDomain&&m.name==="Content-Domain")a.contentDomain=h[0]||"";else if(!a.dekInfo&&m.name==="DEK-Info"){if(m.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(m);else{if(m.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(m.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]}}}++u}if(a.procType==="ENCRYPTED"&&!a.dekInfo)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(t.length===0)throw new Error("Invalid PEM formatted message.");return t};function us(e){for(var t=e.name+": ",r=[],n=function(c,u){return" "+u},i=0;i<e.values.length;++i)r.push(e.values[i].replace(/^(\S+\r\n)/,n));t+=r.join(",")+`\r
|
|
13
|
+
`;for(var o=0,s=-1,i=0;i<t.length;++i,++o)if(o>65&&s!==-1){var a=t[s];a===","?(++s,t=t.substr(0,s)+`\r
|
|
14
|
+
`+t.substr(s)):t=t.substr(0,s)+`\r
|
|
15
|
+
`+a+t.substr(s+1),o=i-s-1,s=-1,++i}else(t[i]===" "||t[i]===" "||t[i]===",")&&(s=i);return t}function Vx(e){return e.replace(/^\s+/,"")}});var $h=st((_B,Wh)=>{var Me=xt();en();Kt();var qh=Wh.exports=Me.sha256=Me.sha256||{};Me.md.sha256=Me.md.algorithms.sha256=qh;qh.create=function(){zh||Hx();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),Hh(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(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,h5:e.h5,h6:e.h6,h7:e.h7};Hh(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 s0=null,zh=!1,Gh=null;function Hx(){s0="\x80",s0+=Me.util.fillString("\0",64),Gh=[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],zh=!0}function Hh(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+Gh[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 Xh=st((kB,Yh)=>{var Fe=xt();Kt();var ls=null;Fe.util.isNodejs&&!Fe.options.usePureJavaScript&&!process.versions["node-webkit"]&&(ls=cs());var qx=Yh.exports=Fe.prng=Fe.prng||{};qx.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(w){return d.getRandomValues(w)});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(w){if(!(typeof QuotaExceededError<"u"&&w instanceof QuotaExceededError))throw w}}if(m.length()<u)for(var g,b,x,S=Math.floor(Math.random()*65536);m.length()<u;){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 y=0;y<3;++y)x=S>>>(y<<3),x^=Math.floor(Math.random()*256),m.putByte(x&255)}return m.getBytes(u)}return ls?(t.seedFile=function(u,f){ls.randomBytes(u,function(l,d){if(l)return f(l);f(null,d.toString())})},t.seedFileSync=function(u){return ls.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 ki=st((RB,a0)=>{var Wt=xt();o0();$h();Xh();Kt();(function(){if(Wt.random&&Wt.random.getBytes){a0.exports=Wt.random;return}(function(e){var t={},r=new Array(4),n=Wt.util.createBuffer();t.formatKey=function(l){var d=Wt.util.createBuffer(l);return l=new Array(4),l[0]=d.getInt32(),l[1]=d.getInt32(),l[2]=d.getInt32(),l[3]=d.getInt32(),Wt.aes._expandKey(l,!1)},t.formatSeed=function(l){var d=Wt.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 Wt.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=Wt.md.sha256;function i(){var l=Wt.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=Wt.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Wt.options.usePureJavaScript||!Wt.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(!Wt.random)Wt.random=o;else for(var f in o)Wt.random[f]=o[f];Wt.random.createInstance=i,a0.exports=Wt.random})(typeof jQuery<"u"?jQuery:null)})()});var Jh=st((LB,jh)=>{var ce=xt();Kt();var c0=[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],Zh=[1,2,3,5],zx=function(e,t){return e<<t&65535|(e&65535)>>16-t},Gx=function(e,t){return(e&65535)>>t|e<<16-t&65535};jh.exports=ce.rc2=ce.rc2||{};ce.rc2.expandKey=function(e,t){typeof e=="string"&&(e=ce.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(c0[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,c0[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,c0[r.at(a+1)^r.at(a+o)]);return r};var Qh=function(e,t,r){var n=!1,i=null,o=null,s=null,a,c,u,f,l=[];for(e=ce.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]=zx(h[u],Zh[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]=Gx(h[u],Zh[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=ce.util.createBuffer(h)),n=!1,i=ce.util.createBuffer(),o=p||new ce.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};ce.rc2.startEncrypting=function(e,t,r){var n=ce.rc2.createEncryptionCipher(e,128);return n.start(t,r),n};ce.rc2.createEncryptionCipher=function(e,t){return Qh(e,t,!0)};ce.rc2.startDecrypting=function(e,t,r){var n=ce.rc2.createDecryptionCipher(e,128);return n.start(t,r),n};ce.rc2.createDecryptionCipher=function(e,t){return Qh(e,t,!1)}});var ps=st((NB,ad)=>{var u0=xt();ad.exports=u0.jsbn=u0.jsbn||{};var cr,Wx=0xdeadbeefcafe,td=(Wx&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))}u0.jsbn.BigInteger=L;function lt(){return new L(null)}function $x(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 Yx(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 ed(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=ed,cr=28):td&&navigator.appName=="Microsoft Internet Explorer"?(L.prototype.am=Yx,cr=30):td&&navigator.appName!="Netscape"?(L.prototype.am=$x,cr=26):(L.prototype.am=ed,cr=28);L.prototype.DB=cr;L.prototype.DM=(1<<cr)-1;L.prototype.DV=1<<cr;var f0=52;L.prototype.FV=Math.pow(2,f0);L.prototype.F1=f0-cr;L.prototype.F2=2*cr-f0;var Xx="0123456789abcdefghijklmnopqrstuvwxyz",hs=new Array,Vn,ye;Vn=48;for(ye=0;ye<=9;++ye)hs[Vn++]=ye;Vn=97;for(ye=10;ye<36;++ye)hs[Vn++]=ye;Vn=65;for(ye=10;ye<36;++ye)hs[Vn++]=ye;function rd(e){return Xx.charAt(e)}function nd(e,t){var r=hs[e.charCodeAt(t)];return r??-1}function Zx(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 Qx(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 kr(e){var t=lt();return t.fromInt(e),t}function jx(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:nd(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 Jx(){for(var e=this.s&this.DM;this.t>0&&this.data[this.t-1]==e;)--this.t}function tb(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=rd(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+=rd(n));return i?o:"0"}function eb(){var e=lt();return L.ZERO.subTo(this,e),e}function rb(){return this.s<0?this.negate():this}function nb(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 ds(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 ib(){return this.t<=0?0:this.DB*(this.t-1)+ds(this.data[this.t-1]^this.s&this.DM)}function ob(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 sb(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 ab(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 cb(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 ub(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 fb(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 lb(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 hb(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=lt());var o=lt(),s=this.s,a=e.s,c=this.DB-ds(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??lt();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 db(e){var t=lt();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(L.ZERO)>0&&e.subTo(t,t),t}function rn(e){this.m=e}function pb(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function yb(e){return e}function mb(e){e.divRemTo(this.m,null,e)}function gb(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function xb(e,t){e.squareTo(t),this.reduce(t)}rn.prototype.convert=pb;rn.prototype.revert=yb;rn.prototype.reduce=mb;rn.prototype.mulTo=gb;rn.prototype.sqrTo=xb;function bb(){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 nn(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 wb(e){var t=lt();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 vb(e){var t=lt();return e.copyTo(t),this.reduce(t),t}function Eb(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 Sb(e,t){e.squareTo(t),this.reduce(t)}function Ab(e,t,r){e.multiplyTo(t,r),this.reduce(r)}nn.prototype.convert=wb;nn.prototype.revert=vb;nn.prototype.reduce=Eb;nn.prototype.mulTo=Ab;nn.prototype.sqrTo=Sb;function Db(){return(this.t>0?this.data[0]&1:this.s)==0}function Cb(e,t){if(e>4294967295||e<1)return L.ONE;var r=lt(),n=lt(),i=t.convert(this),o=ds(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 Bb(e,t){var r;return e<256||t.isEven()?r=new rn(t):r=new nn(t),this.exp(e,r)}L.prototype.copyTo=Zx;L.prototype.fromInt=Qx;L.prototype.fromString=jx;L.prototype.clamp=Jx;L.prototype.dlShiftTo=ob;L.prototype.drShiftTo=sb;L.prototype.lShiftTo=ab;L.prototype.rShiftTo=cb;L.prototype.subTo=ub;L.prototype.multiplyTo=fb;L.prototype.squareTo=lb;L.prototype.divRemTo=hb;L.prototype.invDigit=bb;L.prototype.isEven=Db;L.prototype.exp=Cb;L.prototype.toString=tb;L.prototype.negate=eb;L.prototype.abs=rb;L.prototype.compareTo=nb;L.prototype.bitLength=ib;L.prototype.mod=db;L.prototype.modPowInt=Bb;L.ZERO=kr(0);L.ONE=kr(1);function Ib(){var e=lt();return this.copyTo(e),e}function Tb(){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 _b(){return this.t==0?this.s:this.data[0]<<24>>24}function kb(){return this.t==0?this.s:this.data[0]<<16>>16}function Rb(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function Lb(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Nb(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=kr(r),i=lt(),o=lt(),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 Pb(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=nd(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 Ub(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),l0,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 Ob(){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 Kb(e){return this.compareTo(e)==0}function Mb(e){return this.compareTo(e)<0?this:e}function Fb(e){return this.compareTo(e)>0?this:e}function Vb(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 Hb(e,t){return e&t}function qb(e){var t=lt();return this.bitwiseTo(e,Hb,t),t}function l0(e,t){return e|t}function zb(e){var t=lt();return this.bitwiseTo(e,l0,t),t}function id(e,t){return e^t}function Gb(e){var t=lt();return this.bitwiseTo(e,id,t),t}function od(e,t){return e&~t}function Wb(e){var t=lt();return this.bitwiseTo(e,od,t),t}function $b(){for(var e=lt(),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 Yb(e){var t=lt();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t}function Xb(e){var t=lt();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t}function Zb(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 Qb(){for(var e=0;e<this.t;++e)if(this.data[e]!=0)return e*this.DB+Zb(this.data[e]);return this.s<0?this.t*this.DB:-1}function jb(e){for(var t=0;e!=0;)e&=e-1,++t;return t}function Jb(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=jb(this.data[r]^t);return e}function tw(e){var t=Math.floor(e/this.DB);return t>=this.t?this.s!=0:(this.data[t]&1<<e%this.DB)!=0}function ew(e,t){var r=L.ONE.shiftLeft(e);return this.bitwiseTo(r,t,r),r}function rw(e){return this.changeBit(e,l0)}function nw(e){return this.changeBit(e,od)}function iw(e){return this.changeBit(e,id)}function ow(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 sw(e){var t=lt();return this.addTo(e,t),t}function aw(e){var t=lt();return this.subTo(e,t),t}function cw(e){var t=lt();return this.multiplyTo(e,t),t}function uw(e){var t=lt();return this.divRemTo(e,t,null),t}function fw(e){var t=lt();return this.divRemTo(e,null,t),t}function lw(e){var t=lt(),r=lt();return this.divRemTo(e,t,r),new Array(t,r)}function hw(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function dw(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 Ri(){}function sd(e){return e}function pw(e,t,r){e.multiplyTo(t,r)}function yw(e,t){e.squareTo(t)}Ri.prototype.convert=sd;Ri.prototype.revert=sd;Ri.prototype.mulTo=pw;Ri.prototype.sqrTo=yw;function mw(e){return this.exp(e,new Ri)}function gw(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 xw(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 Hn(e){this.r2=lt(),this.q3=lt(),L.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}function bw(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=lt();return e.copyTo(t),this.reduce(t),t}function ww(e){return e}function vw(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 Ew(e,t){e.squareTo(t),this.reduce(t)}function Sw(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Hn.prototype.convert=bw;Hn.prototype.revert=ww;Hn.prototype.reduce=vw;Hn.prototype.mulTo=Sw;Hn.prototype.sqrTo=Ew;function Aw(e,t){var r=e.bitLength(),n,i=kr(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 rn(t):t.isEven()?o=new Hn(t):o=new nn(t);var s=new Array,a=3,c=n-1,u=(1<<n)-1;if(s[1]=o.convert(this),n>1){var f=lt();for(o.sqrTo(s[1],f);a<=u;)s[a]=lt(),o.mulTo(f,s[a-2],s[a]),a+=2}var l=e.t-1,d,m=!0,h=lt(),p;for(r=ds(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 Dw(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 Cw(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 Bw(e){var t=e.isEven();if(this.isEven()&&t||e.signum()==0)return L.ZERO;for(var r=e.clone(),n=this.clone(),i=kr(1),o=kr(0),s=kr(0),a=kr(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 _e=[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],Iw=(1<<26)/_e[_e.length-1];function Tw(e){var t,r=this.abs();if(r.t==1&&r.data[0]<=_e[_e.length-1]){for(t=0;t<_e.length;++t)if(r.data[0]==_e[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<_e.length;){for(var n=_e[t],i=t+1;i<_e.length&&n<Iw;)n*=_e[i++];for(n=r.modInt(n);t<i;)if(n%_e[t++]==0)return!1}return r.millerRabin(e)}function _w(e){var t=this.subtract(L.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n=t.shiftRight(r),i=kw(),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 kw(){return{nextBytes:function(e){for(var t=0;t<e.length;++t)e[t]=Math.floor(Math.random()*256)}}}L.prototype.chunkSize=Rb;L.prototype.toRadix=Nb;L.prototype.fromRadix=Pb;L.prototype.fromNumber=Ub;L.prototype.bitwiseTo=Vb;L.prototype.changeBit=ew;L.prototype.addTo=ow;L.prototype.dMultiply=hw;L.prototype.dAddOffset=dw;L.prototype.multiplyLowerTo=gw;L.prototype.multiplyUpperTo=xw;L.prototype.modInt=Cw;L.prototype.millerRabin=_w;L.prototype.clone=Ib;L.prototype.intValue=Tb;L.prototype.byteValue=_b;L.prototype.shortValue=kb;L.prototype.signum=Lb;L.prototype.toByteArray=Ob;L.prototype.equals=Kb;L.prototype.min=Mb;L.prototype.max=Fb;L.prototype.and=qb;L.prototype.or=zb;L.prototype.xor=Gb;L.prototype.andNot=Wb;L.prototype.not=$b;L.prototype.shiftLeft=Yb;L.prototype.shiftRight=Xb;L.prototype.getLowestSetBit=Qb;L.prototype.bitCount=Jb;L.prototype.testBit=tw;L.prototype.setBit=rw;L.prototype.clearBit=nw;L.prototype.flipBit=iw;L.prototype.add=sw;L.prototype.subtract=aw;L.prototype.multiply=cw;L.prototype.divide=uw;L.prototype.remainder=fw;L.prototype.divideAndRemainder=lw;L.prototype.modPow=Aw;L.prototype.modInverse=Bw;L.prototype.pow=mw;L.prototype.gcd=Dw;L.prototype.isProbablePrime=Tw});var hd=st((PB,ld)=>{var Ve=xt();en();Kt();var ud=ld.exports=Ve.sha1=Ve.sha1||{};Ve.md.sha1=Ve.md.algorithms.sha1=ud;ud.create=function(){fd||Rw();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),cd(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(h0.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};cd(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 h0=null,fd=!1;function Rw(){h0="\x80",h0+=Ve.util.fillString("\0",64),fd=!0}function cd(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 yd=st((UB,pd)=>{var He=xt();Kt();ki();hd();var dd=pd.exports=He.pkcs1=He.pkcs1||{};dd.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=ys(i,a-o.digestLength-1,s),y=He.util.xorBytes(h,p,h.length),g=ys(y,o.digestLength,s),b=He.util.xorBytes(i,g,i.length);return"\0"+b+y};dd.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=ys(f,i.digestLength,o),d=He.util.xorBytes(u,l,u.length),m=ys(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,S=i.digestLength;S<h.length;S++){var w=h.charCodeAt(S),E=w&1^1,C=b?65534:0;y|=w&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 ys(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 md=st((OB,d0)=>{var Rr=xt();Kt();ps();ki();(function(){if(Rr.prime){d0.exports=Rr.prime;return}var e=d0.exports=Rr.prime=Rr.prime||{},t=Rr.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||Rr.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);Rr.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 Rr.util.estimateCores(function(w,E){w&&(E=2),y=E-1,S()});S();function S(){y=Math.max(1,y);for(var w=[],E=0;E<y;++E)w[E]=new Worker(x);for(var C=y,E=0;E<y;++E)w[E].addEventListener("message",U);var B=!1;function U(K){if(!B){--C;var O=K.data;if(O.found){for(var F=0;F<w.length;++F)w[F].terminate();return B=!0,h(null,new t(O.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 gs=st((KB,Sd)=>{var Y=xt();_i();ps();es();yd();md();ki();Kt();typeof ut>"u"&&(ut=Y.jsbn.BigInteger);var ut,p0=Y.util.isNodejs?cs():null,D=Y.asn1,me=Y.util;Y.pki=Y.pki||{};Sd.exports=Y.pki.rsa=Y.rsa=Y.rsa||{};var tt=Y.pki,Lw=[6,4,2,4,2,4,6,2],Nw={name:"PrivateKeyInfo",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:D.Class.UNIVERSAL,type:D.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:D.Class.UNIVERSAL,type:D.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Pw={name:"RSAPrivateKey",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Uw={name:"RSAPublicKey",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:D.Class.UNIVERSAL,type:D.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},Ow=Y.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:D.Class.UNIVERSAL,type:D.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:D.Class.UNIVERSAL,type:D.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Kw={name:"DigestInfo",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:D.Class.UNIVERSAL,type:D.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:D.Class.UNIVERSAL,type:D.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:D.Class.UNIVERSAL,type:D.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:D.Class.UNIVERSAL,type:D.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},Mw=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=D.oidToDer(t).getBytes(),i=D.create(D.Class.UNIVERSAL,D.Type.SEQUENCE,!0,[]),o=D.create(D.Class.UNIVERSAL,D.Type.SEQUENCE,!0,[]);o.value.push(D.create(D.Class.UNIVERSAL,D.Type.OID,!1,n)),o.value.push(D.create(D.Class.UNIVERSAL,D.Type.NULL,!1,""));var s=D.create(D.Class.UNIVERSAL,D.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(s),D.toDer(i).getBytes()},vd=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(ut.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(ut.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));var n;do n=new ut(Y.util.bytesToHex(Y.random.getBytes(t.n.bitLength()/8)),16);while(n.compareTo(t.n)>=0||!n.gcd(t.n).equals(ut.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=Ed(e,t,r)):(i=Y.util.createBuffer(),i.putBytes(e));for(var s=new ut(i.toHex(),16),a=vd(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 ut(Y.util.createBuffer(e).toHex(),16);if(s.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=vd(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?ms(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 ut(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 ut(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 ut(c,e.rng),e.num.testBit(u)||e.num.bitwiseTo(ut.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(Vw(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(Lw[n++%8],0):e.pqState===2?e.pqState=e.num.subtract(ut.ONE).gcd(e.e).compareTo(ut.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(ut.ONE),e.q1=e.q.subtract(ut.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(e.state===3)e.phi.gcd(e.e).compareTo(ut.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(gd("generateKeyPair"))return p0.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(xd("generateKey")&&xd("exportKey"))return me.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:wd(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return me.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=tt.privateKeyFromAsn1(D.fromDer(Y.util.createBuffer(a)));n(null,{privateKey:c,publicKey:tt.setRsaPublicKey(c.n,c.e)})}});if(bd("generateKey")&&bd("exportKey")){var i=me.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:wd(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,u=me.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);u.oncomplete=function(f){var l=f.target.result,d=tt.privateKeyFromAsn1(D.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(gd("generateKeyPairSync")){var o=p0.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;Fw(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 Ed(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=ms(u,r,!0);var f=D.fromDer(u,{parseAllBytes:s._parseAllDigestBytes}),l={},d=[];if(!D.validate(f,Kw,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=D.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=ms(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:ms};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:Mw},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 D.create(D.Class.UNIVERSAL,D.Type.SEQUENCE,!0,[D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,D.integerToDer(0).getBytes()),D.create(D.Class.UNIVERSAL,D.Type.SEQUENCE,!0,[D.create(D.Class.UNIVERSAL,D.Type.OID,!1,D.oidToDer(tt.oids.rsaEncryption).getBytes()),D.create(D.Class.UNIVERSAL,D.Type.NULL,!1,"")]),D.create(D.Class.UNIVERSAL,D.Type.OCTETSTRING,!1,D.toDer(e).getBytes())])};tt.privateKeyFromAsn1=function(e){var t={},r=[];if(D.validate(e,Nw,t,r)&&(e=D.fromDer(Y.util.createBuffer(t.privateKey))),t={},r=[],!D.validate(e,Pw,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 ut(i,16),new ut(o,16),new ut(s,16),new ut(a,16),new ut(c,16),new ut(u,16),new ut(f,16),new ut(l,16))};tt.privateKeyToAsn1=tt.privateKeyToRSAPrivateKey=function(e){return D.create(D.Class.UNIVERSAL,D.Type.SEQUENCE,!0,[D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,D.integerToDer(0).getBytes()),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.n)),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.e)),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.d)),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.p)),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.q)),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.dP)),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.dQ)),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.qInv))])};tt.publicKeyFromAsn1=function(e){var t={},r=[];if(D.validate(e,Ow,t,r)){var n=D.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=[],!D.validate(e,Uw,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 ut(o,16),new ut(s,16))};tt.publicKeyToAsn1=tt.publicKeyToSubjectPublicKeyInfo=function(e){return D.create(D.Class.UNIVERSAL,D.Type.SEQUENCE,!0,[D.create(D.Class.UNIVERSAL,D.Type.SEQUENCE,!0,[D.create(D.Class.UNIVERSAL,D.Type.OID,!1,D.oidToDer(tt.oids.rsaEncryption).getBytes()),D.create(D.Class.UNIVERSAL,D.Type.NULL,!1,"")]),D.create(D.Class.UNIVERSAL,D.Type.BITSTRING,!1,[tt.publicKeyToRSAPublicKey(e)])])};tt.publicKeyToRSAPublicKey=function(e){return D.create(D.Class.UNIVERSAL,D.Type.SEQUENCE,!0,[D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.n)),D.create(D.Class.UNIVERSAL,D.Type.INTEGER,!1,qe(e.e))])};function Ed(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 ms(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 Fw(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(ut.ONE).gcd(e.e).compareTo(ut.ONE)!==0){e.p=null,i();return}if(e.q.subtract(ut.ONE).gcd(e.e).compareTo(ut.ONE)!==0){e.q=null,o(e.qBits,s);return}if(e.p1=e.p.subtract(ut.ONE),e.q1=e.q.subtract(ut.ONE),e.phi=e.p1.multiply(e.q1),e.phi.gcd(e.e).compareTo(ut.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 Vw(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 gd(e){return Y.util.isNodejs&&typeof p0[e]=="function"}function xd(e){return typeof me.globalScope<"u"&&typeof me.globalScope.crypto=="object"&&typeof me.globalScope.crypto.subtle=="object"&&typeof me.globalScope.crypto.subtle[e]=="function"}function bd(e){return typeof me.globalScope<"u"&&typeof me.globalScope.msCrypto=="object"&&typeof me.globalScope.msCrypto.subtle=="object"&&typeof me.globalScope.msCrypto.subtle[e]=="function"}function wd(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 Td=st((MB,Id)=>{var z=xt();o0();_i();Lh();en();es();Kh();Vh();ki();Jh();gs();Kt();typeof Ad>"u"&&(Ad=z.jsbn.BigInteger);var Ad,T=z.asn1,nt=z.pki=z.pki||{};Id.exports=nt.pbe=z.pbe=z.pbe||{};var on=nt.oids,Hw={name:"EncryptedPrivateKeyInfo",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:T.Class.UNIVERSAL,type:T.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:T.Class.UNIVERSAL,type:T.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},qw={name:"PBES2Algorithms",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:T.Class.UNIVERSAL,type:T.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:T.Class.UNIVERSAL,type:T.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:T.Class.UNIVERSAL,type:T.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:T.Class.UNIVERSAL,type:T.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:T.Class.UNIVERSAL,type:T.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:T.Class.UNIVERSAL,type:T.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:T.Class.UNIVERSAL,type:T.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},zw={name:"pkcs-12PbeParams",tagClass:T.Class.UNIVERSAL,type:T.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:T.Class.UNIVERSAL,type:T.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:T.Class.UNIVERSAL,type:T.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=T.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=on["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,u=16,f=on["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,u=16,f=on["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,u=8,f=on.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=Bd(m),p=z.pkcs5.pbkdf2(t,n,i,s,h),y=z.random.getBytesSync(u),g=l(p);g.start(y),g.update(T.toDer(e)),g.finish(),c=g.output.getBytes();var b=Gw(n,o,s,m);a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(on.pkcs5PBES2).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(on.pkcs5PBKDF2).getBytes()),b]),T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(f).getBytes()),T.create(T.Class.UNIVERSAL,T.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(T.toDer(e)),g.finish(),c=g.output.getBytes(),a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(on["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,n),T.create(T.Class.UNIVERSAL,T.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=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[a,T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,c)]);return S};nt.decryptPrivateKeyInfo=function(e,t){var r=null,n={},i=[];if(!T.validate(e,Hw,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=T.derToOid(n.encryptionOid),a=nt.pbe.getCipher(s,n.encryptionParams,t),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=T.fromDer(a.output)),r};nt.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:T.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 T.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(T.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(T.fromDer(r),t):r=T.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 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 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 U=Math.ceil(m/u)+Math.ceil(d/u),K=new z.util.ByteBuffer;for(s=0;s<U;s++){var O=new z.util.ByteBuffer(x.getBytes(u)),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);K.putBuffer(O)}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(!T.validate(t,qw,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=T.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=T.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=Cd(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(!T.validate(t,zw,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=Cd(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=[Dd(n,e+t)],o=16,s=1;o<r;++s,o+=16)i.push(Dd(n,i[s-1]+e+t));return i.join("").substr(0,r)};function Dd(e,t){return e.start().update(t).digest().getBytes()}function Cd(e){var t;if(!e)t="hmacWithSHA1";else if(t=nt.oids[T.derToOid(e)],!t){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}return Bd(t)}function Bd(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 Gw(e,t,r,n){var i=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,e),T.create(T.Class.UNIVERSAL,T.Type.INTEGER,!1,t.getBytes())]);return n!=="hmacWithSHA1"&&i.value.push(T.create(T.Class.UNIVERSAL,T.Type.INTEGER,!1,z.util.hexToBytes(r.toString(16))),T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(nt.oids[n]).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.NULL,!1,"")])),i}});var qd=st((TI,Hd)=>{var Dt=xt();en();Kt();var Ni=Hd.exports=Dt.sha512=Dt.sha512||{};Dt.md.sha512=Dt.md.algorithms.sha512=Ni;var Fd=Dt.sha384=Dt.sha512.sha384=Dt.sha512.sha384||{};Fd.create=function(){return Ni.create("SHA-384")};Dt.md.sha384=Dt.md.algorithms.sha384=Fd;Dt.sha512.sha256=Dt.sha512.sha256||{create:function(){return Ni.create("SHA-512/256")}};Dt.md["sha512/256"]=Dt.md.algorithms["sha512/256"]=Dt.sha512.sha256;Dt.sha512.sha224=Dt.sha512.sha224||{create:function(){return Ni.create("SHA-512/224")}};Dt.md["sha512/224"]=Dt.md.algorithms["sha512/224"]=Dt.sha512.sha224;Ni.create=function(e){if(Vd||Jw(),typeof e>"u"&&(e="SHA-512"),!(e in an))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=an[e],r=null,n=Dt.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=Dt.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=Dt.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),Md(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Dt.util.createBuffer();c.putBytes(n.bytes());var u=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,f=u&a.blockLength-1;c.putBytes(b0.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);Md(p,i,c);var y=Dt.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 b0=null,Vd=!1,w0=null,an=null;function Jw(){b0="\x80",b0+=Dt.util.fillString("\0",128),w0=[[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]],an={},an["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],an["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],an["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],an["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Vd=!0}function Md(e,t,r){for(var n,i,o,s,a,c,u,f,l,d,m,h,p,y,g,b,x,S,w,E,C,B,U,K,O,F,G,Q,I,R,_,k,A,P,M,H=r.length();H>=128;){for(I=0;I<16;++I)t[I][0]=r.getInt32()>>>0,t[I][1]=r.getInt32()>>>0;for(;I<80;++I)k=t[I-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[I-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=t[I-7],M=t[I-16],_=i+A[1]+s+M[1],t[I][0]=n+A[0]+o+M[0]+(_/4294967296>>>0)>>>0,t[I][1]=_>>>0;for(p=e[0][0],y=e[0][1],g=e[1][0],b=e[1][1],x=e[2][0],S=e[2][1],w=e[3][0],E=e[3][1],C=e[4][0],B=e[4][1],U=e[5][0],K=e[5][1],O=e[6][0],F=e[6][1],G=e[7][0],Q=e[7][1],I=0;I<80;++I)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=(O^C&(U^O))>>>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|S&(y^b))>>>0,_=Q+f+d+w0[I][1]+t[I][1],n=G+u+l+w0[I][0]+t[I][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+h,o=a+m+(_/4294967296>>>0)>>>0,s=_>>>0,G=O,Q=F,O=U,F=K,U=C,K=B,_=E+i,C=w+n+(_/4294967296>>>0)>>>0,B=_>>>0,w=x,E=S,x=g,S=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]+S,e[2][0]=e[2][0]+x+(_/4294967296>>>0)>>>0,e[2][1]=_>>>0,_=e[3][1]+E,e[3][0]=e[3][0]+w+(_/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]+U+(_/4294967296>>>0)>>>0,e[5][1]=_>>>0,_=e[6][1]+F,e[6][0]=e[6][0]+O+(_/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 Sp=st((W_,Ep)=>{"use strict";function Iv(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 S=m[y],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,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 S=0,w=g-1;(x!==0||S<y)&&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");y=S,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}}Ep.exports=Iv});var Is=st(($_,Ap)=>{"use strict";var Tv=new TextDecoder,_v=e=>Tv.decode(e),kv=new TextEncoder,Rv=e=>kv.encode(e);function Lv(e,t){let r=new Uint8Array(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return r}Ap.exports={decodeText:_v,encodeText:Rv,concat:Lv}});var Cp=st((Y_,Dp)=>{"use strict";var{encodeText:Nv}=Is(),L0=class{constructor(t,r,n,i){this.name=t,this.code=r,this.codeBuf=Nv(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)}};Dp.exports=L0});var Ip=st((X_,Bp)=>{"use strict";var Pv=(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},Uv=(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},Ov=e=>t=>({encode(r){return Uv(r,t,e)},decode(r){return Pv(r,t,e)}});Bp.exports={rfc4648:Ov}});var Rp=st((Z_,kp)=>{"use strict";var Hi=Sp(),Kv=Cp(),{rfc4648:Qt}=Ip(),{decodeText:Mv,encodeText:Fv}=Is(),Vv=()=>({encode:Mv,decode:Fv}),Tp=[["identity","\0",Vv,""],["base2","0",Qt(1),"01"],["base8","7",Qt(3),"01234567"],["base10","9",Hi,"0123456789"],["base16","f",Qt(4),"0123456789abcdef"],["base16upper","F",Qt(4),"0123456789ABCDEF"],["base32hex","v",Qt(5),"0123456789abcdefghijklmnopqrstuv"],["base32hexupper","V",Qt(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV"],["base32hexpad","t",Qt(5),"0123456789abcdefghijklmnopqrstuv="],["base32hexpadupper","T",Qt(5),"0123456789ABCDEFGHIJKLMNOPQRSTUV="],["base32","b",Qt(5),"abcdefghijklmnopqrstuvwxyz234567"],["base32upper","B",Qt(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"],["base32pad","c",Qt(5),"abcdefghijklmnopqrstuvwxyz234567="],["base32padupper","C",Qt(5),"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567="],["base32z","h",Qt(5),"ybndrfg8ejkmcpqxot1uwisza345h769"],["base36","k",Hi,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",Hi,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",Hi,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",Hi,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",Qt(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",Qt(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",Qt(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",Qt(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],_p=Tp.reduce((e,t)=>(e[t[0]]=new Kv(t[0],t[1],t[2],t[3]),e),{}),Hv=Tp.reduce((e,t)=>(e[t[1]]=_p[t[0]],e),{});kp.exports={names:_p,codes:Hv}});var Pp=st((hr,Np)=>{"use strict";var $n=Rp(),{encodeText:qv,decodeText:Ts,concat:Lp}=Is();function zv(e,t){if(!t)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=ln(e);return Yv(r,t),Lp([n,t],n.length+t.length)}function Gv(e,t){let r=ln(e),n=qv(r.encode(t));return Lp([r.codeBuf,n],r.codeBuf.length+n.length)}function Wv(e){e instanceof Uint8Array&&(e=Ts(e));let t=e[0];return["f","F","v","V","t","T","b","B","c","C","h","k","K"].includes(t)&&(e=e.toLowerCase()),ln(e[0]).decode(e.substring(1))}function $v(e){if(e instanceof Uint8Array&&(e=Ts(e)),Object.prototype.toString.call(e)!=="[object String]")return!1;try{return ln(e[0]).name}catch{return!1}}function Yv(e,t){ln(e).decode(Ts(t))}function ln(e){if(Object.prototype.hasOwnProperty.call($n.names,e))return $n.names[e];if(Object.prototype.hasOwnProperty.call($n.codes,e))return $n.codes[e];throw new Error(`Unsupported encoding: ${e}`)}function Xv(e){return e instanceof Uint8Array&&(e=Ts(e)),ln(e[0])}hr=Np.exports=zv;hr.encode=Gv;hr.decode=Wv;hr.isEncoded=$v;hr.encoding=ln;hr.encodingFromData=Xv;var Zv=Object.freeze($n.names),Qv=Object.freeze($n.codes);hr.names=Zv;hr.codes=Qv});var Mp=st((Q_,Kp)=>{Kp.exports=Op;var Up=128,jv=127,Jv=~jv,t8=Math.pow(2,31);function Op(e,t,r){t=t||[],r=r||0;for(var n=r;e>=t8;)t[r++]=e&255|Up,e/=128;for(;e&Jv;)t[r++]=e&255|Up,e>>>=7;return t[r]=e|0,Op.bytes=r-n+1,t}});var Hp=st((j_,Vp)=>{Vp.exports=N0;var e8=128,Fp=127;function N0(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw N0.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&Fp)<<i:(s&Fp)*Math.pow(2,i),i+=7}while(s>=e8);return N0.bytes=o-n,r}});var zp=st((J_,qp)=>{var r8=Math.pow(2,7),n8=Math.pow(2,14),i8=Math.pow(2,21),o8=Math.pow(2,28),s8=Math.pow(2,35),a8=Math.pow(2,42),c8=Math.pow(2,49),u8=Math.pow(2,56),f8=Math.pow(2,63);qp.exports=function(e){return e<r8?1:e<n8?2:e<i8?3:e<o8?4:e<s8?5:e<a8?6:e<c8?7:e<u8?8:e<f8?9:10}});var Wp=st((tk,Gp)=>{Gp.exports={encode:Mp(),decode:Hp(),encodingLength:zp()}});var Yp=st((ek,$p)=>{"use strict";var l8=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});$p.exports={names:l8}});function h8(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,S=new Uint8Array(x);g!==b;){for(var w=h[g],E=0,C=x-1;(w!==0||E<y)&&C!==-1;C--,E++)w+=256*S[C]>>>0,S[C]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");y=E,g++}for(var B=x-y;B!==x&&S[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=e.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 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 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 C=b-g;C!==b&&x[C]===0;)C++;for(var B=new Uint8Array(y+(b-C)),U=y;C!==b;)B[U++]=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 d8,p8,Xp,Zp=dt(()=>{d8=h8,p8=d8,Xp=p8});var nk,Qp,dr,jp,Jp,Lr=dt(()=>{nk=new Uint8Array(0),Qp=(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},dr=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")},jp=e=>new TextEncoder().encode(e),Jp=e=>new TextDecoder().decode(e)});var P0,U0,O0,e1,K0,Yn,Nr,y8,m8,Rt,Le=dt(()=>{Zp();Lr();P0=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")}},U0=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 e1(this,t)}},O0=class{constructor(t){this.decoders=t}or(t){return e1(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`)}},e1=(e,t)=>new O0({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),K0=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new P0(t,r,n),this.decoder=new U0(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},Yn=({name:e,prefix:t,encode:r,decode:n})=>new K0(e,t,r,n),Nr=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=Xp(r,t);return Yn({prefix:e,name:t,encode:n,decode:o=>dr(i(o))})},y8=(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},m8=(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},Rt=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>Yn({prefix:t,name:e,encode(i){return m8(i,n,r)},decode(i){return y8(i,n,r,e)}})});var M0={};ft(M0,{identity:()=>g8});var g8,r1=dt(()=>{Le();Lr();g8=Yn({prefix:"\0",name:"identity",encode:e=>Jp(e),decode:e=>jp(e)})});var F0={};ft(F0,{base2:()=>x8});var x8,n1=dt(()=>{Le();x8=Rt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var V0={};ft(V0,{base8:()=>b8});var b8,i1=dt(()=>{Le();b8=Rt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var H0={};ft(H0,{base10:()=>w8});var w8,o1=dt(()=>{Le();w8=Nr({prefix:"9",name:"base10",alphabet:"0123456789"})});var q0={};ft(q0,{base16:()=>v8,base16upper:()=>E8});var v8,E8,s1=dt(()=>{Le();v8=Rt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),E8=Rt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var z0={};ft(z0,{base32:()=>Xn,base32hex:()=>C8,base32hexpad:()=>I8,base32hexpadupper:()=>T8,base32hexupper:()=>B8,base32pad:()=>A8,base32padupper:()=>D8,base32upper:()=>S8,base32z:()=>_8});var Xn,S8,A8,D8,C8,B8,I8,T8,_8,G0=dt(()=>{Le();Xn=Rt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),S8=Rt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),A8=Rt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),D8=Rt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),C8=Rt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),B8=Rt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),I8=Rt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),T8=Rt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),_8=Rt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var W0={};ft(W0,{base36:()=>k8,base36upper:()=>R8});var k8,R8,a1=dt(()=>{Le();k8=Nr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),R8=Nr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var $0={};ft($0,{base58btc:()=>We,base58flickr:()=>L8});var We,L8,Y0=dt(()=>{Le();We=Nr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),L8=Nr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var X0={};ft(X0,{base64:()=>N8,base64pad:()=>P8,base64url:()=>U8,base64urlpad:()=>O8});var N8,P8,U8,O8,c1=dt(()=>{Le();N8=Rt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),P8=Rt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),U8=Rt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),O8=Rt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var Z0={};ft(Z0,{base256emoji:()=>H8});function F8(e){return e.reduce((t,r)=>(t+=K8[r],t),"")}function V8(e){let t=[];for(let r of e){let n=M8[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var u1,K8,M8,H8,f1=dt(()=>{Le();u1=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}"),K8=u1.reduce((e,t,r)=>(e[r]=t,e),[]),M8=u1.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);H8=Yn({prefix:"\u{1F680}",name:"base256emoji",encode:F8,decode:V8})});function d1(e,t,r){t=t||[],r=r||0;for(var n=r;e>=W8;)t[r++]=e&255|l1,e/=128;for(;e&G8;)t[r++]=e&255|l1,e>>>=7;return t[r]=e|0,d1.bytes=r-n+1,t}function Q0(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw Q0.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&h1)<<i:(s&h1)*Math.pow(2,i),i+=7}while(s>=Y8);return Q0.bytes=o-n,r}var q8,l1,z8,G8,W8,$8,Y8,h1,X8,Z8,Q8,j8,J8,tE,eE,rE,nE,iE,oE,sE,qi,p1=dt(()=>{q8=d1,l1=128,z8=127,G8=~z8,W8=Math.pow(2,31);$8=Q0,Y8=128,h1=127;X8=Math.pow(2,7),Z8=Math.pow(2,14),Q8=Math.pow(2,21),j8=Math.pow(2,28),J8=Math.pow(2,35),tE=Math.pow(2,42),eE=Math.pow(2,49),rE=Math.pow(2,56),nE=Math.pow(2,63),iE=function(e){return e<X8?1:e<Z8?2:e<Q8?3:e<j8?4:e<J8?5:e<tE?6:e<eE?7:e<rE?8:e<nE?9:10},oE={encode:q8,decode:$8,encodingLength:iE},sE=oE,qi=sE});var zi,Zn,Qn,ks=dt(()=>{p1();zi=(e,t=0)=>[qi.decode(e,t),qi.decode.bytes],Zn=(e,t,r=0)=>(qi.encode(e,t,r),t),Qn=e=>qi.encodingLength(e)});var hn,y1,m1,jn,Wi=dt(()=>{Lr();ks();hn=(e,t)=>{let r=t.byteLength,n=Qn(e),i=n+Qn(r),o=new Uint8Array(i+r);return Zn(e,o,0),Zn(r,o,n),o.set(t,i),new jn(e,r,t,o)},y1=e=>{let t=dr(e),[r,n]=zi(t),[i,o]=zi(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new jn(r,i,s,t)},m1=(e,t)=>e===t?!0:e.code===t.code&&e.size===t.size&&Qp(e.bytes,t.bytes),jn=class{constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}}});var J0,j0,tu=dt(()=>{Wi();J0=({name:e,code:t,encode:r})=>new j0(e,t,r),j0=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?hn(this.code,r):r.then(n=>hn(this.code,n))}else throw Error("Unknown type, must be binary type")}}});var eu={};ft(eu,{sha256:()=>aE,sha512:()=>cE});var x1,aE,cE,b1=dt(()=>{tu();x1=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),aE=J0({name:"sha2-256",code:18,encode:x1("SHA-256")}),cE=J0({name:"sha2-512",code:19,encode:x1("SHA-512")})});var ru={};ft(ru,{identity:()=>lE});var w1,uE,v1,fE,lE,E1=dt(()=>{Lr();Wi();w1=0,uE="identity",v1=dr,fE=e=>hn(w1,v1(e)),lE={code:w1,name:uE,encode:v1,digest:fE}});var S1=dt(()=>{Lr()});var Ak,Dk,A1=dt(()=>{Ak=new TextEncoder,Dk=new TextDecoder});var Ns,pE,yE,mE,$i,gE,D1,C1,Rs,Ls,xE,bE,wE,B1=dt(()=>{ks();Wi();Y0();G0();Lr();Ns=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:Ls,byteLength:Ls,code:Rs,version:Rs,multihash:Rs,bytes:Rs,_baseCache:Ls,asCID:Ls})}toV0(){switch(this.version){case 0:return this;default:{let{code:t,multihash:r}=this;if(t!==$i)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==gE)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=hn(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&&m1(this.multihash,t.multihash)}toString(t){let{bytes:r,version:n,_baseCache:i}=this;switch(n){case 0:return yE(r,i,t||We.encoder);default:return mE(r,i,t||Xn.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 bE(/^0\.0/,wE),!!(t&&(t[C1]||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||D1(r,n,i.bytes))}else if(t!=null&&t[C1]===!0){let{version:r,multihash:n,code:i}=t,o=y1(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!==$i)throw new Error(`Version 0 CID must use dag-pb (code: ${$i}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=D1(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,$i,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=dr(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 jn(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]=zi(t.subarray(r));return r+=d,l},i=n(),o=$i;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]=pE(t,r),o=e.decode(i);return o._baseCache.set(n,t),o}},pE=(e,t)=>{switch(e[0]){case"Q":{let r=t||We;return[We.prefix,r.decode(`${We.prefix}${e}`)]}case We.prefix:{let r=t||We;return[We.prefix,r.decode(e)]}case Xn.prefix:{let r=t||Xn;return[Xn.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)]}}},yE=(e,t,r)=>{let{prefix:n}=r;if(n!==We.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},mE=(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},$i=112,gE=18,D1=(e,t,r)=>{let n=Qn(e),i=n+Qn(t),o=new Uint8Array(i+r.byteLength);return Zn(e,o,0),Zn(t,o,n),o.set(r,i),o},C1=Symbol.for("@ipld/js-cid/CID"),Rs={writable:!1,configurable:!1,enumerable:!0},Ls={writable:!1,enumerable:!1,configurable:!1},xE="0.0.0-dev",bE=(e,t)=>{if(e.test(xE))console.warn(t);else throw new Error(t)},wE=`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,26 +26,26 @@ if (cid) {
|
|
|
26
26
|
// Make sure to use cid instead of value
|
|
27
27
|
doSomethingWithCID(cid)
|
|
28
28
|
}
|
|
29
|
-
`});var $2=he(()=>{H2();xc();en();Sl();xs()});var Dl,lH,G2=he(()=>{b2();w2();v2();E2();S2();pl();A2();yl();C2();B2();P2();F2();K2();V2();$2();Dl={...cl,...fl,...ul,...hl,...ll,...dl,...ml,...xl,...gl,...bl},lH={...Al,...Cl}});function Jo(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}var wc=he(()=>{});function vc(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?Jo(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var Bl=he(()=>{wc()});function Y2(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var W2,Il,OI,Ec,Tl=he(()=>{G2();Bl();W2=Y2("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Il=Y2("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=vc(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),OI={utf8:W2,"utf-8":W2,hex:Dl.base16,latin1:Il,ascii:Il,binary:Il,...Dl},Ec=OI});var X2={};O(X2,{toString:()=>MI});function MI(t,e="utf8"){let r=Ec[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 j2=he(()=>{Tl()});var Z2={};O(Z2,{fromString:()=>FI});function FI(t,e="utf8"){let r=Ec[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Jo(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var Q2=he(()=>{Tl();wc()});var J2={};O(J2,{concat:()=>KI});function KI(t,e){e||(e=t.reduce((o,i)=>o+i.length,0));let r=vc(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return Jo(r)}var e1=he(()=>{Bl();wc()});var kl=se((CH,s1)=>{"use strict";var t1=Qb(),ei=f2(),{names:gs}=h2(),{toString:Sc}=(j2(),As(X2)),{fromString:VI}=(Q2(),As(Z2)),{concat:zI}=(e1(),As(J2)),ti={};for(let t in gs){let e=t;ti[gs[e]]=e}Object.freeze(ti);function qI(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Sc(t,"base16")}function HI(t){return VI(t,"base16")}function $I(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Sc(t1.encode("base58btc",t)).slice(1)}function GI(t){let e=t instanceof Uint8Array?Sc(t):t;return t1.decode("z"+e)}function r1(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=ei.decode(t);if(!o1(e))throw new Error(`multihash unknown function code: 0x${e.toString(16)}`);t=t.slice(ei.decode.bytes);let r=ei.decode(t);if(r<0)throw new Error(`multihash invalid length: ${r}`);if(t=t.slice(ei.decode.bytes),t.length!==r)throw new Error(`multihash length inconsistent: 0x${Sc(t,"base16")}`);return{code:e,name:ti[e],length:r,digest:t}}function WI(t,e,r){if(!t||e===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=n1(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 o=ei.encode(n),i=ei.encode(r);return zI([o,i,t],o.length+i.length+t.length)}function n1(t){let e=t;if(typeof t=="string"){if(gs[t]===void 0)throw new Error(`Unrecognized hash function named: ${t}`);e=gs[t]}if(typeof e!="number")throw new Error(`Hash function code should be a number. Got: ${e}`);if(ti[e]===void 0&&!_l(e))throw new Error(`Unrecognized function code: ${e}`);return e}function _l(t){return t>0&&t<16}function o1(t){return!!(_l(t)||ti[t])}function i1(t){r1(t)}function YI(t){return i1(t),t.subarray(0,2)}s1.exports={names:gs,codes:ti,toHexString:qI,fromHexString:HI,toB58String:$I,fromB58String:GI,decode:r1,encode:WI,coerceCode:n1,isAppCode:_l,validate:i1,prefix:YI,isValidCode:o1}});var l_={};O(l_,{webRTC:()=>h_,webRTCDirect:()=>u_});var p_=Symbol.for("@libp2p/connection");var x_=Symbol.for("@libp2p/content-routing");var b_=Symbol.for("@libp2p/peer-discovery");var dd=Symbol.for("@libp2p/peer-id");var E_=Symbol.for("@libp2p/peer-routing");var pd;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(pd||(pd={}));var Cs=Symbol.for("@libp2p/transport");var md;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(md||(md={}));var W=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var Ds=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 o=this.#e.get(e);o==null&&(o=[],this.#e.set(e,o)),o.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,r,n){super.removeEventListener(e.toString(),r??null,n);let o=this.#e.get(e);o!=null&&(o=o.filter(({callback:i})=>i!==r),this.#e.set(e,o))}dispatchEvent(e){let r=super.dispatchEvent(e),n=this.#e.get(e.type);return n==null||(n=n.filter(({once:o})=>!o),this.#e.set(e.type,n)),r}safeDispatchEvent(e,r){return this.dispatchEvent(new Z1(e,r))}},_c=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},Z1=globalThis.CustomEvent??_c;var xd=(t,...e)=>{try{[...e]}catch{}};var Uc={};O(Uc,{base58btc:()=>nt,base58flickr:()=>nw});var nk=new Uint8Array(0);function yd(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 or(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 gd(t){return new TextEncoder().encode(t)}function bd(t){return new TextDecoder().decode(t)}function Q1(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 o=0;o<t.length;o++){var i=t.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}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 d=0,m=0,x=0,b=h.length;x!==b&&h[x]===0;)x++,d++;for(var g=(b-x)*u+1>>>0,v=new Uint8Array(g);x!==b;){for(var w=h[x],E=0,S=g-1;(w!==0||E<m)&&S!==-1;S--,E++)w+=256*v[S]>>>0,v[S]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,x++}for(var C=g-m;C!==g&&v[C]===0;)C++;for(var k=c.repeat(d);C<g;++C)k+=t.charAt(v[C]);return k}function p(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var d=0;if(h[d]!==" "){for(var m=0,x=0;h[d]===c;)m++,d++;for(var b=(h.length-d)*f+1>>>0,g=new Uint8Array(b);h[d];){var v=r[h.charCodeAt(d)];if(v===255)return;for(var w=0,E=b-1;(v!==0||w<x)&&E!==-1;E--,w++)v+=a*g[E]>>>0,g[E]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");x=w,d++}if(h[d]!==" "){for(var S=b-x;S!==b&&g[S]===0;)S++;for(var C=new Uint8Array(m+(b-S)),k=m;S!==b;)C[k++]=g[S++];return C}}}function y(h){var d=p(h);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:y}}var J1=Q1,ew=J1,vd=ew;var kc=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")}},Rc=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 Ed(this,e)}},Lc=class{decoders;constructor(e){this.decoders=e}or(e){return Ed(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 Ed(t,e){return new Lc({...t.decoders??{[t.prefix]:t},...e.decoders??{[e.prefix]:e}})}var Nc=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new kc(e,r,n),this.decoder=new Rc(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function Hn({name:t,prefix:e,encode:r,decode:n}){return new Nc(t,e,r,n)}function _r({name:t,prefix:e,alphabet:r}){let{encode:n,decode:o}=vd(r,t);return Hn({prefix:e,name:t,encode:n,decode:i=>or(o(i))})}function tw(t,e,r,n){let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let s=new Uint8Array(i*r/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[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 rw(t,e,r){let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s!==0&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i}function Ie({name:t,prefix:e,bitsPerChar:r,alphabet:n}){return Hn({prefix:e,name:t,encode(o){return rw(o,n,r)},decode(o){return tw(o,n,r,t)}})}var nt=_r({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),nw=_r({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Pc={};O(Pc,{base10:()=>ow});var ow=_r({prefix:"9",name:"base10",alphabet:"0123456789"});var Oc={};O(Oc,{base16:()=>iw,base16upper:()=>sw});var iw=Ie({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),sw=Ie({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Mc={};O(Mc,{base2:()=>aw});var aw=Ie({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Fc={};O(Fc,{base256emoji:()=>lw});var Sd=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}"),cw=Sd.reduce((t,e,r)=>(t[r]=e,t),[]),fw=Sd.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function uw(t){return t.reduce((e,r)=>(e+=cw[r],e),"")}function hw(t){let e=[];for(let r of t){let n=fw[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var lw=Hn({prefix:"\u{1F680}",name:"base256emoji",encode:uw,decode:hw});var Kc={};O(Kc,{base32:()=>$n,base32hex:()=>xw,base32hexpad:()=>gw,base32hexpadupper:()=>bw,base32hexupper:()=>yw,base32pad:()=>pw,base32padupper:()=>mw,base32upper:()=>dw,base32z:()=>ww});var $n=Ie({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),dw=Ie({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),pw=Ie({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),mw=Ie({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),xw=Ie({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),yw=Ie({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),gw=Ie({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),bw=Ie({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ww=Ie({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Vc={};O(Vc,{base36:()=>vw,base36upper:()=>Ew});var vw=_r({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Ew=_r({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var zc={};O(zc,{base64:()=>Bs,base64pad:()=>Sw,base64url:()=>Aw,base64urlpad:()=>Cw});var Bs=Ie({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Sw=Ie({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Aw=Ie({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Cw=Ie({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var qc={};O(qc,{base8:()=>Dw});var Dw=Ie({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Hc={};O(Hc,{identity:()=>Bw});var Bw=Hn({prefix:"\0",name:"identity",encode:t=>bd(t),decode:t=>gd(t)});var bk=new TextEncoder,wk=new TextDecoder;var Gc={};O(Gc,{identity:()=>kr});var _w=Dd,Ad=128,kw=127,Rw=~kw,Lw=Math.pow(2,31);function Dd(t,e,r){e=e||[],r=r||0;for(var n=r;t>=Lw;)e[r++]=t&255|Ad,t/=128;for(;t&Rw;)e[r++]=t&255|Ad,t>>>=7;return e[r]=t|0,Dd.bytes=r-n+1,e}var Nw=$c,Uw=128,Cd=127;function $c(t,n){var r=0,n=n||0,o=0,i=n,s,a=t.length;do{if(i>=a)throw $c.bytes=0,new RangeError("Could not decode varint");s=t[i++],r+=o<28?(s&Cd)<<o:(s&Cd)*Math.pow(2,o),o+=7}while(s>=Uw);return $c.bytes=i-n,r}var Pw=Math.pow(2,7),Ow=Math.pow(2,14),Mw=Math.pow(2,21),Fw=Math.pow(2,28),Kw=Math.pow(2,35),Vw=Math.pow(2,42),zw=Math.pow(2,49),qw=Math.pow(2,56),Hw=Math.pow(2,63),$w=function(t){return t<Pw?1:t<Ow?2:t<Mw?3:t<Fw?4:t<Kw?5:t<Vw?6:t<zw?7:t<qw?8:t<Hw?9:10},Gw={encode:_w,decode:Nw,encodingLength:$w},Ww=Gw,ci=Ww;function fi(t,e=0){return[ci.decode(t,e),ci.decode.bytes]}function Gn(t,e,r=0){return ci.encode(t,e,r),e}function Wn(t){return ci.encodingLength(t)}function Ft(t,e){let r=e.byteLength,n=Wn(t),o=n+Wn(r),i=new Uint8Array(o+r);return Gn(t,i,0),Gn(r,i,n),i.set(e,o),new Yn(t,r,e,i)}function ui(t){let e=or(t),[r,n]=fi(e),[o,i]=fi(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new Yn(r,o,s,e)}function Bd(t,e){if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&yd(t.bytes,r.bytes)}}var Yn=class{code;size;digest;bytes;constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var Id=0,Yw="identity",Td=or;function Xw(t){return Ft(Id,Td(t))}var kr={code:Id,name:Yw,encode:Td,digest:Xw};var Xc={};O(Xc,{sha256:()=>Ye,sha512:()=>jw});function Yc({name:t,code:e,encode:r}){return new Wc(t,e,r)}var Wc=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?Ft(this.code,r):r.then(n=>Ft(this.code,n))}else throw Error("Unknown type, must be binary type")}};function kd(t){return async e=>new Uint8Array(await crypto.subtle.digest(t,e))}var Ye=Yc({name:"sha2-256",code:18,encode:kd("SHA-256")}),jw=Yc({name:"sha2-512",code:19,encode:kd("SHA-512")});function Rd(t,e){let{bytes:r,version:n}=t;switch(n){case 0:return Qw(r,jc(t),e??nt.encoder);default:return Jw(r,jc(t),e??$n.encoder)}}var Ld=new WeakMap;function jc(t){let e=Ld.get(t);if(e==null){let r=new Map;return Ld.set(t,r),r}return e}var on=class t{code;version;multihash;bytes;"/";constructor(e,r,n,o){this.code=r,this.version=e,this.multihash=n,this.bytes=o,this["/"]=o}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!==hi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==ev)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=Ft(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&&Bd(e.multihash,n.multihash)}toString(e){return Rd(this,e)}toJSON(){return{"/":Rd(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:o,multihash:i,bytes:s}=r;return new t(n,o,i,s??Nd(n,o,i.bytes))}else if(r[tv]===!0){let{version:n,multihash:o,code:i}=r,s=ui(o);return t.create(n,i,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!==hi)throw new Error(`Version 0 CID must use dag-pb (code: ${hi}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=Nd(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,hi,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,o=or(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new Yn(r.multihashCode,r.digestSize,i,o);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,p]=fi(e.subarray(r));return r+=p,l},o=n(),i=hi;if(o===18?(o=0,r=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,o]=Zw(e,r),i=t.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return jc(i).set(n,e),i}};function Zw(t,e){switch(t[0]){case"Q":{let r=e??nt;return[nt.prefix,r.decode(`${nt.prefix}${t}`)]}case nt.prefix:{let r=e??nt;return[nt.prefix,r.decode(t)]}case $n.prefix:{let r=e??$n;return[$n.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 Qw(t,e,r){let{prefix:n}=r;if(n!==nt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let i=r.encode(t).slice(1);return e.set(n,i),i}else return o}function Jw(t,e,r){let{prefix:n}=r,o=e.get(n);if(o==null){let i=r.encode(t);return e.set(n,i),i}else return o}var hi=112,ev=18;function Nd(t,e,r){let n=Wn(t),o=n+Wn(e),i=new Uint8Array(o+r.byteLength);return Gn(t,i,0),Gn(e,i,n),i.set(r,o),i}var tv=Symbol.for("@ipld/js-cid/CID");var li={...Hc,...Mc,...qc,...Pc,...Oc,...Kc,...Vc,...Uc,...zc,...Fc},Vk={...Xc,...Gc};function Zc(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 rv=Symbol.for("nodejs.util.inspect.custom"),Ud=Object.values(li).map(t=>t.decoder).reduce((t,e)=>t.or(e),li.identity.decoder),Pd=114,Qc=36,Jc=37,di=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()})`}[dd]=!0;toString(){return this.string==null&&(this.string=nt.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return on.createV1(Pd,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Zc(this.multihash.bytes,e);if(typeof e=="string")return sn(e).equals(this);if(e?.multihash?.bytes!=null)return Zc(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[rv](){return`PeerId(${this.toString()})`}},jn=class extends di{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Zn=class extends di{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Qn=class extends di{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function sn(t,e){if(e=e??Ud,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=ui(nt.decode(`z${t}`));return t.startsWith("12D")?new Zn({multihash:r}):t.startsWith("16U")?new Qn({multihash:r}):new jn({multihash:r})}return nv(Ud.decode(t))}function nv(t){try{let e=ui(t);if(e.code===kr.code){if(e.digest.length===Qc)return new Zn({multihash:e});if(e.digest.length===Jc)return new Qn({multihash:e})}if(e.code===Ye.code)return new jn({multihash:e})}catch{return ov(on.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function ov(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Pd)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Ye.code)return new jn({multihash:t.multihash});if(e.code===kr.code){if(e.digest.length===Qc)return new Zn({multihash:t.multihash});if(e.digest.length===Jc)return new Qn({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function ef(t,e){return t.length===Qc?new Zn({multihash:Ft(kr.code,t),privateKey:e}):t.length===Jc?new Qn({multihash:Ft(kr.code,t),privateKey:e}):new jn({multihash:await Ye.digest(t),publicKey:t,privateKey:e})}var sf={};O(sf,{base58btc:()=>st,base58flickr:()=>hv});function sv(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 o=0;o<t.length;o++){var i=t.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}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 d=0,m=0,x=0,b=h.length;x!==b&&h[x]===0;)x++,d++;for(var g=(b-x)*u+1>>>0,v=new Uint8Array(g);x!==b;){for(var w=h[x],E=0,S=g-1;(w!==0||E<m)&&S!==-1;S--,E++)w+=256*v[S]>>>0,v[S]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,x++}for(var C=g-m;C!==g&&v[C]===0;)C++;for(var k=c.repeat(d);C<g;++C)k+=t.charAt(v[C]);return k}function p(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var d=0;if(h[d]!==" "){for(var m=0,x=0;h[d]===c;)m++,d++;for(var b=(h.length-d)*f+1>>>0,g=new Uint8Array(b);h[d];){var v=r[h.charCodeAt(d)];if(v===255)return;for(var w=0,E=b-1;(v!==0||w<x)&&E!==-1;E--,w++)v+=a*g[E]>>>0,g[E]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");x=w,d++}if(h[d]!==" "){for(var S=b-x;S!==b&&g[S]===0;)S++;for(var C=new Uint8Array(m+(b-S)),k=m;S!==b;)C[k++]=g[S++];return C}}}function y(h){var d=p(h);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:y}}var av=sv,cv=av,Od=cv;var Jk=new Uint8Array(0);var Md=(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},ir=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 Fd=t=>new TextEncoder().encode(t),Kd=t=>new TextDecoder().decode(t);var tf=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")}},rf=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 zd(this,e)}},nf=class{constructor(e){this.decoders=e}or(e){return zd(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`)}},zd=(t,e)=>new nf({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),of=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new tf(e,r,n),this.decoder=new rf(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Jn=({name:t,prefix:e,encode:r,decode:n})=>new of(t,e,r,n),Rr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=Od(r,e);return Jn({prefix:t,name:e,encode:n,decode:i=>ir(o(i))})},fv=(t,e,r,n)=>{let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let s=new Uint8Array(i*r/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[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},uv=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i},Te=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Jn({prefix:e,name:t,encode(o){return uv(o,n,r)},decode(o){return fv(o,n,r,t)}});var st=Rr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),hv=Rr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var af={};O(af,{base32:()=>sr,base32hex:()=>mv,base32hexpad:()=>yv,base32hexpadupper:()=>gv,base32hexupper:()=>xv,base32pad:()=>dv,base32padupper:()=>pv,base32upper:()=>lv,base32z:()=>bv});var sr=Te({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),lv=Te({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),dv=Te({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),pv=Te({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),mv=Te({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),xv=Te({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),yv=Te({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),gv=Te({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),bv=Te({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var wv=$d,qd=128,vv=127,Ev=~vv,Sv=Math.pow(2,31);function $d(t,e,r){e=e||[],r=r||0;for(var n=r;t>=Sv;)e[r++]=t&255|qd,t/=128;for(;t&Ev;)e[r++]=t&255|qd,t>>>=7;return e[r]=t|0,$d.bytes=r-n+1,e}var Av=cf,Cv=128,Hd=127;function cf(t,n){var r=0,n=n||0,o=0,i=n,s,a=t.length;do{if(i>=a)throw cf.bytes=0,new RangeError("Could not decode varint");s=t[i++],r+=o<28?(s&Hd)<<o:(s&Hd)*Math.pow(2,o),o+=7}while(s>=Cv);return cf.bytes=i-n,r}var Dv=Math.pow(2,7),Bv=Math.pow(2,14),Iv=Math.pow(2,21),Tv=Math.pow(2,28),_v=Math.pow(2,35),kv=Math.pow(2,42),Rv=Math.pow(2,49),Lv=Math.pow(2,56),Nv=Math.pow(2,63),Uv=function(t){return t<Dv?1:t<Bv?2:t<Iv?3:t<Tv?4:t<_v?5:t<kv?6:t<Rv?7:t<Lv?8:t<Nv?9:10},Pv={encode:wv,decode:Av,encodingLength:Uv},Ov=Pv,pi=Ov;var mi=(t,e=0)=>[pi.decode(t,e),pi.decode.bytes],eo=(t,e,r=0)=>(pi.encode(t,e,r),e),to=t=>pi.encodingLength(t);var an=(t,e)=>{let r=e.byteLength,n=to(t),o=n+to(r),i=new Uint8Array(o+r);return eo(t,i,0),eo(r,i,n),i.set(e,o),new ro(t,r,e,i)},_s=t=>{let e=ir(t),[r,n]=mi(e),[o,i]=mi(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new ro(r,o,s,e)},Gd=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Md(t.bytes,r.bytes)}},ro=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var Wd=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Fv(r,ff(t),e||st.encoder);default:return Kv(r,ff(t),e||sr.encoder)}};var Yd=new WeakMap,ff=t=>{let e=Yd.get(t);if(e==null){let r=new Map;return Yd.set(t,r),r}return e},Lr=class t{constructor(e,r,n,o){this.code=r,this.version=e,this.multihash=n,this.bytes=o,this["/"]=o}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!==xi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Vv)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=an(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&&Gd(e.multihash,n.multihash)}toString(e){return Wd(this,e)}toJSON(){return{"/":Wd(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:o,multihash:i,bytes:s}=r;return new t(n,o,i,s||Xd(n,o,i.bytes))}else if(r[zv]===!0){let{version:n,multihash:o,code:i}=r,s=_s(o);return t.create(n,i,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!==xi)throw new Error(`Version 0 CID must use dag-pb (code: ${xi}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=Xd(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,xi,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,o=ir(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new ro(r.multihashCode,r.digestSize,i,o);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,p]=mi(e.subarray(r));return r+=p,l},o=n(),i=xi;if(o===18?(o=0,r=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,o]=Mv(e,r),i=t.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return ff(i).set(n,e),i}},Mv=(t,e)=>{switch(t[0]){case"Q":{let r=e||st;return[st.prefix,r.decode(`${st.prefix}${t}`)]}case st.prefix:{let r=e||st;return[st.prefix,r.decode(t)]}case sr.prefix:{let r=e||sr;return[sr.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)]}}},Fv=(t,e,r)=>{let{prefix:n}=r;if(n!==st.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let i=r.encode(t).slice(1);return e.set(n,i),i}else return o},Kv=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let i=r.encode(t);return e.set(n,i),i}else return o},xi=112,Vv=18,Xd=(t,e,r)=>{let n=to(t),o=n+to(e),i=new Uint8Array(o+r.byteLength);return eo(t,i,0),eo(e,i,n),i.set(r,o),i},zv=Symbol.for("@ipld/js-cid/CID");function ks(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 pf={};O(pf,{base10:()=>Yv});function qv(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 o=0;o<t.length;o++){var i=t.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}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 d=0,m=0,x=0,b=h.length;x!==b&&h[x]===0;)x++,d++;for(var g=(b-x)*u+1>>>0,v=new Uint8Array(g);x!==b;){for(var w=h[x],E=0,S=g-1;(w!==0||E<m)&&S!==-1;S--,E++)w+=256*v[S]>>>0,v[S]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,x++}for(var C=g-m;C!==g&&v[C]===0;)C++;for(var k=c.repeat(d);C<g;++C)k+=t.charAt(v[C]);return k}function p(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var d=0;if(h[d]!==" "){for(var m=0,x=0;h[d]===c;)m++,d++;for(var b=(h.length-d)*f+1>>>0,g=new Uint8Array(b);h[d];){var v=r[h.charCodeAt(d)];if(v===255)return;for(var w=0,E=b-1;(v!==0||w<x)&&E!==-1;E--,w++)v+=a*g[E]>>>0,g[E]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");x=w,d++}if(h[d]!==" "){for(var S=b-x;S!==b&&g[S]===0;)S++;for(var C=new Uint8Array(m+(b-S)),k=m;S!==b;)C[k++]=g[S++];return C}}}function y(h){var d=p(h);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:y}}var Hv=qv,$v=Hv,jd=$v;var mR=new Uint8Array(0);var Zd=(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},ar=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 Qd=t=>new TextEncoder().encode(t),Jd=t=>new TextDecoder().decode(t);var uf=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 tp(this,e)}},lf=class{constructor(e){this.decoders=e}or(e){return tp(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`)}},tp=(t,e)=>new lf({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),df=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new uf(e,r,n),this.decoder=new hf(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},oo=({name:t,prefix:e,encode:r,decode:n})=>new df(t,e,r,n),Nr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=jd(r,e);return oo({prefix:t,name:e,encode:n,decode:i=>ar(o(i))})},Gv=(t,e,r,n)=>{let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let s=new Uint8Array(i*r/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[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},Wv=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i},_e=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>oo({prefix:e,name:t,encode(o){return Wv(o,n,r)},decode(o){return Gv(o,n,r,t)}});var Yv=Nr({prefix:"9",name:"base10",alphabet:"0123456789"});var mf={};O(mf,{base16:()=>Xv,base16upper:()=>jv});var Xv=_e({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),jv=_e({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var xf={};O(xf,{base2:()=>Zv});var Zv=_e({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var yf={};O(yf,{base256emoji:()=>r8});var rp=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}"),Qv=rp.reduce((t,e,r)=>(t[r]=e,t),[]),Jv=rp.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function e8(t){return t.reduce((e,r)=>(e+=Qv[r],e),"")}function t8(t){let e=[];for(let r of t){let n=Jv[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var r8=oo({prefix:"\u{1F680}",name:"base256emoji",encode:e8,decode:t8});var gf={};O(gf,{base32:()=>io,base32hex:()=>s8,base32hexpad:()=>c8,base32hexpadupper:()=>f8,base32hexupper:()=>a8,base32pad:()=>o8,base32padupper:()=>i8,base32upper:()=>n8,base32z:()=>u8});var io=_e({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),n8=_e({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),o8=_e({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),i8=_e({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),s8=_e({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),a8=_e({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),c8=_e({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),f8=_e({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),u8=_e({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var bf={};O(bf,{base36:()=>h8,base36upper:()=>l8});var h8=Nr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),l8=Nr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var wf={};O(wf,{base58btc:()=>Kt,base58flickr:()=>d8});var Kt=Nr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),d8=Nr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var vf={};O(vf,{base64:()=>p8,base64pad:()=>m8,base64url:()=>x8,base64urlpad:()=>y8});var p8=_e({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),m8=_e({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),x8=_e({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),y8=_e({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Ef={};O(Ef,{base8:()=>g8});var g8=_e({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Sf={};O(Sf,{identity:()=>b8});var b8=oo({prefix:"\0",name:"identity",encode:t=>Jd(t),decode:t=>Qd(t)});var _R=new TextEncoder,kR=new TextDecoder;var Cf={};O(Cf,{identity:()=>z8});var E8=ip,np=128,S8=127,A8=~S8,C8=Math.pow(2,31);function ip(t,e,r){e=e||[],r=r||0;for(var n=r;t>=C8;)e[r++]=t&255|np,t/=128;for(;t&A8;)e[r++]=t&255|np,t>>>=7;return e[r]=t|0,ip.bytes=r-n+1,e}var D8=Af,B8=128,op=127;function Af(t,n){var r=0,n=n||0,o=0,i=n,s,a=t.length;do{if(i>=a)throw Af.bytes=0,new RangeError("Could not decode varint");s=t[i++],r+=o<28?(s&op)<<o:(s&op)*Math.pow(2,o),o+=7}while(s>=B8);return Af.bytes=i-n,r}var I8=Math.pow(2,7),T8=Math.pow(2,14),_8=Math.pow(2,21),k8=Math.pow(2,28),R8=Math.pow(2,35),L8=Math.pow(2,42),N8=Math.pow(2,49),U8=Math.pow(2,56),P8=Math.pow(2,63),O8=function(t){return t<I8?1:t<T8?2:t<_8?3:t<k8?4:t<R8?5:t<L8?6:t<N8?7:t<U8?8:t<P8?9:10},M8={encode:E8,decode:D8,encodingLength:O8},F8=M8,yi=F8;var gi=(t,e=0)=>[yi.decode(t,e),yi.decode.bytes],so=(t,e,r=0)=>(yi.encode(t,e,r),e),ao=t=>yi.encodingLength(t);var cn=(t,e)=>{let r=e.byteLength,n=ao(t),o=n+ao(r),i=new Uint8Array(o+r);return so(t,i,0),so(r,i,n),i.set(e,o),new co(t,r,e,i)},sp=t=>{let e=ar(t),[r,n]=gi(e),[o,i]=gi(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new co(r,o,s,e)},ap=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Zd(t.bytes,r.bytes)}},co=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var cp=0,K8="identity",fp=ar,V8=t=>cn(cp,fp(t)),z8={code:cp,name:K8,encode:fp,digest:V8};var If={};O(If,{sha256:()=>q8,sha512:()=>H8});var Bf=({name:t,code:e,encode:r})=>new Df(t,e,r),Df=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 hp=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),q8=Bf({name:"sha2-256",code:18,encode:hp("SHA-256")}),H8=Bf({name:"sha2-512",code:19,encode:hp("SHA-512")});var lp=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return G8(r,Tf(t),e||Kt.encoder);default:return W8(r,Tf(t),e||io.encoder)}};var dp=new WeakMap,Tf=t=>{let e=dp.get(t);if(e==null){let r=new Map;return dp.set(t,r),r}return e},Ls=class t{constructor(e,r,n,o){this.code=r,this.version=e,this.multihash=n,this.bytes=o,this["/"]=o}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!==wi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Y8)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=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 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&&ap(e.multihash,n.multihash)}toString(e){return lp(this,e)}toJSON(){return{"/":lp(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:o,multihash:i,bytes:s}=r;return new t(n,o,i,s||pp(n,o,i.bytes))}else if(r[X8]===!0){let{version:n,multihash:o,code:i}=r,s=sp(o);return t.create(n,i,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!==wi)throw new Error(`Version 0 CID must use dag-pb (code: ${wi}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=pp(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,wi,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,o=ar(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new co(r.multihashCode,r.digestSize,i,o);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,p]=gi(e.subarray(r));return r+=p,l},o=n(),i=wi;if(o===18?(o=0,r=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,o]=$8(e,r),i=t.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Tf(i).set(n,e),i}},$8=(t,e)=>{switch(t[0]){case"Q":{let r=e||Kt;return[Kt.prefix,r.decode(`${Kt.prefix}${t}`)]}case Kt.prefix:{let r=e||Kt;return[Kt.prefix,r.decode(t)]}case io.prefix:{let r=e||io;return[io.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)]}}},G8=(t,e,r)=>{let{prefix:n}=r;if(n!==Kt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let i=r.encode(t).slice(1);return e.set(n,i),i}else return o},W8=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let i=r.encode(t);return e.set(n,i),i}else return o},wi=112,Y8=18,pp=(t,e,r)=>{let n=ao(t),o=n+ao(e),i=new Uint8Array(o+r.byteLength);return so(t,i,0),so(e,i,n),i.set(r,o),i},X8=Symbol.for("@ipld/js-cid/CID");var _f={...Sf,...xf,...Ef,...pf,...mf,...gf,...bf,...wf,...vf,...yf},WR={...If,...Cf};function fn(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function cr(t=0){return globalThis.Buffer?.alloc!=null?fn(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Je(t=0){return globalThis.Buffer?.allocUnsafe!=null?fn(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function xp(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var mp=xp("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),kf=xp("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=Je(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),j8={utf8:mp,"utf-8":mp,hex:_f.base16,latin1:kf,ascii:kf,binary:kf,..._f},Ns=j8;function at(t,e="utf8"){let r=Ns[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 Z8=Math.pow(2,7),Q8=Math.pow(2,14),J8=Math.pow(2,21),Rf=Math.pow(2,28),Lf=Math.pow(2,35),Nf=Math.pow(2,42),Uf=Math.pow(2,49),le=128,et=127;function tt(t){if(t<Z8)return 1;if(t<Q8)return 2;if(t<J8)return 3;if(t<Rf)return 4;if(t<Lf)return 5;if(t<Nf)return 6;if(t<Uf)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function eE(t,e,r=0){switch(tt(t)){case 8:e[r++]=t&255|le,t/=128;case 7:e[r++]=t&255|le,t/=128;case 6:e[r++]=t&255|le,t/=128;case 5:e[r++]=t&255|le,t/=128;case 4:e[r++]=t&255|le,t>>>=7;case 3:e[r++]=t&255|le,t>>>=7;case 2:e[r++]=t&255|le,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function tE(t,e,r=0){switch(tt(t)){case 8:e.set(r++,t&255|le),t/=128;case 7:e.set(r++,t&255|le),t/=128;case 6:e.set(r++,t&255|le),t/=128;case 5:e.set(r++,t&255|le),t/=128;case 4:e.set(r++,t&255|le),t>>>=7;case 3:e.set(r++,t&255|le),t>>>=7;case 2:e.set(r++,t&255|le),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function rE(t,e){let r=t[e],n=0;if(n+=r&et,r<le||(r=t[e+1],n+=(r&et)<<7,r<le)||(r=t[e+2],n+=(r&et)<<14,r<le)||(r=t[e+3],n+=(r&et)<<21,r<le)||(r=t[e+4],n+=(r&et)*Rf,r<le)||(r=t[e+5],n+=(r&et)*Lf,r<le)||(r=t[e+6],n+=(r&et)*Nf,r<le)||(r=t[e+7],n+=(r&et)*Uf,r<le))return n;throw new RangeError("Could not decode varint")}function nE(t,e){let r=t.get(e),n=0;if(n+=r&et,r<le||(r=t.get(e+1),n+=(r&et)<<7,r<le)||(r=t.get(e+2),n+=(r&et)<<14,r<le)||(r=t.get(e+3),n+=(r&et)<<21,r<le)||(r=t.get(e+4),n+=(r&et)*Rf,r<le)||(r=t.get(e+5),n+=(r&et)*Lf,r<le)||(r=t.get(e+6),n+=(r&et)*Nf,r<le)||(r=t.get(e+7),n+=(r&et)*Uf,r<le))return n;throw new RangeError("Could not decode varint")}function Ur(t,e,r=0){return e==null&&(e=Je(tt(t))),e instanceof Uint8Array?eE(t,e,r):tE(t,e,r)}function Ct(t,e=0){return t instanceof Uint8Array?rE(t,e):nE(t,e)}function gt(t,e){e==null&&(e=t.reduce((o,i)=>o+i.length,0));let r=Je(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return fn(r)}var Us=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,o){return this.readAtomically(()=>{let i=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",f=2**(8*o)-1;for(;;){let u=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let p=Number.parseInt(l,e);if(!Number.isNaN(p))return p});if(u===void 0)break;if(i*=e,i+=u,i>f||(s+=1,r!==void 0&&s>r))return}if(s!==0)return!n&&c&&s>1?void 0:i})}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 o=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[o]=s[0],r[o+1]=s[1],r[o+2]=s[2],r[o+3]=s[3],[o+4,!0]}let i=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(i===void 0)return[o,!1];r[o]=i>>8,r[o+1]=i&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,o]=e(r);if(n===16)return r;if(o||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let i=new Uint8Array(14),s=16-(n+2),[a]=e(i.subarray(0,s));return r.set(i.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var yp=45,oE=15,fo=new Us;function Pf(t){if(!(t.length>oE))return fo.new(t).parseWith(()=>fo.readIPv4Addr())}function Of(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>yp))return fo.new(t).parseWith(()=>fo.readIPv6Addr())}function Ps(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>yp))return fo.new(t).parseWith(()=>fo.readIPAddr())}var xL=parseInt("0xFFFF",16),yL=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);var Mf={};O(Mf,{base10:()=>fE});var fE=Rr({prefix:"9",name:"base10",alphabet:"0123456789"});var Ff={};O(Ff,{base16:()=>uE,base16upper:()=>hE});var uE=Te({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),hE=Te({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Kf={};O(Kf,{base2:()=>lE});var lE=Te({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Vf={};O(Vf,{base256emoji:()=>yE});var wp=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}"),dE=wp.reduce((t,e,r)=>(t[r]=e,t),[]),pE=wp.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function mE(t){return t.reduce((e,r)=>(e+=dE[r],e),"")}function xE(t){let e=[];for(let r of t){let n=pE[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var yE=Jn({prefix:"\u{1F680}",name:"base256emoji",encode:mE,decode:xE});var zf={};O(zf,{base36:()=>gE,base36upper:()=>bE});var gE=Rr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),bE=Rr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var qf={};O(qf,{base64:()=>wE,base64pad:()=>vE,base64url:()=>EE,base64urlpad:()=>SE});var wE=Te({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),vE=Te({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),EE=Te({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),SE=Te({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Hf={};O(Hf,{base8:()=>AE});var AE=Te({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var $f={};O($f,{identity:()=>CE});var CE=Jn({prefix:"\0",name:"identity",encode:t=>Kd(t),decode:t=>Fd(t)});var YL=new TextEncoder,XL=new TextDecoder;var Gf={};O(Gf,{identity:()=>_E});var vp=0,IE="identity",Ep=ir,TE=t=>an(vp,Ep(t)),_E={code:vp,name:IE,encode:Ep,digest:TE};var Xf={};O(Xf,{sha256:()=>kE,sha512:()=>RE});var Yf=({name:t,code:e,encode:r})=>new Wf(t,e,r),Wf=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?an(this.code,r):r.then(n=>an(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Ap=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),kE=Yf({name:"sha2-256",code:18,encode:Ap("SHA-256")}),RE=Yf({name:"sha2-512",code:19,encode:Ap("SHA-512")});var Cp={...$f,...Kf,...Hf,...Mf,...Ff,...af,...zf,...sf,...qf,...Vf},nN={...Xf,...Gf};function Ei(t,e="utf8"){let r=Ns[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?fn(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function Os(t){return!!Pf(t)}function Ms(t){return!!Of(t)}function Fs(t){return!!Ps(t)}var Dp=Os,LE=Ms,jf=function(t){let e=0;if(t=t.toString().trim(),Dp(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(LE(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let i=Dp(r[n]),s;i&&(s=jf(r[n]),r[n]=at(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,at(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 i=[n,1];for(n=9-r.length;n>0;n--)i.push("0");r.splice.apply(r,i)}let o=new Uint8Array(e+16);for(n=0;n<r.length;n++){let i=parseInt(r[n],16);o[e++]=i>>8&255,o[e++]=i&255}return o}throw new Error("invalid ip address")},Bp=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let o=[];for(let i=0;i<r;i++)o.push(t[e+i]);return o.join(".")}if(r===16){let o=[];for(let i=0;i<r;i+=2)o.push(n.getUint16(e+i).toString(16));return o.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var uo={},Zf={},UE=[[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"]];UE.forEach(t=>{let e=PE(...t);Zf[e.code]=e,uo[e.name]=e});function PE(t,e,r,n,o){return{code:t,size:e,name:r,resolvable:!!n,path:!!o}}function de(t){if(typeof t=="number"){if(Zf[t]!=null)return Zf[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(uo[t]!=null)return uo[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var SN=de("ip4"),AN=de("ip6"),CN=de("ipcidr");function Jf(t,e){switch(de(t).code){case 4:case 41:return ME(e);case 42:return _p(e);case 6:case 273:case 33:case 132:return Rp(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return _p(e);case 421:return zE(e);case 444:return kp(e);case 445:return kp(e);case 466:return VE(e);default:return at(e,"base16")}}function e0(t,e){switch(de(t).code){case 4:return Ip(e);case 41:return Ip(e);case 42:return Tp(e);case 6:case 273:case 33:case 132:return t0(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Tp(e);case 421:return FE(e);case 444:return qE(e);case 445:return HE(e);case 466:return KE(e);default:return Ei(e,"base16")}}var Qf=Object.values(Cp).map(t=>t.decoder),OE=function(){let t=Qf[0].or(Qf[1]);return Qf.slice(2).forEach(e=>t=t.or(e)),t}();function Ip(t){if(!Fs(t))throw new Error("invalid ip address");return jf(t)}function ME(t){let e=Bp(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!Fs(e))throw new Error("invalid ip address");return e}function t0(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function Rp(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function Tp(t){let e=Ei(t),r=Uint8Array.from(Ur(e.length));return gt([r,e],r.length+e.length)}function _p(t){let e=Ct(t);if(t=t.slice(tt(e)),t.length!==e)throw new Error("inconsistent lengths");return at(t)}function FE(t){let e;t[0]==="Q"||t[0]==="1"?e=_s(st.decode(`z${t}`)).bytes:e=Lr.parse(t).multihash.bytes;let r=Uint8Array.from(Ur(e.length));return gt([r,e],r.length+e.length)}function KE(t){let e=OE.decode(t),r=Uint8Array.from(Ur(e.length));return gt([r,e],r.length+e.length)}function VE(t){let e=Ct(t),r=t.slice(tt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+at(r,"base64url")}function zE(t){let e=Ct(t),r=t.slice(tt(e));if(r.length!==e)throw new Error("inconsistent lengths");return at(r,"base58btc")}function qE(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=sr.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 o=t0(n);return gt([r,o],r.length+o.length)}function HE(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=sr.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 o=t0(n);return gt([r,o],r.length+o.length)}function kp(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=at(e,"base32"),o=Rp(r);return`${n}:${o}`}function Lp(t){t=r0(t);let e=[],r=[],n=null,o=t.split("/").slice(1);if(o.length===1&&o[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let i=0;i<o.length;i++){let s=o[i],a=de(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(i++,i>=o.length)throw Up("invalid address: "+t);if(a.path===!0){n=r0(o.slice(i).join("/")),e.push([a.code,e0(a.code,n)]),r.push([a.code,n]);break}let c=e0(a.code,o[i]);e.push([a.code,c]),r.push([a.code,Jf(a.code,c)])}return{string:Np(r),bytes:o0(e),tuples:e,stringTuples:r,path:n}}function n0(t){let e=[],r=[],n=null,o=0;for(;o<t.length;){let i=Ct(t,o),s=tt(i),a=de(i),c=$E(a,t.slice(o+s));if(c===0){e.push([i]),r.push([i]),o+=s;continue}let f=t.slice(o+s,o+s+c);if(o+=c+s,o>t.length)throw Up("Invalid address Uint8Array: "+at(t,"base16"));e.push([i,f]);let u=Jf(i,f);if(r.push([i,u]),a.path===!0){n=u;break}}return{bytes:Uint8Array.from(t),string:Np(r),tuples:e,stringTuples:r,path:n}}function Np(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}),r0(e.join("/"))}function o0(t){return gt(t.map(e=>{let r=de(e[0]),n=Uint8Array.from(Ur(r.code));return e.length>1&&e[1]!=null&&(n=gt([n,e[1]])),n}))}function $E(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=Ct(e instanceof Uint8Array?e:Uint8Array.from(e));return r+tt(r)}}function r0(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function Up(t){return new Error("Error parsing address: "+t)}var GE=Symbol.for("nodejs.util.inspect.custom"),i0=Symbol.for("@multiformats/js-multiaddr/multiaddr"),WE=[de("dns").code,de("dns4").code,de("dns6").code,de("dnsaddr").code],Ks=class t{bytes;#e;#t;#r;#n;[i0]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=n0(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=Lp(e)}else if(Op(e))r=n0(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,o,i="",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&&(i=`%${h??""}`),WE.includes(y)&&(r=s.name,o=443,n=`${h??""}${i}`,e=y===u.code?6:4),(y===s.code||y===a.code)&&(r=de(y).name,o=parseInt(h??"")),(y===c.code||y===f.code)&&(r=de(y).name,n=`${h??""}${i}`,e=y===f.code?6:4);if(e==null||r==null||n==null||o==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:o}}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(),o=n.lastIndexOf(r);if(o<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,o))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(o0(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,o])=>{n===uo.p2p.code&&e.push([n,o]),n===uo["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?at(st.decode(`z${n}`),"base58btc"):at(Lr.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return ks(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(i=>i.resolvable);if(r==null)return[this];let n=Pp.get(r.name);if(n==null)throw new W(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(i=>new t(i))}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)}[GE](){return`Multiaddr(${this.#e})`}};var Pp=new Map;function Op(t){return!!t?.[i0]}function fr(t){return new Ks(t)}function YE(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 o=0;o<t.length;o++){var i=t.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}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 d=0,m=0,x=0,b=h.length;x!==b&&h[x]===0;)x++,d++;for(var g=(b-x)*u+1>>>0,v=new Uint8Array(g);x!==b;){for(var w=h[x],E=0,S=g-1;(w!==0||E<m)&&S!==-1;S--,E++)w+=256*v[S]>>>0,v[S]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,x++}for(var C=g-m;C!==g&&v[C]===0;)C++;for(var k=c.repeat(d);C<g;++C)k+=t.charAt(v[C]);return k}function p(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var d=0;if(h[d]!==" "){for(var m=0,x=0;h[d]===c;)m++,d++;for(var b=(h.length-d)*f+1>>>0,g=new Uint8Array(b);h[d];){var v=r[h.charCodeAt(d)];if(v===255)return;for(var w=0,E=b-1;(v!==0||w<x)&&E!==-1;E--,w++)v+=a*g[E]>>>0,g[E]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");x=w,d++}if(h[d]!==" "){for(var S=b-x;S!==b&&g[S]===0;)S++;for(var C=new Uint8Array(m+(b-S)),k=m;S!==b;)C[k++]=g[S++];return C}}}function y(h){var d=p(h);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:y}}var XE=YE,jE=XE,Mp=jE;var ZN=new Uint8Array(0);var Fp=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 s0=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")}},a0=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 Kp(this,e)}},c0=class{constructor(e){this.decoders=e}or(e){return Kp(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`)}},Kp=(t,e)=>new c0({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),f0=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new s0(e,r,n),this.decoder=new a0(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Vp=({name:t,prefix:e,encode:r,decode:n})=>new f0(t,e,r,n),u0=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=Mp(r,e);return Vp({prefix:t,name:e,encode:n,decode:i=>Fp(o(i))})},ZE=(t,e,r,n)=>{let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let s=new Uint8Array(i*r/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[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},QE=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i},Si=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Vp({prefix:e,name:t,encode(o){return QE(o,n,r)},decode(o){return ZE(o,n,r,t)}});var zp=u0({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),n7=u0({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var s7=Si({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),a7=Si({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),qp=Si({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),c7=Si({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var JE=t=>t.toString().split("/").slice(1),Ai=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),Ue=t=>({match:e=>Ai(r=>r===t).match(e),pattern:t}),qs=()=>({match:t=>Ai(e=>typeof e=="string").match(t),pattern:"{string}"}),Hp=()=>({match:t=>Ai(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),bt=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{zp.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),Vs=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{qp.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),Vt=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),zt=(...t)=>({match:e=>{let r;for(let n of t){let o=n.match(e);o!==!1&&(r==null||o.length<r.length)&&(r=o)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),Pe=(...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 Ve(...t){function e(o){let i=JE(o);for(let s of t){let a=s.match(i);if(a===!1)return!1;i=a}return i}function r(o){return e(o)!==!1}function n(o){let i=e(o);return i===!1?!1:i.length===0}return{matches:r,exactMatch:n}}var l0=Pe(Ue("dns4"),qs()),d0=Pe(Ue("dns6"),qs()),p0=Pe(Ue("dnsaddr"),qs()),$p=Pe(Ue("dns"),qs()),p7=Ve(l0),m7=Ve(d0),x7=Ve(p0),y7=Ve(zt($p,p0,l0,d0)),Gp=Pe(Ue("ip4"),Ai(Os)),Wp=Pe(Ue("ip6"),Ai(Ms)),Yp=zt(Gp,Wp),Ci=zt(Yp,$p,l0,d0,p0),g7=Ve(Ci),b7=Ve(Gp),w7=Ve(Wp),v7=Ve(Yp),Hs=Pe(Ci,Ue("tcp"),Hp()),Di=Pe(Ci,Ue("udp"),Hp()),e3=zt(Hs,Di),E7=Ve(Hs),S7=Ve(Di),m0=Pe(Di,Ue("quic")),$s=Pe(Di,Ue("quic-v1")),t3=zt(m0,$s),A7=Ve(m0),C7=Ve($s),h0=zt(Ci,Hs,Di,m0,$s),Xp=zt(Pe(h0,Ue("ws"),Vt(bt()))),D7=Ve(Xp),jp=zt(Pe(h0,Ue("wss"),Vt(bt())),Pe(h0,Ue("tls"),Ue("ws"),Vt(bt()))),B7=Ve(jp),Zp=Pe(e3,Ue("webrtc-direct"),Vs(),Vt(Vs()),Vt(bt())),Qp=Ve(Zp),Jp=Pe($s,Ue("webtransport"),Vs(),Vs(),Vt(bt())),I7=Ve(Jp),zs=zt(Xp,jp,Pe(Hs,Vt(bt())),Pe(t3,Vt(bt())),Pe(Ci,Vt(bt())),Zp,Jp,bt()),T7=Ve(zs),r3=Pe(zs,Ue("p2p-circuit"),bt()),_7=Ve(r3),n3=zt(Pe(zs,Ue("p2p-circuit"),Ue("webrtc"),bt()),Pe(zs,Ue("webrtc"),Vt(bt())),Ue("webrtc")),em=Ve(n3);var dt;(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"})(dt||(dt={}));var Pr=class extends W{constructor(e,r){super(`WebRTC transport error: ${e}`,r??""),this.name="WebRTCTransportError"}};var x0=class extends Pr{constructor(e,r){super(`[stream: ${e}] data channel error: ${r}`,dt.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function E0(t,e){return new x0(t,e)}var y0=class extends Pr{constructor(e){super(`There was a problem with the Multiaddr which was passed in: ${e}`,dt.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function Gs(t){return new y0(t)}var g0=class extends Pr{constructor(e){super(`There was a problem with a provided argument: ${e}`,dt.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function Bi(t){return new g0(t)}var b0=class extends Pr{constructor(e,r){super(`Invalid fingerprint "${e}" within ${r}`,dt.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function S0(t,e){return new b0(t,e)}var w0=class extends Pr{constructor(e){super(`A method (${e}) was called though it has been intentionally left unimplemented.`,dt.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function tm(t){return new w0(t)}var v0=class extends Pr{constructor(e){super(`unsupported hash algorithm: ${e}`,dt.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function rm(t){return new v0(t)}var nm=function(t,e,r){if(r||arguments.length===2)for(var n=0,o=e.length,i;n<o;n++)(i||!(n in e))&&(i||(i=Array.prototype.slice.call(e,0,n)),i[n]=e[n]);return t.concat(i||Array.prototype.slice.call(e))},o3=function(){function t(e,r,n){this.name=e,this.version=r,this.os=n,this.type="browser"}return t}();var i3=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}();var s3=function(){function t(e,r,n,o){this.name=e,this.version=r,this.os=n,this.bot=o,this.type="bot-device"}return t}();var a3=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}();var c3=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}();var f3=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,u3=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,om=3,h3=[["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",f3]],im=[["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 am(t){return t?sm(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new c3:typeof navigator<"u"?sm(navigator.userAgent):p3()}function l3(t){return t!==""&&h3.reduce(function(e,r){var n=r[0],o=r[1];if(e)return e;var i=o.exec(t);return!!i&&[n,i]},!1)}function sm(t){var e=l3(t);if(!e)return null;var r=e[0],n=e[1];if(r==="searchbot")return new a3;var o=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);o?o.length<om&&(o=nm(nm([],o,!0),m3(om-o.length),!0)):o=[];var i=o.join("."),s=d3(t),a=u3.exec(t);return a&&a[1]?new s3(r,i,s,a[1]):new o3(r,i,s)}function d3(t){for(var e=0,r=im.length;e<r;e++){var n=im[e],o=n[0],i=n[1],s=i.exec(t);if(s)return o}return null}function p3(){var t=typeof process<"u"&&process.version;return t?new i3(process.version.slice(1)):null}function m3(t){for(var e=[],r=0;r<t;r++)e.push("0");return e}function Me(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var ho=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},A0=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},cm=t=>globalThis.DOMException===void 0?new A0(t):new DOMException(t),fm=t=>{let e=t.reason===void 0?cm("This operation was aborted."):t.reason;return e instanceof Error?e:cm(e)};function un(t,e){let{milliseconds:r,fallback:n,message:o,customTimers:i={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:p}=e;p.aborted&&u(fm(p)),p.addEventListener("abort",()=>{u(fm(p))})}if(r===Number.POSITIVE_INFINITY){t.then(f,u);return}let l=new ho;s=i.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(p){u(p)}return}typeof t.cancel=="function"&&t.cancel(),o===!1?f():o instanceof Error?u(o):(l.message=o??`Promise timed out after ${r} milliseconds`,u(l))},r),(async()=>{try{f(await t)}catch(p){u(p)}})()}).finally(()=>{c.clear()});return c.clear=()=>{i.clearTimeout.call(void 0,s),s=void 0},c}var um=am(),Ii=um!=null&&um.name==="firefox",Ws=async function*(){},Ys=async t=>{},x3=30*1e3;function hm(t,e,r=x3,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 o=Me(),i=!1;t.bufferedAmountLowThreshold=0;let s=()=>{i||(n.log("%s drain channel closed before drain",e),o.resolve())};t.addEventListener("close",s,{once:!0}),t.addEventListener("bufferedamountlow",()=>{i=!0,t.removeEventListener("close",s),o.resolve()}),await un(o.promise,{milliseconds:r})}}).then(async()=>{t.readyState==="open"&&t.close()}).catch(o=>{n.log.error("error closing outbound stream",o)})}var hn=class{log;peerConnection;remoteAddr;timeline;metrics;source=Ws();sink=Ys;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 Xs=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}},lo=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Xs(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 Xs(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 C0=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Or(t={}){return y3(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 y3(t,e){e=e??{};let r=e.onEnd,n=new lo,o,i,s,a=Me(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((m,x)=>{i=b=>{i=null,n.push(b);try{m(t(n))}catch(g){x(g)}return o}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Me()})}},f=m=>i!=null?i(m):(n.push(m),o),u=m=>(n=new lo,i!=null?i({error:m}):(n.push({error:m}),o)),l=m=>{if(s)return o;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})},p=m=>s?o:(s=!0,m!=null?u(m):f({done:!0})),y=()=>(n=new lo,p(),{done:!0}),h=m=>(p(m),{done:!0});if(o={[Symbol.asyncIterator](){return this},next:c,return:y,throw:h,push:l,end:p,get readableLength(){return n.size},onEmpty:async m=>{let x=m?.signal;if(x?.throwIfAborted(),n.isEmpty())return;let b,g;x!=null&&(b=new Promise((v,w)=>{g=()=>{w(new C0)},x.addEventListener("abort",g)}));try{await Promise.race([a.promise,b])}finally{g!=null&&x!=null&&x?.removeEventListener("abort",g)}}},r==null)return o;let d=o;return o={[Symbol.asyncIterator](){return this},next(){return d.next()},throw(m){return d.throw(m),r!=null&&(r(m),r=void 0),{done:!0}},return(){return d.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(m){return d.end(m),r!=null&&(r(m),r=void 0),o},get readableLength(){return d.readableLength},onEmpty:m=>d.onEmpty(m)},o}var js=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 Mr(t,e,r){if(e==null)return t;if(e.aborted)return Promise.reject(new js(r?.errorMessage,r?.errorCode));let n,o=new js(r?.errorMessage,r?.errorCode);try{return await Promise.race([t,new Promise((i,s)=>{n=()=>{s(o)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var dm=Symbol.for("@achingbrain/uint8arraylist");function lm(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let o=r+n.byteLength;if(e<o)return{buf:n,index:e-r};r=o}throw new RangeError("index is out of bounds")}function po(t){return!!t?.[dm]}var Ae=class t{bufs;length;[dm]=!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(po(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(po(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=lm(this.bufs,e);return r.buf[r.index]}set(e,r){let n=lm(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(po(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:o}=this._subList(e,r);return gt(n,o)}subarray(e,r){let{bufs:n,length:o}=this._subList(e,r);return n.length===1?n[0]:gt(n,o)}sublist(e,r){let{bufs:n,length:o}=this._subList(e,r),i=new t;return i.length=o,i.bufs=[...n],i}_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=[],o=0;for(let i=0;i<this.bufs.length;i++){let s=this.bufs[i],a=o,c=a+s.byteLength;if(o=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(!po(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 o=n.byteLength;if(o===0)throw new TypeError("search must be at least 1 byte long");let i=256,s=new Int32Array(i);for(let l=0;l<i;l++)s[l]=-1;for(let l=0;l<o;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 p=f;p>=0;p--){let y=this.get(l+p);if(n[p]!==y){u=Math.max(1,p-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=Je(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 o=cr(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,r,n),this.write(o,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 o=cr(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,r,n),this.write(o,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 o=cr(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,r,n),this.write(o,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=Je(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 o=cr(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,r,n),this.write(o,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 o=cr(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,r,n),this.write(o,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 o=cr(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,r,n),this.write(o,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 o=cr(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,r,n),this.write(o,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 o=cr(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,r,n),this.write(o,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(!ks(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((o,i)=>o+i.byteLength,0)),n.length=r,n}};function pm(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 mm(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function xm(t,e){let r=pm(t).return?.();mm(r)&&r.catch(n=>{e.error("could not cause iterator to return",n)})}var g3="ERR_STREAM_RESET",b3="ERR_SINK_INVALID_STATE",w3=5e3;function D0(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}var Zs=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=Me(),this.closed=Me(),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??w3,this.onEnd=e.onEnd,this.onCloseRead=e?.onCloseRead,this.onCloseWrite=e?.onCloseWrite,this.onReset=e?.onReset,this.onAbort=e?.onAbort,this.source=this.streamSource=Or({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 W(`writable end state is "${this.writeStatus}" not "ready"`,b3);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let o=this.sendNewStream(r);D0(o)&&await o}let n=()=>{xm(e,this.log)};try{this.sinkController.signal.addEventListener("abort",n),this.log.trace("sink reading from source");for await(let o of e){o=o instanceof Uint8Array?new Ae(o):o;let i=this.sendData(o,r);D0(i)&&await i}}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 Mr(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 Mr(this.sink([]),e.signal)),this.writeStatus==="writing"&&await new Promise((r,n)=>{queueMicrotask(()=>{this.log.trace("aborting source passed to .sink"),this.sinkController.abort(),Mr(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();D0(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 W("stream reset",g3);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 Qs(t){return t[Symbol.asyncIterator]!=null}var Js=t=>{let e=tt(t),r=Je(e);return Ur(t,r),Js.bytes=e,r};Js.bytes=0;function Fr(t,e){e=e??{};let r=e.lengthEncoder??Js;function*n(o){let i=r(o.byteLength);i instanceof Uint8Array?yield i:yield*i,o instanceof Uint8Array?yield o:yield*o}return Qs(t)?async function*(){for await(let o of t)yield*n(o)}():function*(){for(let o of t)yield*n(o)}()}Fr.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??Js;return new Ae(r(t.byteLength),t)};var mo=Qe(bm(),1);var E3=8,S3=1024*1024*4,ln;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(ln||(ln={}));var B0=t=>{let e=Ct(t);return B0.bytes=tt(e),e};B0.bytes=0;function dn(t,e){let r=new Ae,n=ln.LENGTH,o=-1,i=e?.lengthDecoder??B0,s=e?.maxLengthLength??E3,a=e?.maxDataLength??S3;function*c(){for(;r.byteLength>0;){if(n===ln.LENGTH)try{if(o=i(r),o<0)throw(0,mo.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(o>a)throw(0,mo.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let f=i.bytes;r.consume(f),e?.onLength!=null&&e.onLength(o),n=ln.DATA}catch(f){if(f instanceof RangeError){if(r.byteLength>s)throw(0,mo.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw f}if(n===ln.DATA){if(r.byteLength<o)break;let f=r.sublist(0,o);r.consume(o),e?.onData!=null&&e.onData(f),yield f,n=ln.LENGTH}}}return Qs(t)?async function*(){for await(let f of t)r.append(f),yield*c();if(r.byteLength>0)throw(0,mo.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,mo.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}dn.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:i,value:s}=await t.next(r);if(i===!0)return;s!=null&&(yield s)}catch(i){if(i.code==="ERR_UNDER_READ")return{done:!0,value:null};throw i}finally{r=1}}();return dn(n,{...e??{},onLength:i=>{r=i}})};var A3=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 C3(t,e,r){let n,o=new Promise((i,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}=A3(t),l=(...y)=>{let h=r.multiArgs?y:y[0];r.filter&&!r.filter(h)||(c.push(h),r.count===c.length&&(n(),i(c)))},p=y=>{n(),s(y)};n=()=>{for(let y of a)u(y,l);for(let y of r.rejectionEvents)u(y,p)};for(let y of a)f(y,l);for(let y of r.rejectionEvents)f(y,p);r.signal&&r.signal.addEventListener("abort",()=>{p(r.signal.reason)},{once:!0}),r.resolveImmediately&&i(c)});if(o.cancel=n,typeof r.timeout=="number"){let i=un(o,{milliseconds:r.timeout});return i.cancel=n,i}return o}function I0(t,e,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=C3(t,e,r),o=n.then(i=>i[0]);return o.cancel=n.cancel,o}var T0=new Float32Array([-0]),Kr=new Uint8Array(T0.buffer);function vm(t,e,r){T0[0]=t,e[r]=Kr[0],e[r+1]=Kr[1],e[r+2]=Kr[2],e[r+3]=Kr[3]}function Em(t,e){return Kr[0]=t[e],Kr[1]=t[e+1],Kr[2]=t[e+2],Kr[3]=t[e+3],T0[0]}var _0=new Float64Array([-0]),rt=new Uint8Array(_0.buffer);function Sm(t,e,r){_0[0]=t,e[r]=rt[0],e[r+1]=rt[1],e[r+2]=rt[2],e[r+3]=rt[3],e[r+4]=rt[4],e[r+5]=rt[5],e[r+6]=rt[6],e[r+7]=rt[7]}function Am(t,e){return rt[0]=t[e],rt[1]=t[e+1],rt[2]=t[e+2],rt[3]=t[e+3],rt[4]=t[e+4],rt[5]=t[e+5],rt[6]=t[e+6],rt[7]=t[e+7],_0[0]}var D3=BigInt(Number.MAX_SAFE_INTEGER),B3=BigInt(Number.MIN_SAFE_INTEGER),ct=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 pn;if(e<D3&&e>B3)return this.fromNumber(Number(e));let r=e<0n;r&&(e=-e);let n=e>>32n,o=e-(n<<32n);return r&&(n=~n|0n,o=~o|0n,++o>Cm&&(o=0n,++n>Cm&&(n=0n))),new t(Number(o),Number(n))}static fromNumber(e){if(e===0)return pn;let r=e<0;r&&(e=-e);let n=e>>>0,o=(e-n)/4294967296>>>0;return r&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new t(n,o)}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):pn}},pn=new ct(0,0);pn.toBigInt=function(){return 0n};pn.zzEncode=pn.zzDecode=function(){return this};pn.length=function(){return 1};var Cm=4294967296n;function Dm(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 Bm(t,e,r){if(r-e<1)return"";let o,i=[],s=0,a;for(;e<r;)a=t[e++],a<128?i[s++]=a:a>191&&a<224?i[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,i[s++]=55296+(a>>10),i[s++]=56320+(a&1023)):i[s++]=(a&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&((o??(o=[])).push(String.fromCharCode.apply(String,i)),s=0);return o!=null?(s>0&&o.push(String.fromCharCode.apply(String,i.slice(0,s))),o.join("")):String.fromCharCode.apply(String,i.slice(0,s))}function k0(t,e,r){let n=r,o,i;for(let s=0;s<t.length;++s)o=t.charCodeAt(s),o<128?e[r++]=o:o<2048?(e[r++]=o>>6|192,e[r++]=o&63|128):(o&64512)===55296&&((i=t.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(i&1023),++s,e[r++]=o>>18|240,e[r++]=o>>12&63|128,e[r++]=o>>6&63|128,e[r++]=o&63|128):(e[r++]=o>>12|224,e[r++]=o>>6&63|128,e[r++]=o&63|128);return r-n}function Dt(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function ea(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var R0=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,Dt(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 Dt(this,4);return ea(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Dt(this,4);return ea(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Dt(this,4);let e=Em(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw Dt(this,4);let e=Am(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 Dt(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return Bm(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Dt(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Dt(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 ct(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 Dt(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 Dt(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 Dt(this,8);let e=ea(this.buf,this.pos+=4),r=ea(this.buf,this.pos+=4);return new ct(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 L0(t){return new R0(t instanceof Uint8Array?t:t.subarray())}function Bt(t,e){let r=L0(t);return e.decode(r)}function N0(t){let e=t??8192,r=e>>>1,n,o=e;return function(s){if(s<1||s>r)return Je(s);o+s>e&&(n=Je(e),o=0);let a=n.subarray(o,o+=s);return o&7&&(o=(o|7)+1),a}}var mn=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function U0(){}var O0=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},I3=N0();function T3(t){return globalThis.Buffer!=null?Je(t):I3(t)}var ki=class{len;head;tail;states;constructor(){this.len=0,this.head=new mn(U0,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new mn(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new M0((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(Ti,10,ct.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=ct.fromBigInt(e);return this._push(Ti,r.length(),r)}uint64Number(e){let r=ct.fromNumber(e);return this._push(Ti,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=ct.fromBigInt(e).zzEncode();return this._push(Ti,r.length(),r)}sint64Number(e){let r=ct.fromNumber(e).zzEncode();return this._push(Ti,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(P0,1,e?1:0)}fixed32(e){return this._push(_i,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=ct.fromBigInt(e);return this._push(_i,4,r.lo)._push(_i,4,r.hi)}fixed64Number(e){let r=ct.fromNumber(e);return this._push(_i,4,r.lo)._push(_i,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(vm,4,e)}double(e){return this._push(Sm,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(P0,1,0):this.uint32(r)._push(k3,r,e)}string(e){let r=Dm(e);return r!==0?this.uint32(r)._push(k0,r,e):this._push(P0,1,0)}fork(){return this.states=new O0(this),this.head=this.tail=new mn(U0,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 mn(U0,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=T3(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function P0(t,e,r){e[r]=t&255}function _3(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var M0=class extends mn{next;constructor(e,r){super(_3,e,r),this.next=void 0}};function Ti(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 _i(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 k3(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(R3,e,t),this},ki.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(L3,e,t),this});function R3(t,e,r){e.set(t,r)}function L3(t,e,r){t.length<40?k0(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(Ei(t),r)}function F0(){return new ki}function It(t,e){let r=F0();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var xo;(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"})(xo||(xo={}));function ta(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function xn(t){function e(o){if(t[o.toString()]==null)throw new Error("Invalid enum value");return t[o]}let r=function(i,s){let a=e(i);s.int32(a)},n=function(i){let s=i.int32();return e(s)};return ta("enum",xo.VARINT,r,n)}function Tt(t,e){return ta("message",xo.LENGTH_DELIMITED,t,e)}var ft;(function(t){let e;(function(o){o.FIN="FIN",o.STOP_SENDING="STOP_SENDING",o.RESET="RESET",o.FIN_ACK="FIN_ACK"})(e=t.Flag||(t.Flag={}));let r;(function(o){o[o.FIN=0]="FIN",o[o.STOP_SENDING=1]="STOP_SENDING",o[o.RESET=2]="RESET",o[o.FIN_ACK=3]="FIN_ACK"})(r||(r={})),function(o){o.codec=()=>xn(r)}(e=t.Flag||(t.Flag={}));let n;t.codec=()=>(n==null&&(n=Tt((o,i,s={})=>{s.lengthDelimited!==!1&&i.fork(),o.flag!=null&&(i.uint32(8),t.Flag.codec().encode(o.flag,i)),o.message!=null&&(i.uint32(18),i.bytes(o.message)),s.lengthDelimited!==!1&&i.ldelim()},(o,i)=>{let s={},a=i==null?o.len:o.pos+i;for(;o.pos<a;){let c=o.uint32();switch(c>>>3){case 1:s.flag=t.Flag.codec().decode(o);break;case 2:s.message=o.bytes();break;default:o.skipType(c&7);break}}return s})),n),t.encode=o=>It(o,t.codec()),t.decode=o=>Bt(o,t.codec())})(ft||(ft={}));var N3=16*1024*1024,U3=30*1e3,P3=5,O3=2,M3=16*1024,F3=5e3,K3=5e3,K0=class extends Zs{channel;incomingData;maxBufferedAmount;bufferedAmountLowEventTimeout;maxMessageSize;receiveFinAck;finAckTimeout;openTimeout;constructor(e){let r=e.onEnd;switch(e.onEnd=o=>{this.log.trace("readable and writeable ends closed",this.status),Promise.resolve(async()=>{if(!(this.timeline.abort!=null||this.timeline.reset!==null))try{await un(this.receiveFinAck.promise,{milliseconds:this.finAckTimeout})}catch(i){this.log.error("error receiving FIN_ACK",i)}}).then(()=>{this.incomingData.end(),r?.(o)}).catch(i=>{this.log.error("error ending stream",i)})},super(e),this.channel=e.channel,this.channel.binaryType="arraybuffer",this.incomingData=Or(),this.bufferedAmountLowEventTimeout=e.bufferedAmountLowEventTimeout??U3,this.maxBufferedAmount=e.maxBufferedAmount??N3,this.maxMessageSize=(e.maxMessageSize??M3)-P3-O3,this.receiveFinAck=Me(),this.finAckTimeout=e.closeTimeout??F3,this.openTimeout=e.openTimeout??K3,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=o=>{this.timeline.open=new Date().getTime()},this.channel.onclose=o=>{this.receiveFinAck.resolve(),this.close().catch(i=>{this.log.error("error closing stream after channel closed",i)})},this.channel.onerror=o=>{let i=o.error;this.abort(i)},this.channel.onmessage=async o=>{let{data:i}=o;i===null||i.byteLength===0||this.incomingData.push(new Uint8Array(i,0,i.byteLength))};let n=this;Promise.resolve().then(async()=>{for await(let o of dn(this.incomingData)){let i=n.processIncomingProtobuf(o);i!=null&&n.sourcePush(new Ae(i))}}).catch(o=>{this.log.error("error processing incoming data channel messages",o)})}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 I0(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof ho?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 I0(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),o=ft.encode({message:n}),i=Fr.single(o);await this._sendMessage(i),e.consume(r)}}async sendReset(){await this._sendFlag(ft.Flag.RESET)}async sendCloseWrite(e){if(await this._sendFlag(ft.Flag.FIN)){this.log.trace("awaiting FIN_ACK");try{await Mr(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(ft.Flag.STOP_SENDING)}processIncomingProtobuf(e){let r=ft.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===ft.Flag.FIN&&(this.remoteCloseWrite(),this.log.trace("sending FIN_ACK"),this._sendFlag(ft.Flag.FIN_ACK).catch(n=>{this.log.error("error sending FIN_ACK immediately",n)})),r.flag===ft.Flag.RESET&&this.reset(),r.flag===ft.Flag.STOP_SENDING&&this.remoteCloseRead(),r.flag===ft.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=ft.encode({flag:e}),n=Fr.single(r);try{return await this._sendMessage(n,!1),!0}catch(o){this.log.error("could not send flag %s",e.toString(),o)}return!1}};function yo(t){let{channel:e,direction:r}=t;return new K0({id:r==="inbound"?`i${e.id}`:`r${e.id}`,log:t.logger.forComponent(`libp2p:webrtc:stream:${r}:${e.id}`),...t})}var Tm="/webrtc",yn=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??Tm,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 o={},i=yo({channel:n,direction:"inbound",onEnd:s=>{o.onEnd(s)},logger:e.logger,...this.dataChannelOptions});o.stream=i,o.channel=n,o.onEnd=()=>{this.bufferedStreams=this.bufferedStreams.filter(s=>s.stream.id!==i.id)},this.bufferedStreams.push(o)}}createStreamMuxer(e){return new V0(this.components,{...e,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.bufferedStreams,protocol:this.protocol})}},V0=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??Tm,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 o=yo({channel:n,direction:"inbound",onEnd:()=>{this.log("incoming channel %s ended with state %s",n.id,n.readyState),this.#e(o,n)},logger:this.logger,...this.dataChannelOptions});this.streams.push(o),this.metrics?.increment({incoming_stream:!0}),r?.onIncomingStream?.(o)},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),hm(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=Ws();sink=Ys;newStream(){let e=this.peerConnection.createDataChannel("");this.log.trace("opened outgoing datachannel with channel id %s",e.id);let r=yo({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 go=globalThis.RTCPeerConnection,ra=globalThis.RTCSessionDescription,_m=globalThis.RTCIceCandidate;var z0=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=Me(),this.haveNext=Me()}[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=Me(),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=Me(),await Mr(this.needNext.promise,r?.signal,r)}};function km(){return new z0}var na=class extends Error{code;constructor(e,r){super(e),this.code=r}},q0=class extends na{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function Rm(t,e){let r=km();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 o=new Ae;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((u,l)=>{c=()=>{l(new q0("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:p}=await Promise.race([n.next(),f]);return l===!0?new Ae:p}for(;o.byteLength<s;){let{value:l,done:p}=await Promise.race([n.next(),f]);if(p===!0)throw new na("unexpected end of input","ERR_UNEXPECTED_EOF");o.append(l)}let u=o.sublist(0,s);return o.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(o.byteLength>0){let s=t.source;t.source=async function*(){e?.yieldBytes===!1?yield o:yield*o,yield*s}()}return t}}}var oa=class extends Error{code;constructor(e,r){super(e),this.code=r}},Lm=t=>Ct(t);Lm.bytes=0;function Ri(t,e={}){let r=Rm(t,e);return e.maxDataLength!=null&&e.maxLengthLength==null&&(e.maxLengthLength=tt(e.maxDataLength)),{read:async o=>{let i=-1,s=new Ae,a=e?.lengthDecoder??Lm;for(;;){s.append(await r.read(1,o));try{i=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new oa("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(i>-1)break}if(e?.maxDataLength!=null&&i>e.maxDataLength)throw new oa("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(i,o)},write:async(o,i)=>{await r.write(Fr.single(o,e),i)},writeV:async(o,i)=>{let s=new Ae(...o.map(a=>Fr.single(a,e)));await r.write(s,i)},unwrap:()=>r.unwrap()}}function ia(t,e){let r=Ri(t,e),n={read:async(o,i)=>{let s=await r.read(i);return o.decode(s)},write:async(o,i,s)=>{await r.write(i.encode(o),s)},writeV:async(o,i,s)=>{await r.writeV(o.map(a=>i.encode(a)),s)},pb:o=>({read:async i=>n.read(o,i),write:async(i,s)=>n.write(i,o,s),writeV:async(i,s)=>n.writeV(i,o,s),unwrap:()=>n}),unwrap:()=>r.unwrap()};return n}var ut;(function(t){let e;(function(o){o.SDP_OFFER="SDP_OFFER",o.SDP_ANSWER="SDP_ANSWER",o.ICE_CANDIDATE="ICE_CANDIDATE"})(e=t.Type||(t.Type={}));let r;(function(o){o[o.SDP_OFFER=0]="SDP_OFFER",o[o.SDP_ANSWER=1]="SDP_ANSWER",o[o.ICE_CANDIDATE=2]="ICE_CANDIDATE"})(r||(r={})),function(o){o.codec=()=>xn(r)}(e=t.Type||(t.Type={}));let n;t.codec=()=>(n==null&&(n=Tt((o,i,s={})=>{s.lengthDelimited!==!1&&i.fork(),o.type!=null&&(i.uint32(8),t.Type.codec().encode(o.type,i)),o.data!=null&&(i.uint32(18),i.string(o.data)),s.lengthDelimited!==!1&&i.ldelim()},(o,i)=>{let s={},a=i==null?o.len:o.pos+i;for(;o.pos<a;){let c=o.uint32();switch(c>>>3){case 1:s.type=t.Type.codec().decode(o);break;case 2:s.data=o.string();break;default:o.skipType(c&7);break}}return s})),n),t.encode=o=>It(o,t.codec()),t.decode=o=>Bt(o,t.codec())})(ut||(ut={}));var sa=async(t,e,r)=>{try{let n=Me();for(z3(t,n);;){let o=await Promise.race([n.promise,e.read({signal:r.signal})]);if(o==null)break;if(o.type!==ut.Type.ICE_CANDIDATE)throw new W("ICE candidate message expected","ERR_NOT_ICE_CANDIDATE");let i=JSON.parse(o.data??"null");if(i===""||i===null){r.log.trace("end-of-candidates received");continue}let s=new _m(i);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,i,a)}}}catch(n){if(r.log.error("%s error parsing ICE candidate",r.direction,n),r.signal?.aborted===!0)throw n}};function V3(t){return Ii?t.iceConnectionState:t.connectionState}function z3(t,e){t[Ii?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(V3(t)){case"connected":e.resolve();break;case"failed":case"disconnected":case"closed":e.reject(new W("RTCPeerConnection was closed","ERR_CONNECTION_CLOSED_BEFORE_CONNECTED"));break;default:break}}}async function Nm({peerConnection:t,signal:e,metrics:r,multiaddr:n,connectionManager:o,transportManager:i,log:s}){let{baseAddr:a}=Um(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 f=o.getConnections(sn(c)),u,l=!1;f.length===0?(u=await i.dial(a,{signal:e}),l=!0):u=f[0];try{let p=await u.newStream(aa,{signal:e,runOnTransientConnection:!0}),y=ia(p).pb(ut);try{let h=t.createDataChannel("init");t.onicecandidate=({candidate:b})=>{let g=JSON.stringify(b?.toJSON()??null);s.trace("initiator sending ICE candidate %s",g),y.write({type:ut.Type.ICE_CANDIDATE,data:g},{signal:e}).catch(v=>{s.error("error sending ICE candidate",v)})},t.onicecandidateerror=b=>{s.error("initiator ICE candidate error",b)};let d=await t.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",d.sdp),await y.write({type:ut.Type.SDP_OFFER,data:d.sdp},{signal:e}),await t.setLocalDescription(d).catch(b=>{throw s.error("could not execute setLocalDescription",b),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")});let m=await y.read({signal:e});if(m.type!==ut.Type.SDP_ANSWER)throw new W("Remote should send an SDP answer","ERR_SDP_HANDSHAKE_FAILED");s.trace("initiator receive SDP answer %s",m.data);let x=new ra({type:"answer",sdp:m.data});return await t.setRemoteDescription(x).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 sa(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(),p.abort(h),h}finally{t.onicecandidate=null,t.onicecandidateerror=null}}finally{if(l)try{await u.close({signal:e})}catch(p){u.abort(p)}}}var q3=H("dns4"),H3=H("dns6"),$3=H("dnsaddr"),gn=Oe(H("dns"),$3,q3,H3),ua=Oe(H("ip4"),H("ip6")),bo=Oe(j(ua,H("tcp")),j(gn,H("tcp"))),ha=j(ua,H("udp")),G3=j(ha,H("utp")),W3=j(ha,H("quic")),Y3=j(ha,H("quic-v1")),H0=Oe(j(bo,H("ws")),j(gn,H("ws"))),ca=Oe(j(H0,H("p2p")),H0),$0=Oe(j(bo,H("wss")),j(gn,H("wss")),j(bo,H("tls"),H("ws")),j(gn,H("tls"),H("ws"))),fa=Oe(j($0,H("p2p")),$0),G0=Oe(j(bo,H("http")),j(ua,H("http")),j(gn,H("http"))),W0=Oe(j(bo,H("https")),j(ua,H("https")),j(gn,H("https"))),Pm=j(ha,H("webrtc-direct"),H("certhash")),Fm=Oe(j(Pm,H("p2p")),Pm),Om=j(Y3,H("webtransport"),H("certhash"),H("certhash")),Km=Oe(j(Om,H("p2p")),Om),Vm=Oe(j(ca,H("p2p-webrtc-star"),H("p2p")),j(fa,H("p2p-webrtc-star"),H("p2p")),j(ca,H("p2p-webrtc-star")),j(fa,H("p2p-webrtc-star"))),H9=Oe(j(ca,H("p2p-websocket-star"),H("p2p")),j(fa,H("p2p-websocket-star"),H("p2p")),j(ca,H("p2p-websocket-star")),j(fa,H("p2p-websocket-star"))),zm=Oe(j(G0,H("p2p-webrtc-direct"),H("p2p")),j(W0,H("p2p-webrtc-direct"),H("p2p")),j(G0,H("p2p-webrtc-direct")),j(W0,H("p2p-webrtc-direct"))),bn=Oe(H0,$0,G0,W0,Vm,zm,bo,G3,W3,gn,Fm,Km),$9=Oe(j(bn,H("p2p-stardust"),H("p2p")),j(bn,H("p2p-stardust"))),Vr=Oe(j(bn,H("p2p")),Vm,zm,Fm,Km,H("p2p")),Mm=Oe(j(Vr,H("p2p-circuit"),Vr),j(Vr,H("p2p-circuit")),j(H("p2p-circuit"),Vr),j(bn,H("p2p-circuit")),j(H("p2p-circuit"),bn),H("p2p-circuit")),qm=()=>Oe(j(Mm,qm),Mm),ur=qm(),G9=Oe(j(ur,Vr,ur),j(Vr,ur),j(ur,Vr),ur,Vr);var W9=Oe(j(ur,H("webrtc"),H("p2p")),j(ur,H("webrtc")),j(bn,H("webrtc"),H("p2p")),j(bn,H("webrtc")),H("webrtc"));function Hm(t){function e(r){let n;try{n=fr(r)}catch{return!1}let o=t(n.protoNames());return o===null?!1:o===!0||o===!1?o:o.length===0}return e}function j(...t){function e(r){if(r.length<t.length)return null;let n=r;return t.some(o=>(n=typeof o=="function"?o().partialMatch(r):o.partialMatch(r),Array.isArray(n)&&(r=n),n===null)),n}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:Hm(e),partialMatch:e}}function Oe(...t){function e(n){let o=null;return t.some(i=>{let s=typeof i=="function"?i().partialMatch(n):i.partialMatch(n);return s!=null?(o=s,!0):!1}),o}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:Hm(e),partialMatch:e}}function H(t){let e=t;function r(o){let i;try{i=fr(o)}catch{return!1}let s=i.protoNames();return s.length===1&&s[0]===e}function n(o){return o.length===0?null:o[0]===e?o.slice(1):null}return{toString:function(){return e},matches:r,partialMatch:n}}var la=class extends Ds{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=>ur.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};async function $m({peerConnection:t,stream:e,signal:r,connection:n,log:o}){o.trace("new inbound signaling stream");let i=ia(e).pb(ut);try{t.onicecandidate=({candidate:u})=>{let l=JSON.stringify(u?.toJSON()??null);o.trace("recipient sending ICE candidate %s",l),i.write({type:ut.Type.ICE_CANDIDATE,data:l},{signal:r}).catch(p=>{o.error("error sending ICE candidate",p)})};let a=await i.read({signal:r});if(a.type!==ut.Type.SDP_OFFER)throw new W(`expected message type SDP_OFFER, received: ${a.type??"undefined"} `,"ERR_SDP_HANDSHAKE_FAILED");o.trace("recipient receive SDP offer %s",a.data);let c=new ra({type:"offer",sdp:a.data});await t.setRemoteDescription(c).catch(u=>{throw o.error("could not execute setRemoteDescription",u),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")});let f=await t.createAnswer().catch(u=>{throw o.error("could not execute createAnswer",u),new W("Failed to create answer","ERR_SDP_HANDSHAKE_FAILED")});o.trace("recipient send SDP answer %s",f.sdp),await i.write({type:ut.Type.SDP_ANSWER,data:f.sdp},{signal:r}),await t.setLocalDescription(f).catch(u=>{throw o.error("could not execute setLocalDescription",u),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")}),o.trace("recipient read candidates until connected"),await sa(t,i,{direction:"recipient",signal:r,log:o})}catch(a){if(t.connectionState!=="connected")throw o.error("error while handling signaling stream from peer %a",n.remoteAddr,a),t.close(),a;o("error while handling signaling stream from peer %a, ignoring as the RTCPeerConnection is already connected",n.remoteAddr,a)}let s=fr(`/webrtc/p2p/${n.remoteAddr.getPeerId()}`);return o.trace("recipient connected to remote address %s",s),{remoteAddress:s}}var X3="/webrtc",j3="/p2p-circuit",aa="/webrtc-signaling/0.0.1",Z3=30*1e3,da=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,xd(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(aa,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(aa),this._started=!1}createListener(e){return new la(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[Cs]=!0;filter(e){return e.filter(em.exactMatch)}async dial(e,r){this.log.trace("dialing address: %a",e);let n=new go(this.init.rtcConfiguration),o=new yn(this.components,{peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:i}=await Nm({peerConnection:n,multiaddr:e,dataChannelOptions:this.init.dataChannel,signal:r.signal,connectionManager:this.components.connectionManager,transportManager:this.components.transportManager,log:this.log}),s=new hn(this.components,{peerConnection:n,timeline:{open:Date.now()},remoteAddr:i,metrics:this.metrics?.dialerEvents}),a=await r.upgrader.upgradeOutbound(s,{skipProtection:!0,skipEncryption:!0,muxerFactory:o});return this._closeOnShutdown(n,s),a}async _onProtocol({connection:e,stream:r}){let n=AbortSignal.timeout(this.init.inboundConnectionTimeout??Z3),o=new go(this.init.rtcConfiguration),i=new yn(this.components,{peerConnection:o,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await $m({peerConnection:o,connection:e,stream:r,signal:n,log:this.log}),a=new hn(this.components,{peerConnection:o,timeline:{open:new Date().getTime()},remoteAddr:s,metrics:this.metrics?.listenerEvents});this._closeOnShutdown(o,a),await this.components.upgrader.upgradeInbound(a,{skipEncryption:!0,skipProtection:!0,muxerFactory:i}),await r.close({signal:n})}catch(s){throw r.abort(s),s}}_closeOnShutdown(e,r){let n=()=>{r.close().catch(o=>{this.log.error("could not close WebRTCMultiaddrConnection",o)})};this.shutdownController.signal.addEventListener("abort",n),e.addEventListener("close",()=>{this.shutdownController.signal.removeEventListener("abort",n)})}};function Um(t){let e=t.toString().split(X3+"/");if(e.length!==2)throw new W("webrtc protocol was not present in multiaddr",dt.ERR_INVALID_MULTIADDR);if(!e[0].includes(j3))throw new W("p2p-circuit protocol was not present in multiaddr",dt.ERR_INVALID_MULTIADDR);let r=fr(e[0]),o=fr("/"+e[1]).getPeerId();if(o==null)throw new W("destination peer id was missing",dt.ERR_INVALID_MULTIADDR);let i=r.protos().pop();if(i===void 0)throw new W("invalid multiaddr",dt.ERR_INVALID_MULTIADDR);return i.name!=="p2p"&&(r=r.encapsulate(`/p2p/${o}`)),{baseAddr:r,peerId:sn(o)}}function Y0(){let t=Me(),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 Gm(){let t=Y0(),e=Y0();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function Q3(t){return t[Symbol.asyncIterator]!=null}function J3(...t){let e=[];for(let r of t)Q3(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Or({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let o of n)r.push(o)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var Wm=J3;function Ym(t,...e){if(t==null)throw new Error("Empty pipeline");if(X0(t)){let n=t;t=()=>n.source}else if(jm(t)||Xm(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&X0(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++)X0(r[n])&&(r[n]=t4(r[n]));return e4(...r)}var e4=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},Xm=t=>t?.[Symbol.asyncIterator]!=null,jm=t=>t?.[Symbol.iterator]!=null,X0=t=>t==null?!1:t.sink!=null&&t.source!=null,t4=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Or({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let o,i=t.source;if(Xm(i))o=async function*(){yield*i,n.end()};else if(jm(i))o=function*(){yield*i,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Wm(n,o())}return t.source};function hr(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function pe(t=0){return globalThis.Buffer?.alloc!=null?hr(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function wn(t=0){return globalThis.Buffer?.allocUnsafe!=null?hr(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var wo=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var lr=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4));function Zm(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var Qm=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),r4=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!r4)throw new Error("Non little-endian hardware is not supported");function pa(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function ma(t){if(typeof t=="string")t=pa(t);else if(Zm(t))t=t.slice();else throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var n4=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function Jm(t,e){if(e!==void 0&&(typeof e!="object"||!n4(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function vn(t,e){if(!Zm(t))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function ex(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 j0=(t,e)=>(Object.assign(e,t),e);function Z0(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(r>>o&i),a=Number(r&i),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}function xa(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`wrong positive integer: ${t}`)}function Q0(t){if(typeof t!="boolean")throw new Error(`boolean expected, not ${t}`)}function o4(t){return t!=null&&typeof t=="object"&&(t instanceof Uint8Array||t.constructor.name==="Uint8Array")}function vo(t,...e){if(!o4(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 J0(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 tx(t,e){vo(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Xe=(t,e)=>t[e++]&255|(t[e++]&255)<<8,eu=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=ma(e),vn(e,32);let r=Xe(e,0),n=Xe(e,2),o=Xe(e,4),i=Xe(e,6),s=Xe(e,8),a=Xe(e,10),c=Xe(e,12),f=Xe(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|o<<6)&7939,this.r[3]=(o>>>7|i<<9)&8191,this.r[4]=(i>>>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]=Xe(e,16+2*u)}process(e,r,n=!1){let o=n?0:2048,{h:i,r:s}=this,a=s[0],c=s[1],f=s[2],u=s[3],l=s[4],p=s[5],y=s[6],h=s[7],d=s[8],m=s[9],x=Xe(e,r+0),b=Xe(e,r+2),g=Xe(e,r+4),v=Xe(e,r+6),w=Xe(e,r+8),E=Xe(e,r+10),S=Xe(e,r+12),C=Xe(e,r+14),k=i[0]+(x&8191),F=i[1]+((x>>>13|b<<3)&8191),M=i[2]+((b>>>10|g<<6)&8191),V=i[3]+((g>>>7|v<<9)&8191),G=i[4]+((v>>>4|w<<12)&8191),Q=i[5]+(w>>>1&8191),I=i[6]+((w>>>14|E<<2)&8191),L=i[7]+((E>>>11|S<<5)&8191),_=i[8]+((S>>>8|C<<8)&8191),R=i[9]+(C>>>5|o),D=0,P=D+k*a+F*(5*m)+M*(5*d)+V*(5*h)+G*(5*y);D=P>>>13,P&=8191,P+=Q*(5*p)+I*(5*l)+L*(5*u)+_*(5*f)+R*(5*c),D+=P>>>13,P&=8191;let K=D+k*c+F*a+M*(5*m)+V*(5*d)+G*(5*h);D=K>>>13,K&=8191,K+=Q*(5*y)+I*(5*p)+L*(5*l)+_*(5*u)+R*(5*f),D+=K>>>13,K&=8191;let q=D+k*f+F*c+M*a+V*(5*m)+G*(5*d);D=q>>>13,q&=8191,q+=Q*(5*h)+I*(5*y)+L*(5*p)+_*(5*l)+R*(5*u),D+=q>>>13,q&=8191;let Z=D+k*u+F*f+M*c+V*a+G*(5*m);D=Z>>>13,Z&=8191,Z+=Q*(5*d)+I*(5*h)+L*(5*y)+_*(5*p)+R*(5*l),D+=Z>>>13,Z&=8191;let J=D+k*l+F*u+M*f+V*c+G*a;D=J>>>13,J&=8191,J+=Q*(5*m)+I*(5*d)+L*(5*h)+_*(5*y)+R*(5*p),D+=J>>>13,J&=8191;let ie=D+k*p+F*l+M*u+V*f+G*c;D=ie>>>13,ie&=8191,ie+=Q*a+I*(5*m)+L*(5*d)+_*(5*h)+R*(5*y),D+=ie>>>13,ie&=8191;let ee=D+k*y+F*p+M*l+V*u+G*f;D=ee>>>13,ee&=8191,ee+=Q*c+I*a+L*(5*m)+_*(5*d)+R*(5*h),D+=ee>>>13,ee&=8191;let re=D+k*h+F*y+M*p+V*l+G*u;D=re>>>13,re&=8191,re+=Q*f+I*c+L*a+_*(5*m)+R*(5*d),D+=re>>>13,re&=8191;let ge=D+k*d+F*h+M*y+V*p+G*l;D=ge>>>13,ge&=8191,ge+=Q*u+I*f+L*c+_*a+R*(5*m),D+=ge>>>13,ge&=8191;let xe=D+k*m+F*d+M*h+V*y+G*p;D=xe>>>13,xe&=8191,xe+=Q*l+I*u+L*f+_*c+R*a,D+=xe>>>13,xe&=8191,D=(D<<2)+D|0,D=D+P|0,P=D&8191,D=D>>>13,K+=D,i[0]=P,i[1]=K,i[2]=q,i[3]=Z,i[4]=J,i[5]=ie,i[6]=ee,i[7]=re,i[8]=ge,i[9]=xe}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),o=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=o,o=e[a]>>>13,e[a]&=8191;e[0]+=o*5,o=e[0]>>>13,e[0]&=8191,e[1]+=o,o=e[1]>>>13,e[1]&=8191,e[2]+=o,n[0]=e[0]+5,o=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+o,o=n[a]>>>13,n[a]&=8191;n[9]-=8192;let i=(o^1)-1;for(let a=0;a<10;a++)n[a]&=i;i=~i;for(let a=0;a<10;a++)e[a]=e[a]&i|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){J0(this);let{buffer:r,blockLen:n}=this;e=ma(e);let o=e.length;for(let i=0;i<o;){let s=Math.min(n-this.pos,o-i);if(s===n){for(;n<=o-i;i+=n)this.process(e,i);continue}r.set(e.subarray(i,i+s),this.pos),this.pos+=s,i+=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){J0(this),tx(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:o}=this;if(o){for(r[o++]=1;o<16;o++)r[o]=0;this.process(r,0,!0)}this.finalize();let i=0;for(let s=0;s<8;s++)e[i++]=n[s]>>>0,e[i++]=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 i4(t){let e=(n,o)=>t(o).update(ma(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var rx=i4(t=>new eu(t));var s4=pa("expand 16-byte k"),a4=pa("expand 32-byte k"),c4=lr(s4),f4=lr(a4);function Y(t,e){return t<<e|t>>>32-e}function tu(t){return t.byteOffset%4===0}var ya=64,u4=16,ox=2**32-1,nx=new Uint32Array;function h4(t,e,r,n,o,i,s,a){let c=o.length,f=new Uint8Array(ya),u=lr(f),l=tu(o)&&tu(i),p=l?lr(o):nx,y=l?lr(i):nx;for(let h=0;h<c;s++){if(t(e,r,n,u,s,a),s>=ox)throw new Error("arx: counter overflow");let d=Math.min(ya,c-h);if(l&&d===ya){let m=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let x=0,b;x<u4;x++)b=m+x,y[b]=p[b]^u[x];h+=ya;continue}for(let m=0,x;m<d;m++)x=h+m,i[x]=o[x]^f[m];h+=d}}function ru(t,e){let{allowShortKeys:r,extendNonceFn:n,counterLength:o,counterRight:i,rounds:s}=Jm({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return xa(o),xa(s),Q0(i),Q0(r),(a,c,f,u,l=0)=>{vo(a),vo(c),vo(f);let p=f.length;if(u||(u=new Uint8Array(p)),vo(u),xa(l),l<0||l>=ox)throw new Error("arx: counter overflow");if(u.length<p)throw new Error(`arx: output (${u.length}) is shorter than data (${p})`);let y=[],h=a.length,d,m;if(h===32)d=a.slice(),y.push(d),m=f4;else if(h===16&&r)d=new Uint8Array(32),d.set(a),d.set(a,16),m=c4,y.push(d);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);tu(c)||(c=c.slice(),y.push(c));let x=lr(d);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(m,x,lr(c.subarray(0,16)),x),c=c.subarray(16)}let b=16-o;if(b!==c.length)throw new Error(`arx: nonce must be ${b} or 16 bytes`);if(b!==12){let v=new Uint8Array(12);v.set(c,i?0:12-c.length),c=v,y.push(c)}let g=lr(c);for(h4(t,m,x,g,f,u,l,s);y.length>0;)y.pop().fill(0);return u}}function ax(t,e,r,n,o,i=20){let s=t[0],a=t[1],c=t[2],f=t[3],u=e[0],l=e[1],p=e[2],y=e[3],h=e[4],d=e[5],m=e[6],x=e[7],b=o,g=r[0],v=r[1],w=r[2],E=s,S=a,C=c,k=f,F=u,M=l,V=p,G=y,Q=h,I=d,L=m,_=x,R=b,D=g,P=v,K=w;for(let Z=0;Z<i;Z+=2)E=E+F|0,R=Y(R^E,16),Q=Q+R|0,F=Y(F^Q,12),E=E+F|0,R=Y(R^E,8),Q=Q+R|0,F=Y(F^Q,7),S=S+M|0,D=Y(D^S,16),I=I+D|0,M=Y(M^I,12),S=S+M|0,D=Y(D^S,8),I=I+D|0,M=Y(M^I,7),C=C+V|0,P=Y(P^C,16),L=L+P|0,V=Y(V^L,12),C=C+V|0,P=Y(P^C,8),L=L+P|0,V=Y(V^L,7),k=k+G|0,K=Y(K^k,16),_=_+K|0,G=Y(G^_,12),k=k+G|0,K=Y(K^k,8),_=_+K|0,G=Y(G^_,7),E=E+M|0,K=Y(K^E,16),L=L+K|0,M=Y(M^L,12),E=E+M|0,K=Y(K^E,8),L=L+K|0,M=Y(M^L,7),S=S+V|0,R=Y(R^S,16),_=_+R|0,V=Y(V^_,12),S=S+V|0,R=Y(R^S,8),_=_+R|0,V=Y(V^_,7),C=C+G|0,D=Y(D^C,16),Q=Q+D|0,G=Y(G^Q,12),C=C+G|0,D=Y(D^C,8),Q=Q+D|0,G=Y(G^Q,7),k=k+F|0,P=Y(P^k,16),I=I+P|0,F=Y(F^I,12),k=k+F|0,P=Y(P^k,8),I=I+P|0,F=Y(F^I,7);let q=0;n[q++]=s+E|0,n[q++]=a+S|0,n[q++]=c+C|0,n[q++]=f+k|0,n[q++]=u+F|0,n[q++]=l+M|0,n[q++]=p+V|0,n[q++]=y+G|0,n[q++]=h+Q|0,n[q++]=d+I|0,n[q++]=m+L|0,n[q++]=x+_|0,n[q++]=b+R|0,n[q++]=g+D|0,n[q++]=v+P|0,n[q++]=w+K|0}function l4(t,e,r,n){let o=t[0],i=t[1],s=t[2],a=t[3],c=e[0],f=e[1],u=e[2],l=e[3],p=e[4],y=e[5],h=e[6],d=e[7],m=r[0],x=r[1],b=r[2],g=r[3];for(let w=0;w<20;w+=2)o=o+c|0,m=Y(m^o,16),p=p+m|0,c=Y(c^p,12),o=o+c|0,m=Y(m^o,8),p=p+m|0,c=Y(c^p,7),i=i+f|0,x=Y(x^i,16),y=y+x|0,f=Y(f^y,12),i=i+f|0,x=Y(x^i,8),y=y+x|0,f=Y(f^y,7),s=s+u|0,b=Y(b^s,16),h=h+b|0,u=Y(u^h,12),s=s+u|0,b=Y(b^s,8),h=h+b|0,u=Y(u^h,7),a=a+l|0,g=Y(g^a,16),d=d+g|0,l=Y(l^d,12),a=a+l|0,g=Y(g^a,8),d=d+g|0,l=Y(l^d,7),o=o+f|0,g=Y(g^o,16),h=h+g|0,f=Y(f^h,12),o=o+f|0,g=Y(g^o,8),h=h+g|0,f=Y(f^h,7),i=i+u|0,m=Y(m^i,16),d=d+m|0,u=Y(u^d,12),i=i+u|0,m=Y(m^i,8),d=d+m|0,u=Y(u^d,7),s=s+l|0,x=Y(x^s,16),p=p+x|0,l=Y(l^p,12),s=s+l|0,x=Y(x^s,8),p=p+x|0,l=Y(l^p,7),a=a+c|0,b=Y(b^a,16),y=y+b|0,c=Y(c^y,12),a=a+c|0,b=Y(b^a,8),y=y+b|0,c=Y(c^y,7);let v=0;n[v++]=o,n[v++]=i,n[v++]=s,n[v++]=a,n[v++]=m,n[v++]=x,n[v++]=b,n[v++]=g}var d4=ru(ax,{counterRight:!1,counterLength:4,allowShortKeys:!1}),p4=ru(ax,{counterRight:!1,counterLength:8,extendNonceFn:l4,allowShortKeys:!1});var m4=new Uint8Array(16),ix=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(m4.subarray(r))},x4=new Uint8Array(32);function sx(t,e,r,n,o){let i=t(e,r,x4),s=rx.create(i);o&&ix(s,o),ix(s,n);let a=new Uint8Array(16),c=Qm(a);Z0(c,0,BigInt(o?o.length:0),!0),Z0(c,8,BigInt(n.length),!0),s.update(a);let f=s.digest();return i.fill(0),f}var cx=t=>(e,r,n)=>(vn(e,32),vn(r),{encrypt:(i,s)=>{let a=i.length,c=a+16;s?vn(s,c):s=new Uint8Array(c),t(e,r,i,s,1);let f=sx(t,e,r,s.subarray(0,-16),n);return s.set(f,a),s},decrypt:(i,s)=>{let a=i.length,c=a-16;if(a<16)throw new Error("encrypted data must be at least 16 bytes");s?vn(s,c):s=new Uint8Array(c);let f=i.subarray(0,-16),u=i.subarray(-16),l=sx(t,e,r,f,n);if(!ex(u,l))throw new Error("invalid tag");return t(e,r,f,s,1),s}}),nu=j0({blockSize:64,nonceLength:12,tagLength:16},cx(d4)),qP=j0({blockSize:64,nonceLength:24,tagLength:16},cx(p4));function ga(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function y4(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function ou(t,...e){if(!y4(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 Li(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");ga(t.outputLen),ga(t.blockLen)}function Eo(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 fx(t,e){ou(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var ba=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function ux(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var wa=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),_t=(t,e)=>t<<32-e|t>>>e,g4=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!g4)throw new Error("Non little-endian hardware is not supported");function iu(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function zr(t){if(typeof t=="string"&&(t=iu(t)),!ux(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function va(...t){let e=0;for(let n=0;n<t.length;n++){let o=t[n];if(!ux(o))throw new Error("Uint8Array expected");e+=o.length}let r=new Uint8Array(e);for(let n=0,o=0;n<t.length;n++){let i=t[n];r.set(i,o),o+=i.length}return r}var So=class{clone(){return this._cloneInto()}},YP={}.toString;function Ea(t){let e=n=>t().update(zr(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function En(t=32){if(ba&&typeof ba.getRandomValues=="function")return ba.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function b4(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let o=BigInt(32),i=BigInt(4294967295),s=Number(r>>o&i),a=Number(r&i),c=n?4:0,f=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+f,a,n)}var Ao=class extends So{constructor(e,r,n,o){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=o,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=wa(this.buffer)}update(e){Eo(this);let{view:r,buffer:n,blockLen:o}=this;e=zr(e);let i=e.length;for(let s=0;s<i;){let a=Math.min(o-this.pos,i-s);if(a===o){let c=wa(e);for(;o<=i-s;s+=o)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===o&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Eo(this),fx(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:o,isLE:i}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>o-s&&(this.process(n,0),s=0);for(let l=s;l<o;l++)r[l]=0;b4(n,o-8,BigInt(this.length*8),i),this.process(n,0);let a=wa(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],i)}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:o,finished:i,destroyed:s,pos:a}=this;return e.length=o,e.pos=a,e.finished=i,e.destroyed=s,o%r&&e.buffer.set(n),e}};var Sa=BigInt(4294967295),su=BigInt(32);function hx(t,e=!1){return e?{h:Number(t&Sa),l:Number(t>>su&Sa)}:{h:Number(t>>su&Sa)|0,l:Number(t&Sa)|0}}function w4(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let o=0;o<t.length;o++){let{h:i,l:s}=hx(t[o],e);[r[o],n[o]]=[i,s]}return[r,n]}var v4=(t,e)=>BigInt(t>>>0)<<su|BigInt(e>>>0),E4=(t,e,r)=>t>>>r,S4=(t,e,r)=>t<<32-r|e>>>r,A4=(t,e,r)=>t>>>r|e<<32-r,C4=(t,e,r)=>t<<32-r|e>>>r,D4=(t,e,r)=>t<<64-r|e>>>r-32,B4=(t,e,r)=>t>>>r-32|e<<64-r,I4=(t,e)=>e,T4=(t,e)=>t,_4=(t,e,r)=>t<<r|e>>>32-r,k4=(t,e,r)=>e<<r|t>>>32-r,R4=(t,e,r)=>e<<r-32|t>>>64-r,L4=(t,e,r)=>t<<r-32|e>>>64-r;function N4(t,e,r,n){let o=(e>>>0)+(n>>>0);return{h:t+r+(o/2**32|0)|0,l:o|0}}var U4=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),P4=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,O4=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),M4=(t,e,r,n,o)=>e+r+n+o+(t/2**32|0)|0,F4=(t,e,r,n,o)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(o>>>0),K4=(t,e,r,n,o,i)=>e+r+n+o+i+(t/2**32|0)|0;var V4={fromBig:hx,split:w4,toBig:v4,shrSH:E4,shrSL:S4,rotrSH:A4,rotrSL:C4,rotrBH:D4,rotrBL:B4,rotr32H:I4,rotr32L:T4,rotlSH:_4,rotlSL:k4,rotlBH:R4,rotlBL:L4,add:N4,add3L:U4,add3H:P4,add4L:O4,add4H:M4,add5H:K4,add5L:F4},ne=V4;var[z4,q4]=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))),qr=new Uint32Array(80),Hr=new Uint32Array(80),au=class extends Ao{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:o,Ch:i,Cl:s,Dh:a,Dl:c,Eh:f,El:u,Fh:l,Fl:p,Gh:y,Gl:h,Hh:d,Hl:m}=this;return[e,r,n,o,i,s,a,c,f,u,l,p,y,h,d,m]}set(e,r,n,o,i,s,a,c,f,u,l,p,y,h,d,m){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=o|0,this.Ch=i|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=p|0,this.Gh=y|0,this.Gl=h|0,this.Hh=d|0,this.Hl=m|0}process(e,r){for(let g=0;g<16;g++,r+=4)qr[g]=e.getUint32(r),Hr[g]=e.getUint32(r+=4);for(let g=16;g<80;g++){let v=qr[g-15]|0,w=Hr[g-15]|0,E=ne.rotrSH(v,w,1)^ne.rotrSH(v,w,8)^ne.shrSH(v,w,7),S=ne.rotrSL(v,w,1)^ne.rotrSL(v,w,8)^ne.shrSL(v,w,7),C=qr[g-2]|0,k=Hr[g-2]|0,F=ne.rotrSH(C,k,19)^ne.rotrBH(C,k,61)^ne.shrSH(C,k,6),M=ne.rotrSL(C,k,19)^ne.rotrBL(C,k,61)^ne.shrSL(C,k,6),V=ne.add4L(S,M,Hr[g-7],Hr[g-16]),G=ne.add4H(V,E,F,qr[g-7],qr[g-16]);qr[g]=G|0,Hr[g]=V|0}let{Ah:n,Al:o,Bh:i,Bl:s,Ch:a,Cl:c,Dh:f,Dl:u,Eh:l,El:p,Fh:y,Fl:h,Gh:d,Gl:m,Hh:x,Hl:b}=this;for(let g=0;g<80;g++){let v=ne.rotrSH(l,p,14)^ne.rotrSH(l,p,18)^ne.rotrBH(l,p,41),w=ne.rotrSL(l,p,14)^ne.rotrSL(l,p,18)^ne.rotrBL(l,p,41),E=l&y^~l&d,S=p&h^~p&m,C=ne.add5L(b,w,S,q4[g],Hr[g]),k=ne.add5H(C,x,v,E,z4[g],qr[g]),F=C|0,M=ne.rotrSH(n,o,28)^ne.rotrBH(n,o,34)^ne.rotrBH(n,o,39),V=ne.rotrSL(n,o,28)^ne.rotrBL(n,o,34)^ne.rotrBL(n,o,39),G=n&i^n&a^i&a,Q=o&s^o&c^s&c;x=d|0,b=m|0,d=y|0,m=h|0,y=l|0,h=p|0,{h:l,l:p}=ne.add(f|0,u|0,k|0,F|0),f=a|0,u=c|0,a=i|0,c=s|0,i=n|0,s=o|0;let I=ne.add3L(F,V,Q);n=ne.add3H(I,k,M,G),o=I|0}({h:n,l:o}=ne.add(this.Ah|0,this.Al|0,n|0,o|0)),{h:i,l:s}=ne.add(this.Bh|0,this.Bl|0,i|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:p}=ne.add(this.Eh|0,this.El|0,l|0,p|0),{h:y,l:h}=ne.add(this.Fh|0,this.Fl|0,y|0,h|0),{h:d,l:m}=ne.add(this.Gh|0,this.Gl|0,d|0,m|0),{h:x,l:b}=ne.add(this.Hh|0,this.Hl|0,x|0,b|0),this.set(n,o,i,s,a,c,f,u,l,p,y,h,d,m,x,b)}roundClean(){qr.fill(0),Hr.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 cu=Ea(()=>new au);var Ca={};O(Ca,{bitGet:()=>j4,bitLen:()=>X4,bitMask:()=>Ni,bitSet:()=>Z4,bytesToHex:()=>pr,bytesToNumberBE:()=>mr,bytesToNumberLE:()=>Rt,concatBytes:()=>yr,createHmacDrbg:()=>hu,ensureBytes:()=>we,equalBytes:()=>W4,hexToBytes:()=>Sn,hexToNumber:()=>uu,isBytes:()=>kt,numberToBytesBE:()=>$r,numberToBytesLE:()=>xr,numberToHexUnpadded:()=>mx,numberToVarBytesBE:()=>G4,utf8ToBytes:()=>Y4,validateObject:()=>wt});var px=BigInt(0),Aa=BigInt(1),H4=BigInt(2);function kt(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}var $4=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function pr(t){if(!kt(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=$4[t[r]];return e}function mx(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function uu(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}var dr={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function lx(t){if(t>=dr._0&&t<=dr._9)return t-dr._0;if(t>=dr._A&&t<=dr._F)return t-(dr._A-10);if(t>=dr._a&&t<=dr._f)return t-(dr._a-10)}function Sn(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 o=0,i=0;o<r;o++,i+=2){let s=lx(t.charCodeAt(i)),a=lx(t.charCodeAt(i+1));if(s===void 0||a===void 0){let c=t[i]+t[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}n[o]=s*16+a}return n}function mr(t){return uu(pr(t))}function Rt(t){if(!kt(t))throw new Error("Uint8Array expected");return uu(pr(Uint8Array.from(t).reverse()))}function $r(t,e){return Sn(t.toString(16).padStart(e*2,"0"))}function xr(t,e){return $r(t,e).reverse()}function G4(t){return Sn(mx(t))}function we(t,e,r){let n;if(typeof e=="string")try{n=Sn(e)}catch(i){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${i}`)}else if(kt(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let o=n.length;if(typeof r=="number"&&o!==r)throw new Error(`${t} expected ${r} bytes, got ${o}`);return n}function yr(...t){let e=0;for(let o=0;o<t.length;o++){let i=t[o];if(!kt(i))throw new Error("Uint8Array expected");e+=i.length}let r=new Uint8Array(e),n=0;for(let o=0;o<t.length;o++){let i=t[o];r.set(i,n),n+=i.length}return r}function W4(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 Y4(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function X4(t){let e;for(e=0;t>px;t>>=Aa,e+=1);return e}function j4(t,e){return t>>BigInt(e)&Aa}var Z4=(t,e,r)=>t|(r?Aa:px)<<BigInt(e),Ni=t=>(H4<<BigInt(t-1))-Aa,fu=t=>new Uint8Array(t),dx=t=>Uint8Array.from(t);function hu(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=fu(t),o=fu(t),i=0,s=()=>{n.fill(1),o.fill(0),i=0},a=(...l)=>r(o,n,...l),c=(l=fu())=>{o=a(dx([0]),l),n=a(),l.length!==0&&(o=a(dx([1]),l),n=a())},f=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,p=[];for(;l<e;){n=a();let y=n.slice();p.push(y),l+=n.length}return yr(...p)};return(l,p)=>{s(),c(l);let y;for(;!(y=p(f()));)c();return s(),y}}var Q4={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"||kt(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 wt(t,e,r={}){let n=(o,i,s)=>{let a=Q4[i];if(typeof a!="function")throw new Error(`Invalid validator "${i}", expected function`);let c=t[o];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(o)}=${c} (${typeof c}), expected ${i}`)};for(let[o,i]of Object.entries(e))n(o,i,!1);for(let[o,i]of Object.entries(r))n(o,i,!0);return t}var ze=BigInt(0),Ce=BigInt(1),An=BigInt(2),J4=BigInt(3),lu=BigInt(4),xx=BigInt(5),yx=BigInt(8),eS=BigInt(9),tS=BigInt(16);function ue(t,e){let r=t%e;return r>=ze?r:e+r}function du(t,e,r){if(r<=ze||e<ze)throw new Error("Expected power/modulo > 0");if(r===Ce)return ze;let n=Ce;for(;e>ze;)e&Ce&&(n=n*t%r),t=t*t%r,e>>=Ce;return n}function ve(t,e,r){let n=t;for(;e-- >ze;)n*=n,n%=r;return n}function Da(t,e){if(t===ze||e<=ze)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=ue(t,e),n=e,o=ze,i=Ce,s=Ce,a=ze;for(;r!==ze;){let f=n/r,u=n%r,l=o-s*f,p=i-a*f;n=r,r=u,o=s,i=a,s=l,a=p}if(n!==Ce)throw new Error("invert: does not exist");return ue(o,e)}function rS(t){let e=(t-Ce)/An,r,n,o;for(r=t-Ce,n=0;r%An===ze;r/=An,n++);for(o=An;o<t&&du(o,e,t)!==t-Ce;o++);if(n===1){let s=(t+Ce)/lu;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 i=(r+Ce)/An;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,o),r),l=a.pow(c,i),p=a.pow(c,r);for(;!a.eql(p,a.ONE);){if(a.eql(p,a.ZERO))return a.ZERO;let y=1;for(let d=a.sqr(p);y<f&&!a.eql(d,a.ONE);y++)d=a.sqr(d);let h=a.pow(u,Ce<<BigInt(f-y-1));u=a.sqr(h),l=a.mul(l,h),p=a.mul(p,u),f=y}return l}}function nS(t){if(t%lu===J4){let e=(t+Ce)/lu;return function(n,o){let i=n.pow(o,e);if(!n.eql(n.sqr(i),o))throw new Error("Cannot find square root");return i}}if(t%yx===xx){let e=(t-xx)/yx;return function(n,o){let i=n.mul(o,An),s=n.pow(i,e),a=n.mul(o,s),c=n.mul(n.mul(a,An),s),f=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(f),o))throw new Error("Cannot find square root");return f}}return t%tS,rS(t)}var gx=(t,e)=>(ue(t,e)&Ce)===Ce,oS=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function pu(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=oS.reduce((n,o)=>(n[o]="function",n),e);return wt(t,r)}function iS(t,e,r){if(r<ze)throw new Error("Expected power > 0");if(r===ze)return t.ONE;if(r===Ce)return e;let n=t.ONE,o=e;for(;r>ze;)r&Ce&&(n=t.mul(n,o)),o=t.sqr(o),r>>=Ce;return n}function sS(t,e){let r=new Array(e.length),n=e.reduce((i,s,a)=>t.is0(s)?i:(r[a]=i,t.mul(i,s)),t.ONE),o=t.inv(n);return e.reduceRight((i,s,a)=>t.is0(s)?i:(r[a]=t.mul(i,r[a]),t.mul(i,s)),o),r}function mu(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Ba(t,e,r=!1,n={}){if(t<=ze)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:o,nByteLength:i}=mu(t,e);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=nS(t),a=Object.freeze({ORDER:t,BITS:o,BYTES:i,MASK:Ni(o),ZERO:ze,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 ze<=c&&c<t},is0:c=>c===ze,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)=>iS(a,c,f),div:(c,f)=>ue(c*Da(f,t),t),sqrN:c=>c*c,addN:(c,f)=>c+f,subN:(c,f)=>c-f,mulN:(c,f)=>c*f,inv:c=>Da(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>sS(a,c),cmov:(c,f,u)=>u?f:c,toBytes:c=>r?xr(c,i):$r(c,i),fromBytes:c=>{if(c.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${c.length}`);return r?Rt(c):mr(c)}});return Object.freeze(a)}function bx(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 wx(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 xu(t){let e=wx(t);return e+Math.ceil(e/2)}function vx(t,e,r=!1){let n=t.length,o=wx(e),i=xu(e);if(n<16||n<i||n>1024)throw new Error(`expected ${i}-1024 bytes of input, got ${n}`);let s=r?mr(t):Rt(t),a=ue(s,e-Ce)+Ce;return r?xr(a,o):$r(a,o)}var cS=BigInt(0),yu=BigInt(1);function Ia(t,e){let r=(o,i)=>{let s=i.negate();return o?s:i},n=o=>{let i=Math.ceil(e/o)+1,s=2**(o-1);return{windows:i,windowSize:s}};return{constTimeNegate:r,unsafeLadder(o,i){let s=t.ZERO,a=o;for(;i>cS;)i&yu&&(s=s.add(a)),a=a.double(),i>>=yu;return s},precomputeWindow(o,i){let{windows:s,windowSize:a}=n(i),c=[],f=o,u=f;for(let l=0;l<s;l++){u=f,c.push(u);for(let p=1;p<a;p++)u=u.add(f),c.push(u);f=u.double()}return c},wNAF(o,i,s){let{windows:a,windowSize:c}=n(o),f=t.ZERO,u=t.BASE,l=BigInt(2**o-1),p=2**o,y=BigInt(o);for(let h=0;h<a;h++){let d=h*c,m=Number(s&l);s>>=y,m>c&&(m-=p,s+=yu);let x=d,b=d+Math.abs(m)-1,g=h%2!==0,v=m<0;m===0?u=u.add(r(g,i[x])):f=f.add(r(v,i[b]))}return{p:f,f:u}},wNAFCached(o,i,s,a){let c=o._WINDOW_SIZE||1,f=i.get(o);return f||(f=this.precomputeWindow(o,c),c!==1&&i.set(o,a(f))),this.wNAF(c,f,s)}}}function Ui(t){return pu(t.Fp),wt(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...mu(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var Lt=BigInt(0),pt=BigInt(1),Ta=BigInt(2),fS=BigInt(8),uS={zip215:!0};function hS(t){let e=Ui(t);return wt(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function _a(t){let e=hS(t),{Fp:r,n,prehash:o,hash:i,randomBytes:s,nByteLength:a,h:c}=e,f=Ta<<BigInt(a*8)-pt,u=r.create,l=e.uvRatio||((R,D)=>{try{return{isValid:!0,value:r.sqrt(R*r.inv(D))}}catch{return{isValid:!1,value:Lt}}}),p=e.adjustScalarBytes||(R=>R),y=e.domain||((R,D,P)=>{if(D.length||P)throw new Error("Contexts/pre-hash are not supported");return R}),h=R=>typeof R=="bigint"&&Lt<R,d=(R,D)=>h(R)&&h(D)&&R<D,m=R=>R===Lt||d(R,f);function x(R,D){if(d(R,D))return R;throw new Error(`Expected valid scalar < ${D}, got ${typeof R} ${R}`)}function b(R){return R===Lt?R:x(R,n)}let g=new Map;function v(R){if(!(R instanceof w))throw new Error("ExtendedPoint expected")}class w{constructor(D,P,K,q){if(this.ex=D,this.ey=P,this.ez=K,this.et=q,!m(D))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(D){if(D instanceof w)throw new Error("extended point not allowed");let{x:P,y:K}=D||{};if(!m(P)||!m(K))throw new Error("invalid affine point");return new w(P,K,pt,u(P*K))}static normalizeZ(D){let P=r.invertBatch(D.map(K=>K.ez));return D.map((K,q)=>K.toAffine(P[q])).map(w.fromAffine)}_setWindowSize(D){this._WINDOW_SIZE=D,g.delete(this)}assertValidity(){let{a:D,d:P}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:q,ez:Z,et:J}=this,ie=u(K*K),ee=u(q*q),re=u(Z*Z),ge=u(re*re),xe=u(ie*D),Ge=u(re*u(xe+ee)),We=u(ge+u(P*u(ie*ee)));if(Ge!==We)throw new Error("bad point: equation left != right (1)");let Ke=u(K*q),Ze=u(Z*J);if(Ke!==Ze)throw new Error("bad point: equation left != right (2)")}equals(D){v(D);let{ex:P,ey:K,ez:q}=this,{ex:Z,ey:J,ez:ie}=D,ee=u(P*ie),re=u(Z*q),ge=u(K*ie),xe=u(J*q);return ee===re&&ge===xe}is0(){return this.equals(w.ZERO)}negate(){return new w(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:D}=e,{ex:P,ey:K,ez:q}=this,Z=u(P*P),J=u(K*K),ie=u(Ta*u(q*q)),ee=u(D*Z),re=P+K,ge=u(u(re*re)-Z-J),xe=ee+J,Ge=xe-ie,We=ee-J,Ke=u(ge*Ge),Ze=u(xe*We),nr=u(ge*We),nn=u(Ge*xe);return new w(Ke,Ze,nn,nr)}add(D){v(D);let{a:P,d:K}=e,{ex:q,ey:Z,ez:J,et:ie}=this,{ex:ee,ey:re,ez:ge,et:xe}=D;if(P===BigInt(-1)){let id=u((Z-q)*(re+ee)),sd=u((Z+q)*(re-ee)),Tc=u(sd-id);if(Tc===Lt)return this.double();let ad=u(J*Ta*xe),cd=u(ie*Ta*ge),fd=cd+ad,ud=sd+id,hd=cd-ad,z1=u(fd*Tc),q1=u(ud*hd),H1=u(fd*hd),$1=u(Tc*ud);return new w(z1,q1,$1,H1)}let Ge=u(q*ee),We=u(Z*re),Ke=u(ie*K*xe),Ze=u(J*ge),nr=u((q+Z)*(ee+re)-Ge-We),nn=Ze-Ke,ai=Ze+Ke,od=u(We-P*Ge),M1=u(nr*nn),F1=u(ai*od),K1=u(nr*od),V1=u(nn*ai);return new w(M1,F1,V1,K1)}subtract(D){return this.add(D.negate())}wNAF(D){return C.wNAFCached(this,g,D,w.normalizeZ)}multiply(D){let{p:P,f:K}=this.wNAF(x(D,n));return w.normalizeZ([P,K])[0]}multiplyUnsafe(D){let P=b(D);return P===Lt?S:this.equals(S)||P===pt?this:this.equals(E)?this.wNAF(P).p:C.unsafeLadder(this,P)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return C.unsafeLadder(this,n).is0()}toAffine(D){let{ex:P,ey:K,ez:q}=this,Z=this.is0();D==null&&(D=Z?fS:r.inv(q));let J=u(P*D),ie=u(K*D),ee=u(q*D);if(Z)return{x:Lt,y:pt};if(ee!==pt)throw new Error("invZ was invalid");return{x:J,y:ie}}clearCofactor(){let{h:D}=e;return D===pt?this:this.multiplyUnsafe(D)}static fromHex(D,P=!1){let{d:K,a:q}=e,Z=r.BYTES;D=we("pointHex",D,Z);let J=D.slice(),ie=D[Z-1];J[Z-1]=ie&-129;let ee=Rt(J);ee===Lt||(P?x(ee,f):x(ee,r.ORDER));let re=u(ee*ee),ge=u(re-pt),xe=u(K*re-q),{isValid:Ge,value:We}=l(ge,xe);if(!Ge)throw new Error("Point.fromHex: invalid y coordinate");let Ke=(We&pt)===pt,Ze=(ie&128)!==0;if(!P&&We===Lt&&Ze)throw new Error("Point.fromHex: x=0 and x_0=1");return Ze!==Ke&&(We=u(-We)),w.fromAffine({x:We,y:ee})}static fromPrivateKey(D){return M(D).point}toRawBytes(){let{x:D,y:P}=this.toAffine(),K=xr(P,r.BYTES);return K[K.length-1]|=D&pt?128:0,K}toHex(){return pr(this.toRawBytes())}}w.BASE=new w(e.Gx,e.Gy,pt,u(e.Gx*e.Gy)),w.ZERO=new w(Lt,pt,pt,Lt);let{BASE:E,ZERO:S}=w,C=Ia(w,a*8);function k(R){return ue(R,n)}function F(R){return k(Rt(R))}function M(R){let D=a;R=we("private key",R,D);let P=we("hashed private key",i(R),2*D),K=p(P.slice(0,D)),q=P.slice(D,2*D),Z=F(K),J=E.multiply(Z),ie=J.toRawBytes();return{head:K,prefix:q,scalar:Z,point:J,pointBytes:ie}}function V(R){return M(R).pointBytes}function G(R=new Uint8Array,...D){let P=yr(...D);return F(i(y(P,we("context",R),!!o)))}function Q(R,D,P={}){R=we("message",R),o&&(R=o(R));let{prefix:K,scalar:q,pointBytes:Z}=M(D),J=G(P.context,K,R),ie=E.multiply(J).toRawBytes(),ee=G(P.context,ie,Z,R),re=k(J+ee*q);b(re);let ge=yr(ie,xr(re,r.BYTES));return we("result",ge,a*2)}let I=uS;function L(R,D,P,K=I){let{context:q,zip215:Z}=K,J=r.BYTES;R=we("signature",R,2*J),D=we("message",D),o&&(D=o(D));let ie=Rt(R.slice(J,2*J)),ee,re,ge;try{ee=w.fromHex(P,Z),re=w.fromHex(R.slice(0,J),Z),ge=E.multiplyUnsafe(ie)}catch{return!1}if(!Z&&ee.isSmallOrder())return!1;let xe=G(q,re.toRawBytes(),ee.toRawBytes(),D);return re.add(ee.multiplyUnsafe(xe)).subtract(ge).clearCofactor().equals(w.ZERO)}return E._setWindowSize(8),{CURVE:e,getPublicKey:V,sign:Q,verify:L,ExtendedPoint:w,utils:{getExtendedPublicKey:M,randomPrivateKey:()=>s(r.BYTES),precompute(R=8,D=w.BASE){return D._setWindowSize(R),D.multiply(BigInt(3)),D}}}}var Pi=BigInt(0),gu=BigInt(1);function lS(t){return wt(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function Ex(t){let e=lS(t),{P:r}=e,n=g=>ue(g,r),o=e.montgomeryBits,i=Math.ceil(o/8),s=e.nByteLength,a=e.adjustScalarBytes||(g=>g),c=e.powPminus2||(g=>du(g,r-BigInt(2),r));function f(g,v,w){let E=n(g*(v-w));return v=n(v-E),w=n(w+E),[v,w]}function u(g){if(typeof g=="bigint"&&Pi<=g&&g<r)return g;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function p(g,v){let w=u(g),E=u(v),S=w,C=gu,k=Pi,F=w,M=gu,V=Pi,G;for(let I=BigInt(o-1);I>=Pi;I--){let L=E>>I&gu;V^=L,G=f(V,C,F),C=G[0],F=G[1],G=f(V,k,M),k=G[0],M=G[1],V=L;let _=C+k,R=n(_*_),D=C-k,P=n(D*D),K=R-P,q=F+M,Z=F-M,J=n(Z*_),ie=n(q*D),ee=J+ie,re=J-ie;F=n(ee*ee),M=n(S*n(re*re)),C=n(R*P),k=n(K*(R+n(l*K)))}G=f(V,C,F),C=G[0],F=G[1],G=f(V,k,M),k=G[0],M=G[1];let Q=c(k);return n(C*Q)}function y(g){return xr(n(g),i)}function h(g){let v=we("u coordinate",g,i);return s===32&&(v[31]&=127),Rt(v)}function d(g){let v=we("scalar",g),w=v.length;if(w!==i&&w!==s)throw new Error(`Expected ${i} or ${s} bytes, got ${w}`);return Rt(a(v))}function m(g,v){let w=h(v),E=d(g),S=p(w,E);if(S===Pi)throw new Error("Invalid private or public key received");return y(S)}let x=y(e.Gu);function b(g){return m(g,x)}return{scalarMult:m,scalarMultBase:b,getSharedSecret:(g,v)=>m(g,v),getPublicKey:g=>b(g),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:x}}var Oi=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Sx=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),wO=BigInt(0),dS=BigInt(1),bu=BigInt(2),pS=BigInt(5),Ax=BigInt(10),mS=BigInt(20),xS=BigInt(40),Cx=BigInt(80);function Dx(t){let e=Oi,n=t*t%e*t%e,o=ve(n,bu,e)*n%e,i=ve(o,dS,e)*t%e,s=ve(i,pS,e)*i%e,a=ve(s,Ax,e)*s%e,c=ve(a,mS,e)*a%e,f=ve(c,xS,e)*c%e,u=ve(f,Cx,e)*f%e,l=ve(u,Cx,e)*f%e,p=ve(l,Ax,e)*s%e;return{pow_p_5_8:ve(p,bu,e)*t%e,b2:n}}function Bx(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function yS(t,e){let r=Oi,n=ue(e*e*e,r),o=ue(n*n*e,r),i=Dx(t*o).pow_p_5_8,s=ue(t*n*i,r),a=ue(e*s*s,r),c=s,f=ue(s*Sx,r),u=a===t,l=a===ue(-t,r),p=a===ue(-t*Sx,r);return u&&(s=c),(l||p)&&(s=f),gx(s,r)&&(s=ue(-s,r)),{isValid:u||l,value:s}}var gr=Ba(Oi,void 0,!0),wu={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:gr,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:cu,randomBytes:En,adjustScalarBytes:Bx,uvRatio:yS},Co=_a(wu);function Ix(t,e,r){if(e.length>255)throw new Error("Context is too big");return va(iu("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var vO=_a({...wu,domain:Ix}),EO=_a({...wu,domain:Ix,prehash:cu}),Mi=Ex({P:Oi,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Oi,{pow_p_5_8:r,b2:n}=Dx(t);return ue(ve(r,BigInt(3),e)*n,e)},adjustScalarBytes:Bx,randomBytes:En});var gS=(gr.ORDER+BigInt(3))/BigInt(8),SO=gr.pow(bu,gS),AO=gr.sqrt(gr.neg(gr.ONE)),CO=(gr.ORDER-BigInt(5))/BigInt(8),DO=BigInt(486662);var BO=bx(gr,gr.neg(BigInt(486664)));var IO=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),TO=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),_O=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),kO=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var RO=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var ka=class extends So{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Li(e);let n=zr(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 o=this.blockLen,i=new Uint8Array(o);i.set(n.length>o?e.create().update(n).digest():n);for(let s=0;s<i.length;s++)i[s]^=54;this.iHash.update(i),this.oHash=e.create();for(let s=0;s<i.length;s++)i[s]^=106;this.oHash.update(i),i.fill(0)}update(e){return Eo(this),this.iHash.update(e),this}digestInto(e){Eo(this),ou(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:o,destroyed:i,blockLen:s,outputLen:a}=this;return e=e,e.finished=o,e.destroyed=i,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()}},Do=(t,e,r)=>new ka(t,e).update(r).digest();Do.create=(t,e)=>new ka(t,e);function _x(t,e,r){return Li(t),r===void 0&&(r=new Uint8Array(t.outputLen)),Do(t,zr(r),zr(e))}var vu=new Uint8Array([0]),Tx=new Uint8Array;function kx(t,e,r,n=32){if(Li(t),ga(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let o=Math.ceil(n/t.outputLen);r===void 0&&(r=Tx);let i=new Uint8Array(o*t.outputLen),s=Do.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let f=0;f<o;f++)vu[0]=f+1,a.update(f===0?Tx:c).update(r).update(vu).digestInto(c),i.set(c,t.outputLen*f),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),vu.fill(0),i.slice(0,n)}var bS=(t,e,r)=>t&e^~t&r,wS=(t,e,r)=>t&e^t&r^e&r,vS=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]),Gr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Wr=new Uint32Array(64),Eu=class extends Ao{constructor(){super(64,32,8,!1),this.A=Gr[0]|0,this.B=Gr[1]|0,this.C=Gr[2]|0,this.D=Gr[3]|0,this.E=Gr[4]|0,this.F=Gr[5]|0,this.G=Gr[6]|0,this.H=Gr[7]|0}get(){let{A:e,B:r,C:n,D:o,E:i,F:s,G:a,H:c}=this;return[e,r,n,o,i,s,a,c]}set(e,r,n,o,i,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=o|0,this.E=i|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)Wr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let p=Wr[l-15],y=Wr[l-2],h=_t(p,7)^_t(p,18)^p>>>3,d=_t(y,17)^_t(y,19)^y>>>10;Wr[l]=d+Wr[l-7]+h+Wr[l-16]|0}let{A:n,B:o,C:i,D:s,E:a,F:c,G:f,H:u}=this;for(let l=0;l<64;l++){let p=_t(a,6)^_t(a,11)^_t(a,25),y=u+p+bS(a,c,f)+vS[l]+Wr[l]|0,d=(_t(n,2)^_t(n,13)^_t(n,22))+wS(n,o,i)|0;u=f,f=c,c=a,a=s+y|0,s=i,i=o,o=n,n=y+d|0}n=n+this.A|0,o=o+this.B|0,i=i+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,o,i,s,a,c,f,u)}roundClean(){Wr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Bo=Ea(()=>new Eu);var Su={hashSHA256(t){return Bo(t.subarray())},getHKDF(t,e){let r=_x(Bo,e,t),o=kx(Bo,r,void 0,96),i=o.subarray(0,32),s=o.subarray(32,64),a=o.subarray(64,96);return[i,s,a]},generateX25519KeyPair(){let t=Mi.utils.randomPrivateKey();return{publicKey:Mi.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Mi.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Mi.getSharedSecret(t.subarray(),e.subarray())},chaCha20Poly1305Encrypt(t,e,r,n){return nu(n,e,r).encrypt(t.subarray())},chaCha20Poly1305Decrypt(t,e,r,n,o){return nu(n,e,r).decrypt(t.subarray(),o)}};var Rx=Su;var Io=t=>{let e=wn(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};Io.bytes=2;var Fi=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)};Fi.bytes=2;function Lx(t){return new Ae(t.ne,t.ciphertext)}function Nx(t){return new Ae(t.ne,t.ns,t.ciphertext)}function Ux(t){return new Ae(t.ns,t.ciphertext)}function Px(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 Ox(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 Mx(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 Kx=16;function Vx(t,e){return async function*(r){for await(let n of r)for(let o=0;o<n.length;o+=65519){let i=o+65519;i>n.length&&(i=n.length);let s;n instanceof Uint8Array?s=t.encrypt(n.subarray(o,i),t.session):s=t.encrypt(n.sublist(o,i),t.session),e?.encryptedPackets.increment(),yield new Ae(Io(s.byteLength),s)}}}function zx(t,e){return async function*(r){for await(let n of r)for(let o=0;o<n.length;o+=65535){let i=o+65535;if(i>n.length&&(i=n.length),i-Kx<o)throw new Error("Invalid chunk");let s=n.sublist(o,i),a=n.subarray(o,i-Kx),{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 Vi=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},Cn=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var xV=Qe($i(),1),yV=Qe(og(),1);var _C=Qe(ye(),1);function kn(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}var ju={};O(ju,{base10:()=>Z6});function G6(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 o=0;o<t.length;o++){var i=t.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}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 d=0,m=0,x=0,b=h.length;x!==b&&h[x]===0;)x++,d++;for(var g=(b-x)*u+1>>>0,v=new Uint8Array(g);x!==b;){for(var w=h[x],E=0,S=g-1;(w!==0||E<m)&&S!==-1;S--,E++)w+=256*v[S]>>>0,v[S]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,x++}for(var C=g-m;C!==g&&v[C]===0;)C++;for(var k=c.repeat(d);C<g;++C)k+=t.charAt(v[C]);return k}function p(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var d=0;if(h[d]!==" "){for(var m=0,x=0;h[d]===c;)m++,d++;for(var b=(h.length-d)*f+1>>>0,g=new Uint8Array(b);h[d];){var v=r[h.charCodeAt(d)];if(v===255)return;for(var w=0,E=b-1;(v!==0||w<x)&&E!==-1;E--,w++)v+=a*g[E]>>>0,g[E]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");x=w,d++}if(h[d]!==" "){for(var S=b-x;S!==b&&g[S]===0;)S++;for(var C=new Uint8Array(m+(b-S)),k=m;S!==b;)C[k++]=g[S++];return C}}}function y(h){var d=p(h);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:y}}var W6=G6,Y6=W6,ig=Y6;var RM=new Uint8Array(0);var sg=(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},Er=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 ag=t=>new TextEncoder().encode(t),cg=t=>new TextDecoder().decode(t);var Gu=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")}},Wu=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 ug(this,e)}},Yu=class{constructor(e){this.decoders=e}or(e){return ug(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`)}},ug=(t,e)=>new Yu({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Xu=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new Gu(e,r,n),this.decoder=new Wu(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Lo=({name:t,prefix:e,encode:r,decode:n})=>new Xu(t,e,r,n),Qr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=ig(r,e);return Lo({prefix:t,name:e,encode:n,decode:i=>Er(o(i))})},X6=(t,e,r,n)=>{let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let s=new Uint8Array(i*r/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[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},j6=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i},ke=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Lo({prefix:e,name:t,encode(o){return j6(o,n,r)},decode(o){return X6(o,n,r,t)}});var Z6=Qr({prefix:"9",name:"base10",alphabet:"0123456789"});var Zu={};O(Zu,{base16:()=>Q6,base16upper:()=>J6});var Q6=ke({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),J6=ke({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Qu={};O(Qu,{base2:()=>eA});var eA=ke({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ju={};O(Ju,{base256emoji:()=>iA});var hg=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}"),tA=hg.reduce((t,e,r)=>(t[r]=e,t),[]),rA=hg.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function nA(t){return t.reduce((e,r)=>(e+=tA[r],e),"")}function oA(t){let e=[];for(let r of t){let n=rA[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var iA=Lo({prefix:"\u{1F680}",name:"base256emoji",encode:nA,decode:oA});var eh={};O(eh,{base32:()=>No,base32hex:()=>fA,base32hexpad:()=>hA,base32hexpadupper:()=>lA,base32hexupper:()=>uA,base32pad:()=>aA,base32padupper:()=>cA,base32upper:()=>sA,base32z:()=>dA});var No=ke({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),sA=ke({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),aA=ke({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),cA=ke({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),fA=ke({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),uA=ke({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),hA=ke({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),lA=ke({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),dA=ke({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var th={};O(th,{base36:()=>pA,base36upper:()=>mA});var pA=Qr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),mA=Qr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var rh={};O(rh,{base58btc:()=>Xt,base58flickr:()=>xA});var Xt=Qr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),xA=Qr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var nh={};O(nh,{base64:()=>yA,base64pad:()=>gA,base64url:()=>bA,base64urlpad:()=>wA});var yA=ke({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),gA=ke({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),bA=ke({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),wA=ke({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var oh={};O(oh,{base8:()=>vA});var vA=ke({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ih={};O(ih,{identity:()=>EA});var EA=Lo({prefix:"\0",name:"identity",encode:t=>cg(t),decode:t=>ag(t)});var WM=new TextEncoder,YM=new TextDecoder;var ah={};O(ah,{identity:()=>$A});var CA=pg,lg=128,DA=127,BA=~DA,IA=Math.pow(2,31);function pg(t,e,r){e=e||[],r=r||0;for(var n=r;t>=IA;)e[r++]=t&255|lg,t/=128;for(;t&BA;)e[r++]=t&255|lg,t>>>=7;return e[r]=t|0,pg.bytes=r-n+1,e}var TA=sh,_A=128,dg=127;function sh(t,n){var r=0,n=n||0,o=0,i=n,s,a=t.length;do{if(i>=a)throw sh.bytes=0,new RangeError("Could not decode varint");s=t[i++],r+=o<28?(s&dg)<<o:(s&dg)*Math.pow(2,o),o+=7}while(s>=_A);return sh.bytes=i-n,r}var kA=Math.pow(2,7),RA=Math.pow(2,14),LA=Math.pow(2,21),NA=Math.pow(2,28),UA=Math.pow(2,35),PA=Math.pow(2,42),OA=Math.pow(2,49),MA=Math.pow(2,56),FA=Math.pow(2,63),KA=function(t){return t<kA?1:t<RA?2:t<LA?3:t<NA?4:t<UA?5:t<PA?6:t<OA?7:t<MA?8:t<FA?9:10},VA={encode:CA,decode:TA,encodingLength:KA},zA=VA,Yi=zA;var Xi=(t,e=0)=>[Yi.decode(t,e),Yi.decode.bytes],Uo=(t,e,r=0)=>(Yi.encode(t,e,r),e),Po=t=>Yi.encodingLength(t);var Rn=(t,e)=>{let r=e.byteLength,n=Po(t),o=n+Po(r),i=new Uint8Array(o+r);return Uo(t,i,0),Uo(r,i,n),i.set(e,o),new Oo(t,r,e,i)},mg=t=>{let e=Er(t),[r,n]=Xi(e),[o,i]=Xi(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new Oo(r,o,s,e)},xg=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&sg(t.bytes,r.bytes)}},Oo=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var yg=0,qA="identity",gg=Er,HA=t=>Rn(yg,gg(t)),$A={code:yg,name:qA,encode:gg,digest:HA};var uh={};O(uh,{sha256:()=>GA,sha512:()=>WA});var fh=({name:t,code:e,encode:r})=>new ch(t,e,r),ch=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?Rn(this.code,r):r.then(n=>Rn(this.code,n))}else throw Error("Unknown type, must be binary type")}};var wg=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),GA=fh({name:"sha2-256",code:18,encode:wg("SHA-256")}),WA=fh({name:"sha2-512",code:19,encode:wg("SHA-512")});var vg=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return XA(r,hh(t),e||Xt.encoder);default:return jA(r,hh(t),e||No.encoder)}};var Eg=new WeakMap,hh=t=>{let e=Eg.get(t);if(e==null){let r=new Map;return Eg.set(t,r),r}return e},Za=class t{constructor(e,r,n,o){this.code=r,this.version=e,this.multihash=n,this.bytes=o,this["/"]=o}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!==Zi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==ZA)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=Rn(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&&xg(e.multihash,n.multihash)}toString(e){return vg(this,e)}toJSON(){return{"/":vg(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:o,multihash:i,bytes:s}=r;return new t(n,o,i,s||Sg(n,o,i.bytes))}else if(r[QA]===!0){let{version:n,multihash:o,code:i}=r,s=mg(o);return t.create(n,i,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!==Zi)throw new Error(`Version 0 CID must use dag-pb (code: ${Zi}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=Sg(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Zi,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,o=Er(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new Oo(r.multihashCode,r.digestSize,i,o);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,p]=Xi(e.subarray(r));return r+=p,l},o=n(),i=Zi;if(o===18?(o=0,r=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,o]=YA(e,r),i=t.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return hh(i).set(n,e),i}},YA=(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 No.prefix:{let r=e||No;return[No.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)]}}},XA=(t,e,r)=>{let{prefix:n}=r;if(n!==Xt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let i=r.encode(t).slice(1);return e.set(n,i),i}else return o},jA=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let i=r.encode(t);return e.set(n,i),i}else return o},Zi=112,ZA=18,Sg=(t,e,r)=>{let n=Po(t),o=n+Po(e),i=new Uint8Array(o+r.byteLength);return Uo(t,i,0),Uo(e,i,n),i.set(r,o),i},QA=Symbol.for("@ipld/js-cid/CID");var lh={...ih,...Qu,...oh,...ju,...Zu,...eh,...th,...rh,...nh,...Ju},uF={...uh,...ah};function Qa(t=0){return globalThis.Buffer?.allocUnsafe!=null?kn(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function Cg(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var Ag=Cg("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),dh=Cg("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=Qa(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),JA={utf8:Ag,"utf-8":Ag,hex:lh.base16,latin1:dh,ascii:dh,binary:dh,...lh},Ja=JA;function mt(t,e="utf8"){let r=Ja[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?kn(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var yh={};O(yh,{Ed25519PrivateKey:()=>Nn,Ed25519PublicKey:()=>Qi,generateKeyPair:()=>nC,generateKeyPairFromSeed:()=>Ng,unmarshalEd25519PrivateKey:()=>tC,unmarshalEd25519PublicKey:()=>rC});function jt(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 DF=Qe(Fe(),1),BF=Qe(Ga(),1),Dg=Qe(ye(),1);function Ln(t,e){if(globalThis.Buffer!=null)return kn(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((o,i)=>o+i.length,0));let r=Qa(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return kn(r)}function xt(t,e="utf8"){let r=Ja[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 Pt(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=Ln([new Uint8Array(e-r.length),r])}return xt(r,"base64url")}function yt(t){let e=Bg(t);return new Dg.default.jsbn.BigInteger(xt(e,"base16"),16)}function Bg(t,e){let r=mt(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=Ln([new Uint8Array(e-r.length),r])}return r}function St(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}var Mo=32,Sr=64,ec=32;function Ig(){let t=Co.utils.randomPrivateKey(),e=Co.getPublicKey(t);return{privateKey:Rg(t,e),publicKey:e}}function Tg(t){if(t.length!==ec)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=Co.getPublicKey(e);return{privateKey:Rg(e,r),publicKey:r}}function _g(t,e){let r=t.subarray(0,ec);return Co.sign(e instanceof Uint8Array?e:e.subarray(),r)}function kg(t,e,r){return Co.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function Rg(t,e){let r=new Uint8Array(Sr);for(let n=0;n<ec;n++)r[n]=t[n],r[ec+n]=e[n];return r}var lt={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 ph={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function mh(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,o=t?.digest??"SHA-256",i=t?.saltLength??16,s=t?.iterations??32767,a=lt.get();r*=8;async function c(l,p){let y=a.getRandomValues(new Uint8Array(i)),h=a.getRandomValues(new Uint8Array(n)),d={name:e,iv:h};typeof p=="string"&&(p=mt(p));let m;if(p.length===0){m=await a.subtle.importKey("jwk",ph,{name:"AES-GCM"},!0,["encrypt"]);try{let b={name:"PBKDF2",salt:y,iterations:s,hash:{name:o}},g=await a.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,g,{name:e,length:r},!0,["encrypt"])}catch{m=await a.subtle.importKey("jwk",ph,{name:"AES-GCM"},!0,["encrypt"])}}else{let b={name:"PBKDF2",salt:y,iterations:s,hash:{name:o}},g=await a.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,g,{name:e,length:r},!0,["encrypt"])}let x=await a.subtle.encrypt(d,m,l);return Ln([y,d.iv,new Uint8Array(x)])}async function f(l,p){let y=l.subarray(0,i),h=l.subarray(i,i+n),d=l.subarray(i+n),m={name:e,iv:h};typeof p=="string"&&(p=mt(p));let x;if(p.length===0)try{let g={name:"PBKDF2",salt:y,iterations:s,hash:{name:o}},v=await a.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(g,v,{name:e,length:r},!0,["decrypt"])}catch{x=await a.subtle.importKey("jwk",ph,{name:"AES-GCM"},!0,["decrypt"])}else{let g={name:"PBKDF2",salt:y,iterations:s,hash:{name:o}},v=await a.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(g,v,{name:e,length:r},!0,["decrypt"])}let b=await a.subtle.decrypt(m,x,d);return new Uint8Array(b)}return{encrypt:c,decrypt:f}}async function Fo(t,e){let n=await mh().encrypt(t,e);return Bs.encode(n)}var Be;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(Be||(Be={}));var xh;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(xh||(xh={}));(function(t){t.codec=()=>xn(xh)})(Be||(Be={}));var Zt;(function(t){let e;t.codec=()=>(e==null&&(e=Tt((r,n,o={})=>{o.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)),o.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let o={},i=n==null?r.len:r.pos+n;for(;r.pos<i;){let s=r.uint32();switch(s>>>3){case 1:o.Type=Be.codec().decode(r);break;case 2:o.Data=r.bytes();break;default:r.skipType(s&7);break}}return o})),e),t.encode=r=>It(r,t.codec()),t.decode=r=>Bt(r,t.codec())})(Zt||(Zt={}));var Qt;(function(t){let e;t.codec=()=>(e==null&&(e=Tt((r,n,o={})=>{o.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)),o.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let o={},i=n==null?r.len:r.pos+n;for(;r.pos<i;){let s=r.uint32();switch(s>>>3){case 1:o.Type=Be.codec().decode(r);break;case 2:o.Data=r.bytes();break;default:r.skipType(s&7);break}}return o})),e),t.encode=r=>It(r,t.codec()),t.decode=r=>Bt(r,t.codec())})(Qt||(Qt={}));var Qi=class{_key;constructor(e){this._key=Ko(e,Mo)}verify(e,r){return kg(this._key,r,e)}marshal(){return this._key}get bytes(){return Zt.encode({Type:Be.Ed25519,Data:this.marshal()}).subarray()}equals(e){return jt(this.bytes,e.bytes)}hash(){let e=Ye.digest(this.bytes);return St(e)?e.then(({bytes:r})=>r):e.bytes}},Nn=class{_key;_publicKey;constructor(e,r){this._key=Ko(e,Sr),this._publicKey=Ko(r,Mo)}sign(e){return _g(this._key,e)}get public(){return new Qi(this._publicKey)}marshal(){return this._key}get bytes(){return Qt.encode({Type:Be.Ed25519,Data:this.marshal()}).subarray()}equals(e){return jt(this.bytes,e.bytes)}async hash(){let e=Ye.digest(this.bytes),r;return St(e)?{bytes:r}=await e:r=e.bytes,r}async id(){let e=kr.digest(this.public.bytes);return nt.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Fo(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function tC(t){if(t.length>Sr){t=Ko(t,Sr+Mo);let n=t.subarray(0,Sr),o=t.subarray(Sr,t.length);return new Nn(n,o)}t=Ko(t,Sr);let e=t.subarray(0,Sr),r=t.subarray(Mo);return new Nn(e,r)}function rC(t){return t=Ko(t,Mo),new Qi(t)}async function nC(){let{privateKey:t,publicKey:e}=Ig();return new Nn(t,e)}async function Ng(t){let{privateKey:e,publicKey:r}=Tg(t);return new Nn(e,r)}function Ko(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new W(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}var oC={"P-256":256,"P-384":384,"P-521":521},iC=Object.keys(oC),JF=iC.join(" / ");var Eh={};O(Eh,{MAX_KEY_SIZE:()=>rs,RsaPrivateKey:()=>Vo,RsaPublicKey:()=>ts,fromJwk:()=>xC,generateKeyPair:()=>yC,unmarshalRsaPrivateKey:()=>pC,unmarshalRsaPublicKey:()=>mC});var es=Qe(ye(),1);var OK=Qe(Fg(),1);function rc(t){if(isNaN(t)||t<=0)throw new W("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return En(t)}var bK=Qe(Xa(),1),wh=Qe(ye(),1);function Kg(t,e){return e.map(r=>yt(t[r]))}function Vg(t){return wh.default.pki.setRsaPrivateKey(...Kg(t,["n","e","d","p","q","dp","dq","qi"]))}function zg(t){return wh.default.pki.setRsaPublicKey(...Kg(t,["n","e"]))}var Pn={};O(Pn,{jwkToPkcs1:()=>fC,jwkToPkix:()=>hC,pkcs1ToJwk:()=>cC,pkixToJwk:()=>uC});var EK=Qe($i(),1),SK=Qe(Xa(),1);var Ar=Qe(ye(),1);function cC(t){let e=Ar.default.asn1.fromDer(xt(t,"ascii")),r=Ar.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Pt(r.n),e:Pt(r.e),d:Pt(r.d),p:Pt(r.p),q:Pt(r.q),dp:Pt(r.dP),dq:Pt(r.dQ),qi:Pt(r.qInv),alg:"RS256"}}function fC(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 W("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Ar.default.pki.privateKeyToAsn1({n:yt(t.n),e:yt(t.e),d:yt(t.d),p:yt(t.p),q:yt(t.q),dP:yt(t.dp),dQ:yt(t.dq),qInv:yt(t.qi)});return mt(Ar.default.asn1.toDer(e).getBytes(),"ascii")}function uC(t){let e=Ar.default.asn1.fromDer(xt(t,"ascii")),r=Ar.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Pt(r.n),e:Pt(r.e)}}function hC(t){if(t.n==null||t.e==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let e=Ar.default.pki.publicKeyToAsn1({n:yt(t.n),e:yt(t.e)});return mt(Ar.default.asn1.toDer(e).getBytes(),"ascii")}async function qg(t){let e=await lt.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 Gg(e);return{privateKey:r[0],publicKey:r[1]}}async function vh(t){let r=[await lt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await lC(t)],n=await Gg({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Hg(t,e){let r=await lt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await lt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function $g(t,e,r){let n=await lt.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return lt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r instanceof Uint8Array?r:r.subarray())}async function Gg(t){if(t.privateKey==null||t.publicKey==null)throw new W("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([lt.get().subtle.exportKey("jwk",t.privateKey),lt.get().subtle.exportKey("jwk",t.publicKey)])}async function lC(t){return lt.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 Wg(t,e,r,n){let o=e?zg(t):Vg(t),i=xt(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(i,o);return mt(s,"ascii")}function Yg(t,e){return Wg(t,!0,e,(r,n)=>n.encrypt(r))}function Xg(t,e){return Wg(t,!1,e,(r,n)=>n.decrypt(r))}function nc(t){if(t.kty!=="RSA")throw new W("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new W("invalid key modulus","ERR_INVALID_KEY_MODULUS");return mt(t.n,"base64url").length*8}var rs=8192,ts=class{_key;constructor(e){this._key=e}verify(e,r){return $g(this._key,r,e)}marshal(){return Pn.jwkToPkix(this._key)}get bytes(){return Zt.encode({Type:Be.RSA,Data:this.marshal()}).subarray()}encrypt(e){return Yg(this._key,e)}equals(e){return jt(this.bytes,e.bytes)}hash(){let e=Ye.digest(this.bytes);return St(e)?e.then(({bytes:r})=>r):e.bytes}},Vo=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return rc(16)}sign(e){return Hg(this._key,e)}get public(){if(this._publicKey==null)throw new W("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new ts(this._publicKey)}decrypt(e){return Xg(this._key,e)}marshal(){return Pn.jwkToPkcs1(this._key)}get bytes(){return Qt.encode({Type:Be.RSA,Data:this.marshal()}).subarray()}equals(e){return jt(this.bytes,e.bytes)}hash(){let e=Ye.digest(this.bytes);return St(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return xt(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new es.default.util.ByteBuffer(this.marshal()),o=es.default.asn1.fromDer(n),i=es.default.pki.privateKeyFromAsn1(o),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return es.default.pki.encryptRsaPrivateKey(i,e,s)}else{if(r==="libp2p-key")return Fo(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function pC(t){let e=Pn.pkcs1ToJwk(t);if(nc(e)>rs)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await vh(e);return new Vo(r.privateKey,r.publicKey)}function mC(t){let e=Pn.pkixToJwk(t);if(nc(e)>rs)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new ts(e)}async function xC(t){if(nc(t)>rs)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await vh(t);return new Vo(e.privateKey,e.publicKey)}async function yC(t){if(t>rs)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await qg(t);return new Vo(e.privateKey,e.publicKey)}var Dh={};O(Dh,{Secp256k1PrivateKey:()=>os,Secp256k1PublicKey:()=>ns,generateKeyPair:()=>TC,unmarshalSecp256k1PrivateKey:()=>BC,unmarshalSecp256k1PublicKey:()=>IC});function gC(t){let e=Ui(t);wt(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:o}=e;if(r){if(!n.eql(o,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:bC,hexToBytes:wC}=Ca,On={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=On;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:bC(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=On,r=typeof t=="string"?wC(t):t;if(!kt(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:o,l:i}=On._parseInt(r.subarray(2)),{d:s,l:a}=On._parseInt(i);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:o,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)),o=e(r(t.r)),i=n.length/2,s=o.length/2,a=r(i),c=r(s);return`30${r(s+i+4)}02${c}${o}02${a}${n}`}},Cr=BigInt(0),At=BigInt(1),HK=BigInt(2),jg=BigInt(3),$K=BigInt(4);function vC(t){let e=gC(t),{Fp:r}=e,n=e.toBytes||((h,d,m)=>{let x=d.toAffine();return yr(Uint8Array.from([4]),r.toBytes(x.x),r.toBytes(x.y))}),o=e.fromBytes||(h=>{let d=h.subarray(1),m=r.fromBytes(d.subarray(0,r.BYTES)),x=r.fromBytes(d.subarray(r.BYTES,2*r.BYTES));return{x:m,y:x}});function i(h){let{a:d,b:m}=e,x=r.sqr(h),b=r.mul(x,h);return r.add(r.add(b,r.mul(h,d)),m)}if(!r.eql(r.sqr(e.Gy),i(e.Gx)))throw new Error("bad generator point: equation left != right");function s(h){return typeof h=="bigint"&&Cr<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:d,nByteLength:m,wrapPrivateKey:x,n:b}=e;if(d&&typeof h!="bigint"){if(kt(h)&&(h=pr(h)),typeof h!="string"||!d.includes(h.length))throw new Error("Invalid key");h=h.padStart(m*2,"0")}let g;try{g=typeof h=="bigint"?h:mr(we("private key",h,m))}catch{throw new Error(`private key must be ${m} bytes, hex or bigint, not ${typeof h}`)}return x&&(g=ue(g,b)),a(g),g}let f=new Map;function u(h){if(!(h instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(d,m,x){if(this.px=d,this.py=m,this.pz=x,d==null||!r.isValid(d))throw new Error("x required");if(m==null||!r.isValid(m))throw new Error("y required");if(x==null||!r.isValid(x))throw new Error("z required")}static fromAffine(d){let{x:m,y:x}=d||{};if(!d||!r.isValid(m)||!r.isValid(x))throw new Error("invalid affine point");if(d instanceof l)throw new Error("projective point not allowed");let b=g=>r.eql(g,r.ZERO);return b(m)&&b(x)?l.ZERO:new l(m,x,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(d){let m=r.invertBatch(d.map(x=>x.pz));return d.map((x,b)=>x.toAffine(m[b])).map(l.fromAffine)}static fromHex(d){let m=l.fromAffine(o(we("pointHex",d)));return m.assertValidity(),m}static fromPrivateKey(d){return l.BASE.multiply(c(d))}_setWindowSize(d){this._WINDOW_SIZE=d,f.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:d,y:m}=this.toAffine();if(!r.isValid(d)||!r.isValid(m))throw new Error("bad point: x or y not FE");let x=r.sqr(m),b=i(d);if(!r.eql(x,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:d}=this.toAffine();if(r.isOdd)return!r.isOdd(d);throw new Error("Field doesn't support isOdd")}equals(d){u(d);let{px:m,py:x,pz:b}=this,{px:g,py:v,pz:w}=d,E=r.eql(r.mul(m,w),r.mul(g,b)),S=r.eql(r.mul(x,w),r.mul(v,b));return E&&S}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:d,b:m}=e,x=r.mul(m,jg),{px:b,py:g,pz:v}=this,w=r.ZERO,E=r.ZERO,S=r.ZERO,C=r.mul(b,b),k=r.mul(g,g),F=r.mul(v,v),M=r.mul(b,g);return M=r.add(M,M),S=r.mul(b,v),S=r.add(S,S),w=r.mul(d,S),E=r.mul(x,F),E=r.add(w,E),w=r.sub(k,E),E=r.add(k,E),E=r.mul(w,E),w=r.mul(M,w),S=r.mul(x,S),F=r.mul(d,F),M=r.sub(C,F),M=r.mul(d,M),M=r.add(M,S),S=r.add(C,C),C=r.add(S,C),C=r.add(C,F),C=r.mul(C,M),E=r.add(E,C),F=r.mul(g,v),F=r.add(F,F),C=r.mul(F,M),w=r.sub(w,C),S=r.mul(F,k),S=r.add(S,S),S=r.add(S,S),new l(w,E,S)}add(d){u(d);let{px:m,py:x,pz:b}=this,{px:g,py:v,pz:w}=d,E=r.ZERO,S=r.ZERO,C=r.ZERO,k=e.a,F=r.mul(e.b,jg),M=r.mul(m,g),V=r.mul(x,v),G=r.mul(b,w),Q=r.add(m,x),I=r.add(g,v);Q=r.mul(Q,I),I=r.add(M,V),Q=r.sub(Q,I),I=r.add(m,b);let L=r.add(g,w);return I=r.mul(I,L),L=r.add(M,G),I=r.sub(I,L),L=r.add(x,b),E=r.add(v,w),L=r.mul(L,E),E=r.add(V,G),L=r.sub(L,E),C=r.mul(k,I),E=r.mul(F,G),C=r.add(E,C),E=r.sub(V,C),C=r.add(V,C),S=r.mul(E,C),V=r.add(M,M),V=r.add(V,M),G=r.mul(k,G),I=r.mul(F,I),V=r.add(V,G),G=r.sub(M,G),G=r.mul(k,G),I=r.add(I,G),M=r.mul(V,I),S=r.add(S,M),M=r.mul(L,I),E=r.mul(Q,E),E=r.sub(E,M),M=r.mul(Q,V),C=r.mul(L,C),C=r.add(C,M),new l(E,S,C)}subtract(d){return this.add(d.negate())}is0(){return this.equals(l.ZERO)}wNAF(d){return y.wNAFCached(this,f,d,m=>{let x=r.invertBatch(m.map(b=>b.pz));return m.map((b,g)=>b.toAffine(x[g])).map(l.fromAffine)})}multiplyUnsafe(d){let m=l.ZERO;if(d===Cr)return m;if(a(d),d===At)return this;let{endo:x}=e;if(!x)return y.unsafeLadder(this,d);let{k1neg:b,k1:g,k2neg:v,k2:w}=x.splitScalar(d),E=m,S=m,C=this;for(;g>Cr||w>Cr;)g&At&&(E=E.add(C)),w&At&&(S=S.add(C)),C=C.double(),g>>=At,w>>=At;return b&&(E=E.negate()),v&&(S=S.negate()),S=new l(r.mul(S.px,x.beta),S.py,S.pz),E.add(S)}multiply(d){a(d);let m=d,x,b,{endo:g}=e;if(g){let{k1neg:v,k1:w,k2neg:E,k2:S}=g.splitScalar(m),{p:C,f:k}=this.wNAF(w),{p:F,f:M}=this.wNAF(S);C=y.constTimeNegate(v,C),F=y.constTimeNegate(E,F),F=new l(r.mul(F.px,g.beta),F.py,F.pz),x=C.add(F),b=k.add(M)}else{let{p:v,f:w}=this.wNAF(m);x=v,b=w}return l.normalizeZ([x,b])[0]}multiplyAndAddUnsafe(d,m,x){let b=l.BASE,g=(w,E)=>E===Cr||E===At||!w.equals(b)?w.multiplyUnsafe(E):w.multiply(E),v=g(this,m).add(g(d,x));return v.is0()?void 0:v}toAffine(d){let{px:m,py:x,pz:b}=this,g=this.is0();d==null&&(d=g?r.ONE:r.inv(b));let v=r.mul(m,d),w=r.mul(x,d),E=r.mul(b,d);if(g)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:v,y:w}}isTorsionFree(){let{h:d,isTorsionFree:m}=e;if(d===At)return!0;if(m)return m(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:d,clearCofactor:m}=e;return d===At?this:m?m(l,this):this.multiplyUnsafe(e.h)}toRawBytes(d=!0){return this.assertValidity(),n(l,this,d)}toHex(d=!0){return pr(this.toRawBytes(d))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let p=e.nBitLength,y=Ia(l,e.endo?Math.ceil(p/2):p);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:i,isWithinCurveOrder:s}}function EC(t){let e=Ui(t);return wt(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Zg(t){let e=EC(t),{Fp:r,n}=e,o=r.BYTES+1,i=2*r.BYTES+1;function s(I){return Cr<I&&I<r.ORDER}function a(I){return ue(I,n)}function c(I){return Da(I,n)}let{ProjectivePoint:f,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:p}=vC({...e,toBytes(I,L,_){let R=L.toAffine(),D=r.toBytes(R.x),P=yr;return _?P(Uint8Array.from([L.hasEvenY()?2:3]),D):P(Uint8Array.from([4]),D,r.toBytes(R.y))},fromBytes(I){let L=I.length,_=I[0],R=I.subarray(1);if(L===o&&(_===2||_===3)){let D=mr(R);if(!s(D))throw new Error("Point is not on curve");let P=l(D),K=r.sqrt(P),q=(K&At)===At;return(_&1)===1!==q&&(K=r.neg(K)),{x:D,y:K}}else if(L===i&&_===4){let D=r.fromBytes(R.subarray(0,r.BYTES)),P=r.fromBytes(R.subarray(r.BYTES,2*r.BYTES));return{x:D,y:P}}else throw new Error(`Point of length ${L} was invalid. Expected ${o} compressed bytes or ${i} uncompressed bytes`)}}),y=I=>pr($r(I,e.nByteLength));function h(I){let L=n>>At;return I>L}function d(I){return h(I)?a(-I):I}let m=(I,L,_)=>mr(I.slice(L,_));class x{constructor(L,_,R){this.r=L,this.s=_,this.recovery=R,this.assertValidity()}static fromCompact(L){let _=e.nByteLength;return L=we("compactSignature",L,_*2),new x(m(L,0,_),m(L,_,2*_))}static fromDER(L){let{r:_,s:R}=On.toSig(we("DER",L));return new x(_,R)}assertValidity(){if(!p(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!p(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(L){return new x(this.r,this.s,L)}recoverPublicKey(L){let{r:_,s:R,recovery:D}=this,P=S(we("msgHash",L));if(D==null||![0,1,2,3].includes(D))throw new Error("recovery id invalid");let K=D===2||D===3?_+e.n:_;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let q=D&1?"03":"02",Z=f.fromHex(q+y(K)),J=c(K),ie=a(-P*J),ee=a(R*J),re=f.BASE.multiplyAndAddUnsafe(Z,ie,ee);if(!re)throw new Error("point at infinify");return re.assertValidity(),re}hasHighS(){return h(this.s)}normalizeS(){return this.hasHighS()?new x(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Sn(this.toDERHex())}toDERHex(){return On.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Sn(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let b={isValidPrivateKey(I){try{return u(I),!0}catch{return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let I=xu(e.n);return vx(e.randomBytes(I),e.n)},precompute(I=8,L=f.BASE){return L._setWindowSize(I),L.multiply(BigInt(3)),L}};function g(I,L=!0){return f.fromPrivateKey(I).toRawBytes(L)}function v(I){let L=kt(I),_=typeof I=="string",R=(L||_)&&I.length;return L?R===o||R===i:_?R===2*o||R===2*i:I instanceof f}function w(I,L,_=!0){if(v(I))throw new Error("first arg must be private key");if(!v(L))throw new Error("second arg must be public key");return f.fromHex(L).multiply(u(I)).toRawBytes(_)}let E=e.bits2int||function(I){let L=mr(I),_=I.length*8-e.nBitLength;return _>0?L>>BigInt(_):L},S=e.bits2int_modN||function(I){return a(E(I))},C=Ni(e.nBitLength);function k(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(Cr<=I&&I<C))throw new Error(`bigint expected < 2^${e.nBitLength}`);return $r(I,e.nByteLength)}function F(I,L,_=M){if(["recovered","canonical"].some(xe=>xe in _))throw new Error("sign() legacy options not supported");let{hash:R,randomBytes:D}=e,{lowS:P,prehash:K,extraEntropy:q}=_;P==null&&(P=!0),I=we("msgHash",I),K&&(I=we("prehashed msgHash",R(I)));let Z=S(I),J=u(L),ie=[k(J),k(Z)];if(q!=null){let xe=q===!0?D(r.BYTES):q;ie.push(we("extraEntropy",xe))}let ee=yr(...ie),re=Z;function ge(xe){let Ge=E(xe);if(!p(Ge))return;let We=c(Ge),Ke=f.BASE.multiply(Ge).toAffine(),Ze=a(Ke.x);if(Ze===Cr)return;let nr=a(We*a(re+Ze*J));if(nr===Cr)return;let nn=(Ke.x===Ze?0:2)|Number(Ke.y&At),ai=nr;return P&&h(nr)&&(ai=d(nr),nn^=1),new x(Ze,ai,nn)}return{seed:ee,k2sig:ge}}let M={lowS:e.lowS,prehash:!1},V={lowS:e.lowS,prehash:!1};function G(I,L,_=M){let{seed:R,k2sig:D}=F(I,L,_),P=e;return hu(P.hash.outputLen,P.nByteLength,P.hmac)(R,D)}f.BASE._setWindowSize(8);function Q(I,L,_,R=V){let D=I;if(L=we("msgHash",L),_=we("publicKey",_),"strict"in R)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:K}=R,q,Z;try{if(typeof D=="string"||kt(D))try{q=x.fromDER(D)}catch(Ke){if(!(Ke instanceof On.Err))throw Ke;q=x.fromCompact(D)}else if(typeof D=="object"&&typeof D.r=="bigint"&&typeof D.s=="bigint"){let{r:Ke,s:Ze}=D;q=new x(Ke,Ze)}else throw new Error("PARSE");Z=f.fromHex(_)}catch(Ke){if(Ke.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(P&&q.hasHighS())return!1;K&&(L=e.hash(L));let{r:J,s:ie}=q,ee=S(L),re=c(ie),ge=a(ee*re),xe=a(J*re),Ge=f.BASE.multiplyAndAddUnsafe(Z,ge,xe)?.toAffine();return Ge?a(Ge.x)===J:!1}return{CURVE:e,getPublicKey:g,getSharedSecret:w,sign:G,verify:Q,ProjectivePoint:f,Signature:x,utils:b}}function SC(t){return{hash:t,hmac:(e,...r)=>Do(t,e,va(...r)),randomBytes:En}}function Qg(t,e){let r=n=>Zg({...t,...SC(n)});return Object.freeze({...r(e),create:r})}var tb=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Jg=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),AC=BigInt(1),Sh=BigInt(2),eb=(t,e)=>(t+e/Sh)/e;function CC(t){let e=tb,r=BigInt(3),n=BigInt(6),o=BigInt(11),i=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,p=ve(l,r,e)*u%e,y=ve(p,Sh,e)*f%e,h=ve(y,o,e)*y%e,d=ve(h,i,e)*h%e,m=ve(d,a,e)*d%e,x=ve(m,c,e)*m%e,b=ve(x,a,e)*d%e,g=ve(b,r,e)*u%e,v=ve(g,s,e)*h%e,w=ve(v,n,e)*f%e,E=ve(w,Sh,e);if(!Ah.eql(Ah.sqr(E),t))throw new Error("Cannot find square root");return E}var Ah=Ba(tb,void 0,void 0,{sqrt:CC}),Ot=Qg({a:BigInt(0),b:BigInt(7),Fp:Ah,n:Jg,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=Jg,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-AC*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=r,s=BigInt("0x100000000000000000000000000000000"),a=eb(i*t,e),c=eb(-n*t,e),f=ue(t-a*r-c*o,e),u=ue(-a*n-c*i,e),l=f>s,p=u>s;if(l&&(f=e-f),p&&(u=e-u),f>s||u>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:f,k2neg:p,k2:u}}}},Bo),eV=BigInt(0);var tV=Ot.ProjectivePoint;function rb(){return Ot.utils.randomPrivateKey()}function nb(t,e){let r=Ye.digest(e instanceof Uint8Array?e:e.subarray());if(St(r))return r.then(({digest:n})=>Ot.sign(n,t).toDERRawBytes()).catch(n=>{throw new W(String(n),"ERR_INVALID_INPUT")});try{return Ot.sign(r.digest,t).toDERRawBytes()}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}function ob(t,e,r){let n=Ye.digest(r instanceof Uint8Array?r:r.subarray());if(St(n))return n.then(({digest:o})=>Ot.verify(e,o,t)).catch(o=>{throw new W(String(o),"ERR_INVALID_INPUT")});try{return Ot.verify(e,n.digest,t)}catch(o){throw new W(String(o),"ERR_INVALID_INPUT")}}function ib(t){return Ot.ProjectivePoint.fromHex(t).toRawBytes(!0)}function sb(t){try{Ot.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}function Ch(t){try{Ot.ProjectivePoint.fromHex(t)}catch(e){throw new W(String(e),"ERR_INVALID_PUBLIC_KEY")}}function ab(t){try{return Ot.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}var ns=class{_key;constructor(e){Ch(e),this._key=e}verify(e,r){return ob(this._key,r,e)}marshal(){return ib(this._key)}get bytes(){return Zt.encode({Type:Be.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return jt(this.bytes,e.bytes)}async hash(){let e=Ye.digest(this.bytes),r;return St(e)?{bytes:r}=await e:r=e.bytes,r}},os=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??ab(e),sb(this._key),Ch(this._publicKey)}sign(e){return nb(this._key,e)}get public(){return new ns(this._publicKey)}marshal(){return this._key}get bytes(){return Qt.encode({Type:Be.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return jt(this.bytes,e.bytes)}hash(){let e=Ye.digest(this.bytes);return St(e)?e.then(({bytes:r})=>r):e.bytes}async id(){let e=await this.public.hash();return xt(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Fo(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function BC(t){return new os(t)}function IC(t){return new ns(t)}async function TC(){let t=rb();return new os(t)}var Mn={rsa:Eh,ed25519:yh,secp256k1:Dh};function cb(t){let e=Object.keys(Mn).join(" / ");return new W(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function fb(t){let e=Zt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Be.RSA:return Mn.rsa.unmarshalRsaPublicKey(r);case Be.Ed25519:return Mn.ed25519.unmarshalEd25519PublicKey(r);case Be.Secp256k1:return Mn.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw cb(e.Type??"unknown")}}async function ub(t){let e=Qt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Be.RSA:return Mn.rsa.unmarshalRsaPrivateKey(r);case Be.Ed25519:return Mn.ed25519.unmarshalEd25519PrivateKey(r);case Be.Secp256k1:return Mn.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw cb(e.Type??"RSA")}}function Bh(t,e){if(globalThis.Buffer!=null)return hr(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((o,i)=>o+i.length,0));let r=wn(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return hr(r)}var Rh={};O(Rh,{base10:()=>PC});function kC(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 o=0;o<t.length;o++){var i=t.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}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 d=0,m=0,x=0,b=h.length;x!==b&&h[x]===0;)x++,d++;for(var g=(b-x)*u+1>>>0,v=new Uint8Array(g);x!==b;){for(var w=h[x],E=0,S=g-1;(w!==0||E<m)&&S!==-1;S--,E++)w+=256*v[S]>>>0,v[S]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,x++}for(var C=g-m;C!==g&&v[C]===0;)C++;for(var k=c.repeat(d);C<g;++C)k+=t.charAt(v[C]);return k}function p(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var d=0;if(h[d]!==" "){for(var m=0,x=0;h[d]===c;)m++,d++;for(var b=(h.length-d)*f+1>>>0,g=new Uint8Array(b);h[d];){var v=r[h.charCodeAt(d)];if(v===255)return;for(var w=0,E=b-1;(v!==0||w<x)&&E!==-1;E--,w++)v+=a*g[E]>>>0,g[E]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");x=w,d++}if(h[d]!==" "){for(var S=b-x;S!==b&&g[S]===0;)S++;for(var C=new Uint8Array(m+(b-S)),k=m;S!==b;)C[k++]=g[S++];return C}}}function y(h){var d=p(h);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:y}}var RC=kC,LC=RC,hb=LC;var IV=new Uint8Array(0);var lb=(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},Dr=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 db=t=>new TextEncoder().encode(t),pb=t=>new TextDecoder().decode(t);var Ih=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")}},Th=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 xb(this,e)}},_h=class{constructor(e){this.decoders=e}or(e){return xb(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`)}},xb=(t,e)=>new _h({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),kh=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new Ih(e,r,n),this.decoder=new Th(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},zo=({name:t,prefix:e,encode:r,decode:n})=>new kh(t,e,r,n),Jr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=hb(r,e);return zo({prefix:t,name:e,encode:n,decode:i=>Dr(o(i))})},NC=(t,e,r,n)=>{let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let s=new Uint8Array(i*r/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[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},UC=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i},Re=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>zo({prefix:e,name:t,encode(o){return UC(o,n,r)},decode(o){return NC(o,n,r,t)}});var PC=Jr({prefix:"9",name:"base10",alphabet:"0123456789"});var Lh={};O(Lh,{base16:()=>OC,base16upper:()=>MC});var OC=Re({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),MC=Re({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Nh={};O(Nh,{base2:()=>FC});var FC=Re({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Uh={};O(Uh,{base256emoji:()=>HC});var yb=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}"),KC=yb.reduce((t,e,r)=>(t[r]=e,t),[]),VC=yb.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function zC(t){return t.reduce((e,r)=>(e+=KC[r],e),"")}function qC(t){let e=[];for(let r of t){let n=VC[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var HC=zo({prefix:"\u{1F680}",name:"base256emoji",encode:zC,decode:qC});var Ph={};O(Ph,{base32:()=>qo,base32hex:()=>YC,base32hexpad:()=>jC,base32hexpadupper:()=>ZC,base32hexupper:()=>XC,base32pad:()=>GC,base32padupper:()=>WC,base32upper:()=>$C,base32z:()=>QC});var qo=Re({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),$C=Re({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),GC=Re({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),WC=Re({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),YC=Re({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),XC=Re({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),jC=Re({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ZC=Re({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),QC=Re({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Oh={};O(Oh,{base36:()=>JC,base36upper:()=>eD});var JC=Jr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),eD=Jr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Mh={};O(Mh,{base58btc:()=>Jt,base58flickr:()=>tD});var Jt=Jr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),tD=Jr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Fh={};O(Fh,{base64:()=>rD,base64pad:()=>nD,base64url:()=>oD,base64urlpad:()=>iD});var rD=Re({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),nD=Re({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),oD=Re({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),iD=Re({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Kh={};O(Kh,{base8:()=>sD});var sD=Re({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Vh={};O(Vh,{identity:()=>aD});var aD=zo({prefix:"\0",name:"identity",encode:t=>pb(t),decode:t=>db(t)});var qV=new TextEncoder,HV=new TextDecoder;var qh={};O(qh,{identity:()=>_D});var uD=wb,gb=128,hD=127,lD=~hD,dD=Math.pow(2,31);function wb(t,e,r){e=e||[],r=r||0;for(var n=r;t>=dD;)e[r++]=t&255|gb,t/=128;for(;t&lD;)e[r++]=t&255|gb,t>>>=7;return e[r]=t|0,wb.bytes=r-n+1,e}var pD=zh,mD=128,bb=127;function zh(t,n){var r=0,n=n||0,o=0,i=n,s,a=t.length;do{if(i>=a)throw zh.bytes=0,new RangeError("Could not decode varint");s=t[i++],r+=o<28?(s&bb)<<o:(s&bb)*Math.pow(2,o),o+=7}while(s>=mD);return zh.bytes=i-n,r}var xD=Math.pow(2,7),yD=Math.pow(2,14),gD=Math.pow(2,21),bD=Math.pow(2,28),wD=Math.pow(2,35),vD=Math.pow(2,42),ED=Math.pow(2,49),SD=Math.pow(2,56),AD=Math.pow(2,63),CD=function(t){return t<xD?1:t<yD?2:t<gD?3:t<bD?4:t<wD?5:t<vD?6:t<ED?7:t<SD?8:t<AD?9:10},DD={encode:uD,decode:pD,encodingLength:CD},BD=DD,is=BD;var ss=(t,e=0)=>[is.decode(t,e),is.decode.bytes],Ho=(t,e,r=0)=>(is.encode(t,e,r),e),$o=t=>is.encodingLength(t);var Fn=(t,e)=>{let r=e.byteLength,n=$o(t),o=n+$o(r),i=new Uint8Array(o+r);return Ho(t,i,0),Ho(r,i,n),i.set(e,o),new Go(t,r,e,i)},vb=t=>{let e=Dr(t),[r,n]=ss(e),[o,i]=ss(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new Go(r,o,s,e)},Eb=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&lb(t.bytes,r.bytes)}},Go=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var Sb=0,ID="identity",Ab=Dr,TD=t=>Fn(Sb,Ab(t)),_D={code:Sb,name:ID,encode:Ab,digest:TD};var Gh={};O(Gh,{sha256:()=>kD,sha512:()=>RD});var $h=({name:t,code:e,encode:r})=>new Hh(t,e,r),Hh=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?Fn(this.code,r):r.then(n=>Fn(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Db=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),kD=$h({name:"sha2-256",code:18,encode:Db("SHA-256")}),RD=$h({name:"sha2-512",code:19,encode:Db("SHA-512")});var Bb=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return ND(r,Wh(t),e||Jt.encoder);default:return UD(r,Wh(t),e||qo.encoder)}};var Ib=new WeakMap,Wh=t=>{let e=Ib.get(t);if(e==null){let r=new Map;return Ib.set(t,r),r}return e},ic=class t{constructor(e,r,n,o){this.code=r,this.version=e,this.multihash=n,this.bytes=o,this["/"]=o}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!==cs)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==PD)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=Fn(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&&Eb(e.multihash,n.multihash)}toString(e){return Bb(this,e)}toJSON(){return{"/":Bb(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:o,multihash:i,bytes:s}=r;return new t(n,o,i,s||Tb(n,o,i.bytes))}else if(r[OD]===!0){let{version:n,multihash:o,code:i}=r,s=vb(o);return t.create(n,i,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!==cs)throw new Error(`Version 0 CID must use dag-pb (code: ${cs}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=Tb(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,cs,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,o=Dr(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new Go(r.multihashCode,r.digestSize,i,o);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,p]=ss(e.subarray(r));return r+=p,l},o=n(),i=cs;if(o===18?(o=0,r=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,o]=LD(e,r),i=t.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Wh(i).set(n,e),i}},LD=(t,e)=>{switch(t[0]){case"Q":{let r=e||Jt;return[Jt.prefix,r.decode(`${Jt.prefix}${t}`)]}case Jt.prefix:{let r=e||Jt;return[Jt.prefix,r.decode(t)]}case qo.prefix:{let r=e||qo;return[qo.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)]}}},ND=(t,e,r)=>{let{prefix:n}=r;if(n!==Jt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let i=r.encode(t).slice(1);return e.set(n,i),i}else return o},UD=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let i=r.encode(t);return e.set(n,i),i}else return o},cs=112,PD=18,Tb=(t,e,r)=>{let n=$o(t),o=n+$o(e),i=new Uint8Array(o+r.byteLength);return Ho(t,i,0),Ho(e,i,n),i.set(r,o),i},OD=Symbol.for("@ipld/js-cid/CID");var Yh={...Vh,...Nh,...Kh,...Rh,...Lh,...Ph,...Oh,...Mh,...Fh,...Uh},sz={...Gh,...qh};function kb(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var _b=kb("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Xh=kb("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=wn(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),MD={utf8:_b,"utf-8":_b,hex:Yh.base16,latin1:Xh,ascii:Xh,binary:Xh,...Yh},sc=MD;function fs(t,e="utf8"){let r=sc[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?hr(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var ac;(function(t){let e;t.codec=()=>(e==null&&(e=Tt((r,n,o={})=>{if(o.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let i of r.webtransportCerthashes)n.uint32(10),n.bytes(i);o.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let o={webtransportCerthashes:[]},i=n==null?r.len:r.pos+n;for(;r.pos<i;){let s=r.uint32();switch(s>>>3){case 1:{o.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return o})),e),t.encode=r=>It(r,t.codec()),t.decode=r=>Bt(r,t.codec())})(ac||(ac={}));var us;(function(t){let e;t.codec=()=>(e==null&&(e=Tt((r,n,o={})=>{o.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),ac.codec().encode(r.extensions,n)),o.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let o={identityKey:pe(0),identitySig:pe(0)},i=n==null?r.len:r.pos+n;for(;r.pos<i;){let s=r.uint32();switch(s>>>3){case 1:{o.identityKey=r.bytes();break}case 2:{o.identitySig=r.bytes();break}case 4:{o.extensions=ac.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return o})),e),t.encode=r=>It(r,t.codec()),t.decode=r=>Bt(r,t.codec())})(us||(us={}));async function Rb(t,e,r){let n=await KD(t,Lb(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return FD(t.publicKey,n,r)}function FD(t,e,r){return us.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function KD(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await ub(t.privateKey)).sign(e)}async function jh(t){return ef(t.identityKey)}function Zh(t){return us.decode(t)}function Lb(t){let e=fs("noise-libp2p-static-key:");return t instanceof Uint8Array?Bh([e,t],e.length+t.length):(t.prepend(e),t)}async function Qh(t,e,r){let n=await ef(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let o=Lb(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 fb(n.publicKey).verify(o,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function hs(t){return!(!(t instanceof Uint8Array)&&!po(t)||t.byteLength!==32)}function Jh(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 er(t,e="utf8"){let r=sc[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 VD=0,zD=4294967295,qD="Cipherstate has reached maximum n, a new handshake must be performed",cc=class{n;bytes;view;constructor(e=VD){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>zD)throw new Error(qD)}};var fc=class{crypto;log;constructor(e,r){this.log=e.logger.forComponent("libp2p:noise:abstract-handshake"),this.crypto=r}encryptWithAd(e,r,n){let o=this.encrypt(e.k,e.n,r,n);return e.n.increment(),o}decryptWithAd(e,r,n,o){let{plaintext:i,valid:s}=this.decrypt(e.k,e.n,r,n,o);return s&&e.n.increment(),{plaintext:i,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return pe(32)}isEmptyKey(e){let r=this.createEmptyKey();return Jh(r,e)}encrypt(e,r,n,o){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(o,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,o,i){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(o,r.getBytes(),n,e,i);return s?{plaintext:s,valid:!0}:{plaintext:pe(0),valid:!1}}decryptAndHash(e,r){let n,o=!0;return this.hasKey(e.cs)?{plaintext:n,valid:o}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:o}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let o=n;return this.log.error("error deriving shared key",o),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,o]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(o),e.ck=n}initializeKey(e){return{k:e,n:new cc}}initializeSymmetric(e){let r=fs(e,"utf-8"),n=this.hashProtocolName(r),o=n,i=this.createEmptyKey();return{cs:this.initializeKey(i),ck:o,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)),o=this.initializeKey(r),i=this.initializeKey(n);return{cs1:o,cs2:i}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,pe(0),r),o=this.createEmptyKey(),i=pe(0);return{ne:o,ns:i,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,pe(0),r.ciphertext)}};var uc=class extends fc{initializeInitiator(e,r,n,o){let i="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(i);this.mixHash(s,e);let a=pe(32);return{ss:s,s:r,rs:n,psk:o,re:a}}initializeResponder(e,r,n,o){let i="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(i);this.mixHash(s,e);let a=pe(32);return{ss:s,s:r,rs:n,psk:o,re:a}}writeMessageA(e,r,n){let o=pe(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let i=e.e.publicKey;this.mixHash(e.ss,i);let s=this.encryptAndHash(e.ss,r);return{ne:i,ns:o,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 o=e.s.publicKey,i=this.encryptAndHash(e.ss,o);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:i,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,o=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let i=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:o,ciphertext:i},{cs1:c,cs2:f}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:f}}readMessageA(e,r){return hs(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(hs(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:o}=this.decryptAndHash(e.ss,r.ns);o&&hs(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:i,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:i,valid:o&&s}}readMessageC(e,r){let{plaintext:n,valid:o}=this.decryptAndHash(e.ss,r.ns);if(o&&hs(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:i,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:i,valid:o&&s,cs1:a,cs2:c}}initSession(e,r,n){let o=this.createEmptyKey(),i=pe(32),s;return e?s=this.initializeInitiator(r,n,i,o):s=this.initializeResponder(r,n,i,o),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let o;if(e.mc===0)o=this.writeMessageA(e.hs,r,n);else if(e.mc===1)o=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:i,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);o=s,e.h=i,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");o=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");o=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,o}recvMessage(e,r){let n=pe(0),o=!1;if(e.mc===0)({plaintext:n,valid:o}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:o}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:i,plaintext:s,valid:a,cs1:c,cs2:f}=this.readMessageC(e.hs,r);n=s,o=a,e.h=i,e.cs1=c,e.cs2=f}return e.mc++,{plaintext:n,valid:o}}};function Nb(t,e){!e.enabled||!wo||(e(`LOCAL_STATIC_PUBLIC_KEY ${er(t.publicKey,"hex")}`),e(`LOCAL_STATIC_PRIVATE_KEY ${er(t.privateKey,"hex")}`))}function el(t,e){!e.enabled||!wo||(t?(e(`LOCAL_PUBLIC_EPHEMERAL_KEY ${er(t.publicKey,"hex")}`),e(`LOCAL_PRIVATE_EPHEMERAL_KEY ${er(t.privateKey,"hex")}`)):e("Missing local ephemeral keys."))}function Ub(t,e){!e.enabled||!wo||e(`REMOTE_STATIC_PUBLIC_KEY ${er(t.subarray(),"hex")}`)}function tl(t,e){!e.enabled||!wo||e(`REMOTE_EPHEMERAL_PUBLIC_KEY ${er(t.subarray(),"hex")}`)}function Pb(t,e){!e.enabled||!wo||(t.cs1&&t.cs2?(e(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${er(t.cs1.k,"hex")}`),e(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${er(t.cs2.k,"hex")}`)):e("Missing cipher state."))}var hc=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;log;constructor(e,r,n,o,i,s,a,c,f){this.log=e.logger.forComponent("libp2p:noise:xxhandshake"),this.isInitiator=r,this.payload=n,this.prologue=o,this.staticKeypair=s,this.connection=a,c&&(this.remotePeer=c),this.xx=f??new uc(e,i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(Nb(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(Lx(e)),this.log.trace("Stage 0 - Initiator finished sending first message."),el(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let e=Px((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Cn("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),tl(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=Ox((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Cn("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),tl(this.session.hs.re,this.log),Ub(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let o=Zh(r);this.remotePeer=this.remotePeer||await jh(o),await Qh(this.session.hs.rs,o,this.remotePeer),this.setRemoteNoiseExtension(o.extensions)}catch(o){let i=o;throw new Vi(`Error occurred while verifying signed payload: ${i.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(Nx(e)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),el(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(Ux(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=Mx((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Cn("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let o=Zh(r);this.remotePeer=this.remotePeer||await jh(o),await Qh(this.session.hs.rs,o,this.remotePeer),this.setRemoteNoiseExtension(o.extensions)}catch(o){let i=o;throw new Vi(`Error occurred while verifying signed payload: ${i.message}`)}}Pb(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 o=this.getCS(r,!1);return this.xx.decryptWithAd(o,pe(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new Cn("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 Ob(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 lc=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;components;constructor(e,r={}){let{staticNoiseKey:n,extensions:o,crypto:i,prologueBytes:s}=r,{metrics:a}=e;this.components=e,this.crypto=i??Rx,this.extensions=o,this.metrics=a?Ob(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 o=Ri(r,{lengthEncoder:Io,lengthDecoder:Fi,maxDataLength:65535}),i=await this.performHandshake({connection:o,isInitiator:!0,localPeer:e,remotePeer:n}),s=await this.createSecureConnection(o,i);return r.source=s.source,r.sink=s.sink,{conn:r,remoteExtensions:i.remoteExtensions,remotePeer:i.remotePeer}}async secureInbound(e,r,n){let o=Ri(r,{lengthEncoder:Io,lengthDecoder:Fi,maxDataLength:65535}),i=await this.performHandshake({connection:o,isInitiator:!1,localPeer:e,remotePeer:n}),s=await this.createSecureConnection(o,i);return r.source=s.source,r.sink=s.sink,{conn:r,remotePeer:i.remotePeer,remoteExtensions:i.remoteExtensions}}async performHandshake(e){let r=await Rb(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:o,connection:i}=e,s=new hc(this.components,n,r,this.prologue,this.crypto,this.staticKeys,i,o);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,o]=Gm(),i=e.unwrap();return await Ym(n,Vx(r,this.metrics),i,s=>dn(s,{lengthDecoder:Fi}),zx(r,this.metrics),n),o}};function Mb(t={}){return e=>new lc(e,t)}var O1=Qe(kl(),1);function zn(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Ac(t=0){return globalThis.Buffer?.allocUnsafe!=null?zn(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function a1(t,e){if(globalThis.Buffer!=null)return zn(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((o,i)=>o+i.length,0));let r=Ac(e),n=0;for(let o of t)r.set(o,n),n+=o.length;return zn(r)}var Pl={};O(Pl,{base10:()=>eT});function XI(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 o=0;o<t.length;o++){var i=t.charAt(o),s=i.charCodeAt(0);if(r[s]!==255)throw new TypeError(i+" is ambiguous");r[s]=o}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 d=0,m=0,x=0,b=h.length;x!==b&&h[x]===0;)x++,d++;for(var g=(b-x)*u+1>>>0,v=new Uint8Array(g);x!==b;){for(var w=h[x],E=0,S=g-1;(w!==0||E<m)&&S!==-1;S--,E++)w+=256*v[S]>>>0,v[S]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");m=E,x++}for(var C=g-m;C!==g&&v[C]===0;)C++;for(var k=c.repeat(d);C<g;++C)k+=t.charAt(v[C]);return k}function p(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var d=0;if(h[d]!==" "){for(var m=0,x=0;h[d]===c;)m++,d++;for(var b=(h.length-d)*f+1>>>0,g=new Uint8Array(b);h[d];){var v=r[h.charCodeAt(d)];if(v===255)return;for(var w=0,E=b-1;(v!==0||w<x)&&E!==-1;E--,w++)v+=a*g[E]>>>0,g[E]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");x=w,d++}if(h[d]!==" "){for(var S=b-x;S!==b&&g[S]===0;)S++;for(var C=new Uint8Array(m+(b-S)),k=m;S!==b;)C[k++]=g[S++];return C}}}function y(h){var d=p(h);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:p,decode:y}}var jI=XI,ZI=jI,c1=ZI;var LH=new Uint8Array(0);var f1=(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},Tr=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 u1=t=>new TextEncoder().encode(t),h1=t=>new TextDecoder().decode(t);var Rl=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")}},Ll=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 d1(this,e)}},Nl=class{constructor(e){this.decoders=e}or(e){return d1(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`)}},d1=(t,e)=>new Nl({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Ul=class{constructor(e,r,n,o){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=o,this.encoder=new Rl(e,r,n),this.decoder=new Ll(e,r,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},ri=({name:t,prefix:e,encode:r,decode:n})=>new Ul(t,e,r,n),rn=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:o}=c1(r,e);return ri({prefix:t,name:e,encode:n,decode:i=>Tr(o(i))})},QI=(t,e,r,n)=>{let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let s=new Uint8Array(i*r/8|0),a=0,c=0,f=0;for(let u=0;u<i;++u){let l=o[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},JI=(t,e,r)=>{let n=e[e.length-1]==="=",o=(1<<r)-1,i="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,i+=e[o&a>>s];if(s&&(i+=e[o&a<<r-s]),n)for(;i.length*r&7;)i+="=";return i},Ne=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>ri({prefix:e,name:t,encode(o){return JI(o,n,r)},decode(o){return QI(o,n,r,t)}});var eT=rn({prefix:"9",name:"base10",alphabet:"0123456789"});var Ol={};O(Ol,{base16:()=>tT,base16upper:()=>rT});var tT=Ne({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),rT=Ne({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ml={};O(Ml,{base2:()=>nT});var nT=Ne({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Fl={};O(Fl,{base256emoji:()=>cT});var p1=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}"),oT=p1.reduce((t,e,r)=>(t[r]=e,t),[]),iT=p1.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function sT(t){return t.reduce((e,r)=>(e+=oT[r],e),"")}function aT(t){let e=[];for(let r of t){let n=iT[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var cT=ri({prefix:"\u{1F680}",name:"base256emoji",encode:sT,decode:aT});var Kl={};O(Kl,{base32:()=>ni,base32hex:()=>lT,base32hexpad:()=>pT,base32hexpadupper:()=>mT,base32hexupper:()=>dT,base32pad:()=>uT,base32padupper:()=>hT,base32upper:()=>fT,base32z:()=>xT});var ni=Ne({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),fT=Ne({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),uT=Ne({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),hT=Ne({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),lT=Ne({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),dT=Ne({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),pT=Ne({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),mT=Ne({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),xT=Ne({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Vl={};O(Vl,{base36:()=>yT,base36upper:()=>gT});var yT=rn({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),gT=rn({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var zl={};O(zl,{base58btc:()=>rr,base58flickr:()=>bT});var rr=rn({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),bT=rn({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ql={};O(ql,{base64:()=>wT,base64pad:()=>vT,base64url:()=>ET,base64urlpad:()=>ST});var wT=Ne({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),vT=Ne({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ET=Ne({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ST=Ne({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Hl={};O(Hl,{base8:()=>AT});var AT=Ne({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var $l={};O($l,{identity:()=>CT});var CT=ri({prefix:"\0",name:"identity",encode:t=>h1(t),decode:t=>u1(t)});var YH=new TextEncoder,XH=new TextDecoder;var Wl={};O(Wl,{identity:()=>YT});var IT=y1,m1=128,TT=127,_T=~TT,kT=Math.pow(2,31);function y1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=kT;)e[r++]=t&255|m1,t/=128;for(;t&_T;)e[r++]=t&255|m1,t>>>=7;return e[r]=t|0,y1.bytes=r-n+1,e}var RT=Gl,LT=128,x1=127;function Gl(t,n){var r=0,n=n||0,o=0,i=n,s,a=t.length;do{if(i>=a)throw Gl.bytes=0,new RangeError("Could not decode varint");s=t[i++],r+=o<28?(s&x1)<<o:(s&x1)*Math.pow(2,o),o+=7}while(s>=LT);return Gl.bytes=i-n,r}var NT=Math.pow(2,7),UT=Math.pow(2,14),PT=Math.pow(2,21),OT=Math.pow(2,28),MT=Math.pow(2,35),FT=Math.pow(2,42),KT=Math.pow(2,49),VT=Math.pow(2,56),zT=Math.pow(2,63),qT=function(t){return t<NT?1:t<UT?2:t<PT?3:t<OT?4:t<MT?5:t<FT?6:t<KT?7:t<VT?8:t<zT?9:10},HT={encode:IT,decode:RT,encodingLength:qT},$T=HT,bs=$T;var ws=(t,e=0)=>[bs.decode(t,e),bs.decode.bytes],oi=(t,e,r=0)=>(bs.encode(t,e,r),e),ii=t=>bs.encodingLength(t);var qn=(t,e)=>{let r=e.byteLength,n=ii(t),o=n+ii(r),i=new Uint8Array(o+r);return oi(t,i,0),oi(r,i,n),i.set(e,o),new si(t,r,e,i)},g1=t=>{let e=Tr(t),[r,n]=ws(e),[o,i]=ws(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new si(r,o,s,e)},b1=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&f1(t.bytes,r.bytes)}},si=class{constructor(e,r,n,o){this.code=e,this.size=r,this.digest=n,this.bytes=o}};var w1=0,GT="identity",v1=Tr,WT=t=>qn(w1,v1(t)),YT={code:w1,name:GT,encode:v1,digest:WT};var jl={};O(jl,{sha256:()=>XT,sha512:()=>jT});var Xl=({name:t,code:e,encode:r})=>new Yl(t,e,r),Yl=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?qn(this.code,r):r.then(n=>qn(this.code,n))}else throw Error("Unknown type, must be binary type")}};var S1=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),XT=Xl({name:"sha2-256",code:18,encode:S1("SHA-256")}),jT=Xl({name:"sha2-512",code:19,encode:S1("SHA-512")});var A1=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return QT(r,Zl(t),e||rr.encoder);default:return JT(r,Zl(t),e||ni.encoder)}};var C1=new WeakMap,Zl=t=>{let e=C1.get(t);if(e==null){let r=new Map;return C1.set(t,r),r}return e},Dc=class t{constructor(e,r,n,o){this.code=r,this.version=e,this.multihash=n,this.bytes=o,this["/"]=o}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!==Es)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==e_)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=qn(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&&b1(e.multihash,n.multihash)}toString(e){return A1(this,e)}toJSON(){return{"/":A1(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:o,multihash:i,bytes:s}=r;return new t(n,o,i,s||D1(n,o,i.bytes))}else if(r[t_]===!0){let{version:n,multihash:o,code:i}=r,s=g1(o);return t.create(n,i,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!==Es)throw new Error(`Version 0 CID must use dag-pb (code: ${Es}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let o=D1(e,r,n.bytes);return new t(e,r,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,Es,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,o=Tr(e.subarray(n,n+r.multihashSize));if(o.byteLength!==r.multihashSize)throw new Error("Incorrect length");let i=o.subarray(r.multihashSize-r.digestSize),s=new si(r.multihashCode,r.digestSize,i,o);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,p]=ws(e.subarray(r));return r+=p,l},o=n(),i=Es;if(o===18?(o=0,r=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=r,a=n(),c=n(),f=r+c,u=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:f}}static parse(e,r){let[n,o]=ZT(e,r),i=t.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Zl(i).set(n,e),i}},ZT=(t,e)=>{switch(t[0]){case"Q":{let r=e||rr;return[rr.prefix,r.decode(`${rr.prefix}${t}`)]}case rr.prefix:{let r=e||rr;return[rr.prefix,r.decode(t)]}case ni.prefix:{let r=e||ni;return[ni.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)]}}},QT=(t,e,r)=>{let{prefix:n}=r;if(n!==rr.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let o=e.get(n);if(o==null){let i=r.encode(t).slice(1);return e.set(n,i),i}else return o},JT=(t,e,r)=>{let{prefix:n}=r,o=e.get(n);if(o==null){let i=r.encode(t);return e.set(n,i),i}else return o},Es=112,e_=18,D1=(t,e,r)=>{let n=ii(t),o=n+ii(e),i=new Uint8Array(o+r.byteLength);return oi(t,i,0),oi(e,i,n),i.set(r,o),i},t_=Symbol.for("@ipld/js-cid/CID");var Ql={...$l,...Ml,...Hl,...Pl,...Ol,...Kl,...Vl,...zl,...ql,...Fl},h$={...jl,...Wl};function I1(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var B1=I1("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Jl=I1("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=Ac(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),r_={utf8:B1,"utf-8":B1,hex:Ql.base16,latin1:Jl,ascii:Jl,binary:Jl,...Ql},T1=r_;function ed(t,e="utf8"){let r=T1[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?zn(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var _1=Qe(kl(),1);var td=Object.values(li).map(t=>t.decoder).reduce((t,e)=>t.or(e));function k1(t,e){let r=t.getConfiguration().certificates?.at(0);if(r==null||r.getFingerprints==null){e.log.trace("fetching fingerprint from local SDP");let o=t.localDescription;return o==null?void 0:o_(o.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 S0("","no fingerprint on local certificate");return n}var n_=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function o_(t){return t.match(n_)?.groups?.fingerprint}function i_(t){for(let e of t.protoNames())if(e.startsWith("ip"))return e.toUpperCase();return"IP6"}function Bc(t){let r=t.stringTuples().filter(n=>n[0]===N1).map(n=>n[1])[0];if(r===void 0||r==="")throw Gs(`Couldn't find a certhash component of multiaddr: ${t.toString()}`);return r}function rd(t){let e=td.decode(t);return _1.decode(e)}function s_(t){let e=rd(Bc(t)),r=nd(e.name),n=e.digest.reduce((i,s)=>i+s.toString(16).padStart(2,"0"),""),o=n.match(/.{1,2}/g);if(o==null)throw S0(n,t.toString());return[`${r.toUpperCase()} ${o.join(":").toUpperCase()}`,n]}function nd(t){switch(t){case"sha1":return"sha-1";case"sha2-256":return"sha-256";case"sha2-512":return"sha-512";default:throw rm(t)}}function a_(t,e){let{host:r,port:n}=t.toOptions(),o=i_(t),[i]=s_(t);return`v=0
|
|
30
|
-
o=- 0 0 IN ${
|
|
29
|
+
`});var I1=dt(()=>{B1();ks();Lr();tu();Wi()});var nu,Lk,T1=dt(()=>{r1();n1();i1();o1();s1();G0();a1();Y0();c1();f1();b1();E1();S1();A1();I1();nu={...M0,...F0,...V0,...H0,...q0,...z0,...W0,...$0,...X0,...Z0},Lk={...eu,...ru}});function Jn(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}var Ps=dt(()=>{});function Us(e=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?Jn(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var iu=dt(()=>{Ps()});function k1(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var _1,ou,vE,Os,su=dt(()=>{T1();iu();_1=k1("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ou=k1("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=Us(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),vE={utf8:_1,"utf-8":_1,hex:nu.base16,latin1:ou,ascii:ou,binary:ou,...nu},Os=vE});var R1={};ft(R1,{toString:()=>EE});function EE(e,t="utf8"){let r=Os[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 L1=dt(()=>{su()});var N1={};ft(N1,{fromString:()=>SE});function SE(e,t="utf8"){let r=Os[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Jn(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}var P1=dt(()=>{su();Ps()});var U1={};ft(U1,{concat:()=>AE});function AE(e,t){t||(t=e.reduce((i,o)=>i+o.length,0));let r=Us(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Jn(r)}var O1=dt(()=>{iu();Ps()});var cu=st((Wk,q1)=>{"use strict";var K1=Pp(),ti=Wp(),{names:Yi}=Yp(),{toString:Ks}=(L1(),Zi(R1)),{fromString:DE}=(P1(),Zi(N1)),{concat:CE}=(O1(),Zi(U1)),ei={};for(let e in Yi){let t=e;ei[Yi[t]]=t}Object.freeze(ei);function BE(e){if(!(e instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Ks(e,"base16")}function IE(e){return DE(e,"base16")}function TE(e){if(!(e instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Ks(K1.encode("base58btc",e)).slice(1)}function _E(e){let t=e instanceof Uint8Array?Ks(e):e;return K1.decode("z"+t)}function M1(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=ti.decode(e);if(!V1(t))throw new Error(`multihash unknown function code: 0x${t.toString(16)}`);e=e.slice(ti.decode.bytes);let r=ti.decode(e);if(r<0)throw new Error(`multihash invalid length: ${r}`);if(e=e.slice(ti.decode.bytes),e.length!==r)throw new Error(`multihash length inconsistent: 0x${Ks(e,"base16")}`);return{code:t,name:ei[t],length:r,digest:e}}function kE(e,t,r){if(!e||t===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=F1(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=ti.encode(n),o=ti.encode(r);return CE([i,o,e],i.length+o.length+e.length)}function F1(e){let t=e;if(typeof e=="string"){if(Yi[e]===void 0)throw new Error(`Unrecognized hash function named: ${e}`);t=Yi[e]}if(typeof t!="number")throw new Error(`Hash function code should be a number. Got: ${t}`);if(ei[t]===void 0&&!au(t))throw new Error(`Unrecognized function code: ${t}`);return t}function au(e){return e>0&&e<16}function V1(e){return!!(au(e)||ei[e])}function H1(e){M1(e)}function RE(e){return H1(e),e.subarray(0,2)}q1.exports={names:Yi,codes:ei,toHexString:BE,fromHexString:IE,toB58String:TE,fromB58String:_E,decode:M1,encode:kE,coerceCode:F1,isAppCode:au,validate:H1,prefix:RE,isValidCode:V1}});var HE={};ft(HE,{webRTC:()=>VE,webRTCDirect:()=>FE});var zE=Symbol.for("@libp2p/connection");var WE=Symbol.for("@libp2p/content-routing");var XE=Symbol.for("@libp2p/peer-discovery");var vu=Symbol.for("@libp2p/peer-id");var jE=Symbol.for("@libp2p/peer-routing");var Eu;(function(e){e.Accept="accept",e.Ignore="ignore",e.Reject="reject"})(Eu||(Eu={}));var Qi=Symbol.for("@libp2p/transport");var Su;(function(e){e[e.FATAL_ALL=0]="FATAL_ALL",e[e.NO_FATAL=1]="NO_FATAL"})(Su||(Su={}));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 ji=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 l2(t,r))}},Hs=class extends Event{detail;constructor(t,r){super(t,r),this.detail=r?.detail}},l2=globalThis.CustomEvent??Hs;var Au=(e,...t)=>{try{[...t]}catch{}};var $s={};ft($s,{base58btc:()=>Ft,base58flickr:()=>g2});var L3=new Uint8Array(0);function Du(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 Ye(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")}function Cu(e){return new TextEncoder().encode(e)}function Bu(e){return new TextDecoder().decode(e)}function h2(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,S=new Uint8Array(x);g!==b;){for(var w=h[g],E=0,C=x-1;(w!==0||E<y)&&C!==-1;C--,E++)w+=256*S[C]>>>0,S[C]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");y=E,g++}for(var B=x-y;B!==x&&S[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=e.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 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 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 C=b-g;C!==b&&x[C]===0;)C++;for(var B=new Uint8Array(y+(b-C)),U=y;C!==b;)B[U++]=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 d2=h2,p2=d2,Tu=p2;var qs=class{name;prefix;baseEncode;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")}},zs=class{name;prefix;baseDecode;prefixCodePoint;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)}},Gs=class{decoders;constructor(t){this.decoders=t}or(t){return _u(this,t)}decode(t){let r=t[0],n=this.decoders[r];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function _u(e,t){return new Gs({...e.decoders??{[e.prefix]:e},...t.decoders??{[t.prefix]:t}})}var Ws=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new qs(t,r,n),this.decoder=new zs(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function dn({name:e,prefix:t,encode:r,decode:n}){return new Ws(e,t,r,n)}function pr({name:e,prefix:t,alphabet:r}){let{encode:n,decode:i}=Tu(r,e);return dn({prefix:t,name:e,encode:n,decode:o=>Ye(i(o))})}function y2(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}function m2(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!==0&&(o+=t[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o}function kt({name:e,prefix:t,bitsPerChar:r,alphabet:n}){return dn({prefix:t,name:e,encode(i){return m2(i,n,r)},decode(i){return y2(i,n,r,e)}})}var Ft=pr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),g2=pr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ys={};ft(Ys,{base10:()=>x2});var x2=pr({prefix:"9",name:"base10",alphabet:"0123456789"});var Xs={};ft(Xs,{base16:()=>b2,base16upper:()=>w2});var b2=kt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),w2=kt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Zs={};ft(Zs,{base2:()=>v2});var v2=kt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Qs={};ft(Qs,{base256emoji:()=>C2});var ku=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}"),E2=ku.reduce((e,t,r)=>(e[r]=t,e),[]),S2=ku.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);function A2(e){return e.reduce((t,r)=>(t+=E2[r],t),"")}function D2(e){let t=[];for(let r of e){let n=S2[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);t.push(n)}return new Uint8Array(t)}var C2=dn({prefix:"\u{1F680}",name:"base256emoji",encode:A2,decode:D2});var js={};ft(js,{base32:()=>Xe,base32hex:()=>_2,base32hexpad:()=>R2,base32hexpadupper:()=>L2,base32hexupper:()=>k2,base32pad:()=>I2,base32padupper:()=>T2,base32upper:()=>B2,base32z:()=>N2});var Xe=kt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),B2=kt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),I2=kt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),T2=kt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),_2=kt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),k2=kt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),R2=kt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),L2=kt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),N2=kt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Js={};ft(Js,{base36:()=>P2,base36upper:()=>U2});var P2=pr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),U2=pr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ta={};ft(ta,{base64:()=>Ji,base64pad:()=>O2,base64url:()=>K2,base64urlpad:()=>M2});var Ji=kt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),O2=kt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),K2=kt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),M2=kt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ea={};ft(ea,{base8:()=>F2});var F2=kt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ra={};ft(ra,{identity:()=>V2});var V2=dn({prefix:"\0",name:"identity",encode:e=>Bu(e),decode:e=>Cu(e)});var X3=new TextEncoder,Z3=new TextDecoder;var ia={};ft(ia,{identity:()=>yr});var z2=Nu,Ru=128,G2=127,W2=~G2,$2=Math.pow(2,31);function Nu(e,t,r){t=t||[],r=r||0;for(var n=r;e>=$2;)t[r++]=e&255|Ru,e/=128;for(;e&W2;)t[r++]=e&255|Ru,e>>>=7;return t[r]=e|0,Nu.bytes=r-n+1,t}var Y2=na,X2=128,Lu=127;function na(e,n){var r=0,n=n||0,i=0,o=n,s,a=e.length;do{if(o>=a)throw na.bytes=0,new RangeError("Could not decode varint");s=e[o++],r+=i<28?(s&Lu)<<i:(s&Lu)*Math.pow(2,i),i+=7}while(s>=X2);return na.bytes=o-n,r}var Z2=Math.pow(2,7),Q2=Math.pow(2,14),j2=Math.pow(2,21),J2=Math.pow(2,28),ty=Math.pow(2,35),ey=Math.pow(2,42),ry=Math.pow(2,49),ny=Math.pow(2,56),iy=Math.pow(2,63),oy=function(e){return e<Z2?1:e<Q2?2:e<j2?3:e<J2?4:e<ty?5:e<ey?6:e<ry?7:e<ny?8:e<iy?9:10},sy={encode:z2,decode:Y2,encodingLength:oy},ay=sy,ni=ay;function ii(e,t=0){return[ni.decode(e,t),ni.decode.bytes]}function pn(e,t,r=0){return ni.encode(e,t,r),t}function yn(e){return ni.encodingLength(e)}function Ne(e,t){let r=t.byteLength,n=yn(e),i=n+yn(r),o=new Uint8Array(i+r);return pn(e,o,0),pn(r,o,n),o.set(t,i),new mn(e,r,t,o)}function Ur(e){let t=Ye(e),[r,n]=ii(t),[i,o]=ii(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new mn(r,i,s,t)}function Pu(e,t){if(e===t)return!0;{let r=t;return e.code===r.code&&e.size===r.size&&r.bytes instanceof Uint8Array&&Du(e.bytes,r.bytes)}}var mn=class{code;size;digest;bytes;constructor(t,r,n,i){this.code=t,this.size=r,this.digest=n,this.bytes=i}};var Uu=0,cy="identity",Ou=Ye;function uy(e){return Ne(Uu,Ou(e))}var yr={code:Uu,name:cy,encode:Ou,digest:uy};var aa={};ft(aa,{sha256:()=>Xt,sha512:()=>fy});function sa({name:e,code:t,encode:r}){return new oa(e,t,r)}var oa=class{name;code;encode;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?Ne(this.code,r):r.then(n=>Ne(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Mu(e){return async t=>new Uint8Array(await crypto.subtle.digest(e,t))}var Xt=sa({name:"sha2-256",code:18,encode:Mu("SHA-256")}),fy=sa({name:"sha2-512",code:19,encode:Mu("SHA-512")});function Fu(e,t){let{bytes:r,version:n}=e;switch(n){case 0:return hy(r,ca(e),t??Ft.encoder);default:return dy(r,ca(e),t??Xe.encoder)}}var Vu=new WeakMap;function ca(e){let t=Vu.get(e);if(t==null){let r=new Map;return Vu.set(e,r),r}return t}var be=class e{code;version;multihash;bytes;"/";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!==oi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==py)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=Ne(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!=null&&t.code===n.code&&t.version===n.version&&Pu(t.multihash,n.multihash)}toString(t){return Fu(this,t)}toJSON(){return{"/":Fu(this)}}link(){return this}[Symbol.toStringTag]="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??Hu(n,i,o.bytes))}else if(r[yy]===!0){let{version:n,multihash:i,code:o}=r,s=Ur(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!==oi)throw new Error(`Version 0 CID must use dag-pb (code: ${oi}) block encoding`);return new e(t,r,n,n.bytes)}case 1:{let i=Hu(t,r,n.bytes);return new e(t,r,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return e.create(0,oi,t)}static createV1(t,r){return e.create(1,t,r)}static decode(t){let[r,n]=e.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return r}static decodeFirst(t){let r=e.inspectBytes(t),n=r.size-r.multihashSize,i=Ye(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 mn(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]=ii(t.subarray(r));return r+=d,l},i=n(),o=oi;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]=ly(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 ca(o).set(n,t),o}};function ly(e,t){switch(e[0]){case"Q":{let r=t??Ft;return[Ft.prefix,r.decode(`${Ft.prefix}${e}`)]}case Ft.prefix:{let r=t??Ft;return[Ft.prefix,r.decode(e)]}case Xe.prefix:{let r=t??Xe;return[Xe.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)]}}}function hy(e,t,r){let{prefix:n}=r;if(n!==Ft.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}function dy(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}var oi=112,py=18;function Hu(e,t,r){let n=yn(e),i=n+yn(t),o=new Uint8Array(i+r.byteLength);return pn(e,o,0),pn(t,o,n),o.set(r,i),o}var yy=Symbol.for("@ipld/js-cid/CID");var Pe={...ra,...Zs,...ea,...Ys,...Xs,...js,...Js,...$s,...ta,...Qs},g4={...aa,...ia};function Ut(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 my=Symbol.for("nodejs.util.inspect.custom"),qu=Object.values(Pe).map(e=>e.decoder).reduce((e,t)=>e.or(t),Pe.identity.decoder),zu=114,ua=36,fa=37,si=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()})`}[vu]=!0;toString(){return this.string==null&&(this.string=Ft.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return be.createV1(zu,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(t){if(t==null)return!1;if(t instanceof Uint8Array)return Ut(this.multihash.bytes,t);if(typeof t=="string")return Kr(t).equals(this);if(t?.multihash?.bytes!=null)return Ut(this.multihash.bytes,t.multihash.bytes);throw new Error("not valid Id")}[my](){return`PeerId(${this.toString()})`}},gn=class extends si{type="RSA";publicKey;constructor(t){super({...t,type:"RSA"}),this.publicKey=t.publicKey}},xn=class extends si{type="Ed25519";publicKey;constructor(t){super({...t,type:"Ed25519"}),this.publicKey=t.multihash.digest}},bn=class extends si{type="secp256k1";publicKey;constructor(t){super({...t,type:"secp256k1"}),this.publicKey=t.multihash.digest}};function Kr(e,t){if(t=t??qu,e.charAt(0)==="1"||e.charAt(0)==="Q"){let r=Ur(Ft.decode(`z${e}`));return e.startsWith("12D")?new xn({multihash:r}):e.startsWith("16U")?new bn({multihash:r}):new gn({multihash:r})}return gy(qu.decode(e))}function gy(e){try{let t=Ur(e);if(t.code===yr.code){if(t.digest.length===ua)return new xn({multihash:t});if(t.digest.length===fa)return new bn({multihash:t})}if(t.code===Xt.code)return new gn({multihash:t})}catch{return xy(be.decode(e))}throw new Error("Supplied PeerID CID is invalid")}function xy(e){if(e==null||e.multihash==null||e.version==null||e.version===1&&e.code!==zu)throw new Error("Supplied PeerID CID is invalid");let t=e.multihash;if(t.code===Xt.code)return new gn({multihash:e.multihash});if(t.code===yr.code){if(t.digest.length===ua)return new xn({multihash:e.multihash});if(t.digest.length===fa)return new bn({multihash:e.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function la(e,t){return e.length===ua?new xn({multihash:Ne(yr.code,e),privateKey:t}):e.length===fa?new bn({multihash:Ne(yr.code,e),privateKey:t}):new gn({multihash:await Xt.digest(e),publicKey:e,privateKey:t})}function Ze(e){return globalThis.Buffer!=null?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function ot(e=0){return globalThis.Buffer?.alloc!=null?Ze(globalThis.Buffer.alloc(e)):new Uint8Array(e)}function Vt(e=0){return globalThis.Buffer?.allocUnsafe!=null?Ze(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Wu(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}var Gu=Wu("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ha=Wu("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=Vt(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),wy={utf8:Gu,"utf-8":Gu,hex:Pe.base16,latin1:ha,ascii:ha,binary:ha,...Pe},eo=wy;function at(e,t="utf8"){let r=eo[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 vy=Math.pow(2,7),Ey=Math.pow(2,14),Sy=Math.pow(2,21),da=Math.pow(2,28),pa=Math.pow(2,35),ya=Math.pow(2,42),ma=Math.pow(2,49),pt=128,te=127;function ee(e){if(e<vy)return 1;if(e<Ey)return 2;if(e<Sy)return 3;if(e<da)return 4;if(e<pa)return 5;if(e<ya)return 6;if(e<ma)return 7;if(Number.MAX_SAFE_INTEGER!=null&&e>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Ay(e,t,r=0){switch(ee(e)){case 8:t[r++]=e&255|pt,e/=128;case 7:t[r++]=e&255|pt,e/=128;case 6:t[r++]=e&255|pt,e/=128;case 5:t[r++]=e&255|pt,e/=128;case 4:t[r++]=e&255|pt,e>>>=7;case 3:t[r++]=e&255|pt,e>>>=7;case 2:t[r++]=e&255|pt,e>>>=7;case 1:{t[r++]=e&255,e>>>=7;break}default:throw new Error("unreachable")}return t}function Dy(e,t,r=0){switch(ee(e)){case 8:t.set(r++,e&255|pt),e/=128;case 7:t.set(r++,e&255|pt),e/=128;case 6:t.set(r++,e&255|pt),e/=128;case 5:t.set(r++,e&255|pt),e/=128;case 4:t.set(r++,e&255|pt),e>>>=7;case 3:t.set(r++,e&255|pt),e>>>=7;case 2:t.set(r++,e&255|pt),e>>>=7;case 1:{t.set(r++,e&255),e>>>=7;break}default:throw new Error("unreachable")}return t}function Cy(e,t){let r=e[t],n=0;if(n+=r&te,r<pt||(r=e[t+1],n+=(r&te)<<7,r<pt)||(r=e[t+2],n+=(r&te)<<14,r<pt)||(r=e[t+3],n+=(r&te)<<21,r<pt)||(r=e[t+4],n+=(r&te)*da,r<pt)||(r=e[t+5],n+=(r&te)*pa,r<pt)||(r=e[t+6],n+=(r&te)*ya,r<pt)||(r=e[t+7],n+=(r&te)*ma,r<pt))return n;throw new RangeError("Could not decode varint")}function By(e,t){let r=e.get(t),n=0;if(n+=r&te,r<pt||(r=e.get(t+1),n+=(r&te)<<7,r<pt)||(r=e.get(t+2),n+=(r&te)<<14,r<pt)||(r=e.get(t+3),n+=(r&te)<<21,r<pt)||(r=e.get(t+4),n+=(r&te)*da,r<pt)||(r=e.get(t+5),n+=(r&te)*pa,r<pt)||(r=e.get(t+6),n+=(r&te)*ya,r<pt)||(r=e.get(t+7),n+=(r&te)*ma,r<pt))return n;throw new RangeError("Could not decode varint")}function mr(e,t,r=0){return t==null&&(t=Vt(ee(e))),t instanceof Uint8Array?Ay(e,t,r):Dy(e,t,r)}function we(e,t=0){return e instanceof Uint8Array?Cy(e,t):By(e,t)}function Ct(e,t){if(globalThis.Buffer!=null)return Ze(globalThis.Buffer.concat(e,t));t==null&&(t=e.reduce((i,o)=>i+o.length,0));let r=Vt(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return Ze(r)}var ro=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 $u=45,Iy=15,wn=new ro;function ga(e){if(!(e.length>Iy))return wn.new(e).parseWith(()=>wn.readIPv4Addr())}function xa(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>$u))return wn.new(e).parseWith(()=>wn.readIPv6Addr())}function no(e){if(e.includes("%")&&(e=e.split("%")[0]),!(e.length>$u))return wn.new(e).parseWith(()=>wn.readIPAddr())}var X4=parseInt("0xFFFF",16),Z4=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function wt(e,t="utf8"){let r=eo[t];if(r==null)throw new Error(`Unsupported encoding "${t}"`);return(t==="utf8"||t==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Ze(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function io(e){return!!ga(e)}function oo(e){return!!xa(e)}function so(e){return!!no(e)}var Zu=io,Ly=oo,ba=function(e){let t=0;if(e=e.toString().trim(),Zu(e)){let r=new Uint8Array(t+4);return e.split(/\./g).forEach(n=>{r[t++]=parseInt(n,10)&255}),r}if(Ly(e)){let r=e.split(":",8),n;for(n=0;n<r.length;n++){let o=Zu(r[n]),s;o&&(s=ba(r[n]),r[n]=at(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,at(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")},Qu=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 vn={},wa={},Py=[[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"]];Py.forEach(e=>{let t=Uy(...e);wa[t.code]=t,vn[t.name]=t});function Uy(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:!!n,path:!!i}}function yt(e){if(typeof e=="number"){if(wa[e]!=null)return wa[e];throw new Error(`no protocol with code: ${e}`)}else if(typeof e=="string"){if(vn[e]!=null)return vn[e];throw new Error(`no protocol with name: ${e}`)}throw new Error(`invalid protocol id type: ${typeof e}`)}var US=yt("ip4"),OS=yt("ip6"),KS=yt("ipcidr");function Ea(e,t){switch(yt(e).code){case 4:case 41:return Ky(t);case 42:return tf(t);case 6:case 273:case 33:case 132:return rf(t).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return tf(t);case 421:return Hy(t);case 444:return ef(t);case 445:return ef(t);case 466:return Vy(t);default:return at(t,"base16")}}function Sa(e,t){switch(yt(e).code){case 4:return ju(t);case 41:return ju(t);case 42:return Ju(t);case 6:case 273:case 33:case 132:return Aa(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return Ju(t);case 421:return My(t);case 444:return qy(t);case 445:return zy(t);case 466:return Fy(t);default:return wt(t,"base16")}}var va=Object.values(Pe).map(e=>e.decoder),Oy=function(){let e=va[0].or(va[1]);return va.slice(2).forEach(t=>e=e.or(t)),e}();function ju(e){if(!so(e))throw new Error("invalid ip address");return ba(e)}function Ky(e){let t=Qu(e,0,e.length);if(t==null)throw new Error("ipBuff is required");if(!so(t))throw new Error("invalid ip address");return t}function Aa(e){let t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function rf(e){return new DataView(e.buffer).getUint16(e.byteOffset)}function Ju(e){let t=wt(e),r=Uint8Array.from(mr(t.length));return Ct([r,t],r.length+t.length)}function tf(e){let t=we(e);if(e=e.slice(ee(t)),e.length!==t)throw new Error("inconsistent lengths");return at(e)}function My(e){let t;e[0]==="Q"||e[0]==="1"?t=Ur(Ft.decode(`z${e}`)).bytes:t=be.parse(e).multihash.bytes;let r=Uint8Array.from(mr(t.length));return Ct([r,t],r.length+t.length)}function Fy(e){let t=Oy.decode(e),r=Uint8Array.from(mr(t.length));return Ct([r,t],r.length+t.length)}function Vy(e){let t=we(e),r=e.slice(ee(t));if(r.length!==t)throw new Error("inconsistent lengths");return"u"+at(r,"base64url")}function Hy(e){let t=we(e),r=e.slice(ee(t));if(r.length!==t)throw new Error("inconsistent lengths");return at(r,"base58btc")}function qy(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=Xe.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=Aa(n);return Ct([r,i],r.length+i.length)}function zy(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=Xe.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=Aa(n);return Ct([r,i],r.length+i.length)}function ef(e){let t=e.slice(0,e.length-2),r=e.slice(e.length-2),n=at(t,"base32"),i=rf(r);return`${n}:${i}`}function nf(e){e=Da(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=yt(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=Da(i.slice(o).join("/")),t.push([a.code,Sa(a.code,n)]),r.push([a.code,n]);break}let c=Sa(a.code,i[o]);t.push([a.code,c]),r.push([a.code,Ea(a.code,c)])}return{string:of(r),bytes:Ba(t),tuples:t,stringTuples:r,path:n}}function Ca(e){let t=[],r=[],n=null,i=0;for(;i<e.length;){let o=we(e,i),s=ee(o),a=yt(o),c=Gy(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: "+at(e,"base16"));t.push([o,u]);let f=Ea(o,u);if(r.push([o,f]),a.path===!0){n=f;break}}return{bytes:Uint8Array.from(e),string:of(r),tuples:t,stringTuples:r,path:n}}function of(e){let t=[];return e.map(r=>{let n=yt(r[0]);return t.push(n.name),r.length>1&&r[1]!=null&&t.push(r[1]),null}),Da(t.join("/"))}function Ba(e){return Ct(e.map(t=>{let r=yt(t[0]),n=Uint8Array.from(mr(r.code));return t.length>1&&t[1]!=null&&(n=Ct([n,t[1]])),n}))}function Gy(e,t){if(e.size>0)return e.size/8;if(e.size===0)return 0;{let r=we(t instanceof Uint8Array?t:Uint8Array.from(t));return r+ee(r)}}function Da(e){return"/"+e.trim().split("/").filter(t=>t).join("/")}function sf(e){return new Error("Error parsing address: "+e)}var Wy=Symbol.for("nodejs.util.inspect.custom"),Ia=Symbol.for("@multiformats/js-multiaddr/multiaddr"),$y=[yt("dns").code,yt("dns4").code,yt("dns6").code,yt("dnsaddr").code],ao=class e{bytes;#t;#e;#r;#n;[Ia]=!0;constructor(t){t==null&&(t="");let r;if(t instanceof Uint8Array)r=Ca(t);else if(typeof t=="string"){if(t.length>0&&t.charAt(0)!=="/")throw new Error(`multiaddr "${t}" must start with a "/"`);r=nf(t)}else if(cf(t))r=Ca(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=yt("tcp"),a=yt("udp"),c=yt("ip4"),u=yt("ip6"),f=yt("dns6"),l=yt("ip6zone");for(let[m,h]of this.stringTuples())m===l.code&&(o=`%${h??""}`),$y.includes(m)&&(r=s.name,i=443,n=`${h??""}${o}`,t=m===f.code?6:4),(m===s.code||m===a.code)&&(r=yt(m).name,i=parseInt(h??"")),(m===c.code||m===u.code)&&(r=yt(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({},yt(t)))}protoCodes(){return this.#e.map(([t])=>t)}protoNames(){return this.#e.map(([t])=>yt(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(Ba(r.slice(0,n)));return this}getPeerId(){try{let t=[];this.stringTuples().forEach(([n,i])=>{n===vn.p2p.code&&t.push([n,i]),n===vn["p2p-circuit"].code&&(t=[])});let r=t.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?at(Ft.decode(`z${n}`),"base58btc"):at(be.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(t){return Ut(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)}[Wy](){return`Multiaddr(${this.#t})`}};var af=new Map;function cf(e){return!!e?.[Ia]}function Qe(e){return new ao(e)}function Yy(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,S=new Uint8Array(x);g!==b;){for(var w=h[g],E=0,C=x-1;(w!==0||E<y)&&C!==-1;C--,E++)w+=256*S[C]>>>0,S[C]=w%a>>>0,w=w/a>>>0;if(w!==0)throw new Error("Non-zero carry");y=E,g++}for(var B=x-y;B!==x&&S[B]===0;)B++;for(var U=c.repeat(p);B<x;++B)U+=e.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 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 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 C=b-g;C!==b&&x[C]===0;)C++;for(var B=new Uint8Array(y+(b-C)),U=y;C!==b;)B[U++]=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 Xy=Yy,Zy=Xy,uf=Zy;var f5=new Uint8Array(0);var ff=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 Ta=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")}},_a=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 lf(this,t)}},ka=class{constructor(t){this.decoders=t}or(t){return lf(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`)}},lf=(e,t)=>new ka({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}}),Ra=class{constructor(t,r,n,i){this.name=t,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Ta(t,r,n),this.decoder=new _a(t,r,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}},hf=({name:e,prefix:t,encode:r,decode:n})=>new Ra(e,t,r,n),La=({prefix:e,name:t,alphabet:r})=>{let{encode:n,decode:i}=uf(r,t);return hf({prefix:e,name:t,encode:n,decode:o=>ff(i(o))})},Qy=(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},jy=(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},ci=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>hf({prefix:t,name:e,encode(i){return jy(i,n,r)},decode(i){return Qy(i,n,r,e)}});var df=La({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),m5=La({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var b5=ci({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),w5=ci({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),pf=ci({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),v5=ci({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Jy=e=>e.toString().split("/").slice(1),ui=e=>({match:t=>t.length<1?!1:e(t[0])?t.slice(1):!1,pattern:"fn"}),Lt=e=>({match:t=>ui(r=>r===e).match(t),pattern:e}),fo=()=>({match:e=>ui(t=>typeof t=="string").match(e),pattern:"{string}"}),yf=()=>({match:e=>ui(t=>!isNaN(parseInt(t))).match(e),pattern:"{number}"}),de=()=>({match:e=>{if(e.length<2||e[0]!=="p2p"&&e[0]!=="ipfs")return!1;if(e[1].startsWith("Q")||e[1].startsWith("1"))try{df.decode(`z${e[1]}`)}catch{return!1}else return!1;return e.slice(2)},pattern:"/p2p/{peerid}"}),co=()=>({match:e=>{if(e.length<2||e[0]!=="certhash")return!1;try{pf.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(", ")})`}),Nt=(...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 Ht(...e){function t(i){let o=Jy(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 Pa=Nt(Lt("dns4"),fo()),Ua=Nt(Lt("dns6"),fo()),Oa=Nt(Lt("dnsaddr"),fo()),mf=Nt(Lt("dns"),fo()),B5=Ht(Pa),I5=Ht(Ua),T5=Ht(Oa),_5=Ht(Oe(mf,Oa,Pa,Ua)),gf=Nt(Lt("ip4"),ui(io)),xf=Nt(Lt("ip6"),ui(oo)),bf=Oe(gf,xf),fi=Oe(bf,mf,Pa,Ua,Oa),k5=Ht(fi),R5=Ht(gf),L5=Ht(xf),N5=Ht(bf),lo=Nt(fi,Lt("tcp"),yf()),li=Nt(fi,Lt("udp"),yf()),tm=Oe(lo,li),P5=Ht(lo),U5=Ht(li),Ka=Nt(li,Lt("quic")),ho=Nt(li,Lt("quic-v1")),em=Oe(Ka,ho),O5=Ht(Ka),K5=Ht(ho),Na=Oe(fi,lo,li,Ka,ho),wf=Oe(Nt(Na,Lt("ws"),Ue(de()))),M5=Ht(wf),vf=Oe(Nt(Na,Lt("wss"),Ue(de())),Nt(Na,Lt("tls"),Lt("ws"),Ue(de()))),F5=Ht(vf),Ef=Nt(tm,Lt("webrtc-direct"),co(),Ue(co()),Ue(de())),Sf=Ht(Ef),Af=Nt(ho,Lt("webtransport"),co(),co(),Ue(de())),V5=Ht(Af),uo=Oe(wf,vf,Nt(lo,Ue(de())),Nt(em,Ue(de())),Nt(fi,Ue(de())),Ef,Af,de()),H5=Ht(uo),rm=Nt(uo,Lt("p2p-circuit"),de()),q5=Ht(rm),nm=Oe(Nt(uo,Lt("p2p-circuit"),Lt("webrtc"),de()),Nt(uo,Lt("webrtc"),Ue(de())),Lt("webrtc")),Df=Ht(nm);var fe;(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"})(fe||(fe={}));var gr=class extends W{constructor(t,r){super(`WebRTC transport error: ${t}`,r??""),this.name="WebRTCTransportError"}};var Ma=class extends gr{constructor(t,r){super(`[stream: ${t}] data channel error: ${r}`,fe.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function Ga(e,t){return new Ma(e,t)}var Fa=class extends gr{constructor(t){super(`There was a problem with the Multiaddr which was passed in: ${t}`,fe.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function po(e){return new Fa(e)}var Va=class extends gr{constructor(t){super(`There was a problem with a provided argument: ${t}`,fe.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function hi(e){return new Va(e)}var Ha=class extends gr{constructor(t,r){super(`Invalid fingerprint "${t}" within ${r}`,fe.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function Wa(e,t){return new Ha(e,t)}var qa=class extends gr{constructor(t){super(`A method (${t}) was called though it has been intentionally left unimplemented.`,fe.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function Cf(e){return new qa(e)}var za=class extends gr{constructor(t){super(`unsupported hash algorithm: ${t}`,fe.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function Bf(e){return new za(e)}var If=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))},im=function(){function e(t,r,n){this.name=t,this.version=r,this.os=n,this.type="browser"}return e}();var om=function(){function e(t){this.version=t,this.type="node",this.name="node",this.os=process.platform}return e}();var sm=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 am=function(){function e(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return e}();var cm=function(){function e(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return e}();var um=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,fm=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Tf=3,lm=[["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",um]],_f=[["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 Rf(e){return e?kf(e):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new cm:typeof navigator<"u"?kf(navigator.userAgent):pm()}function hm(e){return e!==""&&lm.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 kf(e){var t=hm(e);if(!t)return null;var r=t[0],n=t[1];if(r==="searchbot")return new am;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Tf&&(i=If(If([],i,!0),ym(Tf-i.length),!0)):i=[];var o=i.join("."),s=dm(e),a=fm.exec(e);return a&&a[1]?new sm(r,o,s,a[1]):new im(r,o,s)}function dm(e){for(var t=0,r=_f.length;t<r;t++){var n=_f[t],i=n[0],o=n[1],s=o.exec(e);if(s)return i}return null}function pm(){var e=typeof process<"u"&&process.version;return e?new om(process.version.slice(1)):null}function ym(e){for(var t=[],r=0;r<e;r++)t.push("0");return t}function Ot(){let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}var En=class extends Error{constructor(t){super(t),this.name="TimeoutError"}},$a=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t}},Lf=e=>globalThis.DOMException===void 0?new $a(e):new DOMException(e),Nf=e=>{let t=e.reason===void 0?Lf("This operation was aborted."):e.reason;return t instanceof Error?t:Lf(t)};function Mr(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(Nf(d)),d.addEventListener("abort",()=>{f(Nf(d))})}if(r===Number.POSITIVE_INFINITY){e.then(u,f);return}let l=new En;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 Pf=Rf(),di=Pf!=null&&Pf.name==="firefox",yo=async function*(){},mo=async e=>{},mm=30*1e3;function Uf(e,t,r=mm,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=Ot(),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 Mr(i.promise,{milliseconds:r})}}).then(async()=>{e.readyState==="open"&&e.close()}).catch(i=>{n.log.error("error closing outbound stream",i)})}var Fr=class{log;peerConnection;remoteAddr;timeline;metrics;source=yo();sink=mo;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 go=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}},Sn=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new go(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 go(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 Ya=class extends Error{type;code;constructor(t,r){super(t??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function xr(e={}){return gm(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 gm(e,t){t=t??{};let r=t.onEnd,n=new Sn,i,o,s,a=Ot(),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=Ot()})}},u=y=>o!=null?o(y):(n.push(y),i),f=y=>(n=new Sn,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 Sn,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((S,w)=>{x=()=>{w(new Ya)},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 xo=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 br(e,t,r){if(t==null)return e;if(t.aborted)return Promise.reject(new xo(r?.errorMessage,r?.errorCode));let n,i=new xo(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 Kf=Symbol.for("@achingbrain/uint8arraylist");function Of(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 An(e){return!!e?.[Kf]}var Bt=class e{bufs;length;[Kf]=!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(An(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(An(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=Of(this.bufs,t);return r.buf[r.index]}set(t,r){let n=Of(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(An(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 Ct(n,i)}subarray(t,r){let{bufs:n,length:i}=this._subList(t,r);return n.length===1?n[0]:Ct(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(!An(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=Vt(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=ot(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=ot(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=ot(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=Vt(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=ot(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=ot(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=ot(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=ot(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=ot(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(!Ut(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 Mf(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 Ff(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}function Vf(e,t){let r=Mf(e).return?.();Ff(r)&&r.catch(n=>{t.error("could not cause iterator to return",n)})}var xm="ERR_STREAM_RESET",bm="ERR_SINK_INVALID_STATE",wm=5e3;function Xa(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var bo=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=Ot(),this.closed=Ot(),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??wm,this.onEnd=t.onEnd,this.onCloseRead=t?.onCloseRead,this.onCloseWrite=t?.onCloseWrite,this.onReset=t?.onReset,this.onAbort=t?.onAbort,this.source=this.streamSource=xr({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"`,bm);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let i=this.sendNewStream(r);Xa(i)&&await i}let n=()=>{Vf(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 Bt(i):i;let o=this.sendData(i,r);Xa(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 br(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 br(this.sink([]),t.signal)),this.writeStatus==="writing"&&await new Promise((r,n)=>{queueMicrotask(()=>{this.log.trace("aborting source passed to .sink"),this.sinkController.abort(),br(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();Xa(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",xm);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 wo(e){return e[Symbol.asyncIterator]!=null}var vo=e=>{let t=ee(e),r=Vt(t);return mr(e,r),vo.bytes=t,r};vo.bytes=0;function wr(e,t){t=t??{};let r=t.lengthEncoder??vo;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return wo(e)?async function*(){for await(let i of e)yield*n(i)}():function*(){for(let i of e)yield*n(i)}()}wr.single=(e,t)=>{t=t??{};let r=t.lengthEncoder??vo;return new Bt(r(e.byteLength),e)};var Dn=Jt(zf(),1);var Em=8,Sm=1024*1024*4,Vr;(function(e){e[e.LENGTH=0]="LENGTH",e[e.DATA=1]="DATA"})(Vr||(Vr={}));var Za=e=>{let t=we(e);return Za.bytes=ee(t),t};Za.bytes=0;function Hr(e,t){let r=new Bt,n=Vr.LENGTH,i=-1,o=t?.lengthDecoder??Za,s=t?.maxLengthLength??Em,a=t?.maxDataLength??Sm;function*c(){for(;r.byteLength>0;){if(n===Vr.LENGTH)try{if(i=o(r),i<0)throw(0,Dn.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Dn.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=Vr.DATA}catch(u){if(u instanceof RangeError){if(r.byteLength>s)throw(0,Dn.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw u}if(n===Vr.DATA){if(r.byteLength<i)break;let u=r.sublist(0,i);r.consume(i),t?.onData!=null&&t.onData(u),yield u,n=Vr.LENGTH}}}return wo(e)?async function*(){for await(let u of e)r.append(u),yield*c();if(r.byteLength>0)throw(0,Dn.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,Dn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}Hr.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 Hr(n,{...t??{},onLength:o=>{r=o}})};var Am=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 Dm(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}=Am(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=Mr(i,{milliseconds:r.timeout});return o.cancel=n,o}return i}function Qa(e,t,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=Dm(e,t,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var ja=new Float32Array([-0]),vr=new Uint8Array(ja.buffer);function Wf(e,t,r){ja[0]=e,t[r]=vr[0],t[r+1]=vr[1],t[r+2]=vr[2],t[r+3]=vr[3]}function $f(e,t){return vr[0]=e[t],vr[1]=e[t+1],vr[2]=e[t+2],vr[3]=e[t+3],ja[0]}var Ja=new Float64Array([-0]),re=new Uint8Array(Ja.buffer);function Yf(e,t,r){Ja[0]=e,t[r]=re[0],t[r+1]=re[1],t[r+2]=re[2],t[r+3]=re[3],t[r+4]=re[4],t[r+5]=re[5],t[r+6]=re[6],t[r+7]=re[7]}function Xf(e,t){return re[0]=e[t],re[1]=e[t+1],re[2]=e[t+2],re[3]=e[t+3],re[4]=e[t+4],re[5]=e[t+5],re[6]=e[t+6],re[7]=e[t+7],Ja[0]}var Cm=BigInt(Number.MAX_SAFE_INTEGER),Bm=BigInt(Number.MIN_SAFE_INTEGER),oe=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 qr;if(t<Cm&&t>Bm)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>Zf&&(i=0n,++n>Zf&&(n=0n))),new e(Number(i),Number(n))}static fromNumber(t){if(t===0)return qr;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):qr}},qr=new oe(0,0);qr.toBigInt=function(){return 0n};qr.zzEncode=qr.zzDecode=function(){return this};qr.length=function(){return 1};var Zf=4294967296n;function Qf(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 jf(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 tc(e,t,r){let n=r,i,o;for(let s=0;s<e.length;++s)i=e.charCodeAt(s),i<128?t[r++]=i:i<2048?(t[r++]=i>>6|192,t[r++]=i&63|128):(i&64512)===55296&&((o=e.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[r++]=i>>18|240,t[r++]=i>>12&63|128,t[r++]=i>>6&63|128,t[r++]=i&63|128):(t[r++]=i>>12|224,t[r++]=i>>6&63|128,t[r++]=i&63|128);return r-n}function ve(e,t){return RangeError(`index out of range: ${e.pos} + ${t??1} > ${e.len}`)}function Eo(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}var ec=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,ve(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ve(this,4);return Eo(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ve(this,4);return Eo(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ve(this,4);let t=$f(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw ve(this,4);let t=Xf(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),r=this.pos,n=this.pos+t;if(n>this.len)throw ve(this,t);return this.pos+=t,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let t=this.bytes();return jf(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw ve(this,t);this.pos+=t}else do if(this.pos>=this.len)throw ve(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new oe(0,0),r=0;if(this.len-this.pos>4){for(;r<4;++r)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;r=0}else{for(;r<3;++r){if(this.pos>=this.len)throw ve(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<r*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<r*7)>>>0,t}if(this.len-this.pos>4){for(;r<5;++r)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;r<5;++r){if(this.pos>=this.len)throw ve(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<r*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ve(this,8);let t=Eo(this.buf,this.pos+=4),r=Eo(this.buf,this.pos+=4);return new oe(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 rc(e){return new ec(e instanceof Uint8Array?e:e.subarray())}function Ee(e,t){let r=rc(e);return t.decode(r)}function nc(e){let t=e??8192,r=t>>>1,n,i=t;return function(s){if(s<1||s>r)return Vt(s);i+s>t&&(n=Vt(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var zr=class{fn;len;next;val;constructor(t,r,n){this.fn=t,this.len=r,this.next=void 0,this.val=n}};function ic(){}var sc=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},Im=nc();function Tm(e){return globalThis.Buffer!=null?Vt(e):Im(e)}var mi=class{len;head;tail;states;constructor(){this.len=0,this.head=new zr(ic,0,0),this.tail=this.head,this.states=null}_push(t,r,n){return this.tail=this.tail.next=new zr(t,r,n),this.len+=r,this}uint32(t){return this.len+=(this.tail=this.tail.next=new ac((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(pi,10,oe.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let r=oe.fromBigInt(t);return this._push(pi,r.length(),r)}uint64Number(t){let r=oe.fromNumber(t);return this._push(pi,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=oe.fromBigInt(t).zzEncode();return this._push(pi,r.length(),r)}sint64Number(t){let r=oe.fromNumber(t).zzEncode();return this._push(pi,r.length(),r)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(oc,1,t?1:0)}fixed32(t){return this._push(yi,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let r=oe.fromBigInt(t);return this._push(yi,4,r.lo)._push(yi,4,r.hi)}fixed64Number(t){let r=oe.fromNumber(t);return this._push(yi,4,r.lo)._push(yi,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(Wf,4,t)}double(t){return this._push(Yf,8,t)}bytes(t){let r=t.length>>>0;return r===0?this._push(oc,1,0):this.uint32(r)._push(km,r,t)}string(t){let r=Qf(t);return r!==0?this.uint32(r)._push(tc,r,t):this._push(oc,1,0)}fork(){return this.states=new sc(this),this.head=this.tail=new zr(ic,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 zr(ic,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=Tm(this.len),n=0;for(;t!=null;)t.fn(t.val,r,n),n+=t.len,t=t.next;return r}};function oc(e,t,r){t[r]=e&255}function _m(e,t,r){for(;e>127;)t[r++]=e&127|128,e>>>=7;t[r]=e}var ac=class extends zr{next;constructor(t,r){super(_m,t,r),this.next=void 0}};function pi(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 yi(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 km(e,t,r){t.set(e,r)}globalThis.Buffer!=null&&(mi.prototype.bytes=function(e){let t=e.length>>>0;return this.uint32(t),t>0&&this._push(Rm,t,e),this},mi.prototype.string=function(e){let t=globalThis.Buffer.byteLength(e);return this.uint32(t),t>0&&this._push(Lm,t,e),this});function Rm(e,t,r){t.set(e,r)}function Lm(e,t,r){e.length<40?tc(e,t,r):t.utf8Write!=null?t.utf8Write(e,r):t.set(wt(e),r)}function cc(){return new mi}function Se(e,t){let r=cc();return t.encode(e,r,{lengthDelimited:!1}),r.finish()}var Cn;(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"})(Cn||(Cn={}));function So(e,t,r,n){return{name:e,type:t,encode:r,decode:n}}function Gr(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 So("enum",Cn.VARINT,r,n)}function Ae(e,t){return So("message",Cn.LENGTH_DELIMITED,e,t)}var se;(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=()=>Gr(r)}(t=e.Flag||(e.Flag={}));let n;e.codec=()=>(n==null&&(n=Ae((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=>Se(i,e.codec()),e.decode=i=>Ee(i,e.codec())})(se||(se={}));var Nm=16*1024*1024,Pm=30*1e3,Um=5,Om=2,Km=16*1024,Mm=5e3,Fm=5e3,uc=class extends bo{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 Mr(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=xr(),this.bufferedAmountLowEventTimeout=t.bufferedAmountLowEventTimeout??Pm,this.maxBufferedAmount=t.maxBufferedAmount??Nm,this.maxMessageSize=(t.maxMessageSize??Km)-Um-Om,this.receiveFinAck=Ot(),this.finAckTimeout=t.closeTimeout??Mm,this.openTimeout=t.openTimeout??Fm,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 Hr(this.incomingData)){let o=n.processIncomingProtobuf(i);o!=null&&n.sourcePush(new Bt(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 Qa(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof En?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 Qa(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=se.encode({message:n}),o=wr.single(i);await this._sendMessage(o),t.consume(r)}}async sendReset(){await this._sendFlag(se.Flag.RESET)}async sendCloseWrite(t){if(await this._sendFlag(se.Flag.FIN)){this.log.trace("awaiting FIN_ACK");try{await br(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(se.Flag.STOP_SENDING)}processIncomingProtobuf(t){let r=se.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===se.Flag.FIN&&(this.remoteCloseWrite(),this.log.trace("sending FIN_ACK"),this._sendFlag(se.Flag.FIN_ACK).catch(n=>{this.log.error("error sending FIN_ACK immediately",n)})),r.flag===se.Flag.RESET&&this.reset(),r.flag===se.Flag.STOP_SENDING&&this.remoteCloseRead(),r.flag===se.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=se.encode({flag:t}),n=wr.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 Bn(e){let{channel:t,direction:r}=e;return new uc({id:r==="inbound"?`i${t.id}`:`r${t.id}`,log:e.logger.forComponent(`libp2p:webrtc:stream:${r}:${t.id}`),...e})}var tl="/webrtc",Wr=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??tl,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=Bn({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 fc(this.components,{...t,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.bufferedStreams,protocol:this.protocol})}},fc=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??tl,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=Bn({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),Uf(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=yo();sink=mo;newStream(){let t=this.peerConnection.createDataChannel("");this.log.trace("opened outgoing datachannel with channel id %s",t.id);let r=Bn({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 In=globalThis.RTCPeerConnection,Ao=globalThis.RTCSessionDescription,el=globalThis.RTCIceCandidate;var lc=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=Ot(),this.haveNext=Ot()}[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=Ot(),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=Ot(),await br(this.needNext.promise,r?.signal,r)}};function rl(){return new lc}var Do=class extends Error{code;constructor(t,r){super(t),this.code=r}},hc=class extends Do{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted"}};function nl(e,t){let r=rl();e.sink(r).catch(async s=>{await r.end(s)}),e.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=e.source;e.source[Symbol.iterator]!=null?n=e.source[Symbol.iterator]():e.source[Symbol.asyncIterator]!=null&&(n=e.source[Symbol.asyncIterator]());let i=new Bt;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,u=new Promise((f,l)=>{c=()=>{l(new hc("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 Bt:d}for(;i.byteLength<s;){let{value:l,done:d}=await Promise.race([n.next(),u]);if(d===!0)throw new Do("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 Co=class extends Error{code;constructor(t,r){super(t),this.code=r}},il=e=>we(e);il.bytes=0;function gi(e,t={}){let r=nl(e,t);return t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=ee(t.maxDataLength)),{read:async i=>{let o=-1,s=new Bt,a=t?.lengthDecoder??il;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 Co("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(t?.maxDataLength!=null&&o>t.maxDataLength)throw new Co("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(wr.single(i,t),o)},writeV:async(i,o)=>{let s=new Bt(...i.map(a=>wr.single(a,t)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function Bo(e,t){let r=gi(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 ae;(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=()=>Gr(r)}(t=e.Type||(e.Type={}));let n;e.codec=()=>(n==null&&(n=Ae((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=>Se(i,e.codec()),e.decode=i=>Ee(i,e.codec())})(ae||(ae={}));var Io=async(e,t,r)=>{try{let n=Ot();for(Hm(e,n);;){let i=await Promise.race([n.promise,t.read({signal:r.signal})]);if(i==null)break;if(i.type!==ae.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 el(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 Vm(e){return di?e.iceConnectionState:e.connectionState}function Hm(e,t){e[di?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(Vm(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 ol({peerConnection:e,signal:t,metrics:r,multiaddr:n,connectionManager:i,transportManager:o,log:s}){let{baseAddr:a}=sl(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(Kr(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(To,{signal:t,runOnTransientConnection:!0}),m=Bo(d).pb(ae);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:ae.Type.ICE_CANDIDATE,data:x},{signal:t}).catch(S=>{s.error("error sending ICE candidate",S)})},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:ae.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!==ae.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 Ao({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 Io(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 qm=q("dns4"),zm=q("dns6"),Gm=q("dnsaddr"),$r=Pt(q("dns"),Gm,qm,zm),Ro=Pt(q("ip4"),q("ip6")),Tn=Pt(X(Ro,q("tcp")),X($r,q("tcp"))),Lo=X(Ro,q("udp")),Wm=X(Lo,q("utp")),$m=X(Lo,q("quic")),Ym=X(Lo,q("quic-v1")),dc=Pt(X(Tn,q("ws")),X($r,q("ws"))),_o=Pt(X(dc,q("p2p")),dc),pc=Pt(X(Tn,q("wss")),X($r,q("wss")),X(Tn,q("tls"),q("ws")),X($r,q("tls"),q("ws"))),ko=Pt(X(pc,q("p2p")),pc),yc=Pt(X(Tn,q("http")),X(Ro,q("http")),X($r,q("http"))),mc=Pt(X(Tn,q("https")),X(Ro,q("https")),X($r,q("https"))),al=X(Lo,q("webrtc-direct"),q("certhash")),fl=Pt(X(al,q("p2p")),al),cl=X(Ym,q("webtransport"),q("certhash"),q("certhash")),ll=Pt(X(cl,q("p2p")),cl),hl=Pt(X(_o,q("p2p-webrtc-star"),q("p2p")),X(ko,q("p2p-webrtc-star"),q("p2p")),X(_o,q("p2p-webrtc-star")),X(ko,q("p2p-webrtc-star"))),nD=Pt(X(_o,q("p2p-websocket-star"),q("p2p")),X(ko,q("p2p-websocket-star"),q("p2p")),X(_o,q("p2p-websocket-star")),X(ko,q("p2p-websocket-star"))),dl=Pt(X(yc,q("p2p-webrtc-direct"),q("p2p")),X(mc,q("p2p-webrtc-direct"),q("p2p")),X(yc,q("p2p-webrtc-direct")),X(mc,q("p2p-webrtc-direct"))),Yr=Pt(dc,pc,yc,mc,hl,dl,Tn,Wm,$m,$r,fl,ll),iD=Pt(X(Yr,q("p2p-stardust"),q("p2p")),X(Yr,q("p2p-stardust"))),Er=Pt(X(Yr,q("p2p")),hl,dl,fl,ll,q("p2p")),ul=Pt(X(Er,q("p2p-circuit"),Er),X(Er,q("p2p-circuit")),X(q("p2p-circuit"),Er),X(Yr,q("p2p-circuit")),X(q("p2p-circuit"),Yr),q("p2p-circuit")),pl=()=>Pt(X(ul,pl),ul),je=pl(),oD=Pt(X(je,Er,je),X(Er,je),X(je,Er),je,Er);var sD=Pt(X(je,q("webrtc"),q("p2p")),X(je,q("webrtc")),X(Yr,q("webrtc"),q("p2p")),X(Yr,q("webrtc")),q("webrtc"));function yl(e){function t(r){let n;try{n=Qe(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:yl(t),partialMatch:t}}function Pt(...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:yl(t),partialMatch:t}}function q(e){let t=e;function r(i){let o;try{o=Qe(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 No=class extends ji{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=>je.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};async function ml({peerConnection:e,stream:t,signal:r,connection:n,log:i}){i.trace("new inbound signaling stream");let o=Bo(t).pb(ae);try{e.onicecandidate=({candidate:f})=>{let l=JSON.stringify(f?.toJSON()??null);i.trace("recipient sending ICE candidate %s",l),o.write({type:ae.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!==ae.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 Ao({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:ae.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 Io(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=Qe(`/webrtc/p2p/${n.remoteAddr.getPeerId()}`);return i.trace("recipient connected to remote address %s",s),{remoteAddress:s}}var Xm="/webrtc",Zm="/p2p-circuit",To="/webrtc-signaling/0.0.1",Qm=30*1e3,Po=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,Au(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(To,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(To),this._started=!1}createListener(t){return new No(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[Qi]=!0;filter(t){return t.filter(Df.exactMatch)}async dial(t,r){this.log.trace("dialing address: %a",t);let n=new In(this.init.rtcConfiguration),i=new Wr(this.components,{peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:o}=await ol({peerConnection:n,multiaddr:t,dataChannelOptions:this.init.dataChannel,signal:r.signal,connectionManager:this.components.connectionManager,transportManager:this.components.transportManager,log:this.log}),s=new Fr(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??Qm),i=new In(this.init.rtcConfiguration),o=new Wr(this.components,{peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await ml({peerConnection:i,connection:t,stream:r,signal:n,log:this.log}),a=new Fr(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 sl(e){let t=e.toString().split(Xm+"/");if(t.length!==2)throw new W("webrtc protocol was not present in multiaddr",fe.ERR_INVALID_MULTIADDR);if(!t[0].includes(Zm))throw new W("p2p-circuit protocol was not present in multiaddr",fe.ERR_INVALID_MULTIADDR);let r=Qe(t[0]),i=Qe("/"+t[1]).getPeerId();if(i==null)throw new W("destination peer id was missing",fe.ERR_INVALID_MULTIADDR);let o=r.protos().pop();if(o===void 0)throw new W("invalid multiaddr",fe.ERR_INVALID_MULTIADDR);return o.name!=="p2p"&&(r=r.encapsulate(`/p2p/${i}`)),{baseAddr:r,peerId:Kr(i)}}function gc(){let e=Ot(),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 gl(){let e=gc(),t=gc();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}function jm(e){return e[Symbol.asyncIterator]!=null}function Jm(...e){let t=[];for(let r of e)jm(r)||t.push(r);return t.length===e.length?function*(){for(let r of t)yield*r}():async function*(){let r=xr({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 xl=Jm;function bl(e,...t){if(e==null)throw new Error("Empty pipeline");if(xc(e)){let n=e;e=()=>n.source}else if(vl(e)||wl(e)){let n=e;e=()=>n}let r=[e,...t];if(r.length>1&&xc(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++)xc(r[n])&&(r[n]=eg(r[n]));return tg(...r)}var tg=(...e)=>{let t;for(;e.length>0;)t=e.shift()(t);return t},wl=e=>e?.[Symbol.asyncIterator]!=null,vl=e=>e?.[Symbol.iterator]!=null,xc=e=>e==null?!1:e.sink!=null&&e.source!=null,eg=e=>t=>{let r=e.sink(t);if(r?.then!=null){let n=xr({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=e.source;if(wl(o))i=async function*(){yield*o,n.end()};else if(vl(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return xl(n,i())}return e.source};var _n=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Je=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));function El(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var Sl=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),rg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!rg)throw new Error("Non little-endian hardware is not supported");function Uo(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Oo(e){if(typeof e=="string")e=Uo(e);else if(El(e))e=e.slice();else throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var ng=e=>Object.prototype.toString.call(e)==="[object Object]"&&e.constructor===Object;function Al(e,t){if(t!==void 0&&(typeof t!="object"||!ng(t)))throw new Error("options must be object or undefined");return Object.assign(e,t)}function Xr(e,t){if(!El(e))throw new Error("Uint8Array expected");if(typeof t=="number"&&e.length!==t)throw new Error(`Uint8Array length ${t} expected`)}function Dl(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 bc=(e,t)=>(Object.assign(t,e),t);function wc(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 Ko(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`wrong positive integer: ${e}`)}function vc(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function ig(e){return e!=null&&typeof e=="object"&&(e instanceof Uint8Array||e.constructor.name==="Uint8Array")}function kn(e,...t){if(!ig(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 Ec(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 Cl(e,t){kn(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Zt=(e,t)=>e[t++]&255|(e[t++]&255)<<8,Sc=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=Oo(t),Xr(t,32);let r=Zt(t,0),n=Zt(t,2),i=Zt(t,4),o=Zt(t,6),s=Zt(t,8),a=Zt(t,10),c=Zt(t,12),u=Zt(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]=Zt(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=Zt(t,r+0),b=Zt(t,r+2),x=Zt(t,r+4),S=Zt(t,r+6),w=Zt(t,r+8),E=Zt(t,r+10),C=Zt(t,r+12),B=Zt(t,r+14),U=o[0]+(g&8191),K=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),I=o[6]+((w>>>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),A=0,P=A+U*a+K*(5*y)+O*(5*p)+F*(5*h)+G*(5*m);A=P>>>13,P&=8191,P+=Q*(5*d)+I*(5*l)+R*(5*f)+_*(5*u)+k*(5*c),A+=P>>>13,P&=8191;let M=A+U*c+K*a+O*(5*y)+F*(5*p)+G*(5*h);A=M>>>13,M&=8191,M+=Q*(5*m)+I*(5*d)+R*(5*l)+_*(5*f)+k*(5*u),A+=M>>>13,M&=8191;let H=A+U*u+K*c+O*a+F*(5*y)+G*(5*p);A=H>>>13,H&=8191,H+=Q*(5*h)+I*(5*m)+R*(5*d)+_*(5*l)+k*(5*f),A+=H>>>13,H&=8191;let Z=A+U*f+K*u+O*c+F*a+G*(5*y);A=Z>>>13,Z&=8191,Z+=Q*(5*p)+I*(5*h)+R*(5*m)+_*(5*d)+k*(5*l),A+=Z>>>13,Z&=8191;let j=A+U*l+K*f+O*u+F*c+G*a;A=j>>>13,j&=8191,j+=Q*(5*y)+I*(5*p)+R*(5*h)+_*(5*m)+k*(5*d),A+=j>>>13,j&=8191;let it=A+U*d+K*l+O*f+F*u+G*c;A=it>>>13,it&=8191,it+=Q*a+I*(5*y)+R*(5*p)+_*(5*h)+k*(5*m),A+=it>>>13,it&=8191;let J=A+U*m+K*d+O*l+F*f+G*u;A=J>>>13,J&=8191,J+=Q*c+I*a+R*(5*y)+_*(5*p)+k*(5*h),A+=J>>>13,J&=8191;let et=A+U*h+K*m+O*d+F*l+G*f;A=et>>>13,et&=8191,et+=Q*u+I*c+R*a+_*(5*y)+k*(5*p),A+=et>>>13,et&=8191;let bt=A+U*p+K*h+O*m+F*d+G*l;A=bt>>>13,bt&=8191,bt+=Q*f+I*u+R*c+_*a+k*(5*y),A+=bt>>>13,bt&=8191;let gt=A+U*y+K*p+O*h+F*m+G*d;A=gt>>>13,gt&=8191,gt+=Q*l+I*f+R*u+_*c+k*a,A+=gt>>>13,gt&=8191,A=(A<<2)+A|0,A=A+P|0,P=A&8191,A=A>>>13,M+=A,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]=bt,o[9]=gt}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){Ec(this);let{buffer:r,blockLen:n}=this;t=Oo(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){Ec(this),Cl(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 og(e){let t=(n,i)=>e(i).update(Oo(n)).digest(),r=e(new Uint8Array(32));return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var Bl=og(e=>new Sc(e));var sg=Uo("expand 16-byte k"),ag=Uo("expand 32-byte k"),cg=Je(sg),ug=Je(ag);function $(e,t){return e<<t|e>>>32-t}function Ac(e){return e.byteOffset%4===0}var Mo=64,fg=16,Tl=2**32-1,Il=new Uint32Array;function lg(e,t,r,n,i,o,s,a){let c=i.length,u=new Uint8Array(Mo),f=Je(u),l=Ac(i)&&Ac(o),d=l?Je(i):Il,m=l?Je(o):Il;for(let h=0;h<c;s++){if(e(t,r,n,f,s,a),s>=Tl)throw new Error("arx: counter overflow");let p=Math.min(Mo,c-h);if(l&&p===Mo){let y=h/4;if(h%4!==0)throw new Error("arx: invalid block position");for(let g=0,b;g<fg;g++)b=y+g,m[b]=d[b]^f[g];h+=Mo;continue}for(let y=0,g;y<p;y++)g=h+y,o[g]=i[g]^u[y];h+=p}}function Dc(e,t){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=Al({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return Ko(i),Ko(s),vc(o),vc(r),(a,c,u,f,l=0)=>{kn(a),kn(c),kn(u);let d=u.length;if(f||(f=new Uint8Array(d)),kn(f),Ko(l),l<0||l>=Tl)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=ug;else if(h===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=cg,m.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${h}`);Ac(c)||(c=c.slice(),m.push(c));let g=Je(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,g,Je(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,m.push(c)}let x=Je(c);for(lg(e,y,g,x,u,f,l,s);m.length>0;)m.pop().fill(0);return f}}function Rl(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],S=r[1],w=r[2],E=s,C=a,B=c,U=u,K=f,O=l,F=d,G=m,Q=h,I=p,R=y,_=g,k=b,A=x,P=S,M=w;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+O|0,A=$(A^C,16),I=I+A|0,O=$(O^I,12),C=C+O|0,A=$(A^C,8),I=I+A|0,O=$(O^I,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),U=U+G|0,M=$(M^U,16),_=_+M|0,G=$(G^_,12),U=U+G|0,M=$(M^U,8),_=_+M|0,G=$(G^_,7),E=E+O|0,M=$(M^E,16),R=R+M|0,O=$(O^R,12),E=E+O|0,M=$(M^E,8),R=R+M|0,O=$(O^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,A=$(A^B,16),Q=Q+A|0,G=$(G^Q,12),B=B+G|0,A=$(A^B,8),Q=Q+A|0,G=$(G^Q,7),U=U+K|0,P=$(P^U,16),I=I+P|0,K=$(K^I,12),U=U+K|0,P=$(P^U,8),I=I+P|0,K=$(K^I,7);let H=0;n[H++]=s+E|0,n[H++]=a+C|0,n[H++]=c+B|0,n[H++]=u+U|0,n[H++]=f+K|0,n[H++]=l+O|0,n[H++]=d+F|0,n[H++]=m+G|0,n[H++]=h+Q|0,n[H++]=p+I|0,n[H++]=y+R|0,n[H++]=g+_|0,n[H++]=b+k|0,n[H++]=x+A|0,n[H++]=S+P|0,n[H++]=w+M|0}function hg(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 w=0;w<20;w+=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 S=0;n[S++]=i,n[S++]=o,n[S++]=s,n[S++]=a,n[S++]=y,n[S++]=g,n[S++]=b,n[S++]=x}var dg=Dc(Rl,{counterRight:!1,counterLength:4,allowShortKeys:!1}),pg=Dc(Rl,{counterRight:!1,counterLength:8,extendNonceFn:hg,allowShortKeys:!1});var yg=new Uint8Array(16),_l=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(yg.subarray(r))},mg=new Uint8Array(32);function kl(e,t,r,n,i){let o=e(t,r,mg),s=Bl.create(o);i&&_l(s,i),_l(s,n);let a=new Uint8Array(16),c=Sl(a);wc(c,0,BigInt(i?i.length:0),!0),wc(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return o.fill(0),u}var Ll=e=>(t,r,n)=>(Xr(t,32),Xr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?Xr(s,c):s=new Uint8Array(c),e(t,r,o,s,1);let u=kl(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?Xr(s,c):s=new Uint8Array(c);let u=o.subarray(0,-16),f=o.subarray(-16),l=kl(e,t,r,u,n);if(!Dl(f,l))throw new Error("invalid tag");return e(t,r,u,s,1),s}}),Cc=bc({blockSize:64,nonceLength:12,tagLength:16},Ll(dg)),JD=bc({blockSize:64,nonceLength:24,tagLength:16},Ll(pg));function Fo(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function gg(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Bc(e,...t){if(!gg(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 xi(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Fo(e.outputLen),Fo(e.blockLen)}function Rn(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 Nl(e,t){Bc(e);let r=t.outputLen;if(e.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Vo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Pl(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var Ho=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),De=(e,t)=>e<<32-t|e>>>t,xg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!xg)throw new Error("Non little-endian hardware is not supported");function Ic(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Sr(e){if(typeof e=="string"&&(e=Ic(e)),!Pl(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function qo(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];if(!Pl(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 Ln=class{clone(){return this._cloneInto()}},iC={}.toString;function zo(e){let t=n=>e().update(Sr(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function Zr(e=32){if(Vo&&typeof Vo.getRandomValues=="function")return Vo.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}function bg(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 Nn=class extends Ln{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=Ho(this.buffer)}update(t){Rn(this);let{view:r,buffer:n,blockLen:i}=this;t=Sr(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=Ho(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){Rn(this),Nl(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;bg(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=Ho(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 Go=BigInt(4294967295),Tc=BigInt(32);function Ul(e,t=!1){return t?{h:Number(e&Go),l:Number(e>>Tc&Go)}:{h:Number(e>>Tc&Go)|0,l:Number(e&Go)|0}}function wg(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}=Ul(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var vg=(e,t)=>BigInt(e>>>0)<<Tc|BigInt(t>>>0),Eg=(e,t,r)=>e>>>r,Sg=(e,t,r)=>e<<32-r|t>>>r,Ag=(e,t,r)=>e>>>r|t<<32-r,Dg=(e,t,r)=>e<<32-r|t>>>r,Cg=(e,t,r)=>e<<64-r|t>>>r-32,Bg=(e,t,r)=>e>>>r-32|t<<64-r,Ig=(e,t)=>t,Tg=(e,t)=>e,_g=(e,t,r)=>e<<r|t>>>32-r,kg=(e,t,r)=>t<<r|e>>>32-r,Rg=(e,t,r)=>t<<r-32|e>>>64-r,Lg=(e,t,r)=>e<<r-32|t>>>64-r;function Ng(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Pg=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),Ug=(e,t,r,n)=>t+r+n+(e/2**32|0)|0,Og=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Kg=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,Mg=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Fg=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;var Vg={fromBig:Ul,split:wg,toBig:vg,shrSH:Eg,shrSL:Sg,rotrSH:Ag,rotrSL:Dg,rotrBH:Cg,rotrBL:Bg,rotr32H:Ig,rotr32L:Tg,rotlSH:_g,rotlSL:kg,rotlBH:Rg,rotlBL:Lg,add:Ng,add3L:Pg,add3H:Ug,add4L:Og,add4H:Kg,add5H:Fg,add5L:Mg},rt=Vg;var[Hg,qg]=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))),Ar=new Uint32Array(80),Dr=new Uint32Array(80),_c=class extends Nn{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)Ar[x]=t.getUint32(r),Dr[x]=t.getUint32(r+=4);for(let x=16;x<80;x++){let S=Ar[x-15]|0,w=Dr[x-15]|0,E=rt.rotrSH(S,w,1)^rt.rotrSH(S,w,8)^rt.shrSH(S,w,7),C=rt.rotrSL(S,w,1)^rt.rotrSL(S,w,8)^rt.shrSL(S,w,7),B=Ar[x-2]|0,U=Dr[x-2]|0,K=rt.rotrSH(B,U,19)^rt.rotrBH(B,U,61)^rt.shrSH(B,U,6),O=rt.rotrSL(B,U,19)^rt.rotrBL(B,U,61)^rt.shrSL(B,U,6),F=rt.add4L(C,O,Dr[x-7],Dr[x-16]),G=rt.add4H(F,E,K,Ar[x-7],Ar[x-16]);Ar[x]=G|0,Dr[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 S=rt.rotrSH(l,d,14)^rt.rotrSH(l,d,18)^rt.rotrBH(l,d,41),w=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,w,C,qg[x],Dr[x]),U=rt.add5H(B,g,S,E,Hg[x],Ar[x]),K=B|0,O=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,U|0,K|0),u=a|0,f=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let I=rt.add3L(K,F,Q);n=rt.add3H(I,U,O,G),i=I|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(){Ar.fill(0),Dr.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 kc=zo(()=>new _c);var $o={};ft($o,{bitGet:()=>Zg,bitLen:()=>Xg,bitMask:()=>bi,bitSet:()=>Qg,bytesToHex:()=>er,bytesToNumberBE:()=>rr,bytesToNumberLE:()=>Be,concatBytes:()=>ir,createHmacDrbg:()=>Nc,ensureBytes:()=>Et,equalBytes:()=>$g,hexToBytes:()=>Qr,hexToNumber:()=>Lc,isBytes:()=>Ce,numberToBytesBE:()=>Cr,numberToBytesLE:()=>nr,numberToHexUnpadded:()=>Fl,numberToVarBytesBE:()=>Wg,utf8ToBytes:()=>Yg,validateObject:()=>pe});var Ml=BigInt(0),Wo=BigInt(1),zg=BigInt(2);function Ce(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var Gg=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function er(e){if(!Ce(e))throw new Error("Uint8Array expected");let t="";for(let r=0;r<e.length;r++)t+=Gg[e[r]];return t}function Fl(e){let t=e.toString(16);return t.length&1?`0${t}`:t}function Lc(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);return BigInt(e===""?"0":`0x${e}`)}var tr={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function Ol(e){if(e>=tr._0&&e<=tr._9)return e-tr._0;if(e>=tr._A&&e<=tr._F)return e-(tr._A-10);if(e>=tr._a&&e<=tr._f)return e-(tr._a-10)}function Qr(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=Ol(e.charCodeAt(o)),a=Ol(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 rr(e){return Lc(er(e))}function Be(e){if(!Ce(e))throw new Error("Uint8Array expected");return Lc(er(Uint8Array.from(e).reverse()))}function Cr(e,t){return Qr(e.toString(16).padStart(t*2,"0"))}function nr(e,t){return Cr(e,t).reverse()}function Wg(e){return Qr(Fl(e))}function Et(e,t,r){let n;if(typeof t=="string")try{n=Qr(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else if(Ce(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 ir(...e){let t=0;for(let i=0;i<e.length;i++){let o=e[i];if(!Ce(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 $g(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 Yg(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function Xg(e){let t;for(t=0;e>Ml;e>>=Wo,t+=1);return t}function Zg(e,t){return e>>BigInt(t)&Wo}var Qg=(e,t,r)=>e|(r?Wo:Ml)<<BigInt(t),bi=e=>(zg<<BigInt(e-1))-Wo,Rc=e=>new Uint8Array(e),Kl=e=>Uint8Array.from(e);function Nc(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=Rc(e),i=Rc(e),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Rc())=>{i=a(Kl([0]),l),n=a(),l.length!==0&&(i=a(Kl([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 ir(...d)};return(l,d)=>{s(),c(l);let m;for(;!(m=d(u()));)c();return s(),m}}var jg={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"||Ce(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 pe(e,t,r={}){let n=(i,o,s)=>{let a=jg[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 qt=BigInt(0),It=BigInt(1),jr=BigInt(2),Jg=BigInt(3),Pc=BigInt(4),Vl=BigInt(5),Hl=BigInt(8),tx=BigInt(9),ex=BigInt(16);function ht(e,t){let r=e%t;return r>=qt?r:t+r}function Uc(e,t,r){if(r<=qt||t<qt)throw new Error("Expected power/modulo > 0");if(r===It)return qt;let n=It;for(;t>qt;)t&It&&(n=n*e%r),e=e*e%r,t>>=It;return n}function St(e,t,r){let n=e;for(;t-- >qt;)n*=n,n%=r;return n}function Yo(e,t){if(e===qt||t<=qt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=ht(e,t),n=t,i=qt,o=It,s=It,a=qt;for(;r!==qt;){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!==It)throw new Error("invert: does not exist");return ht(i,t)}function rx(e){let t=(e-It)/jr,r,n,i;for(r=e-It,n=0;r%jr===qt;r/=jr,n++);for(i=jr;i<e&&Uc(i,t,e)!==e-It;i++);if(n===1){let s=(e+It)/Pc;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+It)/jr;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,It<<BigInt(u-m-1));f=a.sqr(h),l=a.mul(l,h),d=a.mul(d,f),u=m}return l}}function nx(e){if(e%Pc===Jg){let t=(e+It)/Pc;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%Hl===Vl){let t=(e-Vl)/Hl;return function(n,i){let o=n.mul(i,jr),s=n.pow(o,t),a=n.mul(i,s),c=n.mul(n.mul(a,jr),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%ex,rx(e)}var ql=(e,t)=>(ht(e,t)&It)===It,ix=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Oc(e){let t={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=ix.reduce((n,i)=>(n[i]="function",n),t);return pe(e,r)}function ox(e,t,r){if(r<qt)throw new Error("Expected power > 0");if(r===qt)return e.ONE;if(r===It)return t;let n=e.ONE,i=t;for(;r>qt;)r&It&&(n=e.mul(n,i)),i=e.sqr(i),r>>=It;return n}function sx(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 Kc(e,t){let r=t!==void 0?t:e.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function Xo(e,t,r=!1,n={}){if(e<=qt)throw new Error(`Expected Field ORDER > 0, got ${e}`);let{nBitLength:i,nByteLength:o}=Kc(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=nx(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:bi(i),ZERO:qt,ONE:It,create:c=>ht(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return qt<=c&&c<e},is0:c=>c===qt,isOdd:c=>(c&It)===It,neg:c=>ht(-c,e),eql:(c,u)=>c===u,sqr:c=>ht(c*c,e),add:(c,u)=>ht(c+u,e),sub:(c,u)=>ht(c-u,e),mul:(c,u)=>ht(c*u,e),pow:(c,u)=>ox(a,c,u),div:(c,u)=>ht(c*Yo(u,e),e),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>Yo(c,e),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>sx(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>r?nr(c,o):Cr(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?Be(c):rr(c)}});return Object.freeze(a)}function zl(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 Gl(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 Mc(e){let t=Gl(e);return t+Math.ceil(t/2)}function Wl(e,t,r=!1){let n=e.length,i=Gl(t),o=Mc(t);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?rr(e):Be(e),a=ht(s,t-It)+It;return r?nr(a,i):Cr(a,i)}var cx=BigInt(0),Fc=BigInt(1);function Zo(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>cx;)o&Fc&&(s=s.add(a)),a=a.double(),o>>=Fc;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+=Fc);let g=p,b=p+Math.abs(y)-1,x=h%2!==0,S=y<0;y===0?f=f.add(r(x,o[g])):u=u.add(r(S,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 wi(e){return Oc(e.Fp),pe(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Kc(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Ie=BigInt(0),le=BigInt(1),Qo=BigInt(2),ux=BigInt(8),fx={zip215:!0};function lx(e){let t=wi(e);return pe(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...t})}function jo(e){let t=lx(e),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=t,u=Qo<<BigInt(a*8)-le,f=r.create,l=t.uvRatio||((k,A)=>{try{return{isValid:!0,value:r.sqrt(k*r.inv(A))}}catch{return{isValid:!1,value:Ie}}}),d=t.adjustScalarBytes||(k=>k),m=t.domain||((k,A,P)=>{if(A.length||P)throw new Error("Contexts/pre-hash are not supported");return k}),h=k=>typeof k=="bigint"&&Ie<k,p=(k,A)=>h(k)&&h(A)&&k<A,y=k=>k===Ie||p(k,u);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===Ie?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,M,H){if(this.ex=A,this.ey=P,this.ez=M,this.et=H,!y(A))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(A){if(A instanceof w)throw new Error("extended point not allowed");let{x:P,y:M}=A||{};if(!y(P)||!y(M))throw new Error("invalid affine point");return new w(P,M,le,f(P*M))}static normalizeZ(A){let P=r.invertBatch(A.map(M=>M.ez));return A.map((M,H)=>M.toAffine(P[H])).map(w.fromAffine)}_setWindowSize(A){this._WINDOW_SIZE=A,x.delete(this)}assertValidity(){let{a:A,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),bt=f(et*et),gt=f(it*A),$t=f(et*f(gt+J)),Yt=f(bt+f(P*f(it*J)));if($t!==Yt)throw new Error("bad point: equation left != right (1)");let Mt=f(M*H),jt=f(Z*j);if(Mt!==jt)throw new Error("bad point: equation left != right (2)")}equals(A){S(A);let{ex:P,ey:M,ez:H}=this,{ex:Z,ey:j,ez:it}=A,J=f(P*it),et=f(Z*H),bt=f(M*it),gt=f(j*H);return J===et&&bt===gt}is0(){return this.equals(w.ZERO)}negate(){return new w(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:A}=t,{ex:P,ey:M,ez:H}=this,Z=f(P*P),j=f(M*M),it=f(Qo*f(H*H)),J=f(A*Z),et=P+M,bt=f(f(et*et)-Z-j),gt=J+j,$t=gt-it,Yt=J-j,Mt=f(bt*$t),jt=f(gt*Yt),$e=f(bt*Yt),Pr=f($t*gt);return new w(Mt,jt,Pr,$e)}add(A){S(A);let{a:P,d:M}=t,{ex:H,ey:Z,ez:j,et:it}=this,{ex:J,ey:et,ez:bt,et:gt}=A;if(P===BigInt(-1)){let du=f((Z-H)*(et+J)),pu=f((Z+H)*(et-J)),Vs=f(pu-du);if(Vs===Ie)return this.double();let yu=f(j*Qo*gt),mu=f(it*Qo*bt),gu=mu+yu,xu=pu+du,bu=mu-yu,r2=f(gu*Vs),n2=f(xu*bu),i2=f(gu*bu),o2=f(Vs*xu);return new w(r2,n2,o2,i2)}let $t=f(H*J),Yt=f(Z*et),Mt=f(it*M*gt),jt=f(j*bt),$e=f((H+Z)*(J+et)-$t-Yt),Pr=jt-Mt,ri=jt+Mt,hu=f(Yt-P*$t),j1=f($e*Pr),J1=f(ri*hu),t2=f($e*hu),e2=f(Pr*ri);return new w(j1,J1,e2,t2)}subtract(A){return this.add(A.negate())}wNAF(A){return B.wNAFCached(this,x,A,w.normalizeZ)}multiply(A){let{p:P,f:M}=this.wNAF(g(A,n));return w.normalizeZ([P,M])[0]}multiplyUnsafe(A){let P=b(A);return P===Ie?C:this.equals(C)||P===le?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:M,ez:H}=this,Z=this.is0();A==null&&(A=Z?ux:r.inv(H));let j=f(P*A),it=f(M*A),J=f(H*A);if(Z)return{x:Ie,y:le};if(J!==le)throw new Error("invZ was invalid");return{x:j,y:it}}clearCofactor(){let{h:A}=t;return A===le?this:this.multiplyUnsafe(A)}static fromHex(A,P=!1){let{d:M,a:H}=t,Z=r.BYTES;A=Et("pointHex",A,Z);let j=A.slice(),it=A[Z-1];j[Z-1]=it&-129;let J=Be(j);J===Ie||(P?g(J,u):g(J,r.ORDER));let et=f(J*J),bt=f(et-le),gt=f(M*et-H),{isValid:$t,value:Yt}=l(bt,gt);if(!$t)throw new Error("Point.fromHex: invalid y coordinate");let Mt=(Yt&le)===le,jt=(it&128)!==0;if(!P&&Yt===Ie&&jt)throw new Error("Point.fromHex: x=0 and x_0=1");return jt!==Mt&&(Yt=f(-Yt)),w.fromAffine({x:Yt,y:J})}static fromPrivateKey(A){return O(A).point}toRawBytes(){let{x:A,y:P}=this.toAffine(),M=nr(P,r.BYTES);return M[M.length-1]|=A&le?128:0,M}toHex(){return er(this.toRawBytes())}}w.BASE=new w(t.Gx,t.Gy,le,f(t.Gx*t.Gy)),w.ZERO=new w(Ie,le,le,Ie);let{BASE:E,ZERO:C}=w,B=Zo(w,a*8);function U(k){return ht(k,n)}function K(k){return U(Be(k))}function O(k){let A=a;k=Et("private key",k,A);let P=Et("hashed private key",o(k),2*A),M=d(P.slice(0,A)),H=P.slice(A,2*A),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 O(k).pointBytes}function G(k=new Uint8Array,...A){let P=ir(...A);return K(o(m(P,Et("context",k),!!i)))}function Q(k,A,P={}){k=Et("message",k),i&&(k=i(k));let{prefix:M,scalar:H,pointBytes:Z}=O(A),j=G(P.context,M,k),it=E.multiply(j).toRawBytes(),J=G(P.context,it,Z,k),et=U(j+J*H);b(et);let bt=ir(it,nr(et,r.BYTES));return Et("result",bt,a*2)}let I=fx;function R(k,A,P,M=I){let{context:H,zip215:Z}=M,j=r.BYTES;k=Et("signature",k,2*j),A=Et("message",A),i&&(A=i(A));let it=Be(k.slice(j,2*j)),J,et,bt;try{J=w.fromHex(P,Z),et=w.fromHex(k.slice(0,j),Z),bt=E.multiplyUnsafe(it)}catch{return!1}if(!Z&&J.isSmallOrder())return!1;let gt=G(H,et.toRawBytes(),J.toRawBytes(),A);return et.add(J.multiplyUnsafe(gt)).subtract(bt).clearCofactor().equals(w.ZERO)}return E._setWindowSize(8),{CURVE:t,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 vi=BigInt(0),Vc=BigInt(1);function hx(e){return pe(e,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...e})}function $l(e){let t=hx(e),{P:r}=t,n=x=>ht(x,r),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(x=>x),c=t.powPminus2||(x=>Uc(x,r-BigInt(2),r));function u(x,S,w){let E=n(x*(S-w));return S=n(S-E),w=n(w+E),[S,w]}function f(x){if(typeof x=="bigint"&&vi<=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,S){let w=f(x),E=f(S),C=w,B=Vc,U=vi,K=w,O=Vc,F=vi,G;for(let I=BigInt(i-1);I>=vi;I--){let R=E>>I&Vc;F^=R,G=u(F,B,K),B=G[0],K=G[1],G=u(F,U,O),U=G[0],O=G[1],F=R;let _=B+U,k=n(_*_),A=B-U,P=n(A*A),M=k-P,H=K+O,Z=K-O,j=n(Z*_),it=n(H*A),J=j+it,et=j-it;K=n(J*J),O=n(C*n(et*et)),B=n(k*P),U=n(M*(k+n(l*M)))}G=u(F,B,K),B=G[0],K=G[1],G=u(F,U,O),U=G[0],O=G[1];let Q=c(U);return n(B*Q)}function m(x){return nr(n(x),o)}function h(x){let S=Et("u coordinate",x,o);return s===32&&(S[31]&=127),Be(S)}function p(x){let S=Et("scalar",x),w=S.length;if(w!==o&&w!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${w}`);return Be(a(S))}function y(x,S){let w=h(S),E=p(x),C=d(w,E);if(C===vi)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,S)=>y(x,S),getPublicKey:x=>b(x),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:g}}var Ei=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),Yl=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),_C=BigInt(0),dx=BigInt(1),Hc=BigInt(2),px=BigInt(5),Xl=BigInt(10),yx=BigInt(20),mx=BigInt(40),Zl=BigInt(80);function Ql(e){let t=Ei,n=e*e%t*e%t,i=St(n,Hc,t)*n%t,o=St(i,dx,t)*e%t,s=St(o,px,t)*o%t,a=St(s,Xl,t)*s%t,c=St(a,yx,t)*a%t,u=St(c,mx,t)*c%t,f=St(u,Zl,t)*u%t,l=St(f,Zl,t)*u%t,d=St(l,Xl,t)*s%t;return{pow_p_5_8:St(d,Hc,t)*e%t,b2:n}}function jl(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function gx(e,t){let r=Ei,n=ht(t*t*t,r),i=ht(n*n*t,r),o=Ql(e*i).pow_p_5_8,s=ht(e*n*o,r),a=ht(t*s*s,r),c=s,u=ht(s*Yl,r),f=a===e,l=a===ht(-e,r),d=a===ht(-e*Yl,r);return f&&(s=c),(l||d)&&(s=u),ql(s,r)&&(s=ht(-s,r)),{isValid:f||l,value:s}}var or=Xo(Ei,void 0,!0),qc={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:or,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:kc,randomBytes:Zr,adjustScalarBytes:jl,uvRatio:gx},Pn=jo(qc);function Jl(e,t,r){if(t.length>255)throw new Error("Context is too big");return qo(Ic("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}var kC=jo({...qc,domain:Jl}),RC=jo({...qc,domain:Jl,prehash:kc}),Si=$l({P:Ei,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{let t=Ei,{pow_p_5_8:r,b2:n}=Ql(e);return ht(St(r,BigInt(3),t)*n,t)},adjustScalarBytes:jl,randomBytes:Zr});var xx=(or.ORDER+BigInt(3))/BigInt(8),LC=or.pow(Hc,xx),NC=or.sqrt(or.neg(or.ONE)),PC=(or.ORDER-BigInt(5))/BigInt(8),UC=BigInt(486662);var OC=zl(or,or.neg(BigInt(486664)));var KC=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),MC=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),FC=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),VC=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var HC=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Jo=class extends Ln{constructor(t,r){super(),this.finished=!1,this.destroyed=!1,xi(t);let n=Sr(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 Rn(this),this.iHash.update(t),this}digestInto(t){Rn(this),Bc(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()}},Un=(e,t,r)=>new Jo(e,t).update(r).digest();Un.create=(e,t)=>new Jo(e,t);function eh(e,t,r){return xi(e),r===void 0&&(r=new Uint8Array(e.outputLen)),Un(e,Sr(r),Sr(t))}var zc=new Uint8Array([0]),th=new Uint8Array;function rh(e,t,r,n=32){if(xi(e),Fo(n),n>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/e.outputLen);r===void 0&&(r=th);let o=new Uint8Array(i*e.outputLen),s=Un.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let u=0;u<i;u++)zc[0]=u+1,a.update(u===0?th:c).update(r).update(zc).digestInto(c),o.set(c,e.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),zc.fill(0),o.slice(0,n)}var bx=(e,t,r)=>e&t^~e&r,wx=(e,t,r)=>e&t^e&r^t&r,vx=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]),Br=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ir=new Uint32Array(64),Gc=class extends Nn{constructor(){super(64,32,8,!1),this.A=Br[0]|0,this.B=Br[1]|0,this.C=Br[2]|0,this.D=Br[3]|0,this.E=Br[4]|0,this.F=Br[5]|0,this.G=Br[6]|0,this.H=Br[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)Ir[l]=t.getUint32(r,!1);for(let l=16;l<64;l++){let d=Ir[l-15],m=Ir[l-2],h=De(d,7)^De(d,18)^d>>>3,p=De(m,17)^De(m,19)^m>>>10;Ir[l]=p+Ir[l-7]+h+Ir[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=De(a,6)^De(a,11)^De(a,25),m=f+d+bx(a,c,u)+vx[l]+Ir[l]|0,p=(De(n,2)^De(n,13)^De(n,22))+wx(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(){Ir.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var On=zo(()=>new Gc);var Wc={hashSHA256(e){return On(e.subarray())},getHKDF(e,t){let r=eh(On,t,e),i=rh(On,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=Si.utils.randomPrivateKey();return{publicKey:Si.getPublicKey(e),privateKey:e}},generateX25519KeyPairFromSeed(e){return{publicKey:Si.getPublicKey(e),privateKey:e}},generateX25519SharedKey(e,t){return Si.getSharedSecret(e.subarray(),t.subarray())},chaCha20Poly1305Encrypt(e,t,r,n){return Cc(n,t,r).encrypt(e.subarray())},chaCha20Poly1305Decrypt(e,t,r,n,i){return Cc(n,t,r).decrypt(e.subarray(),i)}};var nh=Wc;var Kn=e=>{let t=Vt(2);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint16(0,e,!1),t};Kn.bytes=2;var Ai=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)};Ai.bytes=2;function ih(e){return new Bt(e.ne,e.ciphertext)}function oh(e){return new Bt(e.ne,e.ns,e.ciphertext)}function sh(e){return new Bt(e.ns,e.ciphertext)}function ah(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:ot(0)}}function ch(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 uh(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:ot(0),ns:e.subarray(0,48),ciphertext:e.subarray(48,e.length)}}var lh=16;function hh(e,t){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s;n instanceof Uint8Array?s=e.encrypt(n.subarray(i,o),e.session):s=e.encrypt(n.sublist(i,o),e.session),t?.encryptedPackets.increment(),yield new Bt(Kn(s.byteLength),s)}}}function dh(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-lh<i)throw new Error("Invalid chunk");let s=n.sublist(i,o),a=n.subarray(i,o-lh),{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 Ci=class e extends Error{code;constructor(t="Unexpected Peer"){super(t),this.code=e.code}static code="ERR_UNEXPECTED_PEER"},Jr=class e extends Error{code;constructor(t="Invalid crypto exchange"){super(t),this.code=e.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var _T=Jt(_i(),1),kT=Jt(Td(),1);var Ev=Jt(xt(),1);var x0={};ft(x0,{Ed25519PrivateKey:()=>sn,Ed25519PublicKey:()=>Li,generateKeyPair:()=>Xw,generateKeyPairFromSeed:()=>Kd,unmarshalEd25519PrivateKey:()=>$w,unmarshalEd25519PublicKey:()=>Yw});var FB=Jt(Kt(),1),VB=Jt(ps(),1),_d=Jt(xt(),1);function ke(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=Ct([new Uint8Array(t-r.length),r])}return at(r,"base64url")}function he(e){let t=kd(e);return new _d.default.jsbn.BigInteger(at(t,"base16"),16)}function kd(e,t){let r=wt(e,"base64urlpad");if(t!=null){if(r.length>t)throw new Error("byte array longer than desired length");r=Ct([new Uint8Array(t-r.length),r])}return r}function ge(e){return e==null?!1:typeof e.then=="function"&&typeof e.catch=="function"&&typeof e.finally=="function"}var qn=32,ur=64,xs=32;function Rd(){let e=Pn.utils.randomPrivateKey(),t=Pn.getPublicKey(e);return{privateKey:Ud(e,t),publicKey:t}}function Ld(e){if(e.length!==xs)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=Pn.getPublicKey(t);return{privateKey:Ud(t,r),publicKey:r}}function Nd(e,t){let r=e.subarray(0,xs);return Pn.sign(t instanceof Uint8Array?t:t.subarray(),r)}function Pd(e,t,r){return Pn.verify(t,r instanceof Uint8Array?r:r.subarray(),e)}function Ud(e,t){let r=new Uint8Array(ur);for(let n=0;n<xs;n++)r[n]=e[n],r[xs+n]=t[n];return r}var ue={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 y0={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function m0(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=ue.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=wt(d));let y;if(d.length===0){y=await a.subtle.importKey("jwk",y0,{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",y0,{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 Ct([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=wt(d));let g;if(d.length===0)try{let x={name:"PBKDF2",salt:m,iterations:s,hash:{name:i}},S=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,S,{name:t,length:r},!0,["decrypt"])}catch{g=await a.subtle.importKey("jwk",y0,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:m,iterations:s,hash:{name:i}},S=await a.subtle.importKey("raw",d,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,S,{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 zn(e,t){let n=await m0().encrypt(e,t);return Ji.encode(n)}var _t;(function(e){e.RSA="RSA",e.Ed25519="Ed25519",e.Secp256k1="Secp256k1"})(_t||(_t={}));var g0;(function(e){e[e.RSA=0]="RSA",e[e.Ed25519=1]="Ed25519",e[e.Secp256k1=2]="Secp256k1"})(g0||(g0={}));(function(e){e.codec=()=>Gr(g0)})(_t||(_t={}));var ze;(function(e){let t;e.codec=()=>(t==null&&(t=Ae((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),_t.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=_t.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Se(r,e.codec()),e.decode=r=>Ee(r,e.codec())})(ze||(ze={}));var Ge;(function(e){let t;e.codec=()=>(t==null&&(t=Ae((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),_t.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=_t.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),t),e.encode=r=>Se(r,e.codec()),e.decode=r=>Ee(r,e.codec())})(Ge||(Ge={}));var Li=class{_key;constructor(t){this._key=Gn(t,qn)}verify(t,r){return Pd(this._key,r,t)}marshal(){return this._key}get bytes(){return ze.encode({Type:_t.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ut(this.bytes,t.bytes)}hash(){let t=Xt.digest(this.bytes);return ge(t)?t.then(({bytes:r})=>r):t.bytes}},sn=class{_key;_publicKey;constructor(t,r){this._key=Gn(t,ur),this._publicKey=Gn(r,qn)}sign(t){return Nd(this._key,t)}get public(){return new Li(this._publicKey)}marshal(){return this._key}get bytes(){return Ge.encode({Type:_t.Ed25519,Data:this.marshal()}).subarray()}equals(t){return Ut(this.bytes,t.bytes)}async hash(){let t=Xt.digest(this.bytes),r;return ge(t)?{bytes:r}=await t:r=t.bytes,r}async id(){let t=yr.digest(this.public.bytes);return Ft.encode(t.bytes).substring(1)}async export(t,r="libp2p-key"){if(r==="libp2p-key")return zn(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function $w(e){if(e.length>ur){e=Gn(e,ur+qn);let n=e.subarray(0,ur),i=e.subarray(ur,e.length);return new sn(n,i)}e=Gn(e,ur);let t=e.subarray(0,ur),r=e.subarray(qn);return new sn(t,r)}function Yw(e){return e=Gn(e,qn),new Li(e)}async function Xw(){let{privateKey:e,publicKey:t}=Rd();return new sn(e,t)}async function Kd(e){let{privateKey:t,publicKey:r}=Ld(e);return new sn(t,r)}function Gn(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 Zw={"P-256":256,"P-384":384,"P-521":521},Qw=Object.keys(Zw),dI=Qw.join(" / ");var S0={};ft(S0,{MAX_KEY_SIZE:()=>Oi,RsaPrivateKey:()=>Wn,RsaPublicKey:()=>Ui,fromJwk:()=>cv,generateKeyPair:()=>uv,unmarshalRsaPrivateKey:()=>sv,unmarshalRsaPublicKey:()=>av});var Pi=Jt(xt(),1);var QI=Jt(qd(),1);function ws(e){if(isNaN(e)||e<=0)throw new W("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Zr(e)}var LI=Jt(gs(),1),v0=Jt(xt(),1);function zd(e,t){return t.map(r=>he(e[r]))}function Gd(e){return v0.default.pki.setRsaPrivateKey(...zd(e,["n","e","d","p","q","dp","dq","qi"]))}function Wd(e){return v0.default.pki.setRsaPublicKey(...zd(e,["n","e"]))}var cn={};ft(cn,{jwkToPkcs1:()=>ev,jwkToPkix:()=>nv,pkcs1ToJwk:()=>tv,pkixToJwk:()=>rv});var UI=Jt(_i(),1),OI=Jt(gs(),1);var fr=Jt(xt(),1);function tv(e){let t=fr.default.asn1.fromDer(at(e,"ascii")),r=fr.default.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:ke(r.n),e:ke(r.e),d:ke(r.d),p:ke(r.p),q:ke(r.q),dp:ke(r.dP),dq:ke(r.dQ),qi:ke(r.qInv),alg:"RS256"}}function ev(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=fr.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 wt(fr.default.asn1.toDer(t).getBytes(),"ascii")}function rv(e){let t=fr.default.asn1.fromDer(at(e,"ascii")),r=fr.default.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:ke(r.n),e:ke(r.e)}}function nv(e){if(e.n==null||e.e==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let t=fr.default.pki.publicKeyToAsn1({n:he(e.n),e:he(e.e)});return wt(fr.default.asn1.toDer(t).getBytes(),"ascii")}async function $d(e){let t=await ue.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 Zd(t);return{privateKey:r[0],publicKey:r[1]}}async function E0(e){let r=[await ue.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await iv(e)],n=await Zd({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function Yd(e,t){let r=await ue.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ue.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,t instanceof Uint8Array?t:t.subarray());return new Uint8Array(n,0,n.byteLength)}async function Xd(e,t,r){let n=await ue.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ue.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,t,r instanceof Uint8Array?r:r.subarray())}async function Zd(e){if(e.privateKey==null||e.publicKey==null)throw new W("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ue.get().subtle.exportKey("jwk",e.privateKey),ue.get().subtle.exportKey("jwk",e.publicKey)])}async function iv(e){return ue.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 Qd(e,t,r,n){let i=t?Wd(e):Gd(e),o=at(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return wt(s,"ascii")}function jd(e,t){return Qd(e,!0,t,(r,n)=>n.encrypt(r))}function Jd(e,t){return Qd(e,!1,t,(r,n)=>n.decrypt(r))}function vs(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 wt(e.n,"base64url").length*8}var Oi=8192,Ui=class{_key;constructor(t){this._key=t}verify(t,r){return Xd(this._key,r,t)}marshal(){return cn.jwkToPkix(this._key)}get bytes(){return ze.encode({Type:_t.RSA,Data:this.marshal()}).subarray()}encrypt(t){return jd(this._key,t)}equals(t){return Ut(this.bytes,t.bytes)}hash(){let t=Xt.digest(this.bytes);return ge(t)?t.then(({bytes:r})=>r):t.bytes}},Wn=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r}genSecret(){return ws(16)}sign(t){return Yd(this._key,t)}get public(){if(this._publicKey==null)throw new W("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Ui(this._publicKey)}decrypt(t){return Jd(this._key,t)}marshal(){return cn.jwkToPkcs1(this._key)}get bytes(){return Ge.encode({Type:_t.RSA,Data:this.marshal()}).subarray()}equals(t){return Ut(this.bytes,t.bytes)}hash(){let t=Xt.digest(this.bytes);return ge(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return at(t,"base58btc")}async export(t,r="pkcs-8"){if(r==="pkcs-8"){let n=new Pi.default.util.ByteBuffer(this.marshal()),i=Pi.default.asn1.fromDer(n),o=Pi.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Pi.default.pki.encryptRsaPrivateKey(o,t,s)}else{if(r==="libp2p-key")return zn(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function sv(e){let t=cn.pkcs1ToJwk(e);if(vs(t)>Oi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await E0(t);return new Wn(r.privateKey,r.publicKey)}function av(e){let t=cn.pkixToJwk(e);if(vs(t)>Oi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Ui(t)}async function cv(e){if(vs(e)>Oi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await E0(e);return new Wn(t.privateKey,t.publicKey)}async function uv(e){if(e>Oi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await $d(e);return new Wn(t.privateKey,t.publicKey)}var B0={};ft(B0,{Secp256k1PrivateKey:()=>Mi,Secp256k1PublicKey:()=>Ki,generateKeyPair:()=>vv,unmarshalSecp256k1PrivateKey:()=>bv,unmarshalSecp256k1PublicKey:()=>wv});function fv(e){let t=wi(e);pe(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:lv,hexToBytes:hv}=$o,un={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){let{Err:t}=un;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:lv(n),l:e.subarray(r+2)}},toSig(e){let{Err:t}=un,r=typeof e=="string"?hv(e):e;if(!Ce(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}=un._parseInt(r.subarray(2)),{d:s,l:a}=un._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}`}},lr=BigInt(0),xe=BigInt(1),iT=BigInt(2),tp=BigInt(3),oT=BigInt(4);function dv(e){let t=fv(e),{Fp:r}=t,n=t.toBytes||((h,p,y)=>{let g=p.toAffine();return ir(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"&&lr<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(Ce(h)&&(h=er(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:rr(Et("private key",h,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof h}`)}return g&&(x=ht(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(Et("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:S,pz:w}=p,E=r.eql(r.mul(y,w),r.mul(x,b)),C=r.eql(r.mul(g,w),r.mul(S,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,tp),{px:b,py:x,pz:S}=this,w=r.ZERO,E=r.ZERO,C=r.ZERO,B=r.mul(b,b),U=r.mul(x,x),K=r.mul(S,S),O=r.mul(b,x);return O=r.add(O,O),C=r.mul(b,S),C=r.add(C,C),w=r.mul(p,C),E=r.mul(g,K),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),C=r.mul(g,C),K=r.mul(p,K),O=r.sub(B,K),O=r.mul(p,O),O=r.add(O,C),C=r.add(B,B),B=r.add(C,B),B=r.add(B,K),B=r.mul(B,O),E=r.add(E,B),K=r.mul(x,S),K=r.add(K,K),B=r.mul(K,O),w=r.sub(w,B),C=r.mul(K,U),C=r.add(C,C),C=r.add(C,C),new l(w,E,C)}add(p){f(p);let{px:y,py:g,pz:b}=this,{px:x,py:S,pz:w}=p,E=r.ZERO,C=r.ZERO,B=r.ZERO,U=t.a,K=r.mul(t.b,tp),O=r.mul(y,x),F=r.mul(g,S),G=r.mul(b,w),Q=r.add(y,g),I=r.add(x,S);Q=r.mul(Q,I),I=r.add(O,F),Q=r.sub(Q,I),I=r.add(y,b);let R=r.add(x,w);return I=r.mul(I,R),R=r.add(O,G),I=r.sub(I,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,I),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(O,O),F=r.add(F,O),G=r.mul(U,G),I=r.mul(K,I),F=r.add(F,G),G=r.sub(O,G),G=r.mul(U,G),I=r.add(I,G),O=r.mul(F,I),C=r.add(C,O),O=r.mul(R,I),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,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===lr)return y;if(a(p),p===xe)return this;let{endo:g}=t;if(!g)return m.unsafeLadder(this,p);let{k1neg:b,k1:x,k2neg:S,k2:w}=g.splitScalar(p),E=y,C=y,B=this;for(;x>lr||w>lr;)x&xe&&(E=E.add(B)),w&xe&&(C=C.add(B)),B=B.double(),x>>=xe,w>>=xe;return b&&(E=E.negate()),S&&(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:S,k1:w,k2neg:E,k2:C}=x.splitScalar(y),{p:B,f:U}=this.wNAF(w),{p:K,f:O}=this.wNAF(C);B=m.constTimeNegate(S,B),K=m.constTimeNegate(E,K),K=new l(r.mul(K.px,x.beta),K.py,K.pz),g=B.add(K),b=U.add(O)}else{let{p:S,f:w}=this.wNAF(y);g=S,b=w}return l.normalizeZ([g,b])[0]}multiplyAndAddUnsafe(p,y,g){let b=l.BASE,x=(w,E)=>E===lr||E===xe||!w.equals(b)?w.multiplyUnsafe(E):w.multiply(E),S=x(this,y).add(x(p,g));return S.is0()?void 0:S}toAffine(p){let{px:y,py:g,pz:b}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(b));let S=r.mul(y,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:y}=t;if(p===xe)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===xe?this:y?y(l,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return er(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=Zo(l,t.endo?Math.ceil(d/2):d);return{CURVE:t,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function pv(e){let t=wi(e);return pe(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function ep(e){let t=pv(e),{Fp:r,n}=t,i=r.BYTES+1,o=2*r.BYTES+1;function s(I){return lr<I&&I<r.ORDER}function a(I){return ht(I,n)}function c(I){return Yo(I,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:d}=dv({...t,toBytes(I,R,_){let k=R.toAffine(),A=r.toBytes(k.x),P=ir;return _?P(Uint8Array.from([R.hasEvenY()?2:3]),A):P(Uint8Array.from([4]),A,r.toBytes(k.y))},fromBytes(I){let R=I.length,_=I[0],k=I.subarray(1);if(R===i&&(_===2||_===3)){let A=rr(k);if(!s(A))throw new Error("Point is not on curve");let P=l(A),M=r.sqrt(P),H=(M&xe)===xe;return(_&1)===1!==H&&(M=r.neg(M)),{x:A,y:M}}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`)}}),m=I=>er(Cr(I,t.nByteLength));function h(I){let R=n>>xe;return I>R}function p(I){return h(I)?a(-I):I}let y=(I,R,_)=>rr(I.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=Et("compactSignature",R,_*2),new g(y(R,0,_),y(R,_,2*_))}static fromDER(R){let{r:_,s:k}=un.toSig(Et("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=C(Et("msgHash",R));if(A==null||![0,1,2,3].includes(A))throw new Error("recovery id invalid");let M=A===2||A===3?_+t.n:_;if(M>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let H=A&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 Qr(this.toDERHex())}toDERHex(){return un.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Qr(this.toCompactHex())}toCompactHex(){return m(this.r)+m(this.s)}}let b={isValidPrivateKey(I){try{return f(I),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let I=Mc(t.n);return Wl(t.randomBytes(I),t.n)},precompute(I=8,R=u.BASE){return R._setWindowSize(I),R.multiply(BigInt(3)),R}};function x(I,R=!0){return u.fromPrivateKey(I).toRawBytes(R)}function S(I){let R=Ce(I),_=typeof I=="string",k=(R||_)&&I.length;return R?k===i||k===o:_?k===2*i||k===2*o:I instanceof u}function w(I,R,_=!0){if(S(I))throw new Error("first arg must be private key");if(!S(R))throw new Error("second arg must be public key");return u.fromHex(R).multiply(f(I)).toRawBytes(_)}let E=t.bits2int||function(I){let R=rr(I),_=I.length*8-t.nBitLength;return _>0?R>>BigInt(_):R},C=t.bits2int_modN||function(I){return a(E(I))},B=bi(t.nBitLength);function U(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(lr<=I&&I<B))throw new Error(`bigint expected < 2^${t.nBitLength}`);return Cr(I,t.nByteLength)}function K(I,R,_=O){if(["recovered","canonical"].some(gt=>gt in _))throw new Error("sign() legacy options not supported");let{hash:k,randomBytes:A}=t,{lowS:P,prehash:M,extraEntropy:H}=_;P==null&&(P=!0),I=Et("msgHash",I),M&&(I=Et("prehashed msgHash",k(I)));let Z=C(I),j=f(R),it=[U(j),U(Z)];if(H!=null){let gt=H===!0?A(r.BYTES):H;it.push(Et("extraEntropy",gt))}let J=ir(...it),et=Z;function bt(gt){let $t=E(gt);if(!d($t))return;let Yt=c($t),Mt=u.BASE.multiply($t).toAffine(),jt=a(Mt.x);if(jt===lr)return;let $e=a(Yt*a(et+jt*j));if($e===lr)return;let Pr=(Mt.x===jt?0:2)|Number(Mt.y&xe),ri=$e;return P&&h($e)&&(ri=p($e),Pr^=1),new g(jt,ri,Pr)}return{seed:J,k2sig:bt}}let O={lowS:t.lowS,prehash:!1},F={lowS:t.lowS,prehash:!1};function G(I,R,_=O){let{seed:k,k2sig:A}=K(I,R,_),P=t;return Nc(P.hash.outputLen,P.nByteLength,P.hmac)(k,A)}u.BASE._setWindowSize(8);function Q(I,R,_,k=F){let A=I;if(R=Et("msgHash",R),_=Et("publicKey",_),"strict"in k)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:M}=k,H,Z;try{if(typeof A=="string"||Ce(A))try{H=g.fromDER(A)}catch(Mt){if(!(Mt instanceof un.Err))throw Mt;H=g.fromCompact(A)}else if(typeof A=="object"&&typeof A.r=="bigint"&&typeof A.s=="bigint"){let{r:Mt,s:jt}=A;H=new g(Mt,jt)}else throw new Error("PARSE");Z=u.fromHex(_)}catch(Mt){if(Mt.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),bt=a(J*et),gt=a(j*et),$t=u.BASE.multiplyAndAddUnsafe(Z,bt,gt)?.toAffine();return $t?a($t.x)===j:!1}return{CURVE:t,getPublicKey:x,getSharedSecret:w,sign:G,verify:Q,ProjectivePoint:u,Signature:g,utils:b}}function yv(e){return{hash:e,hmac:(t,...r)=>Un(e,t,qo(...r)),randomBytes:Zr}}function rp(e,t){let r=n=>ep({...e,...yv(n)});return Object.freeze({...r(t),create:r})}var op=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),np=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),mv=BigInt(1),A0=BigInt(2),ip=(e,t)=>(e+t/A0)/t;function gv(e){let t=op,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=St(f,r,t)*f%t,d=St(l,r,t)*f%t,m=St(d,A0,t)*u%t,h=St(m,i,t)*m%t,p=St(h,o,t)*h%t,y=St(p,a,t)*p%t,g=St(y,c,t)*y%t,b=St(g,a,t)*p%t,x=St(b,r,t)*f%t,S=St(x,s,t)*h%t,w=St(S,n,t)*u%t,E=St(w,A0,t);if(!D0.eql(D0.sqr(E),e))throw new Error("Cannot find square root");return E}var D0=Xo(op,void 0,void 0,{sqrt:gv}),Re=rp({a:BigInt(0),b:BigInt(7),Fp:D0,n:np,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=np,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-mv*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=ip(o*e,t),c=ip(-n*e,t),u=ht(e-a*r-c*i,t),f=ht(-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}}}},On),pT=BigInt(0);var yT=Re.ProjectivePoint;function sp(){return Re.utils.randomPrivateKey()}function ap(e,t){let r=Xt.digest(t instanceof Uint8Array?t:t.subarray());if(ge(r))return r.then(({digest:n})=>Re.sign(n,e).toDERRawBytes()).catch(n=>{throw new W(String(n),"ERR_INVALID_INPUT")});try{return Re.sign(r.digest,e).toDERRawBytes()}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}function cp(e,t,r){let n=Xt.digest(r instanceof Uint8Array?r:r.subarray());if(ge(n))return n.then(({digest:i})=>Re.verify(t,i,e)).catch(i=>{throw new W(String(i),"ERR_INVALID_INPUT")});try{return Re.verify(t,n.digest,e)}catch(i){throw new W(String(i),"ERR_INVALID_INPUT")}}function up(e){return Re.ProjectivePoint.fromHex(e).toRawBytes(!0)}function fp(e){try{Re.getPublicKey(e,!0)}catch(t){throw new W(String(t),"ERR_INVALID_PRIVATE_KEY")}}function C0(e){try{Re.ProjectivePoint.fromHex(e)}catch(t){throw new W(String(t),"ERR_INVALID_PUBLIC_KEY")}}function lp(e){try{return Re.getPublicKey(e,!0)}catch(t){throw new W(String(t),"ERR_INVALID_PRIVATE_KEY")}}var Ki=class{_key;constructor(t){C0(t),this._key=t}verify(t,r){return cp(this._key,r,t)}marshal(){return up(this._key)}get bytes(){return ze.encode({Type:_t.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ut(this.bytes,t.bytes)}async hash(){let t=Xt.digest(this.bytes),r;return ge(t)?{bytes:r}=await t:r=t.bytes,r}},Mi=class{_key;_publicKey;constructor(t,r){this._key=t,this._publicKey=r??lp(t),fp(this._key),C0(this._publicKey)}sign(t){return ap(this._key,t)}get public(){return new Ki(this._publicKey)}marshal(){return this._key}get bytes(){return Ge.encode({Type:_t.Secp256k1,Data:this.marshal()}).subarray()}equals(t){return Ut(this.bytes,t.bytes)}hash(){let t=Xt.digest(this.bytes);return ge(t)?t.then(({bytes:r})=>r):t.bytes}async id(){let t=await this.public.hash();return at(t,"base58btc")}async export(t,r="libp2p-key"){if(r==="libp2p-key")return zn(this.bytes,t);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function bv(e){return new Mi(e)}function wv(e){return new Ki(e)}async function vv(){let e=sp();return new Mi(e)}var fn={rsa:S0,ed25519:x0,secp256k1:B0};function hp(e){let t=Object.keys(fn).join(" / ");return new W(`invalid or unsupported key type ${e}. Must be ${t}`,"ERR_UNSUPPORTED_KEY_TYPE")}function dp(e){let t=ze.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case _t.RSA:return fn.rsa.unmarshalRsaPublicKey(r);case _t.Ed25519:return fn.ed25519.unmarshalEd25519PublicKey(r);case _t.Secp256k1:return fn.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw hp(t.Type??"unknown")}}async function pp(e){let t=Ge.decode(e),r=t.Data??new Uint8Array;switch(t.Type){case _t.RSA:return fn.rsa.unmarshalRsaPrivateKey(r);case _t.Ed25519:return fn.ed25519.unmarshalEd25519PrivateKey(r);case _t.Secp256k1:return fn.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw hp(t.Type??"RSA")}}var Es;(function(e){let t;e.codec=()=>(t==null&&(t=Ae((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=>Se(r,e.codec()),e.decode=r=>Ee(r,e.codec())})(Es||(Es={}));var Fi;(function(e){let t;e.codec=()=>(t==null&&(t=Ae((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),Es.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:ot(0),identitySig:ot(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=Es.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),t),e.encode=r=>Se(r,e.codec()),e.decode=r=>Ee(r,e.codec())})(Fi||(Fi={}));async function yp(e,t,r){let n=await Av(e,mp(t));if(e.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return Sv(e.publicKey,n,r)}function Sv(e,t,r){return Fi.encode({identityKey:e,identitySig:t,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function Av(e,t){if(e.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await pp(e.privateKey)).sign(t)}async function I0(e){return la(e.identityKey)}function T0(e){return Fi.decode(e)}function mp(e){let t=wt("noise-libp2p-static-key:");return e instanceof Uint8Array?Ct([t,e],t.length+e.length):(e.prepend(t),e)}async function _0(e,t,r){let n=await la(t.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=mp(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 dp(n.publicKey).verify(i,t.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Vi(e){return!(!(e instanceof Uint8Array)&&!An(e)||e.byteLength!==32)}var Dv=0,Cv=4294967295,Bv="Cipherstate has reached maximum n, a new handshake must be performed",Ss=class{n;bytes;view;constructor(t=Dv){this.n=t,this.bytes=ot(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>Cv)throw new Error(Bv)}};var As=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 ot(32)}isEmptyKey(t){let r=this.createEmptyKey();return Ut(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:ot(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),ot(32)}}mixHash(t,r){t.h=this.getHash(t.h,r)}getHash(t,r){return this.crypto.hashSHA256(new Bt(t,r))}mixKey(t,r){let[n,i]=this.crypto.getHKDF(t.ck,r);t.cs=this.initializeKey(i),t.ck=n}initializeKey(t){return{k:t,n:new Ss}}initializeSymmetric(t){let r=wt(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=ot(32);return r.set(t),r}else return this.getHash(t,ot(0))}split(t){let[r,n]=this.crypto.getHKDF(t.ck,ot(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(t,r){let n=this.encryptWithAd(t,ot(0),r),i=this.createEmptyKey(),o=ot(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(t,r){return this.decryptWithAd(t,ot(0),r.ciphertext)}};var Ds=class extends As{initializeInitiator(t,r,n,i){let s=this.initializeSymmetric("Noise_XX_25519_ChaChaPoly_SHA256");this.mixHash(s,t);let a=ot(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(t,r,n,i){let s=this.initializeSymmetric("Noise_XX_25519_ChaChaPoly_SHA256");this.mixHash(s,t);let a=ot(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(t,r,n){let i=ot(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 Vi(r.ne)&&(t.re=r.ne),this.mixHash(t.ss,t.re),this.decryptAndHash(t.ss,r.ciphertext)}readMessageB(t,r){if(Vi(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&&Vi(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&&Vi(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=ot(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=ot(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 gp(e,t){!t.enabled||!_n||(t(`LOCAL_STATIC_PUBLIC_KEY ${at(e.publicKey,"hex")}`),t(`LOCAL_STATIC_PRIVATE_KEY ${at(e.privateKey,"hex")}`))}function k0(e,t){!t.enabled||!_n||(e?(t(`LOCAL_PUBLIC_EPHEMERAL_KEY ${at(e.publicKey,"hex")}`),t(`LOCAL_PRIVATE_EPHEMERAL_KEY ${at(e.privateKey,"hex")}`)):t("Missing local ephemeral keys."))}function xp(e,t){!t.enabled||!_n||t(`REMOTE_STATIC_PUBLIC_KEY ${at(e.subarray(),"hex")}`)}function R0(e,t){!t.enabled||!_n||t(`REMOTE_EPHEMERAL_PUBLIC_KEY ${at(e.subarray(),"hex")}`)}function bp(e,t){!t.enabled||!_n||(e.cs1&&e.cs2?(t(`CIPHER_STATE_1 ${e.cs1.n.getUint64()} ${at(e.cs1.k,"hex")}`),t(`CIPHER_STATE_2 ${e.cs2.n.getUint64()} ${at(e.cs2.k,"hex")}`)):t("Missing cipher state."))}var Cs=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 Ds(t,o),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(gp(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,ot(0));await this.connection.write(ih(t)),this.log.trace("Stage 0 - Initiator finished sending first message."),k0(this.session.hs.e,this.log)}else{this.log.trace("Stage 0 - Responder waiting to receive first message...");let t=ah((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,t);if(!r)throw new Jr("xx handshake stage 0 validation fail");this.log.trace("Stage 0 - Responder received first message."),R0(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=ch((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new Jr("xx handshake stage 1 validation fail");this.log.trace("Stage 1 - Initiator received the message."),R0(this.session.hs.re,this.log),xp(this.session.hs.rs,this.log),this.log.trace("Initiator going to check remote's signature...");try{let i=T0(r);this.remotePeer=this.remotePeer||await I0(i),await _0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ci(`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(oh(t)),this.log.trace("Stage 1 - Responder sent the second handshake message with signed payload."),k0(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(sh(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=uh((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,t);if(!n)throw new Jr("xx handshake stage 2 validation fail");this.log.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=T0(r);this.remotePeer=this.remotePeer||await I0(i),await _0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Ci(`Error occurred while verifying signed payload: ${o.message}`)}}bp(this.session,this.log)}encrypt(t,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,ot(0),t)}decrypt(t,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,ot(0),t,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(t,r=!0){if(!t.cs1||!t.cs2)throw new Jr("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 wp(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 Bs=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??nh,this.extensions=i,this.metrics=a?wp(a):void 0,n?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(n):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=s??ot(0)}async secureOutbound(t,r,n){let i=gi(r,{lengthEncoder:Kn,lengthDecoder:Ai,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=gi(r,{lengthEncoder:Kn,lengthDecoder:Ai,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 yp(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 Cs(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]=gl(),o=t.unwrap();return await bl(n,hh(r,this.metrics),o,s=>Hr(s,{lengthDecoder:Ai}),dh(r,this.metrics),n),i}};function vp(e={}){return t=>new Bs(t,e)}var Q1=Jt(cu(),1);var z1=Jt(cu(),1);var uu=Object.values(Pe).map(e=>e.decoder).reduce((e,t)=>e.or(t));function G1(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:NE(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 Wa("","no fingerprint on local certificate");return n}var LE=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function NE(e){return e.match(LE)?.groups?.fingerprint}function PE(e){for(let t of e.protoNames())if(t.startsWith("ip"))return t.toUpperCase();return"IP6"}function Ms(e){let r=e.stringTuples().filter(n=>n[0]===Y1).map(n=>n[1])[0];if(r===void 0||r==="")throw po(`Couldn't find a certhash component of multiaddr: ${e.toString()}`);return r}function fu(e){let t=uu.decode(e);return z1.decode(t)}function UE(e){let t=fu(Ms(e)),r=lu(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 Wa(n,e.toString());return[`${r.toUpperCase()} ${i.join(":").toUpperCase()}`,n]}function lu(e){switch(e){case"sha1":return"sha-1";case"sha2-256":return"sha-256";case"sha2-512":return"sha-512";default:throw Bf(e)}}function OE(e,t){let{host:r,port:n}=e.toOptions(),i=PE(e),[o]=UE(e);return`v=0
|
|
30
|
+
o=- 0 0 IN ${i} ${r}
|
|
31
31
|
s=-
|
|
32
|
-
c=IN ${
|
|
32
|
+
c=IN ${i} ${r}
|
|
33
33
|
t=0 0
|
|
34
34
|
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:${
|
|
40
|
-
a=fingerprint:${
|
|
38
|
+
a=ice-ufrag:${t}
|
|
39
|
+
a=ice-pwd:${t}
|
|
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 W1(e,t){return{type:"answer",sdp:OE(e,t)}}function $1(e,t){if(e.sdp===void 0)throw hi("Can't munge a missing SDP");return e.sdp=e.sdp.replace(/\na=ice-ufrag:[^\n]*\n/,`
|
|
45
|
+
a=ice-ufrag:`+t+`
|
|
46
46
|
`).replace(/\na=ice-pwd:[^\n]*\n/,`
|
|
47
|
-
a=ice-pwd:`+
|
|
48
|
-
`),
|
|
47
|
+
a=ice-pwd:`+t+`
|
|
48
|
+
`),e}var X1=Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),Z1=e=>[...Array(e)].map(()=>X1.at(Math.floor(Math.random()*X1.length))).join("");var ME=1e4,fR=yt("webrtc-direct").code,Y1=yt("certhash").code,Fs=class{log;metrics;components;init;constructor(t,r={}){this.log=t.logger.forComponent("libp2p:webrtc-direct"),this.components=t,this.init=r,t.metrics!=null&&(this.metrics={dialerEvents:t.metrics.registerCounterGroup("libp2p_webrtc-direct_dialer_events_total",{label:"event",help:"Total count of WebRTC-direct dial events by type"})})}async dial(t,r){let n=await this._connect(t,r);return this.log("dialing address: %a",t),n}createListener(t){throw Cf("WebRTCTransport.createListener")}filter(t){return t.filter(Sf.exactMatch)}[Symbol.toStringTag]="@libp2p/webrtc-direct";[Qi]=!0;async _connect(t,r){let n=new AbortController,i=n.signal,o=t.getPeerId();if(o===null)throw po("we need to have the remote's PeerId");let s=Kr(o),a=fu(Ms(t)),c=await In.generateCertificate({name:"ECDSA",namedCurve:"P-256",hash:lu(a.name)}),u=new In({certificates:[c]});try{let f=new Promise((B,U)=>{let K=u.createDataChannel("",{negotiated:!0,id:0}),O=setTimeout(()=>{let F=`Data channel was never opened: state: ${K.readyState}`;this.log.error(F),this.metrics?.dialerEvents.increment({open_error:!0}),U(Ga("data",F))},ME);K.onopen=F=>{clearTimeout(O),B(K)},K.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(Ga("data",Q))}}),l="libp2p+webrtc+v1/"+Z1(32),d=await u.createOffer(),m=$1(d,l);await u.setLocalDescription(m);let h=W1(t,l);await u.setRemoteDescription(h);let p=await f,y=this.components.peerId,g=this.generateNoisePrologue(u,a.code,t),b=vp({prologueBytes:g})(this.components),x=Bn({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 Fr(this.components,{peerConnection:u,remoteAddr:t,timeline:{open:Date.now()},metrics:this.metrics?.dialerEvents}),E=di?"iceconnectionstatechange":"connectionstatechange";u.addEventListener(E,()=>{switch(u.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 C=new Wr(this.components,{peerConnection:u,metrics:this.metrics?.dialerEvents,dataChannelOptions:this.init.dataChannel});return await b.secureInbound(y,S,s),await r.upgrader.upgradeOutbound(w,{skipProtection:!0,skipEncryption:!0,muxerFactory:C})}catch(f){throw u.close(),f}}generateNoisePrologue(t,r,n){if(t.getConfiguration().certificates?.length===0)throw hi("no local certificate");let i=G1(t,{log:this.log});if(i==null)throw hi("no local fingerprint found");let o=i.trim().toLowerCase().replaceAll(":",""),s=wt(o,"hex"),a=Q1.encode(s,r),c=uu.decode(Ms(n)),u=wt("libp2p-webrtc-noise:");return Ct([u,a,c])}};function FE(e){return t=>new Fs(t,e)}function VE(e){return t=>new Po(t,e)}return Zi(HE);})();
|
|
49
49
|
/*! Bundled license information:
|
|
50
50
|
|
|
51
51
|
@noble/ciphers/esm/utils.js:
|