@libp2p/webrtc 3.2.11-e2267d437 → 4.0.0

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.
Files changed (58) hide show
  1. package/dist/index.min.js +12 -12
  2. package/dist/src/error.d.ts +2 -2
  3. package/dist/src/error.d.ts.map +1 -1
  4. package/dist/src/error.js +1 -1
  5. package/dist/src/error.js.map +1 -1
  6. package/dist/src/index.d.ts +28 -3
  7. package/dist/src/index.d.ts.map +1 -1
  8. package/dist/src/index.js.map +1 -1
  9. package/dist/src/maconn.d.ts +1 -3
  10. package/dist/src/maconn.d.ts.map +1 -1
  11. package/dist/src/maconn.js.map +1 -1
  12. package/dist/src/muxer.d.ts +1 -4
  13. package/dist/src/muxer.d.ts.map +1 -1
  14. package/dist/src/muxer.js.map +1 -1
  15. package/dist/src/private-to-private/initiate-connection.d.ts +1 -3
  16. package/dist/src/private-to-private/initiate-connection.d.ts.map +1 -1
  17. package/dist/src/private-to-private/initiate-connection.js +1 -1
  18. package/dist/src/private-to-private/initiate-connection.js.map +1 -1
  19. package/dist/src/private-to-private/listener.d.ts +3 -4
  20. package/dist/src/private-to-private/listener.d.ts.map +1 -1
  21. package/dist/src/private-to-private/listener.js +1 -1
  22. package/dist/src/private-to-private/listener.js.map +1 -1
  23. package/dist/src/private-to-private/signaling-stream-handler.d.ts +1 -1
  24. package/dist/src/private-to-private/signaling-stream-handler.d.ts.map +1 -1
  25. package/dist/src/private-to-private/signaling-stream-handler.js +1 -1
  26. package/dist/src/private-to-private/signaling-stream-handler.js.map +1 -1
  27. package/dist/src/private-to-private/transport.d.ts +5 -29
  28. package/dist/src/private-to-private/transport.d.ts.map +1 -1
  29. package/dist/src/private-to-private/transport.js +2 -3
  30. package/dist/src/private-to-private/transport.js.map +1 -1
  31. package/dist/src/private-to-private/util.d.ts +1 -2
  32. package/dist/src/private-to-private/util.d.ts.map +1 -1
  33. package/dist/src/private-to-private/util.js +1 -1
  34. package/dist/src/private-to-private/util.js.map +1 -1
  35. package/dist/src/private-to-public/options.d.ts +1 -1
  36. package/dist/src/private-to-public/options.d.ts.map +1 -1
  37. package/dist/src/private-to-public/transport.d.ts +4 -18
  38. package/dist/src/private-to-public/transport.d.ts.map +1 -1
  39. package/dist/src/private-to-public/transport.js +7 -7
  40. package/dist/src/private-to-public/transport.js.map +1 -1
  41. package/dist/src/stream.d.ts +1 -2
  42. package/dist/src/stream.d.ts.map +1 -1
  43. package/dist/src/stream.js +1 -1
  44. package/dist/src/stream.js.map +1 -1
  45. package/dist/typedoc-urls.json +16 -0
  46. package/package.json +15 -11
  47. package/src/error.ts +2 -2
  48. package/src/index.ts +34 -3
  49. package/src/maconn.ts +1 -3
  50. package/src/muxer.ts +1 -4
  51. package/src/private-to-private/initiate-connection.ts +3 -6
  52. package/src/private-to-private/listener.ts +3 -4
  53. package/src/private-to-private/signaling-stream-handler.ts +2 -2
  54. package/src/private-to-private/transport.ts +5 -33
  55. package/src/private-to-private/util.ts +2 -3
  56. package/src/private-to-public/options.ts +1 -1
  57. package/src/private-to-public/transport.ts +9 -25
  58. package/src/stream.ts +2 -3
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 a2=Object.create;var ji=Object.defineProperty;var c2=Object.getOwnPropertyDescriptor;var u2=Object.getOwnPropertyNames;var f2=Object.getPrototypeOf,l2=Object.prototype.hasOwnProperty;var pe=(t,e)=>()=>(t&&(e=t(t=0)),e);var re=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),fe=(t,e)=>{for(var r in e)ji(t,r,{get:e[r],enumerable:!0})},Cu=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of u2(e))!l2.call(t,i)&&i!==r&&ji(t,i,{get:()=>e[i],enumerable:!(n=c2(e,i))||n.enumerable});return t};var Xe=(t,e,r)=>(r=t!=null?a2(f2(t)):{},Cu(e||!t||!t.__esModule?ji(r,"default",{value:t,enumerable:!0}):r,t)),Ji=t=>Cu(ji({},"__esModule",{value:!0}),t);var Kf=re((I6,Ff)=>{"use strict";function Of(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function yg(t,e,r){if(!t||typeof t=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof e=="object"&&(r=e,e=""),e&&(r.code=e);try{return Of(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),Of(new i,r)}}Ff.exports=yg});var be=re((PD,uh)=>{uh.exports={options:{usePureJavaScript:!1}}});var hh=re((UD,lh)=>{var Qc={};lh.exports=Qc;var fh={};Qc.encode=function(t,e,r){if(typeof e!="string")throw new TypeError('"alphabet" must be a string.');if(r!==void 0&&typeof r!="number")throw new TypeError('"maxline" must be a number.');var n="";if(!(t instanceof Uint8Array))n=px(t,e);else{var i=0,o=e.length,s=e.charAt(0),a=[0];for(i=0;i<t.length;++i){for(var c=0,u=t[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;t[i]===0&&i<t.length-1;++i)n+=s;for(i=a.length-1;i>=0;--i)n+=e[a[i]]}if(r){var f=new RegExp(".{1,"+r+"}","g");n=n.match(f).join(`\r
3
- `)}return n};Qc.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=fh[e];if(!r){r=fh[e]=[];for(var n=0;n<e.length;++n)r[e.charCodeAt(n)]=n}t=t.replace(/\s/g,"");for(var i=e.length,o=e.charAt(0),s=[0],n=0;n<t.length;n++){var a=r[t.charCodeAt(n)];if(a===void 0)return;for(var c=0,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;t[f]===o&&f<t.length-1;++f)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function px(t,e){var r=0,n=e.length,i=e.charAt(0),o=[0];for(r=0;r<t.length();++r){for(var s=0,a=t.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;t.at(r)===0&&r<t.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=e[o[r]];return c}});var Fe=re((OD,gh)=>{var dh=be(),ph=hh(),w=gh.exports=dh.util=dh.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){w.nextTick=process.nextTick,typeof setImmediate=="function"?w.setImmediate=setImmediate:w.setImmediate=w.nextTick;return}if(typeof setImmediate=="function"){w.setImmediate=function(){return setImmediate.apply(void 0,arguments)},w.nextTick=function(a){return setImmediate(a)};return}if(w.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===t){c.stopPropagation();var u=e.slice();e.length=0,u.forEach(function(f){f()})}};var s=a,t="forge.setImmediate",e=[];w.setImmediate=function(c){e.push(c),e.length===1&&window.postMessage(t,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),e=[];new MutationObserver(function(){var c=e.slice();e.length=0,c.forEach(function(u){u()})}).observe(i,{attributes:!0});var o=w.setImmediate;w.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(e.push(c),e.length===1&&i.setAttribute("a",n=!n))}}w.nextTick=w.setImmediate})();w.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;w.globalScope=function(){return w.isNodejs?globalThis:typeof self>"u"?window:self}();w.isArray=Array.isArray||function(t){return Object.prototype.toString.call(t)==="[object Array]"};w.isArrayBuffer=function(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer};w.isArrayBufferView=function(t){return t&&w.isArrayBuffer(t.buffer)&&t.byteLength!==void 0};function _i(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}w.ByteBuffer=jc;function jc(t){if(this.data="",this.read=0,typeof t=="string")this.data=t;else if(w.isArrayBuffer(t)||w.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 jc||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}w.ByteStringBuffer=jc;var yx=4096;w.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>yx&&(this.data.substr(0,1),this._constructedStringLength=0)};w.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};w.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};w.ByteStringBuffer.prototype.putByte=function(t){return this.putBytes(String.fromCharCode(t))};w.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};w.ByteStringBuffer.prototype.putBytes=function(t){return this.data+=t,this._optimizeConstructedString(t.length),this};w.ByteStringBuffer.prototype.putString=function(t){return this.putBytes(w.encodeUtf8(t))};w.ByteStringBuffer.prototype.putInt16=function(t){return this.putBytes(String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};w.ByteStringBuffer.prototype.putInt24=function(t){return this.putBytes(String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};w.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))};w.ByteStringBuffer.prototype.putInt16Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255))};w.ByteStringBuffer.prototype.putInt24Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255))};w.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))};w.ByteStringBuffer.prototype.putInt=function(t,e){_i(e);var r="";do e-=8,r+=String.fromCharCode(t>>e&255);while(e>0);return this.putBytes(r)};w.ByteStringBuffer.prototype.putSignedInt=function(t,e){return t<0&&(t+=2<<e-1),this.putInt(t,e)};w.ByteStringBuffer.prototype.putBuffer=function(t){return this.putBytes(t.getBytes())};w.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};w.ByteStringBuffer.prototype.getInt16=function(){var t=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,t};w.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};w.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};w.ByteStringBuffer.prototype.getInt16Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,t};w.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};w.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};w.ByteStringBuffer.prototype.getInt=function(t){_i(t);var e=0;do e=(e<<8)+this.data.charCodeAt(this.read++),t-=8;while(t>0);return e};w.ByteStringBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};w.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};w.ByteStringBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};w.ByteStringBuffer.prototype.at=function(t){return this.data.charCodeAt(this.read+t)};w.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};w.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};w.ByteStringBuffer.prototype.copy=function(){var t=w.createBuffer(this.data);return t.read=this.read,t};w.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};w.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};w.ByteStringBuffer.prototype.truncate=function(t){var e=Math.max(0,this.length()-t);return this.data=this.data.substr(this.read,e),this.read=0,this};w.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};w.ByteStringBuffer.prototype.toString=function(){return w.decodeUtf8(this.bytes())};function gx(t,e){e=e||{},this.read=e.readOffset||0,this.growSize=e.growSize||1024;var r=w.isArrayBuffer(t),n=w.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)}w.DataBuffer=gx;w.DataBuffer.prototype.length=function(){return this.write-this.read};w.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};w.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};w.DataBuffer.prototype.putByte=function(t){return this.accommodate(1),this.data.setUint8(this.write++,t),this};w.DataBuffer.prototype.fillWithByte=function(t,e){this.accommodate(e);for(var r=0;r<e;++r)this.data.setUint8(t);return this};w.DataBuffer.prototype.putBytes=function(t,e){if(w.isArrayBufferView(t)){var r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(w.isArrayBuffer(t)){var r=new Uint8Array(t);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(t instanceof w.DataBuffer||typeof t=="object"&&typeof t.read=="number"&&typeof t.write=="number"&&w.isArrayBufferView(t.data)){var r=new Uint8Array(t.data.byteLength,t.read,t.length());this.accommodate(r.byteLength);var i=new Uint8Array(t.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(t instanceof w.ByteStringBuffer&&(t=t.data,e="binary"),e=e||"binary",typeof t=="string"){var o;if(e==="hex")return this.accommodate(Math.ceil(t.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.hex.decode(t,o,this.write),this;if(e==="base64")return this.accommodate(Math.ceil(t.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.base64.decode(t,o,this.write),this;if(e==="utf8"&&(t=w.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.raw.decode(o),this;if(e==="utf16")return this.accommodate(t.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=w.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+e)}throw Error("Invalid parameter: "+t)};w.DataBuffer.prototype.putBuffer=function(t){return this.putBytes(t),t.clear(),this};w.DataBuffer.prototype.putString=function(t){return this.putBytes(t,"utf16")};w.DataBuffer.prototype.putInt16=function(t){return this.accommodate(2),this.data.setInt16(this.write,t),this.write+=2,this};w.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};w.DataBuffer.prototype.putInt32=function(t){return this.accommodate(4),this.data.setInt32(this.write,t),this.write+=4,this};w.DataBuffer.prototype.putInt16Le=function(t){return this.accommodate(2),this.data.setInt16(this.write,t,!0),this.write+=2,this};w.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};w.DataBuffer.prototype.putInt32Le=function(t){return this.accommodate(4),this.data.setInt32(this.write,t,!0),this.write+=4,this};w.DataBuffer.prototype.putInt=function(t,e){_i(e),this.accommodate(e/8);do e-=8,this.data.setInt8(this.write++,t>>e&255);while(e>0);return this};w.DataBuffer.prototype.putSignedInt=function(t,e){return _i(e),this.accommodate(e/8),t<0&&(t+=2<<e-1),this.putInt(t,e)};w.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};w.DataBuffer.prototype.getInt16=function(){var t=this.data.getInt16(this.read);return this.read+=2,t};w.DataBuffer.prototype.getInt24=function(){var t=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,t};w.DataBuffer.prototype.getInt32=function(){var t=this.data.getInt32(this.read);return this.read+=4,t};w.DataBuffer.prototype.getInt16Le=function(){var t=this.data.getInt16(this.read,!0);return this.read+=2,t};w.DataBuffer.prototype.getInt24Le=function(){var t=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,t};w.DataBuffer.prototype.getInt32Le=function(){var t=this.data.getInt32(this.read,!0);return this.read+=4,t};w.DataBuffer.prototype.getInt=function(t){_i(t);var e=0;do e=(e<<8)+this.data.getInt8(this.read++),t-=8;while(t>0);return e};w.DataBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};w.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};w.DataBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};w.DataBuffer.prototype.at=function(t){return this.data.getUint8(this.read+t)};w.DataBuffer.prototype.setAt=function(t,e){return this.data.setUint8(t,e),this};w.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};w.DataBuffer.prototype.copy=function(){return new w.DataBuffer(this)};w.DataBuffer.prototype.compact=function(){if(this.read>0){var 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};w.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};w.DataBuffer.prototype.truncate=function(t){return this.write=Math.max(0,this.length()-t),this.read=Math.min(this.read,this.write),this};w.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};w.DataBuffer.prototype.toString=function(t){var e=new Uint8Array(this.data,this.read,this.length());if(t=t||"utf8",t==="binary"||t==="raw")return w.binary.raw.encode(e);if(t==="hex")return w.binary.hex.encode(e);if(t==="base64")return w.binary.base64.encode(e);if(t==="utf8")return w.text.utf8.decode(e);if(t==="utf16")return w.text.utf16.decode(e);throw new Error("Invalid encoding: "+t)};w.createBuffer=function(t,e){return e=e||"raw",t!==void 0&&e==="utf8"&&(t=w.encodeUtf8(t)),new w.ByteBuffer(t)};w.fillString=function(t,e){for(var r="";e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return r};w.xorBytes=function(t,e,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=t.charCodeAt(s)^e.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};w.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};w.bytesToHex=function(t){return w.createBuffer(t).toHex()};w.int32ToBytes=function(t){return String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255)};var _r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",kr=[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],yh="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";w.encode64=function(t,e){for(var r="",n="",i,o,s,a=0;a<t.length;)i=t.charCodeAt(a++),o=t.charCodeAt(a++),s=t.charCodeAt(a++),r+=_r.charAt(i>>2),r+=_r.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=_r.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":_r.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
4
- `,r=r.substr(e));return n+=r,n};w.decode64=function(t){t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var e="",r,n,i,o,s=0;s<t.length;)r=kr[t.charCodeAt(s++)-43],n=kr[t.charCodeAt(s++)-43],i=kr[t.charCodeAt(s++)-43],o=kr[t.charCodeAt(s++)-43],e+=String.fromCharCode(r<<2|n>>4),i!==64&&(e+=String.fromCharCode((n&15)<<4|i>>2),o!==64&&(e+=String.fromCharCode((i&3)<<6|o)));return e};w.encodeUtf8=function(t){return unescape(encodeURIComponent(t))};w.decodeUtf8=function(t){return decodeURIComponent(escape(t))};w.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:ph.encode,decode:ph.decode}};w.binary.raw.encode=function(t){return String.fromCharCode.apply(null,t)};w.binary.raw.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,o=0;o<t.length;++o)n[i++]=t.charCodeAt(o);return e?i-r:n};w.binary.hex.encode=w.bytesToHex;w.binary.hex.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(Math.ceil(t.length/2))),r=r||0;var i=0,o=r;for(t.length&1&&(i=1,n[o++]=parseInt(t[0],16));i<t.length;i+=2)n[o++]=parseInt(t.substr(i,2),16);return e?o-r:n};w.binary.base64.encode=function(t,e){for(var r="",n="",i,o,s,a=0;a<t.byteLength;)i=t[a++],o=t[a++],s=t[a++],r+=_r.charAt(i>>2),r+=_r.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=_r.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":_r.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
5
- `,r=r.substr(e));return n+=r,n};w.binary.base64.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(Math.ceil(t.length/4)*3)),t=t.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,u=r;c<t.length;)i=kr[t.charCodeAt(c++)-43],o=kr[t.charCodeAt(c++)-43],s=kr[t.charCodeAt(c++)-43],a=kr[t.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 e?u-r:n.subarray(0,u)};w.binary.base58.encode=function(t,e){return w.binary.baseN.encode(t,yh,e)};w.binary.base58.decode=function(t,e){return w.binary.baseN.decode(t,yh,e)};w.text={utf8:{},utf16:{}};w.text.utf8.encode=function(t,e,r){t=w.encodeUtf8(t);var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,o=0;o<t.length;++o)n[i++]=t.charCodeAt(o);return e?i-r:n};w.text.utf8.decode=function(t){return w.decodeUtf8(String.fromCharCode.apply(null,t))};w.text.utf16.encode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<t.length;++a)i[s++]=t.charCodeAt(a),o+=2;return e?o-r:n};w.text.utf16.decode=function(t){return String.fromCharCode.apply(null,new Uint16Array(t.buffer))};w.deflate=function(t,e,r){if(e=w.decode64(t.deflate(w.encode64(e)).rval),r){var n=2,i=e.charCodeAt(1);i&32&&(n=6),e=e.substring(n,e.length-4)}return e};w.inflate=function(t,e,r){var n=t.inflate(w.encode64(e)).rval;return n===null?null:w.decode64(n)};var Jc=function(t,e,r){if(!t)throw new Error("WebStorage not available.");var n;if(r===null?n=t.removeItem(e):(r=w.encode64(JSON.stringify(r)),n=t.setItem(e,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},e0=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(w.decode64(r))),r},mx=function(t,e,r,n){var i=e0(t,e);i===null&&(i={}),i[r]=n,Jc(t,e,i)},xx=function(t,e,r){var n=e0(t,e);return n!==null&&(n=r in n?n[r]:null),n},bx=function(t,e,r){var n=e0(t,e);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),Jc(t,e,n)}},wx=function(t,e){Jc(t,e,null)},ss=function(t,e,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(e[0]===null)throw new Error("Flash local storage not available.");n=t.apply(this,e),o=i==="flash"}(i==="web"||i==="both")&&(e[0]=localStorage,n=t.apply(this,e),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};w.setItem=function(t,e,r,n,i){ss(mx,arguments,i)};w.getItem=function(t,e,r,n){return ss(xx,arguments,n)};w.removeItem=function(t,e,r,n){ss(bx,arguments,n)};w.clearItems=function(t,e,r){ss(wx,arguments,r)};w.isEmpty=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0};w.format=function(t){for(var e=/%./g,r,n,i=0,o=[],s=0;r=e.exec(t);){n=t.substring(s,e.lastIndex-2),n.length>0&&o.push(n),s=e.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(t.substring(s)),o.join("")};w.formatNumber=function(t,e,r,n){var i=t,o=isNaN(e=Math.abs(e))?2:e,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",u=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",f=u.length>3?u.length%3:0;return c+(f?u.substr(0,f)+a:"")+u.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-u).toFixed(o).slice(2):"")};w.formatSize=function(t){return t>=1073741824?t=w.formatNumber(t/1073741824,2,".","")+" GiB":t>=1048576?t=w.formatNumber(t/1048576,2,".","")+" MiB":t>=1024?t=w.formatNumber(t/1024,0)+" KiB":t=w.formatNumber(t,0)+" bytes",t};w.bytesFromIP=function(t){return t.indexOf(".")!==-1?w.bytesFromIPv4(t):t.indexOf(":")!==-1?w.bytesFromIPv6(t):null};w.bytesFromIPv4=function(t){if(t=t.split("."),t.length!==4)return null;for(var e=w.createBuffer(),r=0;r<t.length;++r){var n=parseInt(t[r],10);if(isNaN(n))return null;e.putByte(n)}return e.getBytes()};w.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=w.createBuffer(),i=0;i<8;++i){if(!t[i]||t[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=w.hexToBytes(t[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};w.bytesToIP=function(t){return t.length===4?w.bytesToIPv4(t):t.length===16?w.bytesToIPv6(t):null};w.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(".")};w.bytesToIPv6=function(t){if(t.length!==16)return null;for(var e=[],r=[],n=0,i=0;i<t.length;i+=2){for(var o=w.bytesToHex(t[i]+t[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=e.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}e.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(e.splice(c.start,c.end-c.start+1,""),c.start===0&&e.unshift(""),c.end===7&&e.push(""))}return e.join(":")};w.estimateCores=function(t,e){if(typeof t=="function"&&(e=t,t={}),t=t||{},"cores"in w&&!t.update)return e(null,w.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return w.cores=navigator.hardwareConcurrency,e(null,w.cores);if(typeof Worker>"u")return w.cores=1,e(null,w.cores);if(typeof Blob>"u")return w.cores=2,e(null,w.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var u=Math.floor(s.reduce(function(f,l){return f+l},0)/s.length);return w.cores=Math.max(1,u),URL.revokeObjectURL(r),e(null,w.cores)}i(c,function(f,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],u=[],f=0;f<s;++f){var l=new Worker(r);l.addEventListener("message",function(h){if(u.push(h.data),u.length===s){for(var g=0;g<s;++g)c[g].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]=[],h=0;h<s;++h)if(u!==h){var g=a[h];(f.st>g.st&&f.st<g.et||g.st>f.st&&g.st<f.et)&&l.push(h)}return c.reduce(function(d,p){return Math.max(d,p.length)},0)}}});var as=re((FD,mh)=>{var ki=be();ki.pki=ki.pki||{};var t0=mh.exports=ki.pki.oids=ki.oids=ki.oids||{};function N(t,e){t0[t]=e,t0[e]=t}function me(t,e){t0[t]=e}N("1.2.840.113549.1.1.1","rsaEncryption");N("1.2.840.113549.1.1.4","md5WithRSAEncryption");N("1.2.840.113549.1.1.5","sha1WithRSAEncryption");N("1.2.840.113549.1.1.7","RSAES-OAEP");N("1.2.840.113549.1.1.8","mgf1");N("1.2.840.113549.1.1.9","pSpecified");N("1.2.840.113549.1.1.10","RSASSA-PSS");N("1.2.840.113549.1.1.11","sha256WithRSAEncryption");N("1.2.840.113549.1.1.12","sha384WithRSAEncryption");N("1.2.840.113549.1.1.13","sha512WithRSAEncryption");N("1.3.101.112","EdDSA25519");N("1.2.840.10040.4.3","dsa-with-sha1");N("1.3.14.3.2.7","desCBC");N("1.3.14.3.2.26","sha1");N("1.3.14.3.2.29","sha1WithRSASignature");N("2.16.840.1.101.3.4.2.1","sha256");N("2.16.840.1.101.3.4.2.2","sha384");N("2.16.840.1.101.3.4.2.3","sha512");N("2.16.840.1.101.3.4.2.4","sha224");N("2.16.840.1.101.3.4.2.5","sha512-224");N("2.16.840.1.101.3.4.2.6","sha512-256");N("1.2.840.113549.2.2","md2");N("1.2.840.113549.2.5","md5");N("1.2.840.113549.1.7.1","data");N("1.2.840.113549.1.7.2","signedData");N("1.2.840.113549.1.7.3","envelopedData");N("1.2.840.113549.1.7.4","signedAndEnvelopedData");N("1.2.840.113549.1.7.5","digestedData");N("1.2.840.113549.1.7.6","encryptedData");N("1.2.840.113549.1.9.1","emailAddress");N("1.2.840.113549.1.9.2","unstructuredName");N("1.2.840.113549.1.9.3","contentType");N("1.2.840.113549.1.9.4","messageDigest");N("1.2.840.113549.1.9.5","signingTime");N("1.2.840.113549.1.9.6","counterSignature");N("1.2.840.113549.1.9.7","challengePassword");N("1.2.840.113549.1.9.8","unstructuredAddress");N("1.2.840.113549.1.9.14","extensionRequest");N("1.2.840.113549.1.9.20","friendlyName");N("1.2.840.113549.1.9.21","localKeyId");N("1.2.840.113549.1.9.22.1","x509Certificate");N("1.2.840.113549.1.12.10.1.1","keyBag");N("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");N("1.2.840.113549.1.12.10.1.3","certBag");N("1.2.840.113549.1.12.10.1.4","crlBag");N("1.2.840.113549.1.12.10.1.5","secretBag");N("1.2.840.113549.1.12.10.1.6","safeContentsBag");N("1.2.840.113549.1.5.13","pkcs5PBES2");N("1.2.840.113549.1.5.12","pkcs5PBKDF2");N("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");N("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");N("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");N("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");N("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");N("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");N("1.2.840.113549.2.7","hmacWithSHA1");N("1.2.840.113549.2.8","hmacWithSHA224");N("1.2.840.113549.2.9","hmacWithSHA256");N("1.2.840.113549.2.10","hmacWithSHA384");N("1.2.840.113549.2.11","hmacWithSHA512");N("1.2.840.113549.3.7","des-EDE3-CBC");N("2.16.840.1.101.3.4.1.2","aes128-CBC");N("2.16.840.1.101.3.4.1.22","aes192-CBC");N("2.16.840.1.101.3.4.1.42","aes256-CBC");N("2.5.4.3","commonName");N("2.5.4.4","surname");N("2.5.4.5","serialNumber");N("2.5.4.6","countryName");N("2.5.4.7","localityName");N("2.5.4.8","stateOrProvinceName");N("2.5.4.9","streetAddress");N("2.5.4.10","organizationName");N("2.5.4.11","organizationalUnitName");N("2.5.4.12","title");N("2.5.4.13","description");N("2.5.4.15","businessCategory");N("2.5.4.17","postalCode");N("2.5.4.42","givenName");N("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");N("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");N("2.16.840.1.113730.1.1","nsCertType");N("2.16.840.1.113730.1.13","nsComment");me("2.5.29.1","authorityKeyIdentifier");me("2.5.29.2","keyAttributes");me("2.5.29.3","certificatePolicies");me("2.5.29.4","keyUsageRestriction");me("2.5.29.5","policyMapping");me("2.5.29.6","subtreesConstraint");me("2.5.29.7","subjectAltName");me("2.5.29.8","issuerAltName");me("2.5.29.9","subjectDirectoryAttributes");me("2.5.29.10","basicConstraints");me("2.5.29.11","nameConstraints");me("2.5.29.12","policyConstraints");me("2.5.29.13","basicConstraints");N("2.5.29.14","subjectKeyIdentifier");N("2.5.29.15","keyUsage");me("2.5.29.16","privateKeyUsagePeriod");N("2.5.29.17","subjectAltName");N("2.5.29.18","issuerAltName");N("2.5.29.19","basicConstraints");me("2.5.29.20","cRLNumber");me("2.5.29.21","cRLReason");me("2.5.29.22","expirationDate");me("2.5.29.23","instructionCode");me("2.5.29.24","invalidityDate");me("2.5.29.25","cRLDistributionPoints");me("2.5.29.26","issuingDistributionPoint");me("2.5.29.27","deltaCRLIndicator");me("2.5.29.28","issuingDistributionPoint");me("2.5.29.29","certificateIssuer");me("2.5.29.30","nameConstraints");N("2.5.29.31","cRLDistributionPoints");N("2.5.29.32","certificatePolicies");me("2.5.29.33","policyMappings");me("2.5.29.34","policyConstraints");N("2.5.29.35","authorityKeyIdentifier");me("2.5.29.36","policyConstraints");N("2.5.29.37","extKeyUsage");me("2.5.29.46","freshestCRL");me("2.5.29.54","inhibitAnyPolicy");N("1.3.6.1.4.1.11129.2.4.2","timestampList");N("1.3.6.1.5.5.7.1.1","authorityInfoAccess");N("1.3.6.1.5.5.7.3.1","serverAuth");N("1.3.6.1.5.5.7.3.2","clientAuth");N("1.3.6.1.5.5.7.3.3","codeSigning");N("1.3.6.1.5.5.7.3.4","emailProtection");N("1.3.6.1.5.5.7.3.8","timeStamping")});var Li=re((KD,bh)=>{var Ae=be();Fe();as();var V=bh.exports=Ae.asn1=Ae.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(t,e,r,n,i){if(Ae.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:t,type:e,constructed:r,composed:r||Ae.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(t,e){var r;if(Ae.util.isArray(t)){r=[];for(var n=0;n<t.length;++n)r.push(V.copy(t[n],e));return r}return typeof t=="string"?t:(r={tagClass:t.tagClass,type:t.type,constructed:t.constructed,composed:t.composed,value:V.copy(t.value,e)},e&&!e.excludeBitStringContents&&(r.bitStringContents=t.bitStringContents),r)};V.equals=function(t,e,r){if(Ae.util.isArray(t)){if(!Ae.util.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;++n)if(!V.equals(t[n],e[n]))return!1;return!0}if(typeof t!=typeof e)return!1;if(typeof t=="string")return t===e;var i=t.tagClass===e.tagClass&&t.type===e.type&&t.constructed===e.constructed&&t.composed===e.composed&&V.equals(t.value,e.value);return r&&r.includeBitStringContents&&(i=i&&t.bitStringContents===e.bitStringContents),i};V.getBerValueLength=function(t){var e=t.getByte();if(e!==128){var r,n=e&128;return n?r=t.getInt((e&127)<<3):r=e,r}};function Ri(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 vx=function(t,e){var r=t.getByte();if(e--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Ri(t,e,o),n=t.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(t,e){e===void 0&&(e={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof e=="boolean"&&(e={strict:e,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in e||(e.strict=!0),"parseAllBytes"in e||(e.parseAllBytes=!0),"decodeBitStrings"in e||(e.decodeBitStrings=!0),typeof t=="string"&&(t=Ae.util.createBuffer(t));var r=t.length(),n=cs(t,t.length(),0,e);if(e.parseAllBytes&&t.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=t.length(),i}return n};function cs(t,e,r,n){var i;Ri(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=vx(t,e);if(e-=i-t.length(),c!==void 0&&c>e){if(n.strict){var u=new Error("Too few bytes to read ASN.1 value.");throw u.available=t.length(),u.remaining=e,u.requested=c,u}c=e}var f,l,h=(o&32)===32;if(h)if(f=[],c===void 0)for(;;){if(Ri(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),f.push(cs(t,e,r+1,n)),e-=i-t.length()}else for(;c>0;)i=t.length(),f.push(cs(t,c,r+1,n)),e-=i-t.length(),c-=i-t.length();if(f===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=t.bytes(c)),f===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var g=t.read,d=e,p=0;if(a===V.Type.BITSTRING&&(Ri(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var y={strict:!0,decodeBitStrings:!0},m=cs(t,e,r+1,y),b=i-t.length();e-=b,a==V.Type.BITSTRING&&b++;var x=m.tagClass;b===c&&(x===V.Class.UNIVERSAL||x===V.Class.CONTEXT_SPECIFIC)&&(f=[m])}catch{}f===void 0&&(t.read=g,e=d)}if(f===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=e}if(a===V.Type.BMPSTRING)for(f="";c>0;c-=2)Ri(t,e,2),f+=String.fromCharCode(t.getInt16()),e-=2;else f=t.getBytes(c),e-=c}var S=l===void 0?null:{bitStringContents:l};return V.create(s,a,h,f,S)}V.toDer=function(t){var e=Ae.util.createBuffer(),r=t.tagClass|t.type,n=Ae.util.createBuffer(),i=!1;if("bitStringContents"in t&&(i=!0,t.original&&(i=V.equals(t,t.original))),i)n.putBytes(t.bitStringContents);else if(t.composed){t.constructed?r|=32:n.putByte(0);for(var o=0;o<t.value.length;++o)t.value[o]!==void 0&&n.putBuffer(V.toDer(t.value[o]))}else if(t.type===V.Type.BMPSTRING)for(var o=0;o<t.value.length;++o)n.putInt16(t.value.charCodeAt(o));else t.type===V.Type.INTEGER&&t.value.length>1&&(t.value.charCodeAt(0)===0&&!(t.value.charCodeAt(1)&128)||t.value.charCodeAt(0)===255&&(t.value.charCodeAt(1)&128)===128)?n.putBytes(t.value.substr(1)):n.putBytes(t.value);if(e.putByte(r),n.length()<=127)e.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);e.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)e.putByte(a.charCodeAt(o))}return e.putBuffer(n),e};V.oidToDer=function(t){var e=t.split("."),r=Ae.util.createBuffer();r.putByte(40*parseInt(e[0],10)+parseInt(e[1],10));for(var n,i,o,s,a=2;a<e.length;++a){n=!0,i=[],o=parseInt(e[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(t){var e;typeof t=="string"&&(t=Ae.util.createBuffer(t));var r=t.getByte();e=Math.floor(r/40)+"."+r%40;for(var n=0;t.length()>0;)r=t.getByte(),n=n<<7,r&128?n+=r&127:(e+="."+(n+r),n=0);return e};V.utcTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(t.substr(2,2),10)-1,i=parseInt(t.substr(4,2),10),o=parseInt(t.substr(6,2),10),s=parseInt(t.substr(8,2),10),a=0;if(t.length>11){var c=t.charAt(10),u=10;c!=="+"&&c!=="-"&&(a=parseInt(t.substr(10,2),10),u+=2)}if(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,0),u&&(c=t.charAt(u),c==="+"||c==="-")){var f=parseInt(t.substr(u+1,2),10),l=parseInt(t.substr(u+4,2),10),h=f*60+l;h*=6e4,c==="+"?e.setTime(+e-h):e.setTime(+e+h)}return e};V.generalizedTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,4),10),n=parseInt(t.substr(4,2),10)-1,i=parseInt(t.substr(6,2),10),o=parseInt(t.substr(8,2),10),s=parseInt(t.substr(10,2),10),a=parseInt(t.substr(12,2),10),c=0,u=0,f=!1;t.charAt(t.length-1)==="Z"&&(f=!0);var l=t.length-5,h=t.charAt(l);if(h==="+"||h==="-"){var g=parseInt(t.substr(l+1,2),10),d=parseInt(t.substr(l+4,2),10);u=g*60+d,u*=6e4,h==="+"&&(u*=-1),f=!0}return t.charAt(14)==="."&&(c=parseFloat(t.substr(14),10)*1e3),f?(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,c),e.setTime(+e+u)):(e.setFullYear(r,n,i),e.setHours(o,s,a,c)),e};V.dateToUtcTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push((""+t.getUTCFullYear()).substr(2)),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};V.dateToGeneralizedTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push(""+t.getUTCFullYear()),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};V.integerToDer=function(t){var e=Ae.util.createBuffer();if(t>=-128&&t<128)return e.putSignedInt(t,8);if(t>=-32768&&t<32768)return e.putSignedInt(t,16);if(t>=-8388608&&t<8388608)return e.putSignedInt(t,24);if(t>=-2147483648&&t<2147483648)return e.putSignedInt(t,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=t,r};V.derToInteger=function(t){typeof t=="string"&&(t=Ae.util.createBuffer(t));var e=t.length()*8;if(e>32)throw new Error("Integer too large; max is 32-bits.");return t.getSignedInt(e)};V.validate=function(t,e,r,n){var i=!1;if((t.tagClass===e.tagClass||typeof e.tagClass>"u")&&(t.type===e.type||typeof e.type>"u"))if(t.constructed===e.constructed||typeof e.constructed>"u"){if(i=!0,e.value&&Ae.util.isArray(e.value))for(var o=0,s=0;i&&s<e.value.length;++s)i=e.value[s].optional||!1,t.value[o]&&(i=V.validate(t.value[o],e.value[s],r,n),i?++o:e.value[s].optional&&(i=!0)),!i&&n&&n.push("["+e.name+'] Tag class "'+e.tagClass+'", type "'+e.type+'" expected value length "'+e.value.length+'", got "'+t.value.length+'"');if(i&&r&&(e.capture&&(r[e.capture]=t.value),e.captureAsn1&&(r[e.captureAsn1]=t),e.captureBitStringContents&&"bitStringContents"in t&&(r[e.captureBitStringContents]=t.bitStringContents),e.captureBitStringValue&&"bitStringContents"in t)){var a;if(t.bitStringContents.length<2)r[e.captureBitStringValue]="";else{var c=t.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[e.captureBitStringValue]=t.bitStringContents.slice(1)}}}else n&&n.push("["+e.name+'] Expected constructed "'+e.constructed+'", got "'+t.constructed+'"');else n&&(t.tagClass!==e.tagClass&&n.push("["+e.name+'] Expected tag class "'+e.tagClass+'", got "'+t.tagClass+'"'),t.type!==e.type&&n.push("["+e.name+'] Expected type "'+e.type+'", got "'+t.type+'"'));return i};var xh=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
2
+ "use strict";var Libp2PWebrtc=(()=>{var bm=Object.create;var no=Object.defineProperty;var wm=Object.getOwnPropertyDescriptor;var vm=Object.getOwnPropertyNames;var Em=Object.getPrototypeOf,Sm=Object.prototype.hasOwnProperty;var me=(t,e)=>()=>(t&&(e=t(t=0)),e);var te=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),fe=(t,e)=>{for(var r in e)no(t,r,{get:e[r],enumerable:!0})},_u=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of vm(e))!Sm.call(t,i)&&i!==r&&no(t,i,{get:()=>e[i],enumerable:!(n=wm(e,i))||n.enumerable});return t};var Qe=(t,e,r)=>(r=t!=null?bm(Em(t)):{},_u(e||!t||!t.__esModule?no(r,"default",{value:t,enumerable:!0}):r,t)),io=t=>_u(no({},"__esModule",{value:!0}),t);var Yf=te((I6,$f)=>{"use strict";function Wf(t,e){for(let r in e)Object.defineProperty(t,r,{value:e[r],enumerable:!0,configurable:!0});return t}function Bg(t,e,r){if(!t||typeof t=="string")throw new TypeError("Please pass an Error to err-code");r||(r={}),typeof e=="object"&&(r=e,e=""),e&&(r.code=e);try{return Wf(t,r)}catch{r.message=t.message,r.stack=t.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(t)),Wf(new i,r)}}$f.exports=Bg});var we=te((kB,xh)=>{xh.exports={options:{usePureJavaScript:!1}}});var vh=te((RB,wh)=>{var e0={};wh.exports=e0;var bh={};e0.encode=function(t,e,r){if(typeof e!="string")throw new TypeError('"alphabet" must be a string.');if(r!==void 0&&typeof r!="number")throw new TypeError('"maxline" must be a number.');var n="";if(!(t instanceof Uint8Array))n=Ax(t,e);else{var i=0,o=e.length,s=e.charAt(0),a=[0];for(i=0;i<t.length;++i){for(var c=0,u=t[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;t[i]===0&&i<t.length-1;++i)n+=s;for(i=a.length-1;i>=0;--i)n+=e[a[i]]}if(r){var f=new RegExp(".{1,"+r+"}","g");n=n.match(f).join(`\r
3
+ `)}return n};e0.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=bh[e];if(!r){r=bh[e]=[];for(var n=0;n<e.length;++n)r[e.charCodeAt(n)]=n}t=t.replace(/\s/g,"");for(var i=e.length,o=e.charAt(0),s=[0],n=0;n<t.length;n++){var a=r[t.charCodeAt(n)];if(a===void 0)return;for(var c=0,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;t[f]===o&&f<t.length-1;++f)s.push(0);return typeof Buffer<"u"?Buffer.from(s.reverse()):new Uint8Array(s.reverse())};function Ax(t,e){var r=0,n=e.length,i=e.charAt(0),o=[0];for(r=0;r<t.length();++r){for(var s=0,a=t.at(r);s<o.length;++s)a+=o[s]<<8,o[s]=a%n,a=a/n|0;for(;a>0;)o.push(a%n),a=a/n|0}var c="";for(r=0;t.at(r)===0&&r<t.length()-1;++r)c+=i;for(r=o.length-1;r>=0;--r)c+=e[o[r]];return c}});var Me=te((LB,Ah)=>{var Eh=we(),Sh=vh(),w=Ah.exports=Eh.util=Eh.util||{};(function(){if(typeof process<"u"&&process.nextTick&&!process.browser){w.nextTick=process.nextTick,typeof setImmediate=="function"?w.setImmediate=setImmediate:w.setImmediate=w.nextTick;return}if(typeof setImmediate=="function"){w.setImmediate=function(){return setImmediate.apply(void 0,arguments)},w.nextTick=function(a){return setImmediate(a)};return}if(w.setImmediate=function(a){setTimeout(a,0)},typeof window<"u"&&typeof window.postMessage=="function"){let a=function(c){if(c.source===window&&c.data===t){c.stopPropagation();var u=e.slice();e.length=0,u.forEach(function(f){f()})}};var s=a,t="forge.setImmediate",e=[];w.setImmediate=function(c){e.push(c),e.length===1&&window.postMessage(t,"*")},window.addEventListener("message",a,!0)}if(typeof MutationObserver<"u"){var r=Date.now(),n=!0,i=document.createElement("div"),e=[];new MutationObserver(function(){var c=e.slice();e.length=0,c.forEach(function(u){u()})}).observe(i,{attributes:!0});var o=w.setImmediate;w.setImmediate=function(c){Date.now()-r>15?(r=Date.now(),o(c)):(e.push(c),e.length===1&&i.setAttribute("a",n=!n))}}w.nextTick=w.setImmediate})();w.isNodejs=typeof process<"u"&&process.versions&&process.versions.node;w.globalScope=function(){return w.isNodejs?globalThis:typeof self>"u"?window:self}();w.isArray=Array.isArray||function(t){return Object.prototype.toString.call(t)==="[object Array]"};w.isArrayBuffer=function(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer};w.isArrayBufferView=function(t){return t&&w.isArrayBuffer(t.buffer)&&t.byteLength!==void 0};function Ni(t){if(!(t===8||t===16||t===24||t===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+t)}w.ByteBuffer=t0;function t0(t){if(this.data="",this.read=0,typeof t=="string")this.data=t;else if(w.isArrayBuffer(t)||w.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 t0||typeof t=="object"&&typeof t.data=="string"&&typeof t.read=="number")&&(this.data=t.data,this.read=t.read);this._constructedStringLength=0}w.ByteStringBuffer=t0;var Dx=4096;w.ByteStringBuffer.prototype._optimizeConstructedString=function(t){this._constructedStringLength+=t,this._constructedStringLength>Dx&&(this.data.substr(0,1),this._constructedStringLength=0)};w.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read};w.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0};w.ByteStringBuffer.prototype.putByte=function(t){return this.putBytes(String.fromCharCode(t))};w.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};w.ByteStringBuffer.prototype.putBytes=function(t){return this.data+=t,this._optimizeConstructedString(t.length),this};w.ByteStringBuffer.prototype.putString=function(t){return this.putBytes(w.encodeUtf8(t))};w.ByteStringBuffer.prototype.putInt16=function(t){return this.putBytes(String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};w.ByteStringBuffer.prototype.putInt24=function(t){return this.putBytes(String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255))};w.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))};w.ByteStringBuffer.prototype.putInt16Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255))};w.ByteStringBuffer.prototype.putInt24Le=function(t){return this.putBytes(String.fromCharCode(t&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t>>16&255))};w.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))};w.ByteStringBuffer.prototype.putInt=function(t,e){Ni(e);var r="";do e-=8,r+=String.fromCharCode(t>>e&255);while(e>0);return this.putBytes(r)};w.ByteStringBuffer.prototype.putSignedInt=function(t,e){return t<0&&(t+=2<<e-1),this.putInt(t,e)};w.ByteStringBuffer.prototype.putBuffer=function(t){return this.putBytes(t.getBytes())};w.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)};w.ByteStringBuffer.prototype.getInt16=function(){var t=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,t};w.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};w.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};w.ByteStringBuffer.prototype.getInt16Le=function(){var t=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,t};w.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};w.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};w.ByteStringBuffer.prototype.getInt=function(t){Ni(t);var e=0;do e=(e<<8)+this.data.charCodeAt(this.read++),t-=8;while(t>0);return e};w.ByteStringBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};w.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};w.ByteStringBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};w.ByteStringBuffer.prototype.at=function(t){return this.data.charCodeAt(this.read+t)};w.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};w.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)};w.ByteStringBuffer.prototype.copy=function(){var t=w.createBuffer(this.data);return t.read=this.read,t};w.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this};w.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this};w.ByteStringBuffer.prototype.truncate=function(t){var e=Math.max(0,this.length()-t);return this.data=this.data.substr(this.read,e),this.read=0,this};w.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};w.ByteStringBuffer.prototype.toString=function(){return w.decodeUtf8(this.bytes())};function Bx(t,e){e=e||{},this.read=e.readOffset||0,this.growSize=e.growSize||1024;var r=w.isArrayBuffer(t),n=w.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)}w.DataBuffer=Bx;w.DataBuffer.prototype.length=function(){return this.write-this.read};w.DataBuffer.prototype.isEmpty=function(){return this.length()<=0};w.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};w.DataBuffer.prototype.putByte=function(t){return this.accommodate(1),this.data.setUint8(this.write++,t),this};w.DataBuffer.prototype.fillWithByte=function(t,e){this.accommodate(e);for(var r=0;r<e;++r)this.data.setUint8(t);return this};w.DataBuffer.prototype.putBytes=function(t,e){if(w.isArrayBufferView(t)){var r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),n=r.byteLength-r.byteOffset;this.accommodate(n);var i=new Uint8Array(this.data.buffer,this.write);return i.set(r),this.write+=n,this}if(w.isArrayBuffer(t)){var r=new Uint8Array(t);this.accommodate(r.byteLength);var i=new Uint8Array(this.data.buffer);return i.set(r,this.write),this.write+=r.byteLength,this}if(t instanceof w.DataBuffer||typeof t=="object"&&typeof t.read=="number"&&typeof t.write=="number"&&w.isArrayBufferView(t.data)){var r=new Uint8Array(t.data.byteLength,t.read,t.length());this.accommodate(r.byteLength);var i=new Uint8Array(t.data.byteLength,this.write);return i.set(r),this.write+=r.byteLength,this}if(t instanceof w.ByteStringBuffer&&(t=t.data,e="binary"),e=e||"binary",typeof t=="string"){var o;if(e==="hex")return this.accommodate(Math.ceil(t.length/2)),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.hex.decode(t,o,this.write),this;if(e==="base64")return this.accommodate(Math.ceil(t.length/4)*3),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.base64.decode(t,o,this.write),this;if(e==="utf8"&&(t=w.encodeUtf8(t),e="binary"),e==="binary"||e==="raw")return this.accommodate(t.length),o=new Uint8Array(this.data.buffer,this.write),this.write+=w.binary.raw.decode(o),this;if(e==="utf16")return this.accommodate(t.length*2),o=new Uint16Array(this.data.buffer,this.write),this.write+=w.text.utf16.encode(o),this;throw new Error("Invalid encoding: "+e)}throw Error("Invalid parameter: "+t)};w.DataBuffer.prototype.putBuffer=function(t){return this.putBytes(t),t.clear(),this};w.DataBuffer.prototype.putString=function(t){return this.putBytes(t,"utf16")};w.DataBuffer.prototype.putInt16=function(t){return this.accommodate(2),this.data.setInt16(this.write,t),this.write+=2,this};w.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};w.DataBuffer.prototype.putInt32=function(t){return this.accommodate(4),this.data.setInt32(this.write,t),this.write+=4,this};w.DataBuffer.prototype.putInt16Le=function(t){return this.accommodate(2),this.data.setInt16(this.write,t,!0),this.write+=2,this};w.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};w.DataBuffer.prototype.putInt32Le=function(t){return this.accommodate(4),this.data.setInt32(this.write,t,!0),this.write+=4,this};w.DataBuffer.prototype.putInt=function(t,e){Ni(e),this.accommodate(e/8);do e-=8,this.data.setInt8(this.write++,t>>e&255);while(e>0);return this};w.DataBuffer.prototype.putSignedInt=function(t,e){return Ni(e),this.accommodate(e/8),t<0&&(t+=2<<e-1),this.putInt(t,e)};w.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)};w.DataBuffer.prototype.getInt16=function(){var t=this.data.getInt16(this.read);return this.read+=2,t};w.DataBuffer.prototype.getInt24=function(){var t=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,t};w.DataBuffer.prototype.getInt32=function(){var t=this.data.getInt32(this.read);return this.read+=4,t};w.DataBuffer.prototype.getInt16Le=function(){var t=this.data.getInt16(this.read,!0);return this.read+=2,t};w.DataBuffer.prototype.getInt24Le=function(){var t=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,t};w.DataBuffer.prototype.getInt32Le=function(){var t=this.data.getInt32(this.read,!0);return this.read+=4,t};w.DataBuffer.prototype.getInt=function(t){Ni(t);var e=0;do e=(e<<8)+this.data.getInt8(this.read++),t-=8;while(t>0);return e};w.DataBuffer.prototype.getSignedInt=function(t){var e=this.getInt(t),r=2<<t-2;return e>=r&&(e-=r<<1),e};w.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};w.DataBuffer.prototype.bytes=function(t){return typeof t>"u"?this.data.slice(this.read):this.data.slice(this.read,this.read+t)};w.DataBuffer.prototype.at=function(t){return this.data.getUint8(this.read+t)};w.DataBuffer.prototype.setAt=function(t,e){return this.data.setUint8(t,e),this};w.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)};w.DataBuffer.prototype.copy=function(){return new w.DataBuffer(this)};w.DataBuffer.prototype.compact=function(){if(this.read>0){var 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};w.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this};w.DataBuffer.prototype.truncate=function(t){return this.write=Math.max(0,this.length()-t),this.read=Math.min(this.read,this.write),this};w.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};w.DataBuffer.prototype.toString=function(t){var e=new Uint8Array(this.data,this.read,this.length());if(t=t||"utf8",t==="binary"||t==="raw")return w.binary.raw.encode(e);if(t==="hex")return w.binary.hex.encode(e);if(t==="base64")return w.binary.base64.encode(e);if(t==="utf8")return w.text.utf8.decode(e);if(t==="utf16")return w.text.utf16.decode(e);throw new Error("Invalid encoding: "+t)};w.createBuffer=function(t,e){return e=e||"raw",t!==void 0&&e==="utf8"&&(t=w.encodeUtf8(t)),new w.ByteBuffer(t)};w.fillString=function(t,e){for(var r="";e>0;)e&1&&(r+=t),e>>>=1,e>0&&(t+=t);return r};w.xorBytes=function(t,e,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=t.charCodeAt(s)^e.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+=o,n};w.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};w.bytesToHex=function(t){return w.createBuffer(t).toHex()};w.int32ToBytes=function(t){return String.fromCharCode(t>>24&255)+String.fromCharCode(t>>16&255)+String.fromCharCode(t>>8&255)+String.fromCharCode(t&255)};var Lr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Nr=[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],Ch="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";w.encode64=function(t,e){for(var r="",n="",i,o,s,a=0;a<t.length;)i=t.charCodeAt(a++),o=t.charCodeAt(a++),s=t.charCodeAt(a++),r+=Lr.charAt(i>>2),r+=Lr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Lr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Lr.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
4
+ `,r=r.substr(e));return n+=r,n};w.decode64=function(t){t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var e="",r,n,i,o,s=0;s<t.length;)r=Nr[t.charCodeAt(s++)-43],n=Nr[t.charCodeAt(s++)-43],i=Nr[t.charCodeAt(s++)-43],o=Nr[t.charCodeAt(s++)-43],e+=String.fromCharCode(r<<2|n>>4),i!==64&&(e+=String.fromCharCode((n&15)<<4|i>>2),o!==64&&(e+=String.fromCharCode((i&3)<<6|o)));return e};w.encodeUtf8=function(t){return unescape(encodeURIComponent(t))};w.decodeUtf8=function(t){return decodeURIComponent(escape(t))};w.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:Sh.encode,decode:Sh.decode}};w.binary.raw.encode=function(t){return String.fromCharCode.apply(null,t)};w.binary.raw.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,o=0;o<t.length;++o)n[i++]=t.charCodeAt(o);return e?i-r:n};w.binary.hex.encode=w.bytesToHex;w.binary.hex.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(Math.ceil(t.length/2))),r=r||0;var i=0,o=r;for(t.length&1&&(i=1,n[o++]=parseInt(t[0],16));i<t.length;i+=2)n[o++]=parseInt(t.substr(i,2),16);return e?o-r:n};w.binary.base64.encode=function(t,e){for(var r="",n="",i,o,s,a=0;a<t.byteLength;)i=t[a++],o=t[a++],s=t[a++],r+=Lr.charAt(i>>2),r+=Lr.charAt((i&3)<<4|o>>4),isNaN(o)?r+="==":(r+=Lr.charAt((o&15)<<2|s>>6),r+=isNaN(s)?"=":Lr.charAt(s&63)),e&&r.length>e&&(n+=r.substr(0,e)+`\r
5
+ `,r=r.substr(e));return n+=r,n};w.binary.base64.decode=function(t,e,r){var n=e;n||(n=new Uint8Array(Math.ceil(t.length/4)*3)),t=t.replace(/[^A-Za-z0-9\+\/\=]/g,""),r=r||0;for(var i,o,s,a,c=0,u=r;c<t.length;)i=Nr[t.charCodeAt(c++)-43],o=Nr[t.charCodeAt(c++)-43],s=Nr[t.charCodeAt(c++)-43],a=Nr[t.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 e?u-r:n.subarray(0,u)};w.binary.base58.encode=function(t,e){return w.binary.baseN.encode(t,Ch,e)};w.binary.base58.decode=function(t,e){return w.binary.baseN.decode(t,Ch,e)};w.text={utf8:{},utf16:{}};w.text.utf8.encode=function(t,e,r){t=w.encodeUtf8(t);var n=e;n||(n=new Uint8Array(t.length)),r=r||0;for(var i=r,o=0;o<t.length;++o)n[i++]=t.charCodeAt(o);return e?i-r:n};w.text.utf8.decode=function(t){return w.decodeUtf8(String.fromCharCode.apply(null,t))};w.text.utf16.encode=function(t,e,r){var n=e;n||(n=new Uint8Array(t.length*2));var i=new Uint16Array(n.buffer);r=r||0;for(var o=r,s=r,a=0;a<t.length;++a)i[s++]=t.charCodeAt(a),o+=2;return e?o-r:n};w.text.utf16.decode=function(t){return String.fromCharCode.apply(null,new Uint16Array(t.buffer))};w.deflate=function(t,e,r){if(e=w.decode64(t.deflate(w.encode64(e)).rval),r){var n=2,i=e.charCodeAt(1);i&32&&(n=6),e=e.substring(n,e.length-4)}return e};w.inflate=function(t,e,r){var n=t.inflate(w.encode64(e)).rval;return n===null?null:w.decode64(n)};var r0=function(t,e,r){if(!t)throw new Error("WebStorage not available.");var n;if(r===null?n=t.removeItem(e):(r=w.encode64(JSON.stringify(r)),n=t.setItem(e,r)),typeof n<"u"&&n.rval!==!0){var i=new Error(n.error.message);throw i.id=n.error.id,i.name=n.error.name,i}},n0=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(w.decode64(r))),r},Ix=function(t,e,r,n){var i=n0(t,e);i===null&&(i={}),i[r]=n,r0(t,e,i)},Tx=function(t,e,r){var n=n0(t,e);return n!==null&&(n=r in n?n[r]:null),n},_x=function(t,e,r){var n=n0(t,e);if(n!==null&&r in n){delete n[r];var i=!0;for(var o in n){i=!1;break}i&&(n=null),r0(t,e,n)}},kx=function(t,e){r0(t,e,null)},hs=function(t,e,r){var n=null;typeof r>"u"&&(r=["web","flash"]);var i,o=!1,s=null;for(var a in r){i=r[a];try{if(i==="flash"||i==="both"){if(e[0]===null)throw new Error("Flash local storage not available.");n=t.apply(this,e),o=i==="flash"}(i==="web"||i==="both")&&(e[0]=localStorage,n=t.apply(this,e),o=!0)}catch(c){s=c}if(o)break}if(!o)throw s;return n};w.setItem=function(t,e,r,n,i){hs(Ix,arguments,i)};w.getItem=function(t,e,r,n){return hs(Tx,arguments,n)};w.removeItem=function(t,e,r,n){hs(_x,arguments,n)};w.clearItems=function(t,e,r){hs(kx,arguments,r)};w.isEmpty=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0};w.format=function(t){for(var e=/%./g,r,n,i=0,o=[],s=0;r=e.exec(t);){n=t.substring(s,e.lastIndex-2),n.length>0&&o.push(n),s=e.lastIndex;var a=r[0][1];switch(a){case"s":case"o":i<arguments.length?o.push(arguments[i+++1]):o.push("<?>");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(t.substring(s)),o.join("")};w.formatNumber=function(t,e,r,n){var i=t,o=isNaN(e=Math.abs(e))?2:e,s=r===void 0?",":r,a=n===void 0?".":n,c=i<0?"-":"",u=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",f=u.length>3?u.length%3:0;return c+(f?u.substr(0,f)+a:"")+u.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-u).toFixed(o).slice(2):"")};w.formatSize=function(t){return t>=1073741824?t=w.formatNumber(t/1073741824,2,".","")+" GiB":t>=1048576?t=w.formatNumber(t/1048576,2,".","")+" MiB":t>=1024?t=w.formatNumber(t/1024,0)+" KiB":t=w.formatNumber(t,0)+" bytes",t};w.bytesFromIP=function(t){return t.indexOf(".")!==-1?w.bytesFromIPv4(t):t.indexOf(":")!==-1?w.bytesFromIPv6(t):null};w.bytesFromIPv4=function(t){if(t=t.split("."),t.length!==4)return null;for(var e=w.createBuffer(),r=0;r<t.length;++r){var n=parseInt(t[r],10);if(isNaN(n))return null;e.putByte(n)}return e.getBytes()};w.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=w.createBuffer(),i=0;i<8;++i){if(!t[i]||t[i].length===0){n.fillWithByte(0,r),r=0;continue}var o=w.hexToBytes(t[i]);o.length<2&&n.putByte(0),n.putBytes(o)}return n.getBytes()};w.bytesToIP=function(t){return t.length===4?w.bytesToIPv4(t):t.length===16?w.bytesToIPv6(t):null};w.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(".")};w.bytesToIPv6=function(t){if(t.length!==16)return null;for(var e=[],r=[],n=0,i=0;i<t.length;i+=2){for(var o=w.bytesToHex(t[i]+t[i+1]);o[0]==="0"&&o!=="0";)o=o.substr(1);if(o==="0"){var s=r[r.length-1],a=e.length;!s||a!==s.end+1?r.push({start:a,end:a}):(s.end=a,s.end-s.start>r[n].end-r[n].start&&(n=r.length-1))}e.push(o)}if(r.length>0){var c=r[n];c.end-c.start>0&&(e.splice(c.start,c.end-c.start+1,""),c.start===0&&e.unshift(""),c.end===7&&e.push(""))}return e.join(":")};w.estimateCores=function(t,e){if(typeof t=="function"&&(e=t,t={}),t=t||{},"cores"in w&&!t.update)return e(null,w.cores);if(typeof navigator<"u"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return w.cores=navigator.hardwareConcurrency,e(null,w.cores);if(typeof Worker>"u")return w.cores=1,e(null,w.cores);if(typeof Blob>"u")return w.cores=2,e(null,w.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(s){for(var a=Date.now(),c=a+4;Date.now()<c;);self.postMessage({st:a,et:c})})}.toString(),")()"],{type:"application/javascript"}));n([],5,16);function n(s,a,c){if(a===0){var u=Math.floor(s.reduce(function(f,l){return f+l},0)/s.length);return w.cores=Math.max(1,u),URL.revokeObjectURL(r),e(null,w.cores)}i(c,function(f,l){s.push(o(c,l)),n(s,a-1,c)})}function i(s,a){for(var c=[],u=[],f=0;f<s;++f){var l=new Worker(r);l.addEventListener("message",function(h){if(u.push(h.data),u.length===s){for(var y=0;y<s;++y)c[y].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]=[],h=0;h<s;++h)if(u!==h){var y=a[h];(f.st>y.st&&f.st<y.et||y.st>f.st&&y.st<f.et)&&l.push(h)}return c.reduce(function(d,p){return Math.max(d,p.length)},0)}}});var ds=te((NB,Dh)=>{var Pi=we();Pi.pki=Pi.pki||{};var i0=Dh.exports=Pi.pki.oids=Pi.oids=Pi.oids||{};function N(t,e){i0[t]=e,i0[e]=t}function xe(t,e){i0[t]=e}N("1.2.840.113549.1.1.1","rsaEncryption");N("1.2.840.113549.1.1.4","md5WithRSAEncryption");N("1.2.840.113549.1.1.5","sha1WithRSAEncryption");N("1.2.840.113549.1.1.7","RSAES-OAEP");N("1.2.840.113549.1.1.8","mgf1");N("1.2.840.113549.1.1.9","pSpecified");N("1.2.840.113549.1.1.10","RSASSA-PSS");N("1.2.840.113549.1.1.11","sha256WithRSAEncryption");N("1.2.840.113549.1.1.12","sha384WithRSAEncryption");N("1.2.840.113549.1.1.13","sha512WithRSAEncryption");N("1.3.101.112","EdDSA25519");N("1.2.840.10040.4.3","dsa-with-sha1");N("1.3.14.3.2.7","desCBC");N("1.3.14.3.2.26","sha1");N("1.3.14.3.2.29","sha1WithRSASignature");N("2.16.840.1.101.3.4.2.1","sha256");N("2.16.840.1.101.3.4.2.2","sha384");N("2.16.840.1.101.3.4.2.3","sha512");N("2.16.840.1.101.3.4.2.4","sha224");N("2.16.840.1.101.3.4.2.5","sha512-224");N("2.16.840.1.101.3.4.2.6","sha512-256");N("1.2.840.113549.2.2","md2");N("1.2.840.113549.2.5","md5");N("1.2.840.113549.1.7.1","data");N("1.2.840.113549.1.7.2","signedData");N("1.2.840.113549.1.7.3","envelopedData");N("1.2.840.113549.1.7.4","signedAndEnvelopedData");N("1.2.840.113549.1.7.5","digestedData");N("1.2.840.113549.1.7.6","encryptedData");N("1.2.840.113549.1.9.1","emailAddress");N("1.2.840.113549.1.9.2","unstructuredName");N("1.2.840.113549.1.9.3","contentType");N("1.2.840.113549.1.9.4","messageDigest");N("1.2.840.113549.1.9.5","signingTime");N("1.2.840.113549.1.9.6","counterSignature");N("1.2.840.113549.1.9.7","challengePassword");N("1.2.840.113549.1.9.8","unstructuredAddress");N("1.2.840.113549.1.9.14","extensionRequest");N("1.2.840.113549.1.9.20","friendlyName");N("1.2.840.113549.1.9.21","localKeyId");N("1.2.840.113549.1.9.22.1","x509Certificate");N("1.2.840.113549.1.12.10.1.1","keyBag");N("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag");N("1.2.840.113549.1.12.10.1.3","certBag");N("1.2.840.113549.1.12.10.1.4","crlBag");N("1.2.840.113549.1.12.10.1.5","secretBag");N("1.2.840.113549.1.12.10.1.6","safeContentsBag");N("1.2.840.113549.1.5.13","pkcs5PBES2");N("1.2.840.113549.1.5.12","pkcs5PBKDF2");N("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4");N("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4");N("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC");N("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC");N("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC");N("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC");N("1.2.840.113549.2.7","hmacWithSHA1");N("1.2.840.113549.2.8","hmacWithSHA224");N("1.2.840.113549.2.9","hmacWithSHA256");N("1.2.840.113549.2.10","hmacWithSHA384");N("1.2.840.113549.2.11","hmacWithSHA512");N("1.2.840.113549.3.7","des-EDE3-CBC");N("2.16.840.1.101.3.4.1.2","aes128-CBC");N("2.16.840.1.101.3.4.1.22","aes192-CBC");N("2.16.840.1.101.3.4.1.42","aes256-CBC");N("2.5.4.3","commonName");N("2.5.4.4","surname");N("2.5.4.5","serialNumber");N("2.5.4.6","countryName");N("2.5.4.7","localityName");N("2.5.4.8","stateOrProvinceName");N("2.5.4.9","streetAddress");N("2.5.4.10","organizationName");N("2.5.4.11","organizationalUnitName");N("2.5.4.12","title");N("2.5.4.13","description");N("2.5.4.15","businessCategory");N("2.5.4.17","postalCode");N("2.5.4.42","givenName");N("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName");N("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName");N("2.16.840.1.113730.1.1","nsCertType");N("2.16.840.1.113730.1.13","nsComment");xe("2.5.29.1","authorityKeyIdentifier");xe("2.5.29.2","keyAttributes");xe("2.5.29.3","certificatePolicies");xe("2.5.29.4","keyUsageRestriction");xe("2.5.29.5","policyMapping");xe("2.5.29.6","subtreesConstraint");xe("2.5.29.7","subjectAltName");xe("2.5.29.8","issuerAltName");xe("2.5.29.9","subjectDirectoryAttributes");xe("2.5.29.10","basicConstraints");xe("2.5.29.11","nameConstraints");xe("2.5.29.12","policyConstraints");xe("2.5.29.13","basicConstraints");N("2.5.29.14","subjectKeyIdentifier");N("2.5.29.15","keyUsage");xe("2.5.29.16","privateKeyUsagePeriod");N("2.5.29.17","subjectAltName");N("2.5.29.18","issuerAltName");N("2.5.29.19","basicConstraints");xe("2.5.29.20","cRLNumber");xe("2.5.29.21","cRLReason");xe("2.5.29.22","expirationDate");xe("2.5.29.23","instructionCode");xe("2.5.29.24","invalidityDate");xe("2.5.29.25","cRLDistributionPoints");xe("2.5.29.26","issuingDistributionPoint");xe("2.5.29.27","deltaCRLIndicator");xe("2.5.29.28","issuingDistributionPoint");xe("2.5.29.29","certificateIssuer");xe("2.5.29.30","nameConstraints");N("2.5.29.31","cRLDistributionPoints");N("2.5.29.32","certificatePolicies");xe("2.5.29.33","policyMappings");xe("2.5.29.34","policyConstraints");N("2.5.29.35","authorityKeyIdentifier");xe("2.5.29.36","policyConstraints");N("2.5.29.37","extKeyUsage");xe("2.5.29.46","freshestCRL");xe("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 Oi=te((PB,Ih)=>{var Be=we();Me();ds();var V=Ih.exports=Be.asn1=Be.asn1||{};V.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192};V.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30};V.create=function(t,e,r,n,i){if(Be.util.isArray(n)){for(var o=[],s=0;s<n.length;++s)n[s]!==void 0&&o.push(n[s]);n=o}var a={tagClass:t,type:e,constructed:r,composed:r||Be.util.isArray(n),value:n};return i&&"bitStringContents"in i&&(a.bitStringContents=i.bitStringContents,a.original=V.copy(a)),a};V.copy=function(t,e){var r;if(Be.util.isArray(t)){r=[];for(var n=0;n<t.length;++n)r.push(V.copy(t[n],e));return r}return typeof t=="string"?t:(r={tagClass:t.tagClass,type:t.type,constructed:t.constructed,composed:t.composed,value:V.copy(t.value,e)},e&&!e.excludeBitStringContents&&(r.bitStringContents=t.bitStringContents),r)};V.equals=function(t,e,r){if(Be.util.isArray(t)){if(!Be.util.isArray(e)||t.length!==e.length)return!1;for(var n=0;n<t.length;++n)if(!V.equals(t[n],e[n]))return!1;return!0}if(typeof t!=typeof e)return!1;if(typeof t=="string")return t===e;var i=t.tagClass===e.tagClass&&t.type===e.type&&t.constructed===e.constructed&&t.composed===e.composed&&V.equals(t.value,e.value);return r&&r.includeBitStringContents&&(i=i&&t.bitStringContents===e.bitStringContents),i};V.getBerValueLength=function(t){var e=t.getByte();if(e!==128){var r,n=e&128;return n?r=t.getInt((e&127)<<3):r=e,r}};function Ui(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 Rx=function(t,e){var r=t.getByte();if(e--,r!==128){var n,i=r&128;if(!i)n=r;else{var o=r&127;Ui(t,e,o),n=t.getInt(o<<3)}if(n<0)throw new Error("Negative length: "+n);return n}};V.fromDer=function(t,e){e===void 0&&(e={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),typeof e=="boolean"&&(e={strict:e,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in e||(e.strict=!0),"parseAllBytes"in e||(e.parseAllBytes=!0),"decodeBitStrings"in e||(e.decodeBitStrings=!0),typeof t=="string"&&(t=Be.util.createBuffer(t));var r=t.length(),n=ps(t,t.length(),0,e);if(e.parseAllBytes&&t.length()!==0){var i=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=r,i.remaining=t.length(),i}return n};function ps(t,e,r,n){var i;Ui(t,e,2);var o=t.getByte();e--;var s=o&192,a=o&31;i=t.length();var c=Rx(t,e);if(e-=i-t.length(),c!==void 0&&c>e){if(n.strict){var u=new Error("Too few bytes to read ASN.1 value.");throw u.available=t.length(),u.remaining=e,u.requested=c,u}c=e}var f,l,h=(o&32)===32;if(h)if(f=[],c===void 0)for(;;){if(Ui(t,e,2),t.bytes(2)==="\0\0"){t.getBytes(2),e-=2;break}i=t.length(),f.push(ps(t,e,r+1,n)),e-=i-t.length()}else for(;c>0;)i=t.length(),f.push(ps(t,c,r+1,n)),e-=i-t.length(),c-=i-t.length();if(f===void 0&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&(l=t.bytes(c)),f===void 0&&n.decodeBitStrings&&s===V.Class.UNIVERSAL&&a===V.Type.BITSTRING&&c>1){var y=t.read,d=e,p=0;if(a===V.Type.BITSTRING&&(Ui(t,e,1),p=t.getByte(),e--),p===0)try{i=t.length();var m={strict:!0,decodeBitStrings:!0},g=ps(t,e,r+1,m),b=i-t.length();e-=b,a==V.Type.BITSTRING&&b++;var x=g.tagClass;b===c&&(x===V.Class.UNIVERSAL||x===V.Class.CONTEXT_SPECIFIC)&&(f=[g])}catch{}f===void 0&&(t.read=y,e=d)}if(f===void 0){if(c===void 0){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");c=e}if(a===V.Type.BMPSTRING)for(f="";c>0;c-=2)Ui(t,e,2),f+=String.fromCharCode(t.getInt16()),e-=2;else f=t.getBytes(c),e-=c}var S=l===void 0?null:{bitStringContents:l};return V.create(s,a,h,f,S)}V.toDer=function(t){var e=Be.util.createBuffer(),r=t.tagClass|t.type,n=Be.util.createBuffer(),i=!1;if("bitStringContents"in t&&(i=!0,t.original&&(i=V.equals(t,t.original))),i)n.putBytes(t.bitStringContents);else if(t.composed){t.constructed?r|=32:n.putByte(0);for(var o=0;o<t.value.length;++o)t.value[o]!==void 0&&n.putBuffer(V.toDer(t.value[o]))}else if(t.type===V.Type.BMPSTRING)for(var o=0;o<t.value.length;++o)n.putInt16(t.value.charCodeAt(o));else t.type===V.Type.INTEGER&&t.value.length>1&&(t.value.charCodeAt(0)===0&&!(t.value.charCodeAt(1)&128)||t.value.charCodeAt(0)===255&&(t.value.charCodeAt(1)&128)===128)?n.putBytes(t.value.substr(1)):n.putBytes(t.value);if(e.putByte(r),n.length()<=127)e.putByte(n.length()&127);else{var s=n.length(),a="";do a+=String.fromCharCode(s&255),s=s>>>8;while(s>0);e.putByte(a.length|128);for(var o=a.length-1;o>=0;--o)e.putByte(a.charCodeAt(o))}return e.putBuffer(n),e};V.oidToDer=function(t){var e=t.split("."),r=Be.util.createBuffer();r.putByte(40*parseInt(e[0],10)+parseInt(e[1],10));for(var n,i,o,s,a=2;a<e.length;++a){n=!0,i=[],o=parseInt(e[a],10);do s=o&127,o=o>>>7,n||(s|=128),i.push(s),n=!1;while(o>0);for(var c=i.length-1;c>=0;--c)r.putByte(i[c])}return r};V.derToOid=function(t){var e;typeof t=="string"&&(t=Be.util.createBuffer(t));var r=t.getByte();e=Math.floor(r/40)+"."+r%40;for(var n=0;t.length()>0;)r=t.getByte(),n=n<<7,r&128?n+=r&127:(e+="."+(n+r),n=0);return e};V.utcTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(t.substr(2,2),10)-1,i=parseInt(t.substr(4,2),10),o=parseInt(t.substr(6,2),10),s=parseInt(t.substr(8,2),10),a=0;if(t.length>11){var c=t.charAt(10),u=10;c!=="+"&&c!=="-"&&(a=parseInt(t.substr(10,2),10),u+=2)}if(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,0),u&&(c=t.charAt(u),c==="+"||c==="-")){var f=parseInt(t.substr(u+1,2),10),l=parseInt(t.substr(u+4,2),10),h=f*60+l;h*=6e4,c==="+"?e.setTime(+e-h):e.setTime(+e+h)}return e};V.generalizedTimeToDate=function(t){var e=new Date,r=parseInt(t.substr(0,4),10),n=parseInt(t.substr(4,2),10)-1,i=parseInt(t.substr(6,2),10),o=parseInt(t.substr(8,2),10),s=parseInt(t.substr(10,2),10),a=parseInt(t.substr(12,2),10),c=0,u=0,f=!1;t.charAt(t.length-1)==="Z"&&(f=!0);var l=t.length-5,h=t.charAt(l);if(h==="+"||h==="-"){var y=parseInt(t.substr(l+1,2),10),d=parseInt(t.substr(l+4,2),10);u=y*60+d,u*=6e4,h==="+"&&(u*=-1),f=!0}return t.charAt(14)==="."&&(c=parseFloat(t.substr(14),10)*1e3),f?(e.setUTCFullYear(r,n,i),e.setUTCHours(o,s,a,c),e.setTime(+e+u)):(e.setFullYear(r,n,i),e.setHours(o,s,a,c)),e};V.dateToUtcTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push((""+t.getUTCFullYear()).substr(2)),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};V.dateToGeneralizedTime=function(t){if(typeof t=="string")return t;var e="",r=[];r.push(""+t.getUTCFullYear()),r.push(""+(t.getUTCMonth()+1)),r.push(""+t.getUTCDate()),r.push(""+t.getUTCHours()),r.push(""+t.getUTCMinutes()),r.push(""+t.getUTCSeconds());for(var n=0;n<r.length;++n)r[n].length<2&&(e+="0"),e+=r[n];return e+="Z",e};V.integerToDer=function(t){var e=Be.util.createBuffer();if(t>=-128&&t<128)return e.putSignedInt(t,8);if(t>=-32768&&t<32768)return e.putSignedInt(t,16);if(t>=-8388608&&t<8388608)return e.putSignedInt(t,24);if(t>=-2147483648&&t<2147483648)return e.putSignedInt(t,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=t,r};V.derToInteger=function(t){typeof t=="string"&&(t=Be.util.createBuffer(t));var e=t.length()*8;if(e>32)throw new Error("Integer too large; max is 32-bits.");return t.getSignedInt(e)};V.validate=function(t,e,r,n){var i=!1;if((t.tagClass===e.tagClass||typeof e.tagClass>"u")&&(t.type===e.type||typeof e.type>"u"))if(t.constructed===e.constructed||typeof e.constructed>"u"){if(i=!0,e.value&&Be.util.isArray(e.value))for(var o=0,s=0;i&&s<e.value.length;++s)i=e.value[s].optional||!1,t.value[o]&&(i=V.validate(t.value[o],e.value[s],r,n),i?++o:e.value[s].optional&&(i=!0)),!i&&n&&n.push("["+e.name+'] Tag class "'+e.tagClass+'", type "'+e.type+'" expected value length "'+e.value.length+'", got "'+t.value.length+'"');if(i&&r&&(e.capture&&(r[e.capture]=t.value),e.captureAsn1&&(r[e.captureAsn1]=t),e.captureBitStringContents&&"bitStringContents"in t&&(r[e.captureBitStringContents]=t.bitStringContents),e.captureBitStringValue&&"bitStringContents"in t)){var a;if(t.bitStringContents.length<2)r[e.captureBitStringValue]="";else{var c=t.bitStringContents.charCodeAt(0);if(c!==0)throw new Error("captureBitStringValue only supported for zero unused bits");r[e.captureBitStringValue]=t.bitStringContents.slice(1)}}}else n&&n.push("["+e.name+'] Expected constructed "'+e.constructed+'", got "'+t.constructed+'"');else n&&(t.tagClass!==e.tagClass&&n.push("["+e.name+'] Expected tag class "'+e.tagClass+'", got "'+t.tagClass+'"'),t.type!==e.type&&n.push("["+e.name+'] Expected type "'+e.type+'", got "'+t.type+'"'));return i};var Bh=/[^\\u0000-\\u00ff]/;V.prettyPrint=function(t,e,r){var n="";e=e||0,r=r||2,e>0&&(n+=`
6
6
  `);for(var i="",o=0;o<e*r;++o)i+=" ";switch(n+=i+"Tag: ",t.tagClass){case V.Class.UNIVERSAL:n+="Universal:";break;case V.Class.APPLICATION:n+="Application:";break;case V.Class.CONTEXT_SPECIFIC:n+="Context-Specific:";break;case V.Class.PRIVATE:n+="Private:";break}if(t.tagClass===V.Class.UNIVERSAL)switch(n+=t.type,t.type){case V.Type.NONE:n+=" (None)";break;case V.Type.BOOLEAN:n+=" (Boolean)";break;case V.Type.INTEGER:n+=" (Integer)";break;case V.Type.BITSTRING:n+=" (Bit string)";break;case V.Type.OCTETSTRING:n+=" (Octet string)";break;case V.Type.NULL:n+=" (Null)";break;case V.Type.OID:n+=" (Object Identifier)";break;case V.Type.ODESC:n+=" (Object Descriptor)";break;case V.Type.EXTERNAL:n+=" (External or Instance of)";break;case V.Type.REAL:n+=" (Real)";break;case V.Type.ENUMERATED:n+=" (Enumerated)";break;case V.Type.EMBEDDED:n+=" (Embedded PDV)";break;case V.Type.UTF8:n+=" (UTF8)";break;case V.Type.ROID:n+=" (Relative Object Identifier)";break;case V.Type.SEQUENCE:n+=" (Sequence)";break;case V.Type.SET:n+=" (Set)";break;case V.Type.PRINTABLESTRING:n+=" (Printable String)";break;case V.Type.IA5String:n+=" (IA5String (ASCII))";break;case V.Type.UTCTIME:n+=" (UTC time)";break;case V.Type.GENERALIZEDTIME:n+=" (Generalized time)";break;case V.Type.BMPSTRING:n+=" (BMP String)";break}else n+=t.type;if(n+=`
7
7
  `,n+=i+"Constructed: "+t.constructed+`
8
- `,t.composed){for(var s=0,a="",o=0;o<t.value.length;++o)t.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(t.value[o],e+1,r),o+1<t.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",t.type===V.Type.OID){var c=V.derToOid(t.value);n+=c,Ae.pki&&Ae.pki.oids&&c in Ae.pki.oids&&(n+=" ("+Ae.pki.oids[c]+") ")}if(t.type===V.Type.INTEGER)try{n+=V.derToInteger(t.value)}catch{n+="0x"+Ae.util.bytesToHex(t.value)}else if(t.type===V.Type.BITSTRING){if(t.value.length>1?n+="0x"+Ae.util.bytesToHex(t.value.slice(1)):n+="(none)",t.value.length>0){var u=t.value.charCodeAt(0);u==1?n+=" (1 unused bit shown)":u>1&&(n+=" ("+u+" unused bits shown)")}}else if(t.type===V.Type.OCTETSTRING)xh.test(t.value)||(n+="("+t.value+") "),n+="0x"+Ae.util.bytesToHex(t.value);else if(t.type===V.Type.UTF8)try{n+=Ae.util.decodeUtf8(t.value)}catch(f){if(f.message==="URI malformed")n+="0x"+Ae.util.bytesToHex(t.value)+" (malformed UTF8)";else throw f}else t.type===V.Type.PRINTABLESTRING||t.type===V.Type.IA5String?n+=t.value:xh.test(t.value)?n+="0x"+Ae.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var n0=re((MD,wh)=>{var qe=be();Fe();wh.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 r0=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)};r0.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)};r0.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()};r0.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 o0=re((VD,vh)=>{var ze=be();Fe();ze.cipher=ze.cipher||{};var ce=vh.exports=ze.cipher.modes=ze.cipher.modes||{};ce.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)};ce.ecb.prototype.start=function(t){};ce.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])};ce.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])};ce.ecb.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ce.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)};ce.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)};ce.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=us(t.iv,this.blockSize),this._prev=this._iv.slice(0);else throw new Error("Invalid IV parameter.")};ce.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};ce.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)};ce.cbc.prototype.pad=function(t,e){var r=t.length()===this.blockSize?this.blockSize:this.blockSize-t.length();return t.fillWithByte(r,r),!0};ce.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)};ce.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=ze.util.createBuffer(),this._partialBytes=0};ce.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=us(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ce.cfb.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32()^this._outBlock[i],e.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ce.cfb.prototype.decrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32(),e.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ce.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=ze.util.createBuffer(),this._partialBytes=0};ce.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=us(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ce.ofb.prototype.encrypt=function(t,e,r){var n=t.length();if(t.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ce.ofb.prototype.decrypt=ce.ofb.prototype.encrypt;ce.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=ze.util.createBuffer(),this._partialBytes=0};ce.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=us(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ce.ctr.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}fs(this._inBlock)};ce.ctr.prototype.decrypt=ce.ctr.prototype.encrypt;ce.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=ze.util.createBuffer(),this._partialBytes=0,this._R=3774873600};ce.gcm.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");var e=ze.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=ze.util.createBuffer(t.additionalData):r=ze.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=ze.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(i0(n*8)))}this._inBlock=this._j0.slice(0),fs(this._inBlock),this._partialBytes=0,r=ze.util.createBuffer(r),this._aDataLength=i0(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()])};ce.gcm.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^=t.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.read-=this.blockSize,e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),fs(this._inBlock)};ce.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),fs(this._inBlock),this._hashBlock[0]=t.getInt32(),this._hashBlock[1]=t.getInt32(),this._hashBlock[2]=t.getInt32(),this._hashBlock[3]=t.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};ce.gcm.prototype.afterFinish=function(t,e){var r=!0;e.decrypt&&e.overflow&&t.truncate(this.blockSize-e.overflow),this.tag=ze.util.createBuffer();var n=this._aDataLength.concat(i0(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),e.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};ce.gcm.prototype.multiply=function(t,e){for(var r=[0,0,0,0],n=e.slice(0),i=0;i<128;++i){var o=t[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};ce.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)};ce.gcm.prototype.tableMultiply=function(t){for(var e=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=t[n]>>>(7-r%8)*4&15,o=this._m[r][i];e[0]^=o[0],e[1]^=o[1],e[2]^=o[2],e[3]^=o[3]}return e};ce.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)};ce.gcm.prototype.generateHashTable=function(t,e){for(var r=8/e,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,u=(n-1-s%n)*e;a[c]=1<<e-1<<u,o[s]=this.generateSubHashTable(this.multiply(a,t),e)}return o};ce.gcm.prototype.generateSubHashTable=function(t,e){var r=1<<e,n=r>>>1,i=new Array(r);i[n]=t.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var u=i[o^n];i[o]=[t[0]^u[0],t[1]^u[1],t[2]^u[2],t[3]^u[3]]}return i};function us(t,e){if(typeof t=="string"&&(t=ze.util.createBuffer(t)),ze.util.isArray(t)&&t.length>4){var r=t;t=ze.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(!ze.util.isArray(t)){for(var i=[],o=e/4,n=0;n<o;++n)i.push(t.getInt32());t=i}return t}function fs(t){t[t.length-1]=t[t.length-1]+1&4294967295}function i0(t){return[t/4294967296|0,t&4294967295]}});var u0=re((HD,Ah)=>{var Ee=be();n0();o0();Fe();Ah.exports=Ee.aes=Ee.aes||{};Ee.aes.startEncrypting=function(t,e,r,n){var i=ls({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};Ee.aes.createEncryptionCipher=function(t,e){return ls({key:t,output:null,decrypt:!1,mode:e})};Ee.aes.startDecrypting=function(t,e,r,n){var i=ls({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};Ee.aes.createDecryptionCipher=function(t,e){return ls({key:t,output:null,decrypt:!0,mode:e})};Ee.aes.Algorithm=function(t,e){c0||Sh();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return a0(r._w,n,i,!1)},decrypt:function(n,i){return a0(r._w,n,i,!0)}}}),r._init=!1};Ee.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=Ee.util.createBuffer(e);else if(Ee.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=Ee.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!Ee.util.isArray(e)){r=e,e=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)e.push(r.getInt32())}}if(!Ee.util.isArray(e)||!(e.length===4||e.length===6||e.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=Ch(e,t.decrypt&&!s),this._init=!0}};Ee.aes._expandKey=function(t,e){return c0||Sh(),Ch(t,e)};Ee.aes._updateBlock=a0;Vn("AES-ECB",Ee.cipher.modes.ecb);Vn("AES-CBC",Ee.cipher.modes.cbc);Vn("AES-CFB",Ee.cipher.modes.cfb);Vn("AES-OFB",Ee.cipher.modes.ofb);Vn("AES-CTR",Ee.cipher.modes.ctr);Vn("AES-GCM",Ee.cipher.modes.gcm);function Vn(t,e){var r=function(){return new Ee.aes.Algorithm(t,e)};Ee.cipher.registerAlgorithm(t,r)}var c0=!1,Mn=4,it,s0,Eh,tn,Rt;function Sh(){c0=!0,Eh=[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;it=new Array(256),s0=new Array(256),tn=new Array(4),Rt=new Array(4);for(var e=0;e<4;++e)tn[e]=new Array(256),Rt[e]=new Array(256);for(var r=0,n=0,i,o,s,a,c,u,f,e=0;e<256;++e){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,it[r]=a,s0[a]=r,c=t[a],i=t[r],o=t[i],s=t[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,Rt[l][a]=f,u=u<<24|u>>>8,f=f<<24|f>>>8;r===0?r=n=1:(r=i^t[t[t[i^s]]],n^=t[t[n]])}}function Ch(t,e){for(var r=t.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=it[n>>>16&255]<<24^it[n>>>8&255]<<16^it[n&255]<<8^it[n>>>24]^Eh[i]<<24,i++):o>6&&c%o===4&&(n=it[n>>>24]<<24^it[n>>>16&255]<<16^it[n>>>8&255]<<8^it[n&255]),r[c]=r[c-o]^n;if(e){var u,f=Rt[0],l=Rt[1],h=Rt[2],g=Rt[3],d=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)d[c]=r[p],d[c+1]=r[p+3],d[c+2]=r[p+2],d[c+3]=r[p+1];else for(var y=0;y<Mn;++y)u=r[p+y],d[c+(3&-y)]=f[it[u>>>24]]^l[it[u>>>16&255]]^h[it[u>>>8&255]]^g[it[u&255]];r=d}return r}function a0(t,e,r,n){var i=t.length/4-1,o,s,a,c,u;n?(o=Rt[0],s=Rt[1],a=Rt[2],c=Rt[3],u=s0):(o=tn[0],s=tn[1],a=tn[2],c=tn[3],u=it);var f,l,h,g,d,p,y;f=e[0]^t[0],l=e[n?3:1]^t[1],h=e[2]^t[2],g=e[n?1:3]^t[3];for(var m=3,b=1;b<i;++b)d=o[f>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[g&255]^t[++m],p=o[l>>>24]^s[h>>>16&255]^a[g>>>8&255]^c[f&255]^t[++m],y=o[h>>>24]^s[g>>>16&255]^a[f>>>8&255]^c[l&255]^t[++m],g=o[g>>>24]^s[f>>>16&255]^a[l>>>8&255]^c[h&255]^t[++m],f=d,l=p,h=y;r[0]=u[f>>>24]<<24^u[l>>>16&255]<<16^u[h>>>8&255]<<8^u[g&255]^t[++m],r[n?3:1]=u[l>>>24]<<24^u[h>>>16&255]<<16^u[g>>>8&255]<<8^u[f&255]^t[++m],r[2]=u[h>>>24]<<24^u[g>>>16&255]<<16^u[f>>>8&255]<<8^u[l&255]^t[++m],r[n?1:3]=u[g>>>24]<<24^u[f>>>16&255]<<16^u[l>>>8&255]<<8^u[h&255]^t[++m]}function ls(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=Ee.cipher.createDecipher(r,t.key):n=Ee.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Ee.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Ih=re((qD,Bh)=>{var Ie=be();n0();o0();Fe();Bh.exports=Ie.des=Ie.des||{};Ie.des.startEncrypting=function(t,e,r,n){var i=hs({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};Ie.des.createEncryptionCipher=function(t,e){return hs({key:t,output:null,decrypt:!1,mode:e})};Ie.des.startDecrypting=function(t,e,r,n){var i=hs({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};Ie.des.createDecryptionCipher=function(t,e){return hs({key:t,output:null,decrypt:!0,mode:e})};Ie.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return Dh(r._keys,n,i,!1)},decrypt:function(n,i){return Dh(r._keys,n,i,!0)}}}),r._init=!1};Ie.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=Ie.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=_x(e),this._init=!0}};Mt("DES-ECB",Ie.cipher.modes.ecb);Mt("DES-CBC",Ie.cipher.modes.cbc);Mt("DES-CFB",Ie.cipher.modes.cfb);Mt("DES-OFB",Ie.cipher.modes.ofb);Mt("DES-CTR",Ie.cipher.modes.ctr);Mt("3DES-ECB",Ie.cipher.modes.ecb);Mt("3DES-CBC",Ie.cipher.modes.cbc);Mt("3DES-CFB",Ie.cipher.modes.cfb);Mt("3DES-OFB",Ie.cipher.modes.ofb);Mt("3DES-CTR",Ie.cipher.modes.ctr);function Mt(t,e){var r=function(){return new Ie.des.Algorithm(t,e)};Ie.cipher.registerAlgorithm(t,r)}var Ex=[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],Sx=[-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],Cx=[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],Ax=[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],Dx=[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],Bx=[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],Ix=[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],Tx=[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 _x(t){for(var e=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],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],h=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],g=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],d=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=t.length()>8?3:1,y=[],m=[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 v=t.getInt32(),E=t.getInt32();x=(v>>>4^E)&252645135,E^=x,v^=x<<4,x=(E>>>-16^v)&65535,v^=x,E^=x<<-16,x=(v>>>2^E)&858993459,E^=x,v^=x<<2,x=(E>>>-16^v)&65535,v^=x,E^=x<<-16,x=(v>>>1^E)&1431655765,E^=x,v^=x<<1,x=(E>>>8^v)&16711935,v^=x,E^=x<<8,x=(v>>>1^E)&1431655765,E^=x,v^=x<<1,x=v<<8|E>>>20&240,v=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=x;for(var B=0;B<m.length;++B){m[B]?(v=v<<2|v>>>26,E=E<<2|E>>>26):(v=v<<1|v>>>27,E=E<<1|E>>>27),v&=-15,E&=-15;var D=e[v>>>28]|r[v>>>24&15]|n[v>>>20&15]|i[v>>>16&15]|o[v>>>12&15]|s[v>>>8&15]|a[v>>>4&15],U=c[E>>>28]|u[E>>>24&15]|f[E>>>20&15]|l[E>>>16&15]|h[E>>>12&15]|g[E>>>8&15]|d[E>>>4&15];x=(U>>>16^D)&65535,y[b++]=D^x,y[b++]=U^x<<16}}return y}function Dh(t,e,r,n){var i=t.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=e[0],c=e[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var u=0;u<i;u+=3){for(var f=o[u+1],l=o[u+2],h=o[u];h!=f;h+=l){var g=c^t[h],d=(c>>>4|c<<28)^t[h+1];s=a,a=c,c=s^(Sx[g>>>24&63]|Ax[g>>>16&63]|Bx[g>>>8&63]|Tx[g&63]|Ex[d>>>24&63]|Cx[d>>>16&63]|Dx[d>>>8&63]|Ix[d&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function hs(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=Ie.cipher.createDecipher(r,t.key):n=Ie.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Ie.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var rn=re((zD,Th)=>{var ds=be();Th.exports=ds.md=ds.md||{};ds.md.algorithms=ds.md.algorithms||{}});var kh=re((GD,_h)=>{var sr=be();rn();Fe();var kx=_h.exports=sr.hmac=sr.hmac||{};kx.create=function(){var t=null,e=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in sr.md.algorithms)e=sr.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else e=o;if(s===null)s=t;else{if(typeof s=="string")s=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>e.blockLength&&(e.start(),e.update(s.bytes()),s=e.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<e.blockLength)for(var a=e.blockLength-u,c=0;c<a;++c)r.putByte(54),n.putByte(92);t=s,r=r.bytes(),n=n.bytes()}e.start(),e.update(r)},i.update=function(o){e.update(o)},i.getMac=function(){var o=e.digest().bytes();return e.start(),e.update(n),e.update(o),e.digest()},i.digest=i.getMac,i}});var ps=re(()=>{});var Lh=re((YD,Rh)=>{var ot=be();kh();rn();Fe();var Rx=ot.pkcs5=ot.pkcs5||{},ar;ot.util.isNodejs&&!ot.options.usePureJavaScript&&(ar=ps());Rh.exports=ot.pbkdf2=Rx.pbkdf2=function(t,e,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),ot.util.isNodejs&&!ot.options.usePureJavaScript&&ar.pbkdf2&&(i===null||typeof i!="object")&&(ar.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),o?ar.pbkdf2Sync.length===4?ar.pbkdf2(t,e,r,n,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):ar.pbkdf2(t,e,r,n,i,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):ar.pbkdf2Sync.length===4?ar.pbkdf2Sync(t,e,r,n).toString("binary"):ar.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in ot.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=ot.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=ot.hmac.create();f.start(i,t);var l="",h,g,d;if(!o){for(var p=1;p<=c;++p){f.start(null,null),f.update(e),f.update(ot.util.int32ToBytes(p)),h=d=f.digest().getBytes();for(var y=2;y<=r;++y)f.start(null,null),f.update(d),g=f.digest().getBytes(),h=ot.util.xorBytes(h,g,s),d=g;l+=p<c?h:h.substr(0,u)}return l}var p=1,y;function m(){if(p>c)return o(null,l);f.start(null,null),f.update(e),f.update(ot.util.int32ToBytes(p)),h=d=f.digest().getBytes(),y=2,b()}function b(){if(y<=r)return f.start(null,null),f.update(d),g=f.digest().getBytes(),h=ot.util.xorBytes(h,g,s),d=g,++y,ot.util.setImmediate(b);l+=p<c?h:h.substr(0,u),++p,m()}m()}});var Uh=re((XD,Ph)=>{var gs=be();Fe();var Nh=Ph.exports=gs.pem=gs.pem||{};Nh.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
9
- `,n;if(t.procType&&(n={name:"Proc-Type",values:[String(t.procType.version),t.procType.type]},r+=ys(n)),t.contentDomain&&(n={name:"Content-Domain",values:[t.contentDomain]},r+=ys(n)),t.dekInfo&&(n={name:"DEK-Info",values:[t.dekInfo.algorithm]},t.dekInfo.parameters&&n.values.push(t.dekInfo.parameters),r+=ys(n)),t.headers)for(var i=0;i<t.headers.length;++i)r+=ys(t.headers[i]);return t.procType&&(r+=`\r
10
- `),r+=gs.util.encode64(t.body,e.maxline||64)+`\r
8
+ `,t.composed){for(var s=0,a="",o=0;o<t.value.length;++o)t.value[o]!==void 0&&(s+=1,a+=V.prettyPrint(t.value[o],e+1,r),o+1<t.value.length&&(a+=","));n+=i+"Sub values: "+s+a}else{if(n+=i+"Value: ",t.type===V.Type.OID){var c=V.derToOid(t.value);n+=c,Be.pki&&Be.pki.oids&&c in Be.pki.oids&&(n+=" ("+Be.pki.oids[c]+") ")}if(t.type===V.Type.INTEGER)try{n+=V.derToInteger(t.value)}catch{n+="0x"+Be.util.bytesToHex(t.value)}else if(t.type===V.Type.BITSTRING){if(t.value.length>1?n+="0x"+Be.util.bytesToHex(t.value.slice(1)):n+="(none)",t.value.length>0){var u=t.value.charCodeAt(0);u==1?n+=" (1 unused bit shown)":u>1&&(n+=" ("+u+" unused bits shown)")}}else if(t.type===V.Type.OCTETSTRING)Bh.test(t.value)||(n+="("+t.value+") "),n+="0x"+Be.util.bytesToHex(t.value);else if(t.type===V.Type.UTF8)try{n+=Be.util.decodeUtf8(t.value)}catch(f){if(f.message==="URI malformed")n+="0x"+Be.util.bytesToHex(t.value)+" (malformed UTF8)";else throw f}else t.type===V.Type.PRINTABLESTRING||t.type===V.Type.IA5String?n+=t.value:Bh.test(t.value)?n+="0x"+Be.util.bytesToHex(t.value):t.value.length===0?n+="[null]":n+=t.value}return n}});var s0=te((UB,Th)=>{var Ge=we();Me();Th.exports=Ge.cipher=Ge.cipher||{};Ge.cipher.algorithms=Ge.cipher.algorithms||{};Ge.cipher.createCipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ge.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ge.cipher.BlockCipher({algorithm:r,key:e,decrypt:!1})};Ge.cipher.createDecipher=function(t,e){var r=t;if(typeof r=="string"&&(r=Ge.cipher.getAlgorithm(r),r&&(r=r())),!r)throw new Error("Unsupported algorithm: "+t);return new Ge.cipher.BlockCipher({algorithm:r,key:e,decrypt:!0})};Ge.cipher.registerAlgorithm=function(t,e){t=t.toUpperCase(),Ge.cipher.algorithms[t]=e};Ge.cipher.getAlgorithm=function(t){return t=t.toUpperCase(),t in Ge.cipher.algorithms?Ge.cipher.algorithms[t]:null};var o0=Ge.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)};o0.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=Ge.util.createBuffer(),this.output=t.output||Ge.util.createBuffer(),this.mode.start(e)};o0.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()};o0.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 c0=te((OB,_h)=>{var We=we();Me();We.cipher=We.cipher||{};var ae=_h.exports=We.cipher.modes=We.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=ms(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=We.util.createBuffer(),this._partialBytes=0};ae.cfb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=ms(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.cfb.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32()^this._outBlock[i],e.putInt32(this._inBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32()^this._outBlock[i],this._partialOutput.putInt32(this._partialBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.cfb.prototype.decrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)this._inBlock[i]=t.getInt32(),e.putInt32(this._inBlock[i]^this._outBlock[i]);return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialBlock[i]=t.getInt32(),this._partialOutput.putInt32(this._partialBlock[i]^this._outBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._partialBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.ofb=function(t){t=t||{},this.name="OFB",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=We.util.createBuffer(),this._partialBytes=0};ae.ofb.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=ms(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.ofb.prototype.encrypt=function(t,e,r){var n=t.length();if(t.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]),this._inBlock[i]=this._outBlock[i];return}var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>0)t.read-=this.blockSize;else for(var i=0;i<this._ints;++i)this._inBlock[i]=this._outBlock[i];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0};ae.ofb.prototype.decrypt=ae.ofb.prototype.encrypt;ae.ctr=function(t){t=t||{},this.name="CTR",this.cipher=t.cipher,this.blockSize=t.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=We.util.createBuffer(),this._partialBytes=0};ae.ctr.prototype.start=function(t){if(!("iv"in t))throw new Error("Invalid IV parameter.");this._iv=ms(t.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0};ae.ctr.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize)for(var i=0;i<this._ints;++i)e.putInt32(t.getInt32()^this._outBlock[i]);else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o>0&&(t.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}ys(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=We.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=We.util.createBuffer(t.iv);this._cipherLength=0;var r;if("additionalData"in t?r=We.util.createBuffer(t.additionalData):r=We.util.createBuffer(),"tagLength"in t?this._tagLength=t.tagLength:this._tagLength=128,this._tag=null,t.decrypt&&(this._tag=We.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(a0(n*8)))}this._inBlock=this._j0.slice(0),ys(this._inBlock),this._partialBytes=0,r=We.util.createBuffer(r),this._aDataLength=a0(r.length()*8);var i=r.length()%this.blockSize;for(i&&r.fillWithByte(0,this.blockSize-i),this._s=[0,0,0,0];r.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()])};ae.gcm.prototype.encrypt=function(t,e,r){var n=t.length();if(n===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&n>=this.blockSize){for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^=t.getInt32());this._cipherLength+=this.blockSize}else{var o=(this.blockSize-n)%this.blockSize;o>0&&(o=this.blockSize-o),this._partialOutput.clear();for(var i=0;i<this._ints;++i)this._partialOutput.putInt32(t.getInt32()^this._outBlock[i]);if(o<=0||r){if(r){var s=n%this.blockSize;this._cipherLength+=s,this._partialOutput.truncate(this.blockSize-s)}else this._cipherLength+=this.blockSize;for(var i=0;i<this._ints;++i)this._outBlock[i]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.read-=this.blockSize,e.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;e.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),ys(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),ys(this._inBlock),this._hashBlock[0]=t.getInt32(),this._hashBlock[1]=t.getInt32(),this._hashBlock[2]=t.getInt32(),this._hashBlock[3]=t.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i<this._ints;++i)e.putInt32(this._outBlock[i]^this._hashBlock[i]);n<this.blockSize?this._cipherLength+=n%this.blockSize:this._cipherLength+=this.blockSize};ae.gcm.prototype.afterFinish=function(t,e){var r=!0;e.decrypt&&e.overflow&&t.truncate(this.blockSize-e.overflow),this.tag=We.util.createBuffer();var n=this._aDataLength.concat(a0(this._cipherLength*8));this._s=this.ghash(this._hashSubkey,this._s,n);var i=[];this.cipher.encrypt(this._j0,i);for(var o=0;o<this._ints;++o)this.tag.putInt32(this._s[o]^i[o]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),e.decrypt&&this.tag.bytes()!==this._tag&&(r=!1),r};ae.gcm.prototype.multiply=function(t,e){for(var r=[0,0,0,0],n=e.slice(0),i=0;i<128;++i){var o=t[i/32|0]&1<<31-i%32;o&&(r[0]^=n[0],r[1]^=n[1],r[2]^=n[2],r[3]^=n[3]),this.pow(n,n)}return r};ae.gcm.prototype.pow=function(t,e){for(var r=t[3]&1,n=3;n>0;--n)e[n]=t[n]>>>1|(t[n-1]&1)<<31;e[0]=t[0]>>>1,r&&(e[0]^=this._R)};ae.gcm.prototype.tableMultiply=function(t){for(var e=[0,0,0,0],r=0;r<32;++r){var n=r/8|0,i=t[n]>>>(7-r%8)*4&15,o=this._m[r][i];e[0]^=o[0],e[1]^=o[1],e[2]^=o[2],e[3]^=o[3]}return e};ae.gcm.prototype.ghash=function(t,e,r){return e[0]^=r[0],e[1]^=r[1],e[2]^=r[2],e[3]^=r[3],this.tableMultiply(e)};ae.gcm.prototype.generateHashTable=function(t,e){for(var r=8/e,n=4*r,i=16*r,o=new Array(i),s=0;s<i;++s){var a=[0,0,0,0],c=s/n|0,u=(n-1-s%n)*e;a[c]=1<<e-1<<u,o[s]=this.generateSubHashTable(this.multiply(a,t),e)}return o};ae.gcm.prototype.generateSubHashTable=function(t,e){var r=1<<e,n=r>>>1,i=new Array(r);i[n]=t.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o<n;){for(var s=1;s<o;++s){var a=i[o],c=i[s];i[o+s]=[a[0]^c[0],a[1]^c[1],a[2]^c[2],a[3]^c[3]]}o*=2}for(i[0]=[0,0,0,0],o=n+1;o<r;++o){var u=i[o^n];i[o]=[t[0]^u[0],t[1]^u[1],t[2]^u[2],t[3]^u[3]]}return i};function ms(t,e){if(typeof t=="string"&&(t=We.util.createBuffer(t)),We.util.isArray(t)&&t.length>4){var r=t;t=We.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(!We.util.isArray(t)){for(var i=[],o=e/4,n=0;n<o;++n)i.push(t.getInt32());t=i}return t}function ys(t){t[t.length-1]=t[t.length-1]+1&4294967295}function a0(t){return[t/4294967296|0,t&4294967295]}});var h0=te((FB,Nh)=>{var Ce=we();s0();c0();Me();Nh.exports=Ce.aes=Ce.aes||{};Ce.aes.startEncrypting=function(t,e,r,n){var i=gs({key:t,output:r,decrypt:!1,mode:n});return i.start(e),i};Ce.aes.createEncryptionCipher=function(t,e){return gs({key:t,output:null,decrypt:!1,mode:e})};Ce.aes.startDecrypting=function(t,e,r,n){var i=gs({key:t,output:r,decrypt:!0,mode:n});return i.start(e),i};Ce.aes.createDecryptionCipher=function(t,e){return gs({key:t,output:null,decrypt:!0,mode:e})};Ce.aes.Algorithm=function(t,e){l0||Rh();var r=this;r.name=t,r.mode=new e({blockSize:16,cipher:{encrypt:function(n,i){return f0(r._w,n,i,!1)},decrypt:function(n,i){return f0(r._w,n,i,!0)}}}),r._init=!1};Ce.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=Ce.util.createBuffer(e);else if(Ce.util.isArray(e)&&(e.length===16||e.length===24||e.length===32)){r=e,e=Ce.util.createBuffer();for(var n=0;n<r.length;++n)e.putByte(r[n])}if(!Ce.util.isArray(e)){r=e,e=[];var i=r.length();if(i===16||i===24||i===32){i=i>>>2;for(var n=0;n<i;++n)e.push(r.getInt32())}}if(!Ce.util.isArray(e)||!(e.length===4||e.length===6||e.length===8))throw new Error("Invalid key parameter.");var o=this.mode.name,s=["CFB","OFB","CTR","GCM"].indexOf(o)!==-1;this._w=Lh(e,t.decrypt&&!s),this._init=!0}};Ce.aes._expandKey=function(t,e){return l0||Rh(),Lh(t,e)};Ce.aes._updateBlock=f0;Kn("AES-ECB",Ce.cipher.modes.ecb);Kn("AES-CBC",Ce.cipher.modes.cbc);Kn("AES-CFB",Ce.cipher.modes.cfb);Kn("AES-OFB",Ce.cipher.modes.ofb);Kn("AES-CTR",Ce.cipher.modes.ctr);Kn("AES-GCM",Ce.cipher.modes.gcm);function Kn(t,e){var r=function(){return new Ce.aes.Algorithm(t,e)};Ce.cipher.registerAlgorithm(t,r)}var l0=!1,Fn=4,ot,u0,kh,rn,Ut;function Rh(){l0=!0,kh=[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),u0=new Array(256),rn=new Array(4),Ut=new Array(4);for(var e=0;e<4;++e)rn[e]=new Array(256),Ut[e]=new Array(256);for(var r=0,n=0,i,o,s,a,c,u,f,e=0;e<256;++e){a=n^n<<1^n<<2^n<<3^n<<4,a=a>>8^a&255^99,ot[r]=a,u0[a]=r,c=t[a],i=t[r],o=t[i],s=t[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)rn[l][r]=u,Ut[l][a]=f,u=u<<24|u>>>8,f=f<<24|f>>>8;r===0?r=n=1:(r=i^t[t[t[i^s]]],n^=t[t[n]])}}function Lh(t,e){for(var r=t.slice(0),n,i=1,o=r.length,s=o+6+1,a=Fn*s,c=o;c<a;++c)n=r[c-1],c%o===0?(n=ot[n>>>16&255]<<24^ot[n>>>8&255]<<16^ot[n&255]<<8^ot[n>>>24]^kh[i]<<24,i++):o>6&&c%o===4&&(n=ot[n>>>24]<<24^ot[n>>>16&255]<<16^ot[n>>>8&255]<<8^ot[n&255]),r[c]=r[c-o]^n;if(e){var u,f=Ut[0],l=Ut[1],h=Ut[2],y=Ut[3],d=r.slice(0);a=r.length;for(var c=0,p=a-Fn;c<a;c+=Fn,p-=Fn)if(c===0||c===a-Fn)d[c]=r[p],d[c+1]=r[p+3],d[c+2]=r[p+2],d[c+3]=r[p+1];else for(var m=0;m<Fn;++m)u=r[p+m],d[c+(3&-m)]=f[ot[u>>>24]]^l[ot[u>>>16&255]]^h[ot[u>>>8&255]]^y[ot[u&255]];r=d}return r}function f0(t,e,r,n){var i=t.length/4-1,o,s,a,c,u;n?(o=Ut[0],s=Ut[1],a=Ut[2],c=Ut[3],u=u0):(o=rn[0],s=rn[1],a=rn[2],c=rn[3],u=ot);var f,l,h,y,d,p,m;f=e[0]^t[0],l=e[n?3:1]^t[1],h=e[2]^t[2],y=e[n?1:3]^t[3];for(var g=3,b=1;b<i;++b)d=o[f>>>24]^s[l>>>16&255]^a[h>>>8&255]^c[y&255]^t[++g],p=o[l>>>24]^s[h>>>16&255]^a[y>>>8&255]^c[f&255]^t[++g],m=o[h>>>24]^s[y>>>16&255]^a[f>>>8&255]^c[l&255]^t[++g],y=o[y>>>24]^s[f>>>16&255]^a[l>>>8&255]^c[h&255]^t[++g],f=d,l=p,h=m;r[0]=u[f>>>24]<<24^u[l>>>16&255]<<16^u[h>>>8&255]<<8^u[y&255]^t[++g],r[n?3:1]=u[l>>>24]<<24^u[h>>>16&255]<<16^u[y>>>8&255]<<8^u[f&255]^t[++g],r[2]=u[h>>>24]<<24^u[y>>>16&255]<<16^u[f>>>8&255]<<8^u[l&255]^t[++g],r[n?1:3]=u[y>>>24]<<24^u[f>>>16&255]<<16^u[l>>>8&255]<<8^u[h&255]^t[++g]}function gs(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="AES-"+e,n;t.decrypt?n=Ce.cipher.createDecipher(r,t.key):n=Ce.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof Ce.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var Oh=te((KB,Uh)=>{var _e=we();s0();c0();Me();Uh.exports=_e.des=_e.des||{};_e.des.startEncrypting=function(t,e,r,n){var i=xs({key:t,output:r,decrypt:!1,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};_e.des.createEncryptionCipher=function(t,e){return xs({key:t,output:null,decrypt:!1,mode:e})};_e.des.startDecrypting=function(t,e,r,n){var i=xs({key:t,output:r,decrypt:!0,mode:n||(e===null?"ECB":"CBC")});return i.start(e),i};_e.des.createDecryptionCipher=function(t,e){return xs({key:t,output:null,decrypt:!0,mode:e})};_e.des.Algorithm=function(t,e){var r=this;r.name=t,r.mode=new e({blockSize:8,cipher:{encrypt:function(n,i){return Ph(r._keys,n,i,!1)},decrypt:function(n,i){return Ph(r._keys,n,i,!0)}}}),r._init=!1};_e.des.Algorithm.prototype.initialize=function(t){if(!this._init){var e=_e.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=Vx(e),this._init=!0}};qt("DES-ECB",_e.cipher.modes.ecb);qt("DES-CBC",_e.cipher.modes.cbc);qt("DES-CFB",_e.cipher.modes.cfb);qt("DES-OFB",_e.cipher.modes.ofb);qt("DES-CTR",_e.cipher.modes.ctr);qt("3DES-ECB",_e.cipher.modes.ecb);qt("3DES-CBC",_e.cipher.modes.cbc);qt("3DES-CFB",_e.cipher.modes.cfb);qt("3DES-OFB",_e.cipher.modes.ofb);qt("3DES-CTR",_e.cipher.modes.ctr);function qt(t,e){var r=function(){return new _e.des.Algorithm(t,e)};_e.cipher.registerAlgorithm(t,r)}var Lx=[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],Nx=[-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],Px=[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],Ux=[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],Ox=[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],Fx=[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],Kx=[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],Mx=[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 Vx(t){for(var e=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],r=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],n=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],i=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],o=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],s=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],a=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],c=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],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],h=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],y=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],d=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],p=t.length()>8?3:1,m=[],g=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],b=0,x,S=0;S<p;S++){var v=t.getInt32(),E=t.getInt32();x=(v>>>4^E)&252645135,E^=x,v^=x<<4,x=(E>>>-16^v)&65535,v^=x,E^=x<<-16,x=(v>>>2^E)&858993459,E^=x,v^=x<<2,x=(E>>>-16^v)&65535,v^=x,E^=x<<-16,x=(v>>>1^E)&1431655765,E^=x,v^=x<<1,x=(E>>>8^v)&16711935,v^=x,E^=x<<8,x=(v>>>1^E)&1431655765,E^=x,v^=x<<1,x=v<<8|E>>>20&240,v=E<<24|E<<8&16711680|E>>>8&65280|E>>>24&240,E=x;for(var B=0;B<g.length;++B){g[B]?(v=v<<2|v>>>26,E=E<<2|E>>>26):(v=v<<1|v>>>27,E=E<<1|E>>>27),v&=-15,E&=-15;var D=e[v>>>28]|r[v>>>24&15]|n[v>>>20&15]|i[v>>>16&15]|o[v>>>12&15]|s[v>>>8&15]|a[v>>>4&15],U=c[E>>>28]|u[E>>>24&15]|f[E>>>20&15]|l[E>>>16&15]|h[E>>>12&15]|y[E>>>8&15]|d[E>>>4&15];x=(U>>>16^D)&65535,m[b++]=D^x,m[b++]=U^x<<16}}return m}function Ph(t,e,r,n){var i=t.length===32?3:9,o;i===3?o=n?[30,-2,-2]:[0,32,2]:o=n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var s,a=e[0],c=e[1];s=(a>>>4^c)&252645135,c^=s,a^=s<<4,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,a=a<<1|a>>>31,c=c<<1|c>>>31;for(var u=0;u<i;u+=3){for(var f=o[u+1],l=o[u+2],h=o[u];h!=f;h+=l){var y=c^t[h],d=(c>>>4|c<<28)^t[h+1];s=a,a=c,c=s^(Nx[y>>>24&63]|Ux[y>>>16&63]|Fx[y>>>8&63]|Mx[y&63]|Lx[d>>>24&63]|Px[d>>>16&63]|Ox[d>>>8&63]|Kx[d&63])}s=a,a=c,c=s}a=a>>>1|a<<31,c=c>>>1|c<<31,s=(a>>>1^c)&1431655765,c^=s,a^=s<<1,s=(c>>>8^a)&16711935,a^=s,c^=s<<8,s=(c>>>2^a)&858993459,a^=s,c^=s<<2,s=(a>>>16^c)&65535,c^=s,a^=s<<16,s=(a>>>4^c)&252645135,c^=s,a^=s<<4,r[0]=a,r[1]=c}function xs(t){t=t||{};var e=(t.mode||"CBC").toUpperCase(),r="DES-"+e,n;t.decrypt?n=_e.cipher.createDecipher(r,t.key):n=_e.cipher.createCipher(r,t.key);var i=n.start;return n.start=function(o,s){var a=null;s instanceof _e.util.ByteBuffer&&(a=s,s={}),s=s||{},s.output=a,s.iv=o,i.call(n,s)},n}});var nn=te((MB,Fh)=>{var bs=we();Fh.exports=bs.md=bs.md||{};bs.md.algorithms=bs.md.algorithms||{}});var Mh=te((VB,Kh)=>{var ur=we();nn();Me();var Hx=Kh.exports=ur.hmac=ur.hmac||{};Hx.create=function(){var t=null,e=null,r=null,n=null,i={};return i.start=function(o,s){if(o!==null)if(typeof o=="string")if(o=o.toLowerCase(),o in ur.md.algorithms)e=ur.md.algorithms[o].create();else throw new Error('Unknown hash algorithm "'+o+'"');else e=o;if(s===null)s=t;else{if(typeof s=="string")s=ur.util.createBuffer(s);else if(ur.util.isArray(s)){var a=s;s=ur.util.createBuffer();for(var c=0;c<a.length;++c)s.putByte(a[c])}var u=s.length();u>e.blockLength&&(e.start(),e.update(s.bytes()),s=e.digest()),r=ur.util.createBuffer(),n=ur.util.createBuffer(),u=s.length();for(var c=0;c<u;++c){var a=s.at(c);r.putByte(54^a),n.putByte(92^a)}if(u<e.blockLength)for(var a=e.blockLength-u,c=0;c<a;++c)r.putByte(54),n.putByte(92);t=s,r=r.bytes(),n=n.bytes()}e.start(),e.update(r)},i.update=function(o){e.update(o)},i.getMac=function(){var o=e.digest().bytes();return e.start(),e.update(n),e.update(o),e.digest()},i.digest=i.getMac,i}});var ws=te(()=>{});var Hh=te((zB,Vh)=>{var st=we();Mh();nn();Me();var qx=st.pkcs5=st.pkcs5||{},fr;st.util.isNodejs&&!st.options.usePureJavaScript&&(fr=ws());Vh.exports=st.pbkdf2=qx.pbkdf2=function(t,e,r,n,i,o){if(typeof i=="function"&&(o=i,i=null),st.util.isNodejs&&!st.options.usePureJavaScript&&fr.pbkdf2&&(i===null||typeof i!="object")&&(fr.pbkdf2Sync.length>4||!i||i==="sha1"))return typeof i!="string"&&(i="sha1"),t=Buffer.from(t,"binary"),e=Buffer.from(e,"binary"),o?fr.pbkdf2Sync.length===4?fr.pbkdf2(t,e,r,n,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):fr.pbkdf2(t,e,r,n,i,function(x,S){if(x)return o(x);o(null,S.toString("binary"))}):fr.pbkdf2Sync.length===4?fr.pbkdf2Sync(t,e,r,n).toString("binary"):fr.pbkdf2Sync(t,e,r,n,i).toString("binary");if((typeof i>"u"||i===null)&&(i="sha1"),typeof i=="string"){if(!(i in st.md.algorithms))throw new Error("Unknown hash algorithm: "+i);i=st.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=st.hmac.create();f.start(i,t);var l="",h,y,d;if(!o){for(var p=1;p<=c;++p){f.start(null,null),f.update(e),f.update(st.util.int32ToBytes(p)),h=d=f.digest().getBytes();for(var m=2;m<=r;++m)f.start(null,null),f.update(d),y=f.digest().getBytes(),h=st.util.xorBytes(h,y,s),d=y;l+=p<c?h:h.substr(0,u)}return l}var p=1,m;function g(){if(p>c)return o(null,l);f.start(null,null),f.update(e),f.update(st.util.int32ToBytes(p)),h=d=f.digest().getBytes(),m=2,b()}function b(){if(m<=r)return f.start(null,null),f.update(d),y=f.digest().getBytes(),h=st.util.xorBytes(h,y,s),d=y,++m,st.util.setImmediate(b);l+=p<c?h:h.substr(0,u),++p,g()}g()}});var Gh=te((GB,zh)=>{var Es=we();Me();var qh=zh.exports=Es.pem=Es.pem||{};qh.encode=function(t,e){e=e||{};var r="-----BEGIN "+t.type+`-----\r
9
+ `,n;if(t.procType&&(n={name:"Proc-Type",values:[String(t.procType.version),t.procType.type]},r+=vs(n)),t.contentDomain&&(n={name:"Content-Domain",values:[t.contentDomain]},r+=vs(n)),t.dekInfo&&(n={name:"DEK-Info",values:[t.dekInfo.algorithm]},t.dekInfo.parameters&&n.values.push(t.dekInfo.parameters),r+=vs(n)),t.headers)for(var i=0;i<t.headers.length;++i)r+=vs(t.headers[i]);return t.procType&&(r+=`\r
10
+ `),r+=Es.util.encode64(t.body,e.maxline||64)+`\r
11
11
  `,r+="-----END "+t.type+`-----\r
12
- `,r};Nh.decode=function(t){for(var e=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(t),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:gs.util.decode64(o[3])};if(e.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 h=c[l];if(!/\s/.test(h[0]))break;f+=h,u=l}if(o=f.match(n),o){for(var g={name:o[1],values:[]},d=o[2].split(","),p=0;p<d.length;++p)g.values.push(Lx(d[p]));if(a.procType)if(!a.contentDomain&&g.name==="Content-Domain")a.contentDomain=d[0]||"";else if(!a.dekInfo&&g.name==="DEK-Info"){if(g.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:d[0],parameters:d[1]||null}}else a.headers.push(g);else{if(g.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(g.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:d[0],type:d[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(e.length===0)throw new Error("Invalid PEM formatted message.");return e};function ys(t){for(var e=t.name+": ",r=[],n=function(c,u){return" "+u},i=0;i<t.values.length;++i)r.push(t.values[i].replace(/^(\S+\r\n)/,n));e+=r.join(",")+`\r
12
+ `,r};qh.decode=function(t){for(var e=[],r=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,n=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,i=/\r?\n/,o;o=r.exec(t),!!o;){var s=o[1];s==="NEW CERTIFICATE REQUEST"&&(s="CERTIFICATE REQUEST");var a={type:s,procType:null,contentDomain:null,dekInfo:null,headers:[],body:Es.util.decode64(o[3])};if(e.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 h=c[l];if(!/\s/.test(h[0]))break;f+=h,u=l}if(o=f.match(n),o){for(var y={name:o[1],values:[]},d=o[2].split(","),p=0;p<d.length;++p)y.values.push(zx(d[p]));if(a.procType)if(!a.contentDomain&&y.name==="Content-Domain")a.contentDomain=d[0]||"";else if(!a.dekInfo&&y.name==="DEK-Info"){if(y.values.length===0)throw new Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');a.dekInfo={algorithm:d[0],parameters:d[1]||null}}else a.headers.push(y);else{if(y.name!=="Proc-Type")throw new Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(y.values.length!==2)throw new Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');a.procType={version:d[0],type:d[1]}}}++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(e.length===0)throw new Error("Invalid PEM formatted message.");return e};function vs(t){for(var e=t.name+": ",r=[],n=function(c,u){return" "+u},i=0;i<t.values.length;++i)r.push(t.values[i].replace(/^(\S+\r\n)/,n));e+=r.join(",")+`\r
13
13
  `;for(var o=0,s=-1,i=0;i<e.length;++i,++o)if(o>65&&s!==-1){var a=e[s];a===","?(++s,e=e.substr(0,s)+`\r
14
14
  `+e.substr(s)):e=e.substr(0,s)+`\r
15
- `+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function Lx(t){return t.replace(/^\s+/,"")}});var Hh=re((ZD,Vh)=>{var Vt=be();rn();Fe();var Fh=Vh.exports=Vt.sha256=Vt.sha256||{};Vt.md.sha256=Vt.md.algorithms.sha256=Fh;Fh.create=function(){Kh||Nx();var t=null,e=Vt.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Vt.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Vt.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),Oh(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Vt.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(f0.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:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};Oh(l,r,i);var h=Vt.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var f0=null,Kh=!1,Mh=null;function Nx(){f0="\x80",f0+=Vt.util.fillString("\0",64),Mh=[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],Kh=!0}function Oh(t,e,r){for(var n,i,o,s,a,c,u,f,l,h,g,d,p,y,m,b=r.length();b>=64;){for(u=0;u<16;++u)e[u]=r.getInt32();for(;u<64;++u)n=e[u-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[u-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[u]=n+e[u-7]+i+e[u-16]|0;for(f=t.h0,l=t.h1,h=t.h2,g=t.h3,d=t.h4,p=t.h5,y=t.h6,m=t.h7,u=0;u<64;++u)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=y^d&(p^y),o=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),c=f&l|h&(f^l),n=m+s+a+Mh[u]+e[u],i=o+c,m=y,y=p,p=d,d=g+n>>>0,g=h,h=l,l=f,f=n+i>>>0;t.h0=t.h0+f|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+g|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+y|0,t.h7=t.h7+m|0,b-=64}}});var zh=re((QD,qh)=>{var Ht=be();Fe();var ms=null;Ht.util.isNodejs&&!Ht.options.usePureJavaScript&&!process.versions["node-webkit"]&&(ms=ps());var Px=qh.exports=Ht.prng=Ht.prng||{};Px.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(u,f){if(!f)return e.generateSync(u);var l=e.plugin.cipher,h=e.plugin.increment,g=e.plugin.formatKey,d=e.plugin.formatSeed,p=Ht.util.createBuffer();e.key=null,y();function y(m){if(m)return f(m);if(p.length()>=u)return f(null,p.getBytes(u));if(e.generated>1048575&&(e.key=null),e.key===null)return Ht.util.nextTick(function(){o(y)});var b=l(e.key,e.seed);e.generated+=b.length,p.putBytes(b),e.key=g(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Ht.util.setImmediate(y)}},e.generateSync=function(u){var f=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,g=e.plugin.formatSeed;e.key=null;for(var d=Ht.util.createBuffer();d.length()<u;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=f(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(f(e.key,l(e.seed))),e.seed=g(f(e.key,e.seed))}return d.getBytes(u)};function o(u){if(e.pools[0].messageLength>=32)return a(),u();var f=32-e.pools[0].messageLength<<5;e.seedFile(f,function(l,h){if(l)return u(l);e.collect(h),a(),u()})}function s(){if(e.pools[0].messageLength>=32)return a();var u=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(u)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var u=e.plugin.md.create();u.update(e.keyBytes);for(var f=1,l=0;l<32;++l)e.reseeds%f===0&&(u.update(e.pools[l].digest().getBytes()),e.pools[l].start()),f=f<<1;e.keyBytes=u.digest().getBytes(),u.start(),u.update(e.keyBytes);var h=u.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(u){var f=null,l=Ht.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(f=function(v){return h.getRandomValues(v)});var g=Ht.util.createBuffer();if(f)for(;g.length()<u;){var d=Math.max(1,Math.min(u-g.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{f(p);for(var y=0;y<p.length;++y)g.putInt32(p[y])}catch(v){if(!(typeof QuotaExceededError<"u"&&v instanceof QuotaExceededError))throw v}}if(g.length()<u)for(var m,b,x,S=Math.floor(Math.random()*65536);g.length()<u;){b=16807*(S&65535),m=16807*(S>>16),b+=(m&32767)<<16,b+=m>>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),g.putByte(x&255)}return g.getBytes(u)}return ms?(e.seedFile=function(u,f){ms.randomBytes(u,function(l,h){if(l)return f(l);f(null,h.toString())})},e.seedFileSync=function(u){return ms.randomBytes(u).toString()}):(e.seedFile=function(u,f){try{f(null,c(u))}catch(l){f(l)}},e.seedFileSync=c),e.collect=function(u){for(var f=u.length,l=0;l<f;++l)e.pools[e.pool].update(u.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(u,f){for(var l="",h=0;h<f;h+=8)l+=String.fromCharCode(u>>h&255);e.collect(l)},e.registerWorker=function(u){if(u===self)e.seedFile=function(l,h){function g(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",g),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",g),self.postMessage({forge:{prng:{needed:l}}})};else{var f=function(l){var h=l.data;h.forge&&h.forge.prng&&e.seedFile(h.forge.prng.needed,function(g,d){u.postMessage({forge:{prng:{err:g,bytes:d}}})})};u.addEventListener("message",f)}},e}});var Ni=re((jD,l0)=>{var Ge=be();u0();Hh();zh();Fe();(function(){if(Ge.random&&Ge.random.getBytes){l0.exports=Ge.random;return}(function(t){var e={},r=new Array(4),n=Ge.util.createBuffer();e.formatKey=function(l){var h=Ge.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),Ge.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=Ge.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return Ge.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=Ge.md.sha256;function i(){var l=Ge.prng.create(e);return l.getBytes=function(h,g){return l.generate(h,g)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=Ge.util.globalScope,c=a.crypto||a.msCrypto;if(c&&c.getRandomValues&&(s=function(l){return c.getRandomValues(l)}),Ge.options.usePureJavaScript||!Ge.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}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!Ge.random)Ge.random=o;else for(var f in o)Ge.random[f]=o[f];Ge.random.createInstance=i,l0.exports=Ge.random})(typeof jQuery<"u"?jQuery:null)})()});var Yh=re((JD,$h)=>{var ut=be();Fe();var h0=[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],Gh=[1,2,3,5],Ux=function(t,e){return t<<e&65535|(t&65535)>>16-e},Ox=function(t,e){return(t&65535)>>e|t<<16-e&65535};$h.exports=ut.rc2=ut.rc2||{};ut.rc2.expandKey=function(t,e){typeof t=="string"&&(t=ut.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(h0[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,h0[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,h0[r.at(a+1)^r.at(a+o)]);return r};var Wh=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,u,f,l=[];for(t=ut.rc2.expandKey(t,e),u=0;u<64;u++)l.push(t.getInt16Le());r?(a=function(d){for(u=0;u<4;u++)d[u]+=l[f]+(d[(u+3)%4]&d[(u+2)%4])+(~d[(u+3)%4]&d[(u+1)%4]),d[u]=Ux(d[u],Gh[u]),f++},c=function(d){for(u=0;u<4;u++)d[u]+=l[d[(u+3)%4]&63]}):(a=function(d){for(u=3;u>=0;u--)d[u]=Ox(d[u],Gh[u]),d[u]-=l[f]+(d[(u+3)%4]&d[(u+2)%4])+(~d[(u+3)%4]&d[(u+1)%4]),f--},c=function(d){for(u=3;u>=0;u--)d[u]-=l[d[(u+3)%4]&63]});var h=function(d){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 m=0;m<d.length;m++)for(var b=0;b<d[m][0];b++)d[m][1](p);for(u=0;u<4;u++)s!==null&&(r?s.putInt16Le(p[u]):p[u]^=s.getInt16Le()),o.putInt16Le(p[u])},g=null;return g={start:function(d,p){d&&typeof d=="string"&&(d=ut.util.createBuffer(d)),n=!1,i=ut.util.createBuffer(),o=p||new ut.util.createBuffer,s=d,g.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var y=i.length()===8?8:8-i.length();i.fillWithByte(y,y)}if(p&&(n=!0,g.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var m=o.length(),b=o.at(m-1);b>m?p=!1:o.truncate(b)}return p}},g};ut.rc2.startEncrypting=function(t,e,r){var n=ut.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};ut.rc2.createEncryptionCipher=function(t,e){return Wh(t,e,!0)};ut.rc2.startDecrypting=function(t,e,r){var n=ut.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};ut.rc2.createDecryptionCipher=function(t,e){return Wh(t,e,!1)}});var ws=re((eB,rd)=>{var d0=be();rd.exports=d0.jsbn=d0.jsbn||{};var cr,Fx=0xdeadbeefcafe,Xh=(Fx&16777215)==15715070;function L(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}d0.jsbn.BigInteger=L;function le(){return new L(null)}function Kx(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Mx(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,u=this.data[t++]>>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 Zh(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,u=this.data[t++]>>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=Zh,cr=28):Xh&&navigator.appName=="Microsoft Internet Explorer"?(L.prototype.am=Mx,cr=30):Xh&&navigator.appName!="Netscape"?(L.prototype.am=Kx,cr=26):(L.prototype.am=Zh,cr=28);L.prototype.DB=cr;L.prototype.DM=(1<<cr)-1;L.prototype.DV=1<<cr;var p0=52;L.prototype.FV=Math.pow(2,p0);L.prototype.F1=p0-cr;L.prototype.F2=2*cr-p0;var Vx="0123456789abcdefghijklmnopqrstuvwxyz",xs=new Array,Hn,xt;Hn=48;for(xt=0;xt<=9;++xt)xs[Hn++]=xt;Hn=97;for(xt=10;xt<36;++xt)xs[Hn++]=xt;Hn=65;for(xt=10;xt<36;++xt)xs[Hn++]=xt;function Qh(t){return Vx.charAt(t)}function jh(t,e){var r=xs[t.charCodeAt(e)];return r??-1}function Hx(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 qx(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 Rr(t){var e=le();return e.fromInt(t),e}function zx(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=r==8?t[n]&255:jh(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&L.ZERO.subTo(this,this)}function Gx(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function Wx(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=Qh(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=Qh(n));return i?o:"0"}function $x(){var t=le();return L.ZERO.subTo(this,t),t}function Yx(){return this.s<0?this.negate():this}function Xx(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 bs(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 Zx(){return this.t<=0?0:this.DB*(this.t-1)+bs(this.data[this.t-1]^this.s&this.DM)}function Qx(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 jx(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 Jx(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function eb(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function tb(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function rb(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&L.ZERO.subTo(e,e)}function nb(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 ib(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=le());var o=le(),s=this.s,a=t.s,c=this.DB-bs(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),h=this.FV/l,g=(1<<this.F1)/l,d=1<<this.F2,p=r.t,y=p-u,m=e??le();for(o.dlShiftTo(y,m),r.compareTo(m)>=0&&(r.data[r.t++]=1,r.subTo(m,r)),L.ONE.dlShiftTo(u,m),m.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]*h+(r.data[p-1]+d)*g);if((r.data[p]+=o.am(0,b,r,y,0,u))<b)for(o.dlShiftTo(y,m),r.subTo(m,r);r.data[p]<--b;)r.subTo(m,r)}e!=null&&(r.drShiftTo(u,e),s!=a&&L.ZERO.subTo(e,e)),r.t=u,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&L.ZERO.subTo(r,r)}}}function ob(t){var e=le();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(L.ZERO)>0&&t.subTo(e,e),e}function nn(t){this.m=t}function sb(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function ab(t){return t}function cb(t){t.divRemTo(this.m,null,t)}function ub(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function fb(t,e){t.squareTo(e),this.reduce(e)}nn.prototype.convert=sb;nn.prototype.revert=ab;nn.prototype.reduce=cb;nn.prototype.mulTo=ub;nn.prototype.sqrTo=fb;function lb(){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 on(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 hb(t){var e=le();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(L.ZERO)>0&&this.m.subTo(e,e),e}function db(t){var e=le();return t.copyTo(e),this.reduce(e),e}function pb(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 yb(t,e){t.squareTo(e),this.reduce(e)}function gb(t,e,r){t.multiplyTo(e,r),this.reduce(r)}on.prototype.convert=hb;on.prototype.revert=db;on.prototype.reduce=pb;on.prototype.mulTo=gb;on.prototype.sqrTo=yb;function mb(){return(this.t>0?this.data[0]&1:this.s)==0}function xb(t,e){if(t>4294967295||t<1)return L.ONE;var r=le(),n=le(),i=e.convert(this),o=bs(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function bb(t,e){var r;return t<256||e.isEven()?r=new nn(e):r=new on(e),this.exp(t,r)}L.prototype.copyTo=Hx;L.prototype.fromInt=qx;L.prototype.fromString=zx;L.prototype.clamp=Gx;L.prototype.dlShiftTo=Qx;L.prototype.drShiftTo=jx;L.prototype.lShiftTo=Jx;L.prototype.rShiftTo=eb;L.prototype.subTo=tb;L.prototype.multiplyTo=rb;L.prototype.squareTo=nb;L.prototype.divRemTo=ib;L.prototype.invDigit=lb;L.prototype.isEven=mb;L.prototype.exp=xb;L.prototype.toString=Wx;L.prototype.negate=$x;L.prototype.abs=Yx;L.prototype.compareTo=Xx;L.prototype.bitLength=Zx;L.prototype.mod=ob;L.prototype.modPowInt=bb;L.ZERO=Rr(0);L.ONE=Rr(1);function wb(){var t=le();return this.copyTo(t),t}function vb(){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 Eb(){return this.t==0?this.s:this.data[0]<<24>>24}function Sb(){return this.t==0?this.s:this.data[0]<<16>>16}function Cb(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Ab(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Db(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=Rr(r),i=le(),o=le(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Bb(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=jh(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&L.ZERO.subTo(this,this)}function Ib(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(L.ONE.shiftLeft(t-1),y0,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(L.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function Tb(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function _b(t){return this.compareTo(t)==0}function kb(t){return this.compareTo(t)<0?this:t}function Rb(t){return this.compareTo(t)>0?this:t}function Lb(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function Nb(t,e){return t&e}function Pb(t){var e=le();return this.bitwiseTo(t,Nb,e),e}function y0(t,e){return t|e}function Ub(t){var e=le();return this.bitwiseTo(t,y0,e),e}function Jh(t,e){return t^e}function Ob(t){var e=le();return this.bitwiseTo(t,Jh,e),e}function ed(t,e){return t&~e}function Fb(t){var e=le();return this.bitwiseTo(t,ed,e),e}function Kb(){for(var t=le(),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 Mb(t){var e=le();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function Vb(t){var e=le();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function Hb(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 qb(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+Hb(this.data[t]);return this.s<0?this.t*this.DB:-1}function zb(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function Gb(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=zb(this.data[r]^e);return t}function Wb(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function $b(t,e){var r=L.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function Yb(t){return this.changeBit(t,y0)}function Xb(t){return this.changeBit(t,ed)}function Zb(t){return this.changeBit(t,Jh)}function Qb(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function jb(t){var e=le();return this.addTo(t,e),e}function Jb(t){var e=le();return this.subTo(t,e),e}function ew(t){var e=le();return this.multiplyTo(t,e),e}function tw(t){var e=le();return this.divRemTo(t,e,null),e}function rw(t){var e=le();return this.divRemTo(t,null,e),e}function nw(t){var e=le(),r=le();return this.divRemTo(t,e,r),new Array(e,r)}function iw(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function ow(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 Pi(){}function td(t){return t}function sw(t,e,r){t.multiplyTo(e,r)}function aw(t,e){t.squareTo(e)}Pi.prototype.convert=td;Pi.prototype.revert=td;Pi.prototype.mulTo=sw;Pi.prototype.sqrTo=aw;function cw(t){return this.exp(t,new Pi)}function uw(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function fw(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 qn(t){this.r2=le(),this.q3=le(),L.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function lw(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=le();return t.copyTo(e),this.reduce(e),e}function hw(t){return t}function dw(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 pw(t,e){t.squareTo(e),this.reduce(e)}function yw(t,e,r){t.multiplyTo(e,r),this.reduce(r)}qn.prototype.convert=lw;qn.prototype.revert=hw;qn.prototype.reduce=dw;qn.prototype.mulTo=yw;qn.prototype.sqrTo=pw;function gw(t,e){var r=t.bitLength(),n,i=Rr(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 nn(e):e.isEven()?o=new qn(e):o=new on(e);var s=new Array,a=3,c=n-1,u=(1<<n)-1;if(s[1]=o.convert(this),n>1){var f=le();for(o.sqrTo(s[1],f);a<=u;)s[a]=le(),o.mulTo(f,s[a-2],s[a]),a+=2}var l=t.t-1,h,g=!0,d=le(),p;for(r=bs(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&u:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),g)s[h].copyTo(i),g=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function mw(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function xw(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 bw(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return L.ZERO;for(var r=t.clone(),n=this.clone(),i=Rr(1),o=Rr(0),s=Rr(0),a=Rr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(L.ONE)!=0)return L.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var Lt=[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],ww=(1<<26)/Lt[Lt.length-1];function vw(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=Lt[Lt.length-1]){for(e=0;e<Lt.length;++e)if(r.data[0]==Lt[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<Lt.length;){for(var n=Lt[e],i=e+1;i<Lt.length&&n<ww;)n*=Lt[i++];for(n=r.modInt(n);e<i;)if(n%Lt[e++]==0)return!1}return r.millerRabin(t)}function Ew(t){var e=this.subtract(L.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Sw(),o,s=0;s<t;++s){do o=new L(this.bitLength(),i);while(o.compareTo(L.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(L.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(L.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function Sw(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}L.prototype.chunkSize=Cb;L.prototype.toRadix=Db;L.prototype.fromRadix=Bb;L.prototype.fromNumber=Ib;L.prototype.bitwiseTo=Lb;L.prototype.changeBit=$b;L.prototype.addTo=Qb;L.prototype.dMultiply=iw;L.prototype.dAddOffset=ow;L.prototype.multiplyLowerTo=uw;L.prototype.multiplyUpperTo=fw;L.prototype.modInt=xw;L.prototype.millerRabin=Ew;L.prototype.clone=wb;L.prototype.intValue=vb;L.prototype.byteValue=Eb;L.prototype.shortValue=Sb;L.prototype.signum=Ab;L.prototype.toByteArray=Tb;L.prototype.equals=_b;L.prototype.min=kb;L.prototype.max=Rb;L.prototype.and=Pb;L.prototype.or=Ub;L.prototype.xor=Ob;L.prototype.andNot=Fb;L.prototype.not=Kb;L.prototype.shiftLeft=Mb;L.prototype.shiftRight=Vb;L.prototype.getLowestSetBit=qb;L.prototype.bitCount=Gb;L.prototype.testBit=Wb;L.prototype.setBit=Yb;L.prototype.clearBit=Xb;L.prototype.flipBit=Zb;L.prototype.add=jb;L.prototype.subtract=Jb;L.prototype.multiply=ew;L.prototype.divide=tw;L.prototype.remainder=rw;L.prototype.divideAndRemainder=nw;L.prototype.modPow=gw;L.prototype.modInverse=bw;L.prototype.pow=cw;L.prototype.gcd=mw;L.prototype.isProbablePrime=vw});var ad=re((tB,sd)=>{var qt=be();rn();Fe();var id=sd.exports=qt.sha1=qt.sha1||{};qt.md.sha1=qt.md.algorithms.sha1=id;id.create=function(){od||Cw();var t=null,e=qt.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=qt.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=qt.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),nd(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=qt.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(g0.substr(0,n.blockLength-s));for(var a,c,u=n.fullMessageLength[0]*8,f=0;f<n.fullMessageLength.length-1;++f)a=n.fullMessageLength[f+1]*8,c=a/4294967296>>>0,u+=c,i.putInt32(u>>>0),u=a>>>0;i.putInt32(u);var l={h0:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};nd(l,r,i);var h=qt.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var g0=null,od=!1;function Cw(){g0="\x80",g0+=qt.util.fillString("\0",64),od=!0}function nd(t,e,r){for(var n,i,o,s,a,c,u,f,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,f=0;f<16;++f)n=r.getInt32(),e[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=e[f-3]^e[f-8]^e[f-14]^e[f-16],n=n<<1|n>>>31,e[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=e[f-3]^e[f-8]^e[f-14]^e[f-16],n=n<<1|n>>>31,e[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=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[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=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[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=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[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;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var fd=re((rB,ud)=>{var zt=be();Fe();Ni();ad();var cd=ud.exports=zt.pkcs1=zt.pkcs1||{};cd.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=zt.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var u=new Error("RSAES-OAEP input message length is too long.");throw u.length=e.length,u.maxLength=c,u}n||(n=""),o.update(n,"raw");for(var f=o.digest(),l="",h=c-e.length,g=0;g<h;g++)l+="\0";var d=f.getBytes()+l+""+e;if(!i)i=zt.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=vs(i,a-o.digestLength-1,s),y=zt.util.xorBytes(d,p,d.length),m=vs(y,o.digestLength,s),b=zt.util.xorBytes(i,m,i.length);return"\0"+b+y};cd.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var y=new Error("RSAES-OAEP encoded message length is invalid.");throw y.length=e.length,y.expectedLength=s,y}if(i===void 0?i=zt.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),u=e.substring(1,i.digestLength+1),f=e.substring(1+i.digestLength),l=vs(f,i.digestLength,o),h=zt.util.xorBytes(u,l,u.length),g=vs(h,s-i.digestLength-1,o),d=zt.util.xorBytes(f,g,f.length),p=d.substring(0,i.digestLength),y=c!=="\0",m=0;m<i.digestLength;++m)y|=a.charAt(m)!==p.charAt(m);for(var b=1,x=i.digestLength,S=i.digestLength;S<d.length;S++){var v=d.charCodeAt(S),E=v&1^1,B=b?65534:0;y|=v&B,b=b&E,x+=b}if(y||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function vs(t,e,r){r||(r=zt.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var ld=re((nB,m0)=>{var Lr=be();Fe();ws();Ni();(function(){if(Lr.prime){m0.exports=Lr.prime;return}var t=m0.exports=Lr.prime=Lr.prime||{},e=Lr.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,g){typeof h=="function"&&(g=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||Lr.random,y={nextBytes:function(m){for(var b=p.getBytesSync(m.length),x=0;x<m.length;++x)m[x]=b.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,y,d.options,g);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,g,d){return"workers"in g?c(l,h,g,d):s(l,h,g,d)}function s(l,h,g,d){var p=u(l,h),y=0,m=f(p.bitLength());"millerRabinTests"in g&&(m=g.millerRabinTests);var b=10;"maxBlockTime"in g&&(b=g.maxBlockTime),a(p,l,h,y,m,b,d)}function a(l,h,g,d,p,y,m){var b=+new Date;do{if(l.bitLength()>h&&(l=u(h,g)),l.isProbablePrime(p))return m(null,l);l.dAddOffset(r[d++%8],0)}while(y<0||+new Date-b<y);Lr.util.setImmediate(function(){a(l,h,g,d,p,y,m)})}function c(l,h,g,d){if(typeof Worker>"u")return s(l,h,g,d);var p=u(l,h),y=g.workers,m=g.workLoad||100,b=m*30/8,x=g.workerScript||"forge/prime.worker.js";if(y===-1)return Lr.util.estimateCores(function(v,E){v&&(E=2),y=E-1,S()});S();function S(){y=Math.max(1,y);for(var v=[],E=0;E<y;++E)v[E]=new Worker(x);for(var B=y,E=0;E<y;++E)v[E].addEventListener("message",U);var D=!1;function U(F){if(!D){--B;var O=F.data;if(O.found){for(var M=0;M<v.length;++M)v[M].terminate();return D=!0,d(null,new e(O.prime,16))}p.bitLength()>l&&(p=u(l,h));var G=p.toString(16);F.target.postMessage({hex:G,workLoad:m}),p.dAddOffset(b,0)}}}}function u(l,h){var g=new e(l,h),d=l-1;return g.testBit(d)||g.bitwiseTo(e.ONE.shiftLeft(d),i,g),g.dAddOffset(31-g.mod(n).byteValue(),0),g}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 Ss=re((iB,xd)=>{var Y=be();Li();ws();as();fd();ld();Ni();Fe();typeof ue>"u"&&(ue=Y.jsbn.BigInteger);var ue,x0=Y.util.isNodejs?ps():null,A=Y.asn1,bt=Y.util;Y.pki=Y.pki||{};xd.exports=Y.pki.rsa=Y.rsa=Y.rsa||{};var ee=Y.pki,Aw=[6,4,2,4,2,4,6,2],Dw={name:"PrivateKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Bw={name:"RSAPrivateKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Iw={name:"RSAPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},Tw=Y.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},_w={name:"DigestInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:A.Class.UNIVERSAL,type:A.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:A.Class.UNIVERSAL,type:A.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},kw=function(t){var e;if(t.algorithm in ee.oids)e=ee.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=A.oidToDer(e).getBytes(),i=A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[]),o=A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[]);o.value.push(A.create(A.Class.UNIVERSAL,A.Type.OID,!1,n)),o.value.push(A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,""));var s=A.create(A.Class.UNIVERSAL,A.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),A.toDer(i).getBytes()},gd=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(ue.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(ue.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new ue(Y.util.bytesToHex(Y.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(ue.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};ee.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=md(t,e,r)):(i=Y.util.createBuffer(),i.putBytes(t));for(var s=new ue(i.toHex(),16),a=gd(s,e,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()};ee.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new ue(Y.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=gd(s,e,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?Es(u.getBytes(),e,r):u.getBytes()};ee.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||Y.random,i={nextBytes:function(a){for(var c=n.getBytesSync(a.length),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:t,rng:i,eInt:e||65537,e:new ue(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};ee.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new ue(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,u=c-1;t.pqState===0?(t.num=new ue(c,t.rng),t.num.testBit(u)||t.num.bitwiseTo(ue.ONE.shiftLeft(u),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(Lw(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Aw[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(ue.ONE).gcd(t.e).compareTo(ue.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(ue.ONE),t.q1=t.q.subtract(ue.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(ue.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var f=t.e.modInverse(t.phi);t.keys={privateKey:ee.rsa.setPrivateKey(t.n,t.e,f,t.p,t.q,f.mod(t.p1),f.mod(t.q1),t.q.modInverse(t.p)),publicKey:ee.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};ee.rsa.generateKeyPair=function(t,e,r,n){if(arguments.length===1?typeof t=="object"?(r=t,t=void 0):typeof t=="function"&&(n=t,t=void 0):arguments.length===2?typeof t=="number"?typeof e=="function"?(n=e,e=void 0):typeof e!="number"&&(r=e,e=void 0):(r=t,n=e,t=void 0,e=void 0):arguments.length===3&&(typeof e=="number"?typeof r=="function"&&(n=r,r=void 0):(n=r,r=e,e=void 0)),r=r||{},t===void 0&&(t=r.bits||2048),e===void 0&&(e=r.e||65537),!Y.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(hd("generateKeyPair"))return x0.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,u){if(a)return n(a);n(null,{privateKey:ee.privateKeyFromPem(u),publicKey:ee.publicKeyFromPem(c)})});if(dd("generateKey")&&dd("exportKey"))return bt.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:yd(e),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return bt.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){n(a)}).then(function(a){if(a){var c=ee.privateKeyFromAsn1(A.fromDer(Y.util.createBuffer(a)));n(null,{privateKey:c,publicKey:ee.setRsaPublicKey(c.n,c.e)})}});if(pd("generateKey")&&pd("exportKey")){var i=bt.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:yd(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,u=bt.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);u.oncomplete=function(f){var l=f.target.result,h=ee.privateKeyFromAsn1(A.fromDer(Y.util.createBuffer(l)));n(null,{privateKey:h,publicKey:ee.setRsaPublicKey(h.n,h.e)})},u.onerror=function(f){n(f)}},i.onerror=function(a){n(a)};return}}else if(hd("generateKeyPairSync")){var o=x0.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:ee.privateKeyFromPem(o.privateKey),publicKey:ee.publicKeyFromPem(o.publicKey)}}}var s=ee.rsa.createKeyPairGenerationState(t,e,r);if(!n)return ee.rsa.stepKeyPairGenerationState(s,0),s.keys;Rw(s,r,n)};ee.setRsaPublicKey=ee.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,u){return md(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 ee.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=Es(u,r,!0);var f=A.fromDer(u,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!A.validate(f,_w,l,h)){var g=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw g.errors=h,g}var d=A.derToOid(l.algorithmIdentifier);if(!(d===Y.oids.md2||d===Y.oids.md5||d===Y.oids.sha1||d===Y.oids.sha224||d===Y.oids.sha256||d===Y.oids.sha384||d===Y.oids.sha512||d===Y.oids["sha512-224"]||d===Y.oids["sha512-256"])){var g=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw g.oid=d,g}if((d===Y.oids.md2||d===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=Es(u,r,!0),c===u}});var a=ee.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};ee.setRsaPrivateKey=ee.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(u,f,l){typeof f=="string"?f=f.toUpperCase():f===void 0&&(f="RSAES-PKCS1-V1_5");var h=ee.rsa.decrypt(u,c,!1,!1);if(f==="RSAES-PKCS1-V1_5")f={decode:Es};else if(f==="RSA-OAEP"||f==="RSAES-OAEP")f={decode:function(g,d){return Y.pkcs1.decode_rsa_oaep(d,g,l)}};else if(["RAW","NONE","NULL",null].indexOf(f)!==-1)f={decode:function(g){return g}};else throw new Error('Unsupported encryption scheme: "'+f+'".');return f.decode(h,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:kw},l=1):(f==="NONE"||f==="NULL"||f===null)&&(f={encode:function(){return u}},l=1);var h=f.encode(u,c.n.bitLength());return ee.rsa.encrypt(h,c,l)},c};ee.wrapRsaPrivateKey=function(t){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,A.integerToDer(0).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.OID,!1,A.oidToDer(ee.oids.rsaEncryption).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,"")]),A.create(A.Class.UNIVERSAL,A.Type.OCTETSTRING,!1,A.toDer(t).getBytes())])};ee.privateKeyFromAsn1=function(t){var e={},r=[];if(A.validate(t,Dw,e,r)&&(t=A.fromDer(Y.util.createBuffer(e.privateKey))),e={},r=[],!A.validate(t,Bw,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,u,f,l;return i=Y.util.createBuffer(e.privateKeyModulus).toHex(),o=Y.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=Y.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=Y.util.createBuffer(e.privateKeyPrime1).toHex(),c=Y.util.createBuffer(e.privateKeyPrime2).toHex(),u=Y.util.createBuffer(e.privateKeyExponent1).toHex(),f=Y.util.createBuffer(e.privateKeyExponent2).toHex(),l=Y.util.createBuffer(e.privateKeyCoefficient).toHex(),ee.setRsaPrivateKey(new ue(i,16),new ue(o,16),new ue(s,16),new ue(a,16),new ue(c,16),new ue(u,16),new ue(f,16),new ue(l,16))};ee.privateKeyToAsn1=ee.privateKeyToRSAPrivateKey=function(t){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,A.integerToDer(0).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.n)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.e)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.d)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.p)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.q)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.dP)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.dQ)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.qInv))])};ee.publicKeyFromAsn1=function(t){var e={},r=[];if(A.validate(t,Tw,e,r)){var n=A.derToOid(e.publicKeyOid);if(n!==ee.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!A.validate(t,Iw,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=Y.util.createBuffer(e.publicKeyModulus).toHex(),s=Y.util.createBuffer(e.publicKeyExponent).toHex();return ee.setRsaPublicKey(new ue(o,16),new ue(s,16))};ee.publicKeyToAsn1=ee.publicKeyToSubjectPublicKeyInfo=function(t){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.OID,!1,A.oidToDer(ee.oids.rsaEncryption).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,"")]),A.create(A.Class.UNIVERSAL,A.Type.BITSTRING,!1,[ee.publicKeyToRSAPublicKey(t)])])};ee.publicKeyToRSAPublicKey=function(t){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.n)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Gt(t.e))])};function md(t,e,r){var n=Y.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var 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(t),n}function Es(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=Y.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var 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 Rw(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){Y.prime.generateProbablePrime(a,n,c)}function s(a,c){if(a)return r(a);if(t.q=c,t.p.compareTo(t.q)<0){var u=t.p;t.p=t.q,t.q=u}if(t.p.subtract(ue.ONE).gcd(t.e).compareTo(ue.ONE)!==0){t.p=null,i();return}if(t.q.subtract(ue.ONE).gcd(t.e).compareTo(ue.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(ue.ONE),t.q1=t.q.subtract(ue.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(ue.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var f=t.e.modInverse(t.phi);t.keys={privateKey:ee.rsa.setPrivateKey(t.n,t.e,f,t.p,t.q,f.mod(t.p1),f.mod(t.q1),t.q.modInverse(t.p)),publicKey:ee.rsa.setPublicKey(t.n,t.e)},r(null,t.keys)}}function Gt(t){var e=t.toString(16);e[0]>="8"&&(e="00"+e);var r=Y.util.hexToBytes(e);return r.length>1&&(r.charCodeAt(0)===0&&!(r.charCodeAt(1)&128)||r.charCodeAt(0)===255&&(r.charCodeAt(1)&128)===128)?r.substr(1):r}function Lw(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 hd(t){return Y.util.isNodejs&&typeof x0[t]=="function"}function dd(t){return typeof bt.globalScope<"u"&&typeof bt.globalScope.crypto=="object"&&typeof bt.globalScope.crypto.subtle=="object"&&typeof bt.globalScope.crypto.subtle[t]=="function"}function pd(t){return typeof bt.globalScope<"u"&&typeof bt.globalScope.msCrypto=="object"&&typeof bt.globalScope.msCrypto.subtle=="object"&&typeof bt.globalScope.msCrypto.subtle[t]=="function"}function yd(t){for(var e=Y.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var Cd=re((oB,Sd)=>{var z=be();u0();Li();Ih();rn();as();Lh();Uh();Ni();Yh();Ss();Fe();typeof bd>"u"&&(bd=z.jsbn.BigInteger);var bd,T=z.asn1,ie=z.pki=z.pki||{};Sd.exports=ie.pbe=z.pbe=z.pbe||{};var sn=ie.oids,Nw={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"}]},Pw={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"}]}]},Uw={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"}]};ie.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=z.random.getBytesSync(r.saltSize),i=r.count,o=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=sn["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,u=16,f=sn["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,u=16,f=sn["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,u=8,f=sn.desCBC,l=z.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var g="hmacWith"+r.prfAlgorithm.toUpperCase(),d=Ed(g),p=z.pkcs5.pbkdf2(e,n,i,s,d),y=z.random.getBytesSync(u),m=l(p);m.start(y),m.update(T.toDer(t)),m.finish(),c=m.output.getBytes();var b=Ow(n,o,s,g);a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(sn.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(sn.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=ie.pbe.generatePkcs12Key(e,x,1,i,s),y=ie.pbe.generatePkcs12Key(e,x,2,i,s),m=z.des.createEncryptionCipher(p);m.start(y),m.update(T.toDer(t)),m.finish(),c=m.output.getBytes(),a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(sn["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 h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var S=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[a,T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,c)]);return S};ie.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!T.validate(t,Nw,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=ie.pbe.getCipher(s,n.encryptionParams,e),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=T.fromDer(a.output)),r};ie.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:T.toDer(t).getBytes()};return z.pem.encode(r,{maxline:e})};ie.encryptedPrivateKeyFromPem=function(t){var e=z.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return T.fromDer(e.body)};ie.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=ie.wrapRsaPrivateKey(ie.privateKeyToAsn1(t));return n=ie.encryptPrivateKeyInfo(n,e,r),ie.encryptedPrivateKeyToPem(n)}var i,o,s,a;switch(r.algorithm){case"aes128":i="AES-128-CBC",s=16,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes192":i="AES-192-CBC",s=24,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"aes256":i="AES-256-CBC",s=32,o=z.random.getBytesSync(16),a=z.aes.createEncryptionCipher;break;case"3des":i="DES-EDE3-CBC",s=24,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;case"des":i="DES-CBC",s=8,o=z.random.getBytesSync(8),a=z.des.createEncryptionCipher;break;default:var c=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw c.algorithm=r.algorithm,c}var u=z.pbe.opensslDeriveBytes(e,o.substr(0,8),s),f=a(u);f.start(o),f.update(T.toDer(ie.privateKeyToAsn1(t))),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)};ie.decryptRsaPrivateKey=function(t,e){var r=null,n=z.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(e,a.substr(0,8),o),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=ie.decryptPrivateKeyInfo(T.fromDer(r),e):r=T.fromDer(r),r!==null&&(r=ie.privateKeyFromAsn1(r)),r};ie.pbe.generatePkcs12Key=function(t,e,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,u=o.blockLength,f=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),g=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,u);var p=u*Math.ceil(g/u),y=new z.util.ByteBuffer;for(a=0;a<p;a++)y.putByte(e.at(a%g));var m=u*Math.ceil(h/u),b=new z.util.ByteBuffer;for(a=0;a<m;a++)b.putByte(l.at(a%h));var x=y;x.putBuffer(b);for(var S=Math.ceil(i/c),v=1;v<=S;v++){var E=new z.util.ByteBuffer;E.putBytes(d.bytes()),E.putBytes(x.bytes());for(var B=0;B<n;B++)o.start(),o.update(E.getBytes()),E=o.digest();var D=new z.util.ByteBuffer;for(a=0;a<u;a++)D.putByte(E.at(a%c));var U=Math.ceil(g/u)+Math.ceil(h/u),F=new z.util.ByteBuffer;for(s=0;s<U;s++){var O=new z.util.ByteBuffer(x.getBytes(u)),M=511;for(a=D.length()-1;a>=0;a--)M=M>>8,M+=D.at(a)+O.at(a),O.setAt(a,M&255);F.putBuffer(O)}x=F,f.putBuffer(E)}return f.truncate(f.length()-i),f};ie.pbe.getCipher=function(t,e,r){switch(t){case ie.oids.pkcs5PBES2:return ie.pbe.getCipherForPBES2(t,e,r);case ie.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case ie.oids["pbewithSHAAnd40BitRC2-CBC"]:return ie.pbe.getCipherForPKCS12PBE(t,e,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=t,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}};ie.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!T.validate(e,Pw,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=T.derToOid(n.kdfOid),t!==ie.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}if(t=T.derToOid(n.encOid),t!==ie.oids["aes128-CBC"]&&t!==ie.oids["aes192-CBC"]&&t!==ie.oids["aes256-CBC"]&&t!==ie.oids["des-EDE3-CBC"]&&t!==ie.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,u;switch(ie.oids[t]){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=vd(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,f),h=n.encIv,g=u(l);return g.start(h),g};ie.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!T.validate(e,Uw,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(t){case ie.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,u=8,f=z.des.startDecrypting;break;case ie.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,u=8,f=function(p,y){var m=z.rc2.createDecryptionCipher(p,40);return m.start(y,null),m};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=vd(n.prfOid),h=ie.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var g=ie.pbe.generatePkcs12Key(r,s,2,a,u,l);return f(h,g)};ie.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[wd(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(wd(n,i[s-1]+t+e));return i.join("").substr(0,r)};function wd(t,e){return t.start().update(e).digest().getBytes()}function vd(t){var e;if(!t)e="hmacWithSHA1";else if(e=ie.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 Ed(e)}function Ed(t){var e=z.md;switch(t){case"hmacWithSHA224":e=z.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function Ow(t,e,r,n){var i=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"&&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(ie.oids[n]).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.NULL,!1,"")])),i}});var Fd=re((YB,Od)=>{var De=be();rn();Fe();var Oi=Od.exports=De.sha512=De.sha512||{};De.md.sha512=De.md.algorithms.sha512=Oi;var Pd=De.sha384=De.sha512.sha384=De.sha512.sha384||{};Pd.create=function(){return Oi.create("SHA-384")};De.md.sha384=De.md.algorithms.sha384=Pd;De.sha512.sha256=De.sha512.sha256||{create:function(){return Oi.create("SHA-512/256")}};De.md["sha512/256"]=De.md.algorithms["sha512/256"]=De.sha512.sha256;De.sha512.sha224=De.sha512.sha224||{create:function(){return Oi.create("SHA-512/224")}};De.md["sha512/224"]=De.md.algorithms["sha512/224"]=De.sha512.sha224;Oi.create=function(t){if(Ud||Gw(),typeof t>"u"&&(t="SHA-512"),!(t in cn))throw new Error("Invalid SHA-512 algorithm: "+t);for(var e=cn[t],r=null,n=De.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,u=0;u<c;++u)a.fullMessageLength.push(0);n=De.util.createBuffer(),r=new Array(e.length);for(var u=0;u<e.length;++u)r[u]=e[u].slice(0);return a},a.start(),a.update=function(c,u){u==="utf8"&&(c=De.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),Nd(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=De.util.createBuffer();c.putBytes(n.bytes());var u=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,f=u&a.blockLength-1;c.putBytes(S0.substr(0,a.blockLength-f));for(var l,h,g=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,g+=h,c.putInt32(g>>>0),g=l>>>0;c.putInt32(g);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);Nd(p,i,c);var y=De.util.createBuffer(),m;t==="SHA-512"?m=p.length:t==="SHA-384"?m=p.length-2:m=p.length-4;for(var d=0;d<m;++d)y.putInt32(p[d][0]),(d!==m-1||t!=="SHA-512/224")&&y.putInt32(p[d][1]);return y},a};var S0=null,Ud=!1,C0=null,cn=null;function Gw(){S0="\x80",S0+=De.util.fillString("\0",128),C0=[[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]],cn={},cn["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],cn["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],cn["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],cn["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],Ud=!0}function Nd(t,e,r){for(var n,i,o,s,a,c,u,f,l,h,g,d,p,y,m,b,x,S,v,E,B,D,U,F,O,M,G,Q,I,R,_,k,C,P,K,H=r.length();H>=128;){for(I=0;I<16;++I)e[I][0]=r.getInt32()>>>0,e[I][1]=r.getInt32()>>>0;for(;I<80;++I)k=e[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=e[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,C=e[I-7],K=e[I-16],_=i+C[1]+s+K[1],e[I][0]=n+C[0]+o+K[0]+(_/4294967296>>>0)>>>0,e[I][1]=_>>>0;for(p=t[0][0],y=t[0][1],m=t[1][0],b=t[1][1],x=t[2][0],S=t[2][1],v=t[3][0],E=t[3][1],B=t[4][0],D=t[4][1],U=t[5][0],F=t[5][1],O=t[6][0],M=t[6][1],G=t[7][0],Q=t[7][1],I=0;I<80;++I)u=((B>>>14|D<<18)^(B>>>18|D<<14)^(D>>>9|B<<23))>>>0,f=((B<<18|D>>>14)^(B<<14|D>>>18)^(D<<23|B>>>9))>>>0,l=(O^B&(U^O))>>>0,h=(M^D&(F^M))>>>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,g=(p&m|x&(p^m))>>>0,d=(y&b|S&(y^b))>>>0,_=Q+f+h+C0[I][1]+e[I][1],n=G+u+l+C0[I][0]+e[I][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+d,o=a+g+(_/4294967296>>>0)>>>0,s=_>>>0,G=O,Q=M,O=U,M=F,U=B,F=D,_=E+i,B=v+n+(_/4294967296>>>0)>>>0,D=_>>>0,v=x,E=S,x=m,S=b,m=p,b=y,_=i+s,p=n+o+(_/4294967296>>>0)>>>0,y=_>>>0;_=t[0][1]+y,t[0][0]=t[0][0]+p+(_/4294967296>>>0)>>>0,t[0][1]=_>>>0,_=t[1][1]+b,t[1][0]=t[1][0]+m+(_/4294967296>>>0)>>>0,t[1][1]=_>>>0,_=t[2][1]+S,t[2][0]=t[2][0]+x+(_/4294967296>>>0)>>>0,t[2][1]=_>>>0,_=t[3][1]+E,t[3][0]=t[3][0]+v+(_/4294967296>>>0)>>>0,t[3][1]=_>>>0,_=t[4][1]+D,t[4][0]=t[4][0]+B+(_/4294967296>>>0)>>>0,t[4][1]=_>>>0,_=t[5][1]+F,t[5][0]=t[5][0]+U+(_/4294967296>>>0)>>>0,t[5][1]=_>>>0,_=t[6][1]+M,t[6][0]=t[6][0]+O+(_/4294967296>>>0)>>>0,t[6][1]=_>>>0,_=t[7][1]+Q,t[7][0]=t[7][0]+G+(_/4294967296>>>0)>>>0,t[7][1]=_>>>0,H-=128}}});var dp=re((uT,hp)=>{var Yn=1e3,Xn=Yn*60,Zn=Xn*60,hn=Zn*24,mv=hn*7,xv=hn*365.25;hp.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return bv(t);if(r==="number"&&isFinite(t))return e.long?vv(t):wv(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function bv(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*xv;case"weeks":case"week":case"w":return r*mv;case"days":case"day":case"d":return r*hn;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Zn;case"minutes":case"minute":case"mins":case"min":case"m":return r*Xn;case"seconds":case"second":case"secs":case"sec":case"s":return r*Yn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function wv(t){var e=Math.abs(t);return e>=hn?Math.round(t/hn)+"d":e>=Zn?Math.round(t/Zn)+"h":e>=Xn?Math.round(t/Xn)+"m":e>=Yn?Math.round(t/Yn)+"s":t+"ms"}function vv(t){var e=Math.abs(t);return e>=hn?Ts(t,e,hn,"day"):e>=Zn?Ts(t,e,Zn,"hour"):e>=Xn?Ts(t,e,Xn,"minute"):e>=Yn?Ts(t,e,Yn,"second"):t+" ms"}function Ts(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var yp=re((fT,pp)=>{function Ev(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=dp(),r.destroy=u,Object.keys(t).forEach(f=>{r[f]=t[f]}),r.names=[],r.skips=[],r.formatters={};function e(f){let l=0;for(let h=0;h<f.length;h++)l=(l<<5)-l+f.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=e;function r(f){let l,h=null,g,d;function p(...y){if(!p.enabled)return;let m=p,b=Number(new Date),x=b-(l||b);m.diff=x,m.prev=l,m.curr=b,l=b,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let S=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(E,B)=>{if(E==="%%")return"%";S++;let D=r.formatters[B];if(typeof D=="function"){let U=y[S];E=D.call(m,U),y.splice(S,1),S--}return E}),r.formatArgs.call(m,y),(m.log||r.log).apply(m,y)}return p.namespace=f,p.useColors=r.useColors(),p.color=r.selectColor(f),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(g!==r.namespaces&&(g=r.namespaces,d=r.enabled(f)),d),set:y=>{h=y}}),typeof r.init=="function"&&r.init(p),p}function n(f,l){let h=r(this.namespace+(typeof l>"u"?":":l)+f);return h.log=this.log,h}function i(f){r.save(f),r.namespaces=f,r.names=[],r.skips=[];let l,h=(typeof f=="string"?f:"").split(/[\s,]+/),g=h.length;for(l=0;l<g;l++)h[l]&&(f=h[l].replace(/\*/g,".*?"),f[0]==="-"?r.skips.push(new RegExp("^"+f.slice(1)+"$")):r.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,h;for(l=0,h=r.skips.length;l<h;l++)if(r.skips[l].test(f))return!1;for(l=0,h=r.names.length;l<h;l++)if(r.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function c(f){return f instanceof Error?f.stack||f.message:f}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}pp.exports=Ev});var gp=re((pt,_s)=>{pt.formatArgs=Cv;pt.save=Av;pt.load=Dv;pt.useColors=Sv;pt.storage=Bv();pt.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();pt.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Sv(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Cv(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+_s.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}pt.log=console.debug||console.log||(()=>{});function Av(t){try{t?pt.storage.setItem("debug",t):pt.storage.removeItem("debug")}catch{}}function Dv(){let t;try{t=pt.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function Bv(){try{return localStorage}catch{}}_s.exports=yp()(pt);var{formatters:Iv}=_s.exports;Iv.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Cp=re((o_,Sp)=>{"use strict";function Lv(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r<e.length;r++)e[r]=255;for(var n=0;n<t.length;n++){var i=t.charAt(n),o=i.charCodeAt(0);if(e[o]!==255)throw new TypeError(i+" is ambiguous");e[o]=n}var s=t.length,a=t.charAt(0),c=Math.log(s)/Math.log(256),u=Math.log(256)/Math.log(s);function f(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var d=0,p=0,y=0,m=g.length;y!==m&&g[y]===0;)y++,d++;for(var b=(m-y)*u+1>>>0,x=new Uint8Array(b);y!==m;){for(var S=g[y],v=0,E=b-1;(S!==0||v<p)&&E!==-1;E--,v++)S+=256*x[E]>>>0,x[E]=S%s>>>0,S=S/s>>>0;if(S!==0)throw new Error("Non-zero carry");p=v,y++}for(var B=b-p;B!==b&&x[B]===0;)B++;for(var D=a.repeat(d);B<b;++B)D+=t.charAt(x[B]);return D}function l(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var d=0;if(g[d]!==" "){for(var p=0,y=0;g[d]===a;)p++,d++;for(var m=(g.length-d)*c+1>>>0,b=new Uint8Array(m);g[d];){var x=e[g.charCodeAt(d)];if(x===255)return;for(var S=0,v=m-1;(x!==0||S<y)&&v!==-1;v--,S++)x+=s*b[v]>>>0,b[v]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");y=S,d++}if(g[d]!==" "){for(var E=m-y;E!==m&&b[E]===0;)E++;for(var B=new Uint8Array(p+(m-E)),D=p;E!==m;)B[D++]=b[E++];return B}}}function h(g){var d=l(g);if(d)return d;throw new Error("Non-base"+s+" character")}return{encode:f,decodeUnsafe:l,decode:h}}Sp.exports=Lv});var Us=re((s_,Ap)=>{"use strict";var Nv=new TextDecoder,Pv=t=>Nv.decode(t),Uv=new TextEncoder,Ov=t=>Uv.encode(t);function Fv(t,e){let r=new Uint8Array(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return r}Ap.exports={decodeText:Pv,encodeText:Ov,concat:Fv}});var Bp=re((a_,Dp)=>{"use strict";var{encodeText:Kv}=Us(),O0=class{constructor(e,r,n,i){this.name=e,this.code=r,this.codeBuf=Kv(this.code),this.alphabet=i,this.codec=n(i)}encode(e){return this.codec.encode(e)}decode(e){for(let r of e)if(this.alphabet&&this.alphabet.indexOf(r)<0)throw new Error(`invalid character '${r}' in '${e}'`);return this.codec.decode(e)}};Dp.exports=O0});var Tp=re((c_,Ip)=>{"use strict";var Mv=(t,e,r)=>{let n={};for(let u=0;u<e.length;++u)n[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let o=new Uint8Array(i*r/8|0),s=0,a=0,c=0;for(let u=0;u<i;++u){let f=n[t[u]];if(f===void 0)throw new SyntaxError("Invalid character "+t[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},Vv=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Hv=t=>e=>({encode(r){return Vv(r,e,t)},decode(r){return Mv(r,e,t)}});Ip.exports={rfc4648:Hv}});var Lp=re((u_,Rp)=>{"use strict";var Gi=Cp(),qv=Bp(),{rfc4648:je}=Tp(),{decodeText:zv,encodeText:Gv}=Us(),Wv=()=>({encode:zv,decode:Gv}),_p=[["identity","\0",Wv,""],["base2","0",je(1),"01"],["base8","7",je(3),"01234567"],["base10","9",Gi,"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",Gi,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",Gi,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",Gi,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",Gi,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],kp=_p.reduce((t,e)=>(t[e[0]]=new qv(e[0],e[1],e[2],e[3]),t),{}),$v=_p.reduce((t,e)=>(t[e[1]]=kp[e[0]],t),{});Rp.exports={names:kp,codes:$v}});var Up=re((dr,Pp)=>{"use strict";var Qn=Lp(),{encodeText:Yv,decodeText:Os,concat:Np}=Us();function Xv(t,e){if(!e)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=dn(t);return Jv(r,e),Np([n,e],n.length+e.length)}function Zv(t,e){let r=dn(t),n=Yv(r.encode(e));return Np([r.codeBuf,n],r.codeBuf.length+n.length)}function Qv(t){t instanceof Uint8Array&&(t=Os(t));let e=t[0];return["f","F","v","V","t","T","b","B","c","C","h","k","K"].includes(e)&&(t=t.toLowerCase()),dn(t[0]).decode(t.substring(1))}function jv(t){if(t instanceof Uint8Array&&(t=Os(t)),Object.prototype.toString.call(t)!=="[object String]")return!1;try{return dn(t[0]).name}catch{return!1}}function Jv(t,e){dn(t).decode(Os(e))}function dn(t){if(Object.prototype.hasOwnProperty.call(Qn.names,t))return Qn.names[t];if(Object.prototype.hasOwnProperty.call(Qn.codes,t))return Qn.codes[t];throw new Error(`Unsupported encoding: ${t}`)}function e8(t){return t instanceof Uint8Array&&(t=Os(t)),dn(t[0])}dr=Pp.exports=Xv;dr.encode=Zv;dr.decode=Qv;dr.isEncoded=jv;dr.encoding=dn;dr.encodingFromData=e8;var t8=Object.freeze(Qn.names),r8=Object.freeze(Qn.codes);dr.names=t8;dr.codes=r8});var Mp=re((f_,Kp)=>{Kp.exports=Fp;var Op=128,n8=127,i8=~n8,o8=Math.pow(2,31);function Fp(t,e,r){e=e||[],r=r||0;for(var n=r;t>=o8;)e[r++]=t&255|Op,t/=128;for(;t&i8;)e[r++]=t&255|Op,t>>>=7;return e[r]=t|0,Fp.bytes=r-n+1,e}});var qp=re((l_,Hp)=>{Hp.exports=F0;var s8=128,Vp=127;function F0(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw F0.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Vp)<<i:(s&Vp)*Math.pow(2,i),i+=7}while(s>=s8);return F0.bytes=o-n,r}});var Gp=re((h_,zp)=>{var a8=Math.pow(2,7),c8=Math.pow(2,14),u8=Math.pow(2,21),f8=Math.pow(2,28),l8=Math.pow(2,35),h8=Math.pow(2,42),d8=Math.pow(2,49),p8=Math.pow(2,56),y8=Math.pow(2,63);zp.exports=function(t){return t<a8?1:t<c8?2:t<u8?3:t<f8?4:t<l8?5:t<h8?6:t<d8?7:t<p8?8:t<y8?9:10}});var $p=re((d_,Wp)=>{Wp.exports={encode:Mp(),decode:qp(),encodingLength:Gp()}});var Xp=re((p_,Yp)=>{"use strict";var g8=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});Yp.exports={names:g8}});function m8(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),u=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,y=0,m=0,b=d.length;m!==b&&d[m]===0;)m++,p++;for(var x=(b-m)*f+1>>>0,S=new Uint8Array(x);m!==b;){for(var v=d[m],E=0,B=x-1;(v!==0||E<y)&&B!==-1;B--,E++)v+=256*S[B]>>>0,S[B]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");y=E,m++}for(var D=x-y;D!==x&&S[D]===0;)D++;for(var U=c.repeat(p);D<x;++D)U+=t.charAt(S[D]);return U}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var y=0,m=0;d[p]===c;)y++,p++;for(var b=(d.length-p)*u+1>>>0,x=new Uint8Array(b);d[p];){var S=r[d.charCodeAt(p)];if(S===255)return;for(var v=0,E=b-1;(S!==0||v<m)&&E!==-1;E--,v++)S+=a*x[E]>>>0,x[E]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");m=v,p++}if(d[p]!==" "){for(var B=b-m;B!==b&&x[B]===0;)B++;for(var D=new Uint8Array(y+(b-B)),U=y;B!==b;)D[U++]=x[B++];return D}}}function g(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:g}}var x8,b8,Zp,Qp=pe(()=>{x8=m8,b8=x8,Zp=b8});var g_,jp,pr,Jp,e1,Nr=pe(()=>{g_=new Uint8Array(0),jp=(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},pr=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")},Jp=t=>new TextEncoder().encode(t),e1=t=>new TextDecoder().decode(t)});var K0,M0,V0,r1,H0,jn,Pr,w8,v8,Le,Pt=pe(()=>{Qp();Nr();K0=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")}},M0=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 r1(this,e)}},V0=class{constructor(e){this.decoders=e}or(e){return r1(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`)}},r1=(t,e)=>new V0({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),H0=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new K0(e,r,n),this.decoder=new M0(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},jn=({name:t,prefix:e,encode:r,decode:n})=>new H0(t,e,r,n),Pr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=Zp(r,e);return jn({prefix:t,name:e,encode:n,decode:o=>pr(i(o))})},w8=(t,e,r,n)=>{let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=t.length;for(;t[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[t[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},v8=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Le=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>jn({prefix:e,name:t,encode(i){return v8(i,n,r)},decode(i){return w8(i,n,r,t)}})});var q0={};fe(q0,{identity:()=>E8});var E8,n1=pe(()=>{Pt();Nr();E8=jn({prefix:"\0",name:"identity",encode:t=>e1(t),decode:t=>Jp(t)})});var z0={};fe(z0,{base2:()=>S8});var S8,i1=pe(()=>{Pt();S8=Le({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var G0={};fe(G0,{base8:()=>C8});var C8,o1=pe(()=>{Pt();C8=Le({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var W0={};fe(W0,{base10:()=>A8});var A8,s1=pe(()=>{Pt();A8=Pr({prefix:"9",name:"base10",alphabet:"0123456789"})});var $0={};fe($0,{base16:()=>D8,base16upper:()=>B8});var D8,B8,a1=pe(()=>{Pt();D8=Le({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),B8=Le({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var Y0={};fe(Y0,{base32:()=>Jn,base32hex:()=>k8,base32hexpad:()=>L8,base32hexpadupper:()=>N8,base32hexupper:()=>R8,base32pad:()=>T8,base32padupper:()=>_8,base32upper:()=>I8,base32z:()=>P8});var Jn,I8,T8,_8,k8,R8,L8,N8,P8,X0=pe(()=>{Pt();Jn=Le({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),I8=Le({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),T8=Le({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),_8=Le({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),k8=Le({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),R8=Le({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),L8=Le({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),N8=Le({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),P8=Le({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var Z0={};fe(Z0,{base36:()=>U8,base36upper:()=>O8});var U8,O8,c1=pe(()=>{Pt();U8=Pr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),O8=Pr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var Q0={};fe(Q0,{base58btc:()=>Yt,base58flickr:()=>F8});var Yt,F8,j0=pe(()=>{Pt();Yt=Pr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),F8=Pr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var J0={};fe(J0,{base64:()=>K8,base64pad:()=>M8,base64url:()=>V8,base64urlpad:()=>H8});var K8,M8,V8,H8,u1=pe(()=>{Pt();K8=Le({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),M8=Le({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),V8=Le({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),H8=Le({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var eu={};fe(eu,{base256emoji:()=>$8});function G8(t){return t.reduce((e,r)=>(e+=q8[r],e),"")}function W8(t){let e=[];for(let r of t){let n=z8[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var f1,q8,z8,$8,l1=pe(()=>{Pt();f1=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}"),q8=f1.reduce((t,e,r)=>(t[r]=e,t),[]),z8=f1.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);$8=jn({prefix:"\u{1F680}",name:"base256emoji",encode:G8,decode:W8})});function p1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=Q8;)e[r++]=t&255|h1,t/=128;for(;t&Z8;)e[r++]=t&255|h1,t>>>=7;return e[r]=t|0,p1.bytes=r-n+1,e}function tu(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw tu.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&d1)<<i:(s&d1)*Math.pow(2,i),i+=7}while(s>=J8);return tu.bytes=o-n,r}var Y8,h1,X8,Z8,Q8,j8,J8,d1,e3,t3,r3,n3,i3,o3,s3,a3,c3,u3,f3,l3,Wi,y1=pe(()=>{Y8=p1,h1=128,X8=127,Z8=~X8,Q8=Math.pow(2,31);j8=tu,J8=128,d1=127;e3=Math.pow(2,7),t3=Math.pow(2,14),r3=Math.pow(2,21),n3=Math.pow(2,28),i3=Math.pow(2,35),o3=Math.pow(2,42),s3=Math.pow(2,49),a3=Math.pow(2,56),c3=Math.pow(2,63),u3=function(t){return t<e3?1:t<t3?2:t<r3?3:t<n3?4:t<i3?5:t<o3?6:t<s3?7:t<a3?8:t<c3?9:10},f3={encode:Y8,decode:j8,encodingLength:u3},l3=f3,Wi=l3});var $i,ei,ti,Ks=pe(()=>{y1();$i=(t,e=0)=>[Wi.decode(t,e),Wi.decode.bytes],ei=(t,e,r=0)=>(Wi.encode(t,e,r),e),ti=t=>Wi.encodingLength(t)});var pn,g1,m1,ri,Xi=pe(()=>{Nr();Ks();pn=(t,e)=>{let r=e.byteLength,n=ti(t),i=n+ti(r),o=new Uint8Array(i+r);return ei(t,o,0),ei(r,o,n),o.set(e,i),new ri(t,r,e,o)},g1=t=>{let e=pr(t),[r,n]=$i(e),[i,o]=$i(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ri(r,i,s,e)},m1=(t,e)=>t===e?!0:t.code===e.code&&t.size===e.size&&jp(t.bytes,e.bytes),ri=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}}});var nu,ru,iu=pe(()=>{Xi();nu=({name:t,code:e,encode:r})=>new ru(t,e,r),ru=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?pn(this.code,r):r.then(n=>pn(this.code,n))}else throw Error("Unknown type, must be binary type")}}});var ou={};fe(ou,{sha256:()=>h3,sha512:()=>d3});var b1,h3,d3,w1=pe(()=>{iu();b1=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),h3=nu({name:"sha2-256",code:18,encode:b1("SHA-256")}),d3=nu({name:"sha2-512",code:19,encode:b1("SHA-512")})});var su={};fe(su,{identity:()=>g3});var v1,p3,E1,y3,g3,S1=pe(()=>{Nr();Xi();v1=0,p3="identity",E1=pr,y3=t=>pn(v1,E1(t)),g3={code:v1,name:p3,encode:E1,digest:y3}});var C1=pe(()=>{Nr()});var O_,F_,A1=pe(()=>{O_=new TextEncoder,F_=new TextDecoder});var Hs,b3,w3,v3,Zi,E3,D1,B1,Ms,Vs,S3,C3,A3,I1=pe(()=>{Ks();Xi();j0();X0();Nr();Hs=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this.byteOffset=i.byteOffset,this.byteLength=i.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:Vs,byteLength:Vs,code:Ms,version:Ms,multihash:Ms,bytes:Ms,_baseCache:Vs,asCID:Vs})}toV0(){switch(this.version){case 0:return this;default:{let{code:e,multihash:r}=this;if(e!==Zi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==E3)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=pn(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&&m1(this.multihash,e.multihash)}toString(e){let{bytes:r,version:n,_baseCache:i}=this;switch(n){case 0:return w3(r,i,e||Yt.encoder);default:return v3(r,i,e||Jn.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 C3(/^0\.0/,A3),!!(e&&(e[B1]||e.asCID===e))}get toBaseEncodedString(){throw new Error("Deprecated, use .toString()")}get codec(){throw new Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw new Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw new Error('"multibaseName" property is deprecated')}get prefix(){throw new Error('"prefix" property is deprecated')}static asCID(e){if(e instanceof t)return e;if(e!=null&&e.asCID===e){let{version:r,code:n,multihash:i,bytes:o}=e;return new t(r,n,i,o||D1(r,n,i.bytes))}else if(e!=null&&e[B1]===!0){let{version:r,multihash:n,code:i}=e,o=g1(n);return t.create(r,i,o)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");switch(e){case 0:{if(r!==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 i=D1(e,r,n.bytes);return new t(e,r,n,i)}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,i=pr(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new ri(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=$i(e.subarray(r));return r+=h,l},i=n(),o=Zi;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(e,r){let[n,i]=b3(e,r),o=t.decode(i);return o._baseCache.set(n,e),o}},b3=(t,e)=>{switch(t[0]){case"Q":{let r=e||Yt;return[Yt.prefix,r.decode(`${Yt.prefix}${t}`)]}case Yt.prefix:{let r=e||Yt;return[Yt.prefix,r.decode(t)]}case Jn.prefix:{let r=e||Jn;return[Jn.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)]}}},w3=(t,e,r)=>{let{prefix:n}=r;if(n!==Yt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},v3=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},Zi=112,E3=18,D1=(t,e,r)=>{let n=ti(t),i=n+ti(e),o=new Uint8Array(i+r.byteLength);return ei(t,o,0),ei(e,o,n),o.set(r,i),o},B1=Symbol.for("@ipld/js-cid/CID"),Ms={writable:!1,configurable:!1,enumerable:!0},Vs={writable:!1,enumerable:!1,configurable:!1},S3="0.0.0-dev",C3=(t,e)=>{if(t.test(S3))console.warn(e);else throw new Error(e)},A3=`CID.isCID(v) is deprecated and will be removed in the next major release.
15
+ `+a+e.substr(s+1),o=i-s-1,s=-1,++i}else(e[i]===" "||e[i]===" "||e[i]===",")&&(s=i);return e}function zx(t){return t.replace(/^\s+/,"")}});var Qh=te((WB,Zh)=>{var zt=we();nn();Me();var $h=Zh.exports=zt.sha256=zt.sha256||{};zt.md.sha256=zt.md.algorithms.sha256=$h;$h.create=function(){Yh||Gx();var t=null,e=zt.util.createBuffer(),r=new Array(64),n={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=zt.util.createBuffer(),t={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=zt.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),Wh(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=zt.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(d0.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:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4,h5:t.h5,h6:t.h6,h7:t.h7};Wh(l,r,i);var h=zt.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h.putInt32(l.h5),h.putInt32(l.h6),h.putInt32(l.h7),h},n};var d0=null,Yh=!1,Xh=null;function Gx(){d0="\x80",d0+=zt.util.fillString("\0",64),Xh=[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],Yh=!0}function Wh(t,e,r){for(var n,i,o,s,a,c,u,f,l,h,y,d,p,m,g,b=r.length();b>=64;){for(u=0;u<16;++u)e[u]=r.getInt32();for(;u<64;++u)n=e[u-2],n=(n>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=e[u-15],i=(i>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,e[u]=n+e[u-7]+i+e[u-16]|0;for(f=t.h0,l=t.h1,h=t.h2,y=t.h3,d=t.h4,p=t.h5,m=t.h6,g=t.h7,u=0;u<64;++u)s=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),a=m^d&(p^m),o=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),c=f&l|h&(f^l),n=g+s+a+Xh[u]+e[u],i=o+c,g=m,m=p,p=d,d=y+n>>>0,y=h,h=l,l=f,f=n+i>>>0;t.h0=t.h0+f|0,t.h1=t.h1+l|0,t.h2=t.h2+h|0,t.h3=t.h3+y|0,t.h4=t.h4+d|0,t.h5=t.h5+p|0,t.h6=t.h6+m|0,t.h7=t.h7+g|0,b-=64}}});var Jh=te(($B,jh)=>{var Gt=we();Me();var Ss=null;Gt.util.isNodejs&&!Gt.options.usePureJavaScript&&!process.versions["node-webkit"]&&(Ss=ws());var Wx=jh.exports=Gt.prng=Gt.prng||{};Wx.create=function(t){for(var e={plugin:t,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=t.md,n=new Array(32),i=0;i<32;++i)n[i]=r.create();e.pools=n,e.pool=0,e.generate=function(u,f){if(!f)return e.generateSync(u);var l=e.plugin.cipher,h=e.plugin.increment,y=e.plugin.formatKey,d=e.plugin.formatSeed,p=Gt.util.createBuffer();e.key=null,m();function m(g){if(g)return f(g);if(p.length()>=u)return f(null,p.getBytes(u));if(e.generated>1048575&&(e.key=null),e.key===null)return Gt.util.nextTick(function(){o(m)});var b=l(e.key,e.seed);e.generated+=b.length,p.putBytes(b),e.key=y(l(e.key,h(e.seed))),e.seed=d(l(e.key,e.seed)),Gt.util.setImmediate(m)}},e.generateSync=function(u){var f=e.plugin.cipher,l=e.plugin.increment,h=e.plugin.formatKey,y=e.plugin.formatSeed;e.key=null;for(var d=Gt.util.createBuffer();d.length()<u;){e.generated>1048575&&(e.key=null),e.key===null&&s();var p=f(e.key,e.seed);e.generated+=p.length,d.putBytes(p),e.key=h(f(e.key,l(e.seed))),e.seed=y(f(e.key,e.seed))}return d.getBytes(u)};function o(u){if(e.pools[0].messageLength>=32)return a(),u();var f=32-e.pools[0].messageLength<<5;e.seedFile(f,function(l,h){if(l)return u(l);e.collect(h),a(),u()})}function s(){if(e.pools[0].messageLength>=32)return a();var u=32-e.pools[0].messageLength<<5;e.collect(e.seedFileSync(u)),a()}function a(){e.reseeds=e.reseeds===4294967295?0:e.reseeds+1;var u=e.plugin.md.create();u.update(e.keyBytes);for(var f=1,l=0;l<32;++l)e.reseeds%f===0&&(u.update(e.pools[l].digest().getBytes()),e.pools[l].start()),f=f<<1;e.keyBytes=u.digest().getBytes(),u.start(),u.update(e.keyBytes);var h=u.digest().getBytes();e.key=e.plugin.formatKey(e.keyBytes),e.seed=e.plugin.formatSeed(h),e.generated=0}function c(u){var f=null,l=Gt.util.globalScope,h=l.crypto||l.msCrypto;h&&h.getRandomValues&&(f=function(v){return h.getRandomValues(v)});var y=Gt.util.createBuffer();if(f)for(;y.length()<u;){var d=Math.max(1,Math.min(u-y.length(),65536)/4),p=new Uint32Array(Math.floor(d));try{f(p);for(var m=0;m<p.length;++m)y.putInt32(p[m])}catch(v){if(!(typeof QuotaExceededError<"u"&&v instanceof QuotaExceededError))throw v}}if(y.length()<u)for(var g,b,x,S=Math.floor(Math.random()*65536);y.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 m=0;m<3;++m)x=S>>>(m<<3),x^=Math.floor(Math.random()*256),y.putByte(x&255)}return y.getBytes(u)}return Ss?(e.seedFile=function(u,f){Ss.randomBytes(u,function(l,h){if(l)return f(l);f(null,h.toString())})},e.seedFileSync=function(u){return Ss.randomBytes(u).toString()}):(e.seedFile=function(u,f){try{f(null,c(u))}catch(l){f(l)}},e.seedFileSync=c),e.collect=function(u){for(var f=u.length,l=0;l<f;++l)e.pools[e.pool].update(u.substr(l,1)),e.pool=e.pool===31?0:e.pool+1},e.collectInt=function(u,f){for(var l="",h=0;h<f;h+=8)l+=String.fromCharCode(u>>h&255);e.collect(l)},e.registerWorker=function(u){if(u===self)e.seedFile=function(l,h){function y(d){var p=d.data;p.forge&&p.forge.prng&&(self.removeEventListener("message",y),h(p.forge.prng.err,p.forge.prng.bytes))}self.addEventListener("message",y),self.postMessage({forge:{prng:{needed:l}}})};else{var f=function(l){var h=l.data;h.forge&&h.forge.prng&&e.seedFile(h.forge.prng.needed,function(y,d){u.postMessage({forge:{prng:{err:y,bytes:d}}})})};u.addEventListener("message",f)}},e}});var Fi=te((YB,p0)=>{var $e=we();h0();Qh();Jh();Me();(function(){if($e.random&&$e.random.getBytes){p0.exports=$e.random;return}(function(t){var e={},r=new Array(4),n=$e.util.createBuffer();e.formatKey=function(l){var h=$e.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),$e.aes._expandKey(l,!1)},e.formatSeed=function(l){var h=$e.util.createBuffer(l);return l=new Array(4),l[0]=h.getInt32(),l[1]=h.getInt32(),l[2]=h.getInt32(),l[3]=h.getInt32(),l},e.cipher=function(l,h){return $e.aes._updateBlock(l,h,r,!1),n.putInt32(r[0]),n.putInt32(r[1]),n.putInt32(r[2]),n.putInt32(r[3]),n.getBytes()},e.increment=function(l){return++l[3],l},e.md=$e.md.sha256;function i(){var l=$e.prng.create(e);return l.getBytes=function(h,y){return l.generate(h,y)},l.getBytesSync=function(h){return l.generate(h)},l}var o=i(),s=null,a=$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,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}t&&(t().mousemove(function(l){o.collectInt(l.clientX,16),o.collectInt(l.clientY,16)}),t().keypress(function(l){o.collectInt(l.charCode,8)}))}if(!$e.random)$e.random=o;else for(var f in o)$e.random[f]=o[f];$e.random.createInstance=i,p0.exports=$e.random})(typeof jQuery<"u"?jQuery:null)})()});var nd=te((XB,rd)=>{var lt=we();Me();var m0=[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],ed=[1,2,3,5],$x=function(t,e){return t<<e&65535|(t&65535)>>16-e},Yx=function(t,e){return(t&65535)>>e|t<<16-e&65535};rd.exports=lt.rc2=lt.rc2||{};lt.rc2.expandKey=function(t,e){typeof t=="string"&&(t=lt.util.createBuffer(t)),e=e||128;var r=t,n=t.length(),i=e,o=Math.ceil(i/8),s=255>>(i&7),a;for(a=n;a<128;a++)r.putByte(m0[r.at(a-1)+r.at(a-n)&255]);for(r.setAt(128-o,m0[r.at(128-o)&s]),a=127-o;a>=0;a--)r.setAt(a,m0[r.at(a+1)^r.at(a+o)]);return r};var td=function(t,e,r){var n=!1,i=null,o=null,s=null,a,c,u,f,l=[];for(t=lt.rc2.expandKey(t,e),u=0;u<64;u++)l.push(t.getInt16Le());r?(a=function(d){for(u=0;u<4;u++)d[u]+=l[f]+(d[(u+3)%4]&d[(u+2)%4])+(~d[(u+3)%4]&d[(u+1)%4]),d[u]=$x(d[u],ed[u]),f++},c=function(d){for(u=0;u<4;u++)d[u]+=l[d[(u+3)%4]&63]}):(a=function(d){for(u=3;u>=0;u--)d[u]=Yx(d[u],ed[u]),d[u]-=l[f]+(d[(u+3)%4]&d[(u+2)%4])+(~d[(u+3)%4]&d[(u+1)%4]),f--},c=function(d){for(u=3;u>=0;u--)d[u]-=l[d[(u+3)%4]&63]});var h=function(d){var p=[];for(u=0;u<4;u++){var m=i.getInt16Le();s!==null&&(r?m^=s.getInt16Le():s.putInt16Le(m)),p.push(m&65535)}f=r?0:63;for(var g=0;g<d.length;g++)for(var b=0;b<d[g][0];b++)d[g][1](p);for(u=0;u<4;u++)s!==null&&(r?s.putInt16Le(p[u]):p[u]^=s.getInt16Le()),o.putInt16Le(p[u])},y=null;return y={start:function(d,p){d&&typeof d=="string"&&(d=lt.util.createBuffer(d)),n=!1,i=lt.util.createBuffer(),o=p||new lt.util.createBuffer,s=d,y.output=o},update:function(d){for(n||i.putBuffer(d);i.length()>=8;)h([[5,a],[1,c],[6,a],[1,c],[5,a]])},finish:function(d){var p=!0;if(r)if(d)p=d(8,i,!r);else{var m=i.length()===8?8:8-i.length();i.fillWithByte(m,m)}if(p&&(n=!0,y.update()),!r&&(p=i.length()===0,p))if(d)p=d(8,o,!r);else{var g=o.length(),b=o.at(g-1);b>g?p=!1:o.truncate(b)}return p}},y};lt.rc2.startEncrypting=function(t,e,r){var n=lt.rc2.createEncryptionCipher(t,128);return n.start(e,r),n};lt.rc2.createEncryptionCipher=function(t,e){return td(t,e,!0)};lt.rc2.startDecrypting=function(t,e,r){var n=lt.rc2.createDecryptionCipher(t,128);return n.start(e,r),n};lt.rc2.createDecryptionCipher=function(t,e){return td(t,e,!1)}});var Ds=te((ZB,ld)=>{var y0=we();ld.exports=y0.jsbn=y0.jsbn||{};var lr,Xx=0xdeadbeefcafe,id=(Xx&16777215)==15715070;function L(t,e,r){this.data=[],t!=null&&(typeof t=="number"?this.fromNumber(t,e,r):e==null&&typeof t!="string"?this.fromString(t,256):this.fromString(t,e))}y0.jsbn.BigInteger=L;function le(){return new L(null)}function Zx(t,e,r,n,i,o){for(;--o>=0;){var s=e*this.data[t++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=s&67108863}return i}function Qx(t,e,r,n,i,o){for(var s=e&32767,a=e>>15;--o>=0;){var c=this.data[t]&32767,u=this.data[t++]>>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 od(t,e,r,n,i,o){for(var s=e&16383,a=e>>14;--o>=0;){var c=this.data[t]&16383,u=this.data[t++]>>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=od,lr=28):id&&navigator.appName=="Microsoft Internet Explorer"?(L.prototype.am=Qx,lr=30):id&&navigator.appName!="Netscape"?(L.prototype.am=Zx,lr=26):(L.prototype.am=od,lr=28);L.prototype.DB=lr;L.prototype.DM=(1<<lr)-1;L.prototype.DV=1<<lr;var g0=52;L.prototype.FV=Math.pow(2,g0);L.prototype.F1=g0-lr;L.prototype.F2=2*lr-g0;var jx="0123456789abcdefghijklmnopqrstuvwxyz",Cs=new Array,Mn,vt;Mn=48;for(vt=0;vt<=9;++vt)Cs[Mn++]=vt;Mn=97;for(vt=10;vt<36;++vt)Cs[Mn++]=vt;Mn=65;for(vt=10;vt<36;++vt)Cs[Mn++]=vt;function sd(t){return jx.charAt(t)}function ad(t,e){var r=Cs[t.charCodeAt(e)];return r??-1}function Jx(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 eb(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 Pr(t){var e=le();return e.fromInt(t),e}function tb(t,e){var r;if(e==16)r=4;else if(e==8)r=3;else if(e==256)r=8;else if(e==2)r=1;else if(e==32)r=5;else if(e==4)r=2;else{this.fromRadix(t,e);return}this.t=0,this.s=0;for(var n=t.length,i=!1,o=0;--n>=0;){var s=r==8?t[n]&255:ad(t,n);if(s<0){t.charAt(n)=="-"&&(i=!0);continue}i=!1,o==0?this.data[this.t++]=s:o+r>this.DB?(this.data[this.t-1]|=(s&(1<<this.DB-o)-1)<<o,this.data[this.t++]=s>>this.DB-o):this.data[this.t-1]|=s<<o,o+=r,o>=this.DB&&(o-=this.DB)}r==8&&t[0]&128&&(this.s=-1,o>0&&(this.data[this.t-1]|=(1<<this.DB-o)-1<<o)),this.clamp(),i&&L.ZERO.subTo(this,this)}function rb(){for(var t=this.s&this.DM;this.t>0&&this.data[this.t-1]==t;)--this.t}function nb(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(t==16)e=4;else if(t==8)e=3;else if(t==2)e=1;else if(t==32)e=5;else if(t==4)e=2;else return this.toRadix(t);var r=(1<<e)-1,n,i=!1,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(n=this.data[s]>>a)>0&&(i=!0,o=sd(n));s>=0;)a<e?(n=(this.data[s]&(1<<a)-1)<<e-a,n|=this.data[--s]>>(a+=this.DB-e)):(n=this.data[s]>>(a-=e)&r,a<=0&&(a+=this.DB,--s)),n>0&&(i=!0),i&&(o+=sd(n));return i?o:"0"}function ib(){var t=le();return L.ZERO.subTo(this,t),t}function ob(){return this.s<0?this.negate():this}function sb(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 As(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 ab(){return this.t<=0?0:this.DB*(this.t-1)+As(this.data[this.t-1]^this.s&this.DM)}function cb(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 ub(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 fb(t,e){var r=t%this.DB,n=this.DB-r,i=(1<<n)-1,o=Math.floor(t/this.DB),s=this.s<<r&this.DM,a;for(a=this.t-1;a>=0;--a)e.data[a+o+1]=this.data[a]>>n|s,s=(this.data[a]&i)<<r;for(a=o-1;a>=0;--a)e.data[a]=0;e.data[o]=s,e.t=this.t+o+1,e.s=this.s,e.clamp()}function lb(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t){e.t=0;return}var n=t%this.DB,i=this.DB-n,o=(1<<n)-1;e.data[0]=this.data[r]>>n;for(var s=r+1;s<this.t;++s)e.data[s-r-1]|=(this.data[s]&o)<<i,e.data[s-r]=this.data[s]>>n;n>0&&(e.data[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}function hb(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]-t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e.data[r++]=this.DV+n:n>0&&(e.data[r++]=n),e.t=r,e.clamp()}function db(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e.data[i]=0;for(i=0;i<n.t;++i)e.data[i+r.t]=r.am(0,n.data[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&L.ZERO.subTo(e,e)}function pb(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 mb(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t<n.t){e?.fromInt(0),r!=null&&this.copyTo(r);return}r==null&&(r=le());var o=le(),s=this.s,a=t.s,c=this.DB-As(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),h=this.FV/l,y=(1<<this.F1)/l,d=1<<this.F2,p=r.t,m=p-u,g=e??le();for(o.dlShiftTo(m,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(;--m>=0;){var b=r.data[--p]==f?this.DM:Math.floor(r.data[p]*h+(r.data[p-1]+d)*y);if((r.data[p]+=o.am(0,b,r,m,0,u))<b)for(o.dlShiftTo(m,g),r.subTo(g,r);r.data[p]<--b;)r.subTo(g,r)}e!=null&&(r.drShiftTo(u,e),s!=a&&L.ZERO.subTo(e,e)),r.t=u,r.clamp(),c>0&&r.rShiftTo(c,r),s<0&&L.ZERO.subTo(r,r)}}}function yb(t){var e=le();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(L.ZERO)>0&&t.subTo(e,e),e}function on(t){this.m=t}function gb(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t}function xb(t){return t}function bb(t){t.divRemTo(this.m,null,t)}function wb(t,e,r){t.multiplyTo(e,r),this.reduce(r)}function vb(t,e){t.squareTo(e),this.reduce(e)}on.prototype.convert=gb;on.prototype.revert=xb;on.prototype.reduce=bb;on.prototype.mulTo=wb;on.prototype.sqrTo=vb;function Eb(){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 sn(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 Sb(t){var e=le();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(L.ZERO)>0&&this.m.subTo(e,e),e}function Cb(t){var e=le();return t.copyTo(e),this.reduce(e),e}function Ab(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 Db(t,e){t.squareTo(e),this.reduce(e)}function Bb(t,e,r){t.multiplyTo(e,r),this.reduce(r)}sn.prototype.convert=Sb;sn.prototype.revert=Cb;sn.prototype.reduce=Ab;sn.prototype.mulTo=Bb;sn.prototype.sqrTo=Db;function Ib(){return(this.t>0?this.data[0]&1:this.s)==0}function Tb(t,e){if(t>4294967295||t<1)return L.ONE;var r=le(),n=le(),i=e.convert(this),o=As(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<<o)>0)e.mulTo(n,i,r);else{var s=r;r=n,n=s}return e.revert(r)}function _b(t,e){var r;return t<256||e.isEven()?r=new on(e):r=new sn(e),this.exp(t,r)}L.prototype.copyTo=Jx;L.prototype.fromInt=eb;L.prototype.fromString=tb;L.prototype.clamp=rb;L.prototype.dlShiftTo=cb;L.prototype.drShiftTo=ub;L.prototype.lShiftTo=fb;L.prototype.rShiftTo=lb;L.prototype.subTo=hb;L.prototype.multiplyTo=db;L.prototype.squareTo=pb;L.prototype.divRemTo=mb;L.prototype.invDigit=Eb;L.prototype.isEven=Ib;L.prototype.exp=Tb;L.prototype.toString=nb;L.prototype.negate=ib;L.prototype.abs=ob;L.prototype.compareTo=sb;L.prototype.bitLength=ab;L.prototype.mod=yb;L.prototype.modPowInt=_b;L.ZERO=Pr(0);L.ONE=Pr(1);function kb(){var t=le();return this.copyTo(t),t}function Rb(){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 Lb(){return this.t==0?this.s:this.data[0]<<24>>24}function Nb(){return this.t==0?this.s:this.data[0]<<16>>16}function Pb(t){return Math.floor(Math.LN2*this.DB/Math.log(t))}function Ub(){return this.s<0?-1:this.t<=0||this.t==1&&this.data[0]<=0?0:1}function Ob(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=Pr(r),i=le(),o=le(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s}function Fb(t,e){this.fromInt(0),e==null&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,s=0,a=0;a<t.length;++a){var c=ad(t,a);if(c<0){t.charAt(a)=="-"&&this.signum()==0&&(i=!0);continue}s=e*s+c,++o>=r&&(this.dMultiply(n),this.dAddOffset(s,0),o=0,s=0)}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(s,0)),i&&L.ZERO.subTo(this,this)}function Kb(t,e,r){if(typeof e=="number")if(t<2)this.fromInt(1);else for(this.fromNumber(t,r),this.testBit(t-1)||this.bitwiseTo(L.ONE.shiftLeft(t-1),x0,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(L.ONE.shiftLeft(t-1),this);else{var n=new Array,i=t&7;n.length=(t>>3)+1,e.nextBytes(n),i>0?n[0]&=(1<<i)-1:n[0]=0,this.fromString(n,256)}}function Mb(){var t=this.t,e=new Array;e[0]=this.s;var r=this.DB-t*this.DB%8,n,i=0;if(t-- >0)for(r<this.DB&&(n=this.data[t]>>r)!=(this.s&this.DM)>>r&&(e[i++]=n|this.s<<this.DB-r);t>=0;)r<8?(n=(this.data[t]&(1<<r)-1)<<8-r,n|=this.data[--t]>>(r+=this.DB-8)):(n=this.data[t]>>(r-=8)&255,r<=0&&(r+=this.DB,--t)),n&128&&(n|=-256),i==0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(e[i++]=n);return e}function Vb(t){return this.compareTo(t)==0}function Hb(t){return this.compareTo(t)<0?this:t}function qb(t){return this.compareTo(t)>0?this:t}function zb(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r.data[n]=e(this.data[n],t.data[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r.data[n]=e(this.data[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<t.t;++n)r.data[n]=e(i,t.data[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()}function Gb(t,e){return t&e}function Wb(t){var e=le();return this.bitwiseTo(t,Gb,e),e}function x0(t,e){return t|e}function $b(t){var e=le();return this.bitwiseTo(t,x0,e),e}function cd(t,e){return t^e}function Yb(t){var e=le();return this.bitwiseTo(t,cd,e),e}function ud(t,e){return t&~e}function Xb(t){var e=le();return this.bitwiseTo(t,ud,e),e}function Zb(){for(var t=le(),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 Qb(t){var e=le();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e}function jb(t){var e=le();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e}function Jb(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 ew(){for(var t=0;t<this.t;++t)if(this.data[t]!=0)return t*this.DB+Jb(this.data[t]);return this.s<0?this.t*this.DB:-1}function tw(t){for(var e=0;t!=0;)t&=t-1,++e;return e}function rw(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=tw(this.data[r]^e);return t}function nw(t){var e=Math.floor(t/this.DB);return e>=this.t?this.s!=0:(this.data[e]&1<<t%this.DB)!=0}function iw(t,e){var r=L.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r}function ow(t){return this.changeBit(t,x0)}function sw(t){return this.changeBit(t,ud)}function aw(t){return this.changeBit(t,cd)}function cw(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this.data[r]+t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t.data[r],e.data[r++]=n&this.DM,n>>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e.data[r++]=n:n<-1&&(e.data[r++]=this.DV+n),e.t=r,e.clamp()}function uw(t){var e=le();return this.addTo(t,e),e}function fw(t){var e=le();return this.subTo(t,e),e}function lw(t){var e=le();return this.multiplyTo(t,e),e}function hw(t){var e=le();return this.divRemTo(t,e,null),e}function dw(t){var e=le();return this.divRemTo(t,null,e),e}function pw(t){var e=le(),r=le();return this.divRemTo(t,e,r),new Array(e,r)}function mw(t){this.data[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()}function yw(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 Ki(){}function fd(t){return t}function gw(t,e,r){t.multiplyTo(e,r)}function xw(t,e){t.squareTo(e)}Ki.prototype.convert=fd;Ki.prototype.revert=fd;Ki.prototype.mulTo=gw;Ki.prototype.sqrTo=xw;function bw(t){return this.exp(t,new Ki)}function ww(t,e,r){var n=Math.min(this.t+t.t,e);for(r.s=0,r.t=n;n>0;)r.data[--n]=0;var i;for(i=r.t-this.t;n<i;++n)r.data[n+this.t]=this.am(0,t.data[n],r,n,0,this.t);for(i=Math.min(t.t,e);n<i;++n)this.am(0,t.data[n],r,n,0,e-n);r.clamp()}function vw(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 Vn(t){this.r2=le(),this.q3=le(),L.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}function Ew(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=le();return t.copyTo(e),this.reduce(e),e}function Sw(t){return t}function Cw(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 Aw(t,e){t.squareTo(e),this.reduce(e)}function Dw(t,e,r){t.multiplyTo(e,r),this.reduce(r)}Vn.prototype.convert=Ew;Vn.prototype.revert=Sw;Vn.prototype.reduce=Cw;Vn.prototype.mulTo=Dw;Vn.prototype.sqrTo=Aw;function Bw(t,e){var r=t.bitLength(),n,i=Pr(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 on(e):e.isEven()?o=new Vn(e):o=new sn(e);var s=new Array,a=3,c=n-1,u=(1<<n)-1;if(s[1]=o.convert(this),n>1){var f=le();for(o.sqrTo(s[1],f);a<=u;)s[a]=le(),o.mulTo(f,s[a-2],s[a]),a+=2}var l=t.t-1,h,y=!0,d=le(),p;for(r=As(t.data[l])-1;l>=0;){for(r>=c?h=t.data[l]>>r-c&u:(h=(t.data[l]&(1<<r+1)-1)<<c-r,l>0&&(h|=t.data[l-1]>>this.DB+r-c)),a=n;!(h&1);)h>>=1,--a;if((r-=a)<0&&(r+=this.DB,--l),y)s[h].copyTo(i),y=!1;else{for(;a>1;)o.sqrTo(i,d),o.sqrTo(d,i),a-=2;a>0?o.sqrTo(i,d):(p=i,i=d,d=p),o.mulTo(d,s[h],i)}for(;l>=0&&!(t.data[l]&1<<r);)o.sqrTo(i,d),p=i,i=d,d=p,--r<0&&(r=this.DB-1,--l)}return o.revert(i)}function Iw(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i<o&&(o=i),o>0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r}function Tw(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 _w(t){var e=t.isEven();if(this.isEven()&&e||t.signum()==0)return L.ZERO;for(var r=t.clone(),n=this.clone(),i=Pr(1),o=Pr(0),s=Pr(0),a=Pr(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),e?((!i.isEven()||!o.isEven())&&(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?((!s.isEven()||!a.isEven())&&(s.addTo(this,s),a.subTo(t,a)),s.rShiftTo(1,s)):a.isEven()||a.subTo(t,a),a.rShiftTo(1,a);r.compareTo(n)>=0?(r.subTo(n,r),e&&i.subTo(s,i),o.subTo(a,o)):(n.subTo(r,n),e&&s.subTo(i,s),a.subTo(o,a))}if(n.compareTo(L.ONE)!=0)return L.ZERO;if(a.compareTo(t)>=0)return a.subtract(t);if(a.signum()<0)a.addTo(t,a);else return a;return a.signum()<0?a.add(t):a}var Ot=[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],kw=(1<<26)/Ot[Ot.length-1];function Rw(t){var e,r=this.abs();if(r.t==1&&r.data[0]<=Ot[Ot.length-1]){for(e=0;e<Ot.length;++e)if(r.data[0]==Ot[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<Ot.length;){for(var n=Ot[e],i=e+1;i<Ot.length&&n<kw;)n*=Ot[i++];for(n=r.modInt(n);e<i;)if(n%Ot[e++]==0)return!1}return r.millerRabin(t)}function Lw(t){var e=this.subtract(L.ONE),r=e.getLowestSetBit();if(r<=0)return!1;for(var n=e.shiftRight(r),i=Nw(),o,s=0;s<t;++s){do o=new L(this.bitLength(),i);while(o.compareTo(L.ONE)<=0||o.compareTo(e)>=0);var a=o.modPow(n,this);if(a.compareTo(L.ONE)!=0&&a.compareTo(e)!=0){for(var c=1;c++<r&&a.compareTo(e)!=0;)if(a=a.modPowInt(2,this),a.compareTo(L.ONE)==0)return!1;if(a.compareTo(e)!=0)return!1}}return!0}function Nw(){return{nextBytes:function(t){for(var e=0;e<t.length;++e)t[e]=Math.floor(Math.random()*256)}}}L.prototype.chunkSize=Pb;L.prototype.toRadix=Ob;L.prototype.fromRadix=Fb;L.prototype.fromNumber=Kb;L.prototype.bitwiseTo=zb;L.prototype.changeBit=iw;L.prototype.addTo=cw;L.prototype.dMultiply=mw;L.prototype.dAddOffset=yw;L.prototype.multiplyLowerTo=ww;L.prototype.multiplyUpperTo=vw;L.prototype.modInt=Tw;L.prototype.millerRabin=Lw;L.prototype.clone=kb;L.prototype.intValue=Rb;L.prototype.byteValue=Lb;L.prototype.shortValue=Nb;L.prototype.signum=Ub;L.prototype.toByteArray=Mb;L.prototype.equals=Vb;L.prototype.min=Hb;L.prototype.max=qb;L.prototype.and=Wb;L.prototype.or=$b;L.prototype.xor=Yb;L.prototype.andNot=Xb;L.prototype.not=Zb;L.prototype.shiftLeft=Qb;L.prototype.shiftRight=jb;L.prototype.getLowestSetBit=ew;L.prototype.bitCount=rw;L.prototype.testBit=nw;L.prototype.setBit=ow;L.prototype.clearBit=sw;L.prototype.flipBit=aw;L.prototype.add=uw;L.prototype.subtract=fw;L.prototype.multiply=lw;L.prototype.divide=hw;L.prototype.remainder=dw;L.prototype.divideAndRemainder=pw;L.prototype.modPow=Bw;L.prototype.modInverse=_w;L.prototype.pow=bw;L.prototype.gcd=Iw;L.prototype.isProbablePrime=Rw});var yd=te((QB,md)=>{var Wt=we();nn();Me();var dd=md.exports=Wt.sha1=Wt.sha1||{};Wt.md.sha1=Wt.md.algorithms.sha1=dd;dd.create=function(){pd||Pw();var t=null,e=Wt.util.createBuffer(),r=new Array(80),n={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength64=[];for(var i=n.messageLengthSize/4,o=0;o<i;++o)n.fullMessageLength.push(0);return e=Wt.util.createBuffer(),t={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878,h4:3285377520},n},n.start(),n.update=function(i,o){o==="utf8"&&(i=Wt.util.encodeUtf8(i));var s=i.length;n.messageLength+=s,s=[s/4294967296>>>0,s>>>0];for(var a=n.fullMessageLength.length-1;a>=0;--a)n.fullMessageLength[a]+=s[1],s[1]=s[0]+(n.fullMessageLength[a]/4294967296>>>0),n.fullMessageLength[a]=n.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return e.putBytes(i),hd(t,r,e),(e.read>2048||e.length()===0)&&e.compact(),n},n.digest=function(){var i=Wt.util.createBuffer();i.putBytes(e.bytes());var o=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize,s=o&n.blockLength-1;i.putBytes(b0.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:t.h0,h1:t.h1,h2:t.h2,h3:t.h3,h4:t.h4};hd(l,r,i);var h=Wt.util.createBuffer();return h.putInt32(l.h0),h.putInt32(l.h1),h.putInt32(l.h2),h.putInt32(l.h3),h.putInt32(l.h4),h},n};var b0=null,pd=!1;function Pw(){b0="\x80",b0+=Wt.util.fillString("\0",64),pd=!0}function hd(t,e,r){for(var n,i,o,s,a,c,u,f,l=r.length();l>=64;){for(i=t.h0,o=t.h1,s=t.h2,a=t.h3,c=t.h4,f=0;f<16;++f)n=r.getInt32(),e[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=e[f-3]^e[f-8]^e[f-14]^e[f-16],n=n<<1|n>>>31,e[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=e[f-3]^e[f-8]^e[f-14]^e[f-16],n=n<<1|n>>>31,e[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=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[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=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[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=e[f-6]^e[f-16]^e[f-28]^e[f-32],n=n<<2|n>>>30,e[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;t.h0=t.h0+i|0,t.h1=t.h1+o|0,t.h2=t.h2+s|0,t.h3=t.h3+a|0,t.h4=t.h4+c|0,l-=64}}});var bd=te((jB,xd)=>{var $t=we();Me();Fi();yd();var gd=xd.exports=$t.pkcs1=$t.pkcs1||{};gd.encode_rsa_oaep=function(t,e,r){var n,i,o,s;typeof r=="string"?(n=r,i=arguments[3]||void 0,o=arguments[4]||void 0):r&&(n=r.label||void 0,i=r.seed||void 0,o=r.md||void 0,r.mgf1&&r.mgf1.md&&(s=r.mgf1.md)),o?o.start():o=$t.md.sha1.create(),s||(s=o);var a=Math.ceil(t.n.bitLength()/8),c=a-2*o.digestLength-2;if(e.length>c){var u=new Error("RSAES-OAEP input message length is too long.");throw u.length=e.length,u.maxLength=c,u}n||(n=""),o.update(n,"raw");for(var f=o.digest(),l="",h=c-e.length,y=0;y<h;y++)l+="\0";var d=f.getBytes()+l+""+e;if(!i)i=$t.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=Bs(i,a-o.digestLength-1,s),m=$t.util.xorBytes(d,p,d.length),g=Bs(m,o.digestLength,s),b=$t.util.xorBytes(i,g,i.length);return"\0"+b+m};gd.decode_rsa_oaep=function(t,e,r){var n,i,o;typeof r=="string"?(n=r,i=arguments[3]||void 0):r&&(n=r.label||void 0,i=r.md||void 0,r.mgf1&&r.mgf1.md&&(o=r.mgf1.md));var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var m=new Error("RSAES-OAEP encoded message length is invalid.");throw m.length=e.length,m.expectedLength=s,m}if(i===void 0?i=$t.md.sha1.create():i.start(),o||(o=i),s<2*i.digestLength+2)throw new Error("RSAES-OAEP key is too short for the hash function.");n||(n=""),i.update(n,"raw");for(var a=i.digest().getBytes(),c=e.charAt(0),u=e.substring(1,i.digestLength+1),f=e.substring(1+i.digestLength),l=Bs(f,i.digestLength,o),h=$t.util.xorBytes(u,l,u.length),y=Bs(h,s-i.digestLength-1,o),d=$t.util.xorBytes(f,y,f.length),p=d.substring(0,i.digestLength),m=c!=="\0",g=0;g<i.digestLength;++g)m|=a.charAt(g)!==p.charAt(g);for(var b=1,x=i.digestLength,S=i.digestLength;S<d.length;S++){var v=d.charCodeAt(S),E=v&1^1,B=b?65534:0;m|=v&B,b=b&E,x+=b}if(m||d.charCodeAt(x)!==1)throw new Error("Invalid RSAES-OAEP padding.");return d.substring(x+1)};function Bs(t,e,r){r||(r=$t.md.sha1.create());for(var n="",i=Math.ceil(e/r.digestLength),o=0;o<i;++o){var s=String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,o&255);r.start(),r.update(t+s),n+=r.digest().getBytes()}return n.substring(0,e)}});var wd=te((JB,w0)=>{var Ur=we();Me();Ds();Fi();(function(){if(Ur.prime){w0.exports=Ur.prime;return}var t=w0.exports=Ur.prime=Ur.prime||{},e=Ur.jsbn.BigInteger,r=[6,4,2,4,2,4,6,2],n=new e(null);n.fromInt(30);var i=function(l,h){return l|h};t.generateProbablePrime=function(l,h,y){typeof h=="function"&&(y=h,h={}),h=h||{};var d=h.algorithm||"PRIMEINC";typeof d=="string"&&(d={name:d}),d.options=d.options||{};var p=h.prng||Ur.random,m={nextBytes:function(g){for(var b=p.getBytesSync(g.length),x=0;x<g.length;++x)g[x]=b.charCodeAt(x)}};if(d.name==="PRIMEINC")return o(l,m,d.options,y);throw new Error("Invalid prime generation algorithm: "+d.name)};function o(l,h,y,d){return"workers"in y?c(l,h,y,d):s(l,h,y,d)}function s(l,h,y,d){var p=u(l,h),m=0,g=f(p.bitLength());"millerRabinTests"in y&&(g=y.millerRabinTests);var b=10;"maxBlockTime"in y&&(b=y.maxBlockTime),a(p,l,h,m,g,b,d)}function a(l,h,y,d,p,m,g){var b=+new Date;do{if(l.bitLength()>h&&(l=u(h,y)),l.isProbablePrime(p))return g(null,l);l.dAddOffset(r[d++%8],0)}while(m<0||+new Date-b<m);Ur.util.setImmediate(function(){a(l,h,y,d,p,m,g)})}function c(l,h,y,d){if(typeof Worker>"u")return s(l,h,y,d);var p=u(l,h),m=y.workers,g=y.workLoad||100,b=g*30/8,x=y.workerScript||"forge/prime.worker.js";if(m===-1)return Ur.util.estimateCores(function(v,E){v&&(E=2),m=E-1,S()});S();function S(){m=Math.max(1,m);for(var v=[],E=0;E<m;++E)v[E]=new Worker(x);for(var B=m,E=0;E<m;++E)v[E].addEventListener("message",U);var D=!1;function U(F){if(!D){--B;var O=F.data;if(O.found){for(var M=0;M<v.length;++M)v[M].terminate();return D=!0,d(null,new e(O.prime,16))}p.bitLength()>l&&(p=u(l,h));var G=p.toString(16);F.target.postMessage({hex:G,workLoad:g}),p.dAddOffset(b,0)}}}}function u(l,h){var y=new e(l,h),d=l-1;return y.testBit(d)||y.bitwiseTo(e.ONE.shiftLeft(d),i,y),y.dAddOffset(31-y.mod(n).byteValue(),0),y}function 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 Ts=te((eI,Bd)=>{var $=we();Oi();Ds();ds();bd();wd();Fi();Me();typeof ue>"u"&&(ue=$.jsbn.BigInteger);var ue,v0=$.util.isNodejs?ws():null,A=$.asn1,Et=$.util;$.pki=$.pki||{};Bd.exports=$.pki.rsa=$.rsa=$.rsa||{};var J=$.pki,Uw=[6,4,2,4,2,4,6,2],Ow={name:"PrivateKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Fw={name:"RSAPrivateKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},Kw={name:"RSAPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:A.Class.UNIVERSAL,type:A.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},Mw=$.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},Vw={name:"DigestInfo",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:A.Class.UNIVERSAL,type:A.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:A.Class.UNIVERSAL,type:A.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:A.Class.UNIVERSAL,type:A.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:A.Class.UNIVERSAL,type:A.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},Hw=function(t){var e;if(t.algorithm in J.oids)e=J.oids[t.algorithm];else{var r=new Error("Unknown message digest algorithm.");throw r.algorithm=t.algorithm,r}var n=A.oidToDer(e).getBytes(),i=A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[]),o=A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[]);o.value.push(A.create(A.Class.UNIVERSAL,A.Type.OID,!1,n)),o.value.push(A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,""));var s=A.create(A.Class.UNIVERSAL,A.Type.OCTETSTRING,!1,t.digest().getBytes());return i.value.push(o),i.value.push(s),A.toDer(i).getBytes()},Ad=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(ue.ONE))),e.dQ||(e.dQ=e.d.mod(e.q.subtract(ue.ONE))),e.qInv||(e.qInv=e.q.modInverse(e.p));var n;do n=new ue($.util.bytesToHex($.random.getBytes(e.n.bitLength()/8)),16);while(n.compareTo(e.n)>=0||!n.gcd(e.n).equals(ue.ONE));t=t.multiply(n.modPow(e.e,e.n)).mod(e.n);for(var i=t.mod(e.p).modPow(e.dP,e.p),o=t.mod(e.q).modPow(e.dQ,e.q);i.compareTo(o)<0;)i=i.add(e.p);var s=i.subtract(o).multiply(e.qInv).mod(e.p).multiply(e.q).add(o);return s=s.multiply(n.modInverse(e.n)).mod(e.n),s};J.rsa.encrypt=function(t,e,r){var n=r,i,o=Math.ceil(e.n.bitLength()/8);r!==!1&&r!==!0?(n=r===2,i=Dd(t,e,r)):(i=$.util.createBuffer(),i.putBytes(t));for(var s=new ue(i.toHex(),16),a=Ad(s,e,n),c=a.toString(16),u=$.util.createBuffer(),f=o-Math.ceil(c.length/2);f>0;)u.putByte(0),--f;return u.putBytes($.util.hexToBytes(c)),u.getBytes()};J.rsa.decrypt=function(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8);if(t.length!==i){var o=new Error("Encrypted message length is invalid.");throw o.length=t.length,o.expected=i,o}var s=new ue($.util.createBuffer(t).toHex(),16);if(s.compareTo(e.n)>=0)throw new Error("Encrypted message is invalid.");for(var a=Ad(s,e,r),c=a.toString(16),u=$.util.createBuffer(),f=i-Math.ceil(c.length/2);f>0;)u.putByte(0),--f;return u.putBytes($.util.hexToBytes(c)),n!==!1?Is(u.getBytes(),e,r):u.getBytes()};J.rsa.createKeyPairGenerationState=function(t,e,r){typeof t=="string"&&(t=parseInt(t,10)),t=t||2048,r=r||{};var n=r.prng||$.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:t,rng:i,eInt:e||65537,e:new ue(null),p:null,q:null,qBits:t>>1,pBits:t-(t>>1),pqState:0,num:null,keys:null},s.e.fromInt(s.eInt);else throw new Error("Invalid key generation algorithm: "+o);return s};J.rsa.stepKeyPairGenerationState=function(t,e){"algorithm"in t||(t.algorithm="PRIMEINC");var r=new ue(null);r.fromInt(30);for(var n=0,i=function(l,h){return l|h},o=+new Date,s,a=0;t.keys===null&&(e<=0||a<e);){if(t.state===0){var c=t.p===null?t.pBits:t.qBits,u=c-1;t.pqState===0?(t.num=new ue(c,t.rng),t.num.testBit(u)||t.num.bitwiseTo(ue.ONE.shiftLeft(u),i,t.num),t.num.dAddOffset(31-t.num.mod(r).byteValue(),0),n=0,++t.pqState):t.pqState===1?t.num.bitLength()>c?t.pqState=0:t.num.isProbablePrime(zw(t.num.bitLength()))?++t.pqState:t.num.dAddOffset(Uw[n++%8],0):t.pqState===2?t.pqState=t.num.subtract(ue.ONE).gcd(t.e).compareTo(ue.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(ue.ONE),t.q1=t.q.subtract(ue.ONE),t.phi=t.p1.multiply(t.q1),++t.state;else if(t.state===3)t.phi.gcd(t.e).compareTo(ue.ONE)===0?++t.state:(t.p=null,t.q=null,t.state=0);else if(t.state===4)t.n=t.p.multiply(t.q),t.n.bitLength()===t.bits?++t.state:(t.q=null,t.state=0);else if(t.state===5){var f=t.e.modInverse(t.phi);t.keys={privateKey:J.rsa.setPrivateKey(t.n,t.e,f,t.p,t.q,f.mod(t.p1),f.mod(t.q1),t.q.modInverse(t.p)),publicKey:J.rsa.setPublicKey(t.n,t.e)}}s=+new Date,a+=s-o,o=s}return t.keys!==null};J.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),!$.options.usePureJavaScript&&!r.prng&&t>=256&&t<=16384&&(e===65537||e===3)){if(n){if(vd("generateKeyPair"))return v0.generateKeyPair("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,c,u){if(a)return n(a);n(null,{privateKey:J.privateKeyFromPem(u),publicKey:J.publicKeyFromPem(c)})});if(Ed("generateKey")&&Ed("exportKey"))return Et.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Cd(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=J.privateKeyFromAsn1(A.fromDer($.util.createBuffer(a)));n(null,{privateKey:c,publicKey:J.setRsaPublicKey(c.n,c.e)})}});if(Sd("generateKey")&&Sd("exportKey")){var i=Et.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:t,publicExponent:Cd(e),hash:{name:"SHA-256"}},!0,["sign","verify"]);i.oncomplete=function(a){var c=a.target.result,u=Et.globalScope.msCrypto.subtle.exportKey("pkcs8",c.privateKey);u.oncomplete=function(f){var l=f.target.result,h=J.privateKeyFromAsn1(A.fromDer($.util.createBuffer(l)));n(null,{privateKey:h,publicKey:J.setRsaPublicKey(h.n,h.e)})},u.onerror=function(f){n(f)}},i.onerror=function(a){n(a)};return}}else if(vd("generateKeyPairSync")){var o=v0.generateKeyPairSync("rsa",{modulusLength:t,publicExponent:e,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:J.privateKeyFromPem(o.privateKey),publicKey:J.publicKeyFromPem(o.publicKey)}}}var s=J.rsa.createKeyPairGenerationState(t,e,r);if(!n)return J.rsa.stepKeyPairGenerationState(s,0),s.keys;qw(s,r,n)};J.setRsaPublicKey=J.rsa.setPublicKey=function(t,e){var r={n:t,e};return r.encrypt=function(n,i,o){if(typeof i=="string"?i=i.toUpperCase():i===void 0&&(i="RSAES-PKCS1-V1_5"),i==="RSAES-PKCS1-V1_5")i={encode:function(a,c,u){return Dd(a,c,2).getBytes()}};else if(i==="RSA-OAEP"||i==="RSAES-OAEP")i={encode:function(a,c){return $.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 J.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=Is(u,r,!0);var f=A.fromDer(u,{parseAllBytes:s._parseAllDigestBytes}),l={},h=[];if(!A.validate(f,Vw,l,h)){var y=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw y.errors=h,y}var d=A.derToOid(l.algorithmIdentifier);if(!(d===$.oids.md2||d===$.oids.md5||d===$.oids.sha1||d===$.oids.sha224||d===$.oids.sha256||d===$.oids.sha384||d===$.oids.sha512||d===$.oids["sha512-224"]||d===$.oids["sha512-256"])){var y=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw y.oid=d,y}if((d===$.oids.md2||d===$.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=Is(u,r,!0),c===u}});var a=J.rsa.decrypt(i,r,!0,!1);return o.verify(n,a,r.n.bitLength())},r};J.setRsaPrivateKey=J.rsa.setPrivateKey=function(t,e,r,n,i,o,s,a){var c={n:t,e,d:r,p:n,q:i,dP:o,dQ:s,qInv:a};return c.decrypt=function(u,f,l){typeof f=="string"?f=f.toUpperCase():f===void 0&&(f="RSAES-PKCS1-V1_5");var h=J.rsa.decrypt(u,c,!1,!1);if(f==="RSAES-PKCS1-V1_5")f={decode:Is};else if(f==="RSA-OAEP"||f==="RSAES-OAEP")f={decode:function(y,d){return $.pkcs1.decode_rsa_oaep(d,y,l)}};else if(["RAW","NONE","NULL",null].indexOf(f)!==-1)f={decode:function(y){return y}};else throw new Error('Unsupported encryption scheme: "'+f+'".');return f.decode(h,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:Hw},l=1):(f==="NONE"||f==="NULL"||f===null)&&(f={encode:function(){return u}},l=1);var h=f.encode(u,c.n.bitLength());return J.rsa.encrypt(h,c,l)},c};J.wrapRsaPrivateKey=function(t){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,A.integerToDer(0).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.OID,!1,A.oidToDer(J.oids.rsaEncryption).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,"")]),A.create(A.Class.UNIVERSAL,A.Type.OCTETSTRING,!1,A.toDer(t).getBytes())])};J.privateKeyFromAsn1=function(t){var e={},r=[];if(A.validate(t,Ow,e,r)&&(t=A.fromDer($.util.createBuffer(e.privateKey))),e={},r=[],!A.validate(t,Fw,e,r)){var n=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw n.errors=r,n}var i,o,s,a,c,u,f,l;return i=$.util.createBuffer(e.privateKeyModulus).toHex(),o=$.util.createBuffer(e.privateKeyPublicExponent).toHex(),s=$.util.createBuffer(e.privateKeyPrivateExponent).toHex(),a=$.util.createBuffer(e.privateKeyPrime1).toHex(),c=$.util.createBuffer(e.privateKeyPrime2).toHex(),u=$.util.createBuffer(e.privateKeyExponent1).toHex(),f=$.util.createBuffer(e.privateKeyExponent2).toHex(),l=$.util.createBuffer(e.privateKeyCoefficient).toHex(),J.setRsaPrivateKey(new ue(i,16),new ue(o,16),new ue(s,16),new ue(a,16),new ue(c,16),new ue(u,16),new ue(f,16),new ue(l,16))};J.privateKeyToAsn1=J.privateKeyToRSAPrivateKey=function(t){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,A.integerToDer(0).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.n)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.e)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.d)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.p)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.q)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.dP)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.dQ)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.qInv))])};J.publicKeyFromAsn1=function(t){var e={},r=[];if(A.validate(t,Mw,e,r)){var n=A.derToOid(e.publicKeyOid);if(n!==J.oids.rsaEncryption){var i=new Error("Cannot read public key. Unknown OID.");throw i.oid=n,i}t=e.rsaPublicKey}if(r=[],!A.validate(t,Kw,e,r)){var i=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw i.errors=r,i}var o=$.util.createBuffer(e.publicKeyModulus).toHex(),s=$.util.createBuffer(e.publicKeyExponent).toHex();return J.setRsaPublicKey(new ue(o,16),new ue(s,16))};J.publicKeyToAsn1=J.publicKeyToSubjectPublicKeyInfo=function(t){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.OID,!1,A.oidToDer(J.oids.rsaEncryption).getBytes()),A.create(A.Class.UNIVERSAL,A.Type.NULL,!1,"")]),A.create(A.Class.UNIVERSAL,A.Type.BITSTRING,!1,[J.publicKeyToRSAPublicKey(t)])])};J.publicKeyToRSAPublicKey=function(t){return A.create(A.Class.UNIVERSAL,A.Type.SEQUENCE,!0,[A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.n)),A.create(A.Class.UNIVERSAL,A.Type.INTEGER,!1,Yt(t.e))])};function Dd(t,e,r){var n=$.util.createBuffer(),i=Math.ceil(e.n.bitLength()/8);if(t.length>i-11){var o=new Error("Message is too long for PKCS#1 v1.5 padding.");throw o.length=t.length,o.max=i-11,o}n.putByte(0),n.putByte(r);var s=i-3-t.length,a;if(r===0||r===1){a=r===0?0:255;for(var c=0;c<s;++c)n.putByte(a)}else for(;s>0;){for(var u=0,f=$.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(t),n}function Is(t,e,r,n){var i=Math.ceil(e.n.bitLength()/8),o=$.util.createBuffer(t),s=o.getByte(),a=o.getByte();if(s!==0||r&&a!==0&&a!==1||!r&&a!=2||r&&a===0&&typeof n>"u")throw new Error("Encryption block is invalid.");var c=0;if(a===0){c=i-3-n;for(var 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 qw(t,e,r){typeof e=="function"&&(r=e,e={}),e=e||{};var n={algorithm:{name:e.algorithm||"PRIMEINC",options:{workers:e.workers||2,workLoad:e.workLoad||100,workerScript:e.workerScript}}};"prng"in e&&(n.prng=e.prng),i();function i(){o(t.pBits,function(a,c){if(a)return r(a);if(t.p=c,t.q!==null)return s(a,t.q);o(t.qBits,s)})}function o(a,c){$.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 u=t.p;t.p=t.q,t.q=u}if(t.p.subtract(ue.ONE).gcd(t.e).compareTo(ue.ONE)!==0){t.p=null,i();return}if(t.q.subtract(ue.ONE).gcd(t.e).compareTo(ue.ONE)!==0){t.q=null,o(t.qBits,s);return}if(t.p1=t.p.subtract(ue.ONE),t.q1=t.q.subtract(ue.ONE),t.phi=t.p1.multiply(t.q1),t.phi.gcd(t.e).compareTo(ue.ONE)!==0){t.p=t.q=null,i();return}if(t.n=t.p.multiply(t.q),t.n.bitLength()!==t.bits){t.q=null,o(t.qBits,s);return}var f=t.e.modInverse(t.phi);t.keys={privateKey:J.rsa.setPrivateKey(t.n,t.e,f,t.p,t.q,f.mod(t.p1),f.mod(t.q1),t.q.modInverse(t.p)),publicKey:J.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=$.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 zw(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 vd(t){return $.util.isNodejs&&typeof v0[t]=="function"}function Ed(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 Sd(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 Cd(t){for(var e=$.util.hexToBytes(t.toString(16)),r=new Uint8Array(e.length),n=0;n<e.length;++n)r[n]=e.charCodeAt(n);return r}});var Ld=te((tI,Rd)=>{var z=we();h0();Oi();Oh();nn();ds();Hh();Gh();Fi();nd();Ts();Me();typeof Id>"u"&&(Id=z.jsbn.BigInteger);var Id,T=z.asn1,ne=z.pki=z.pki||{};Rd.exports=ne.pbe=z.pbe=z.pbe||{};var an=ne.oids,Gw={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"}]},Ww={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"}]}]},$w={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"}]};ne.encryptPrivateKeyInfo=function(t,e,r){r=r||{},r.saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var n=z.random.getBytesSync(r.saltSize),i=r.count,o=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=an["aes128-CBC"],l=z.aes.createEncryptionCipher;break;case"aes192":s=24,u=16,f=an["aes192-CBC"],l=z.aes.createEncryptionCipher;break;case"aes256":s=32,u=16,f=an["aes256-CBC"],l=z.aes.createEncryptionCipher;break;case"des":s=8,u=8,f=an.desCBC,l=z.des.createEncryptionCipher;break;default:var h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var y="hmacWith"+r.prfAlgorithm.toUpperCase(),d=kd(y),p=z.pkcs5.pbkdf2(e,n,i,s,d),m=z.random.getBytesSync(u),g=l(p);g.start(m),g.update(T.toDer(t)),g.finish(),c=g.output.getBytes();var b=Yw(n,o,s,y);a=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[T.create(T.Class.UNIVERSAL,T.Type.OID,!1,T.oidToDer(an.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(an.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,m)])])])}else if(r.algorithm==="3des"){s=24;var x=new z.util.ByteBuffer(n),p=ne.pbe.generatePkcs12Key(e,x,1,i,s),m=ne.pbe.generatePkcs12Key(e,x,2,i,s),g=z.des.createEncryptionCipher(p);g.start(m),g.update(T.toDer(t)),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(an["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 h=new Error("Cannot encrypt private key. Unknown encryption algorithm.");throw h.algorithm=r.algorithm,h}var S=T.create(T.Class.UNIVERSAL,T.Type.SEQUENCE,!0,[a,T.create(T.Class.UNIVERSAL,T.Type.OCTETSTRING,!1,c)]);return S};ne.decryptPrivateKeyInfo=function(t,e){var r=null,n={},i=[];if(!T.validate(t,Gw,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=ne.pbe.getCipher(s,n.encryptionParams,e),c=z.util.createBuffer(n.encryptedData);return a.update(c),a.finish()&&(r=T.fromDer(a.output)),r};ne.encryptedPrivateKeyToPem=function(t,e){var r={type:"ENCRYPTED PRIVATE KEY",body:T.toDer(t).getBytes()};return z.pem.encode(r,{maxline:e})};ne.encryptedPrivateKeyFromPem=function(t){var e=z.pem.decode(t)[0];if(e.type!=="ENCRYPTED PRIVATE KEY"){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=e.type,r}if(e.procType&&e.procType.type==="ENCRYPTED")throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return T.fromDer(e.body)};ne.encryptRsaPrivateKey=function(t,e,r){if(r=r||{},!r.legacy){var n=ne.wrapRsaPrivateKey(ne.privateKeyToAsn1(t));return n=ne.encryptPrivateKeyInfo(n,e,r),ne.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(e,o.substr(0,8),s),f=a(u);f.start(o),f.update(T.toDer(ne.privateKeyToAsn1(t))),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)};ne.decryptRsaPrivateKey=function(t,e){var r=null,n=z.pem.decode(t)[0];if(n.type!=="ENCRYPTED PRIVATE KEY"&&n.type!=="PRIVATE KEY"&&n.type!=="RSA PRIVATE KEY"){var i=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw i.headerType=i,i}if(n.procType&&n.procType.type==="ENCRYPTED"){var o,s;switch(n.dekInfo.algorithm){case"DES-CBC":o=8,s=z.des.createDecryptionCipher;break;case"DES-EDE3-CBC":o=24,s=z.des.createDecryptionCipher;break;case"AES-128-CBC":o=16,s=z.aes.createDecryptionCipher;break;case"AES-192-CBC":o=24,s=z.aes.createDecryptionCipher;break;case"AES-256-CBC":o=32,s=z.aes.createDecryptionCipher;break;case"RC2-40-CBC":o=5,s=function(l){return z.rc2.createDecryptionCipher(l,40)};break;case"RC2-64-CBC":o=8,s=function(l){return z.rc2.createDecryptionCipher(l,64)};break;case"RC2-128-CBC":o=16,s=function(l){return z.rc2.createDecryptionCipher(l,128)};break;default:var i=new Error('Could not decrypt private key; unsupported encryption algorithm "'+n.dekInfo.algorithm+'".');throw i.algorithm=n.dekInfo.algorithm,i}var a=z.util.hexToBytes(n.dekInfo.parameters),c=z.pbe.opensslDeriveBytes(e,a.substr(0,8),o),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=ne.decryptPrivateKeyInfo(T.fromDer(r),e):r=T.fromDer(r),r!==null&&(r=ne.privateKeyFromAsn1(r)),r};ne.pbe.generatePkcs12Key=function(t,e,r,n,i,o){var s,a;if(typeof o>"u"||o===null){if(!("sha1"in z.md))throw new Error('"sha1" hash algorithm unavailable.');o=z.md.sha1.create()}var c=o.digestLength,u=o.blockLength,f=new z.util.ByteBuffer,l=new z.util.ByteBuffer;if(t!=null){for(a=0;a<t.length;a++)l.putInt16(t.charCodeAt(a));l.putInt16(0)}var h=l.length(),y=e.length(),d=new z.util.ByteBuffer;d.fillWithByte(r,u);var p=u*Math.ceil(y/u),m=new z.util.ByteBuffer;for(a=0;a<p;a++)m.putByte(e.at(a%y));var g=u*Math.ceil(h/u),b=new z.util.ByteBuffer;for(a=0;a<g;a++)b.putByte(l.at(a%h));var x=m;x.putBuffer(b);for(var S=Math.ceil(i/c),v=1;v<=S;v++){var E=new z.util.ByteBuffer;E.putBytes(d.bytes()),E.putBytes(x.bytes());for(var B=0;B<n;B++)o.start(),o.update(E.getBytes()),E=o.digest();var D=new z.util.ByteBuffer;for(a=0;a<u;a++)D.putByte(E.at(a%c));var U=Math.ceil(y/u)+Math.ceil(h/u),F=new z.util.ByteBuffer;for(s=0;s<U;s++){var O=new z.util.ByteBuffer(x.getBytes(u)),M=511;for(a=D.length()-1;a>=0;a--)M=M>>8,M+=D.at(a)+O.at(a),O.setAt(a,M&255);F.putBuffer(O)}x=F,f.putBuffer(E)}return f.truncate(f.length()-i),f};ne.pbe.getCipher=function(t,e,r){switch(t){case ne.oids.pkcs5PBES2:return ne.pbe.getCipherForPBES2(t,e,r);case ne.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case ne.oids["pbewithSHAAnd40BitRC2-CBC"]:return ne.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}};ne.pbe.getCipherForPBES2=function(t,e,r){var n={},i=[];if(!T.validate(e,Ww,n,i)){var o=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw o.errors=i,o}if(t=T.derToOid(n.kdfOid),t!==ne.oids.pkcs5PBKDF2){var o=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw o.oid=t,o.supportedOids=["pkcs5PBKDF2"],o}if(t=T.derToOid(n.encOid),t!==ne.oids["aes128-CBC"]&&t!==ne.oids["aes192-CBC"]&&t!==ne.oids["aes256-CBC"]&&t!==ne.oids["des-EDE3-CBC"]&&t!==ne.oids.desCBC){var o=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw o.oid=t,o.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],o}var s=n.kdfSalt,a=z.util.createBuffer(n.kdfIterationCount);a=a.getInt(a.length()<<3);var c,u;switch(ne.oids[t]){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=_d(n.prfOid),l=z.pkcs5.pbkdf2(r,s,a,c,f),h=n.encIv,y=u(l);return y.start(h),y};ne.pbe.getCipherForPKCS12PBE=function(t,e,r){var n={},i=[];if(!T.validate(e,$w,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(t){case ne.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,u=8,f=z.des.startDecrypting;break;case ne.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,u=8,f=function(p,m){var g=z.rc2.createDecryptionCipher(p,40);return g.start(m,null),g};break;default:var o=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw o.oid=t,o}var l=_d(n.prfOid),h=ne.pbe.generatePkcs12Key(r,s,1,a,c,l);l.start();var y=ne.pbe.generatePkcs12Key(r,s,2,a,u,l);return f(h,y)};ne.pbe.opensslDeriveBytes=function(t,e,r,n){if(typeof n>"u"||n===null){if(!("md5"in z.md))throw new Error('"md5" hash algorithm unavailable.');n=z.md.md5.create()}e===null&&(e="");for(var i=[Td(n,t+e)],o=16,s=1;o<r;++s,o+=16)i.push(Td(n,i[s-1]+t+e));return i.join("").substr(0,r)};function Td(t,e){return t.start().update(e).digest().getBytes()}function _d(t){var e;if(!t)e="hmacWithSHA1";else if(e=ne.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 kd(e)}function kd(t){var e=z.md;switch(t){case"hmacWithSHA224":e=z.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":t=t.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=t,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!e||!(t in e))throw new Error("Unknown hash algorithm: "+t);return e[t].create()}function Yw(t,e,r,n){var i=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"&&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(ne.oids[n]).getBytes()),T.create(T.Class.UNIVERSAL,T.Type.NULL,!1,"")])),i}});var $d=te((zI,Wd)=>{var Ie=we();nn();Me();var Vi=Wd.exports=Ie.sha512=Ie.sha512||{};Ie.md.sha512=Ie.md.algorithms.sha512=Vi;var zd=Ie.sha384=Ie.sha512.sha384=Ie.sha512.sha384||{};zd.create=function(){return Vi.create("SHA-384")};Ie.md.sha384=Ie.md.algorithms.sha384=zd;Ie.sha512.sha256=Ie.sha512.sha256||{create:function(){return Vi.create("SHA-512/256")}};Ie.md["sha512/256"]=Ie.md.algorithms["sha512/256"]=Ie.sha512.sha256;Ie.sha512.sha224=Ie.sha512.sha224||{create:function(){return Vi.create("SHA-512/224")}};Ie.md["sha512/224"]=Ie.md.algorithms["sha512/224"]=Ie.sha512.sha224;Vi.create=function(t){if(Gd||rv(),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=Ie.util.createBuffer(),i=new Array(80),o=0;o<80;++o)i[o]=new Array(2);var s=64;switch(t){case"SHA-384":s=48;break;case"SHA-512/256":s=32;break;case"SHA-512/224":s=28;break}var a={algorithm:t.replace("-","").toLowerCase(),blockLength:128,digestLength:s,messageLength:0,fullMessageLength:null,messageLengthSize:16};return a.start=function(){a.messageLength=0,a.fullMessageLength=a.messageLength128=[];for(var c=a.messageLengthSize/4,u=0;u<c;++u)a.fullMessageLength.push(0);n=Ie.util.createBuffer(),r=new Array(e.length);for(var u=0;u<e.length;++u)r[u]=e[u].slice(0);return a},a.start(),a.update=function(c,u){u==="utf8"&&(c=Ie.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),qd(r,i,n),(n.read>2048||n.length()===0)&&n.compact(),a},a.digest=function(){var c=Ie.util.createBuffer();c.putBytes(n.bytes());var u=a.fullMessageLength[a.fullMessageLength.length-1]+a.messageLengthSize,f=u&a.blockLength-1;c.putBytes(D0.substr(0,a.blockLength-f));for(var l,h,y=a.fullMessageLength[0]*8,d=0;d<a.fullMessageLength.length-1;++d)l=a.fullMessageLength[d+1]*8,h=l/4294967296>>>0,y+=h,c.putInt32(y>>>0),y=l>>>0;c.putInt32(y);for(var p=new Array(r.length),d=0;d<r.length;++d)p[d]=r[d].slice(0);qd(p,i,c);var m=Ie.util.createBuffer(),g;t==="SHA-512"?g=p.length:t==="SHA-384"?g=p.length-2:g=p.length-4;for(var d=0;d<g;++d)m.putInt32(p[d][0]),(d!==g-1||t!=="SHA-512/224")&&m.putInt32(p[d][1]);return m},a};var D0=null,Gd=!1,B0=null,un=null;function rv(){D0="\x80",D0+=Ie.util.fillString("\0",128),B0=[[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]],Gd=!0}function qd(t,e,r){for(var n,i,o,s,a,c,u,f,l,h,y,d,p,m,g,b,x,S,v,E,B,D,U,F,O,M,G,Z,I,R,_,k,C,P,K,H=r.length();H>=128;){for(I=0;I<16;++I)e[I][0]=r.getInt32()>>>0,e[I][1]=r.getInt32()>>>0;for(;I<80;++I)k=e[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=e[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,C=e[I-7],K=e[I-16],_=i+C[1]+s+K[1],e[I][0]=n+C[0]+o+K[0]+(_/4294967296>>>0)>>>0,e[I][1]=_>>>0;for(p=t[0][0],m=t[0][1],g=t[1][0],b=t[1][1],x=t[2][0],S=t[2][1],v=t[3][0],E=t[3][1],B=t[4][0],D=t[4][1],U=t[5][0],F=t[5][1],O=t[6][0],M=t[6][1],G=t[7][0],Z=t[7][1],I=0;I<80;++I)u=((B>>>14|D<<18)^(B>>>18|D<<14)^(D>>>9|B<<23))>>>0,f=((B<<18|D>>>14)^(B<<14|D>>>18)^(D<<23|B>>>9))>>>0,l=(O^B&(U^O))>>>0,h=(M^D&(F^M))>>>0,a=((p>>>28|m<<4)^(m>>>2|p<<30)^(m>>>7|p<<25))>>>0,c=((p<<4|m>>>28)^(m<<30|p>>>2)^(m<<25|p>>>7))>>>0,y=(p&g|x&(p^g))>>>0,d=(m&b|S&(m^b))>>>0,_=Z+f+h+B0[I][1]+e[I][1],n=G+u+l+B0[I][0]+e[I][0]+(_/4294967296>>>0)>>>0,i=_>>>0,_=c+d,o=a+y+(_/4294967296>>>0)>>>0,s=_>>>0,G=O,Z=M,O=U,M=F,U=B,F=D,_=E+i,B=v+n+(_/4294967296>>>0)>>>0,D=_>>>0,v=x,E=S,x=g,S=b,g=p,b=m,_=i+s,p=n+o+(_/4294967296>>>0)>>>0,m=_>>>0;_=t[0][1]+m,t[0][0]=t[0][0]+p+(_/4294967296>>>0)>>>0,t[0][1]=_>>>0,_=t[1][1]+b,t[1][0]=t[1][0]+g+(_/4294967296>>>0)>>>0,t[1][1]=_>>>0,_=t[2][1]+S,t[2][0]=t[2][0]+x+(_/4294967296>>>0)>>>0,t[2][1]=_>>>0,_=t[3][1]+E,t[3][0]=t[3][0]+v+(_/4294967296>>>0)>>>0,t[3][1]=_>>>0,_=t[4][1]+D,t[4][0]=t[4][0]+B+(_/4294967296>>>0)>>>0,t[4][1]=_>>>0,_=t[5][1]+F,t[5][0]=t[5][0]+U+(_/4294967296>>>0)>>>0,t[5][1]=_>>>0,_=t[6][1]+M,t[6][0]=t[6][0]+O+(_/4294967296>>>0)>>>0,t[6][1]=_>>>0,_=t[7][1]+Z,t[7][0]=t[7][0]+G+(_/4294967296>>>0)>>>0,t[7][1]=_>>>0,H-=128}}});var Ap=te((m_,Cp)=>{var Xn=1e3,Zn=Xn*60,Qn=Zn*60,dn=Qn*24,Rv=dn*7,Lv=dn*365.25;Cp.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return Nv(t);if(r==="number"&&isFinite(t))return e.long?Uv(t):Pv(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function Nv(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Lv;case"weeks":case"week":case"w":return r*Rv;case"days":case"day":case"d":return r*dn;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Qn;case"minutes":case"minute":case"mins":case"min":case"m":return r*Zn;case"seconds":case"second":case"secs":case"sec":case"s":return r*Xn;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function Pv(t){var e=Math.abs(t);return e>=dn?Math.round(t/dn)+"d":e>=Qn?Math.round(t/Qn)+"h":e>=Zn?Math.round(t/Zn)+"m":e>=Xn?Math.round(t/Xn)+"s":t+"ms"}function Uv(t){var e=Math.abs(t);return e>=dn?Ps(t,e,dn,"day"):e>=Qn?Ps(t,e,Qn,"hour"):e>=Zn?Ps(t,e,Zn,"minute"):e>=Xn?Ps(t,e,Xn,"second"):t+" ms"}function Ps(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var Bp=te((y_,Dp)=>{function Ov(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=i,r.enabled=s,r.humanize=Ap(),r.destroy=u,Object.keys(t).forEach(f=>{r[f]=t[f]}),r.names=[],r.skips=[],r.formatters={};function e(f){let l=0;for(let h=0;h<f.length;h++)l=(l<<5)-l+f.charCodeAt(h),l|=0;return r.colors[Math.abs(l)%r.colors.length]}r.selectColor=e;function r(f){let l,h=null,y,d;function p(...m){if(!p.enabled)return;let g=p,b=Number(new Date),x=b-(l||b);g.diff=x,g.prev=l,g.curr=b,l=b,m[0]=r.coerce(m[0]),typeof m[0]!="string"&&m.unshift("%O");let S=0;m[0]=m[0].replace(/%([a-zA-Z%])/g,(E,B)=>{if(E==="%%")return"%";S++;let D=r.formatters[B];if(typeof D=="function"){let U=m[S];E=D.call(g,U),m.splice(S,1),S--}return E}),r.formatArgs.call(g,m),(g.log||r.log).apply(g,m)}return p.namespace=f,p.useColors=r.useColors(),p.color=r.selectColor(f),p.extend=n,p.destroy=r.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(y!==r.namespaces&&(y=r.namespaces,d=r.enabled(f)),d),set:m=>{h=m}}),typeof r.init=="function"&&r.init(p),p}function n(f,l){let h=r(this.namespace+(typeof l>"u"?":":l)+f);return h.log=this.log,h}function i(f){r.save(f),r.namespaces=f,r.names=[],r.skips=[];let l,h=(typeof f=="string"?f:"").split(/[\s,]+/),y=h.length;for(l=0;l<y;l++)h[l]&&(f=h[l].replace(/\*/g,".*?"),f[0]==="-"?r.skips.push(new RegExp("^"+f.slice(1)+"$")):r.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...r.names.map(a),...r.skips.map(a).map(l=>"-"+l)].join(",");return r.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,h;for(l=0,h=r.skips.length;l<h;l++)if(r.skips[l].test(f))return!1;for(l=0,h=r.names.length;l<h;l++)if(r.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function c(f){return f instanceof Error?f.stack||f.message:f}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Dp.exports=Ov});var Ip=te((gt,Us)=>{gt.formatArgs=Kv;gt.save=Mv;gt.load=Vv;gt.useColors=Fv;gt.storage=Hv();gt.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();gt.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Fv(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Kv(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+Us.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}gt.log=console.debug||console.log||(()=>{});function Mv(t){try{t?gt.storage.setItem("debug",t):gt.storage.removeItem("debug")}catch{}}function Vv(){let t;try{t=gt.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function Hv(){try{return localStorage}catch{}}Us.exports=Bp()(gt);var{formatters:qv}=Us.exports;qv.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Up=te((lk,Pp)=>{"use strict";function Yv(t){if(t.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),r=0;r<e.length;r++)e[r]=255;for(var n=0;n<t.length;n++){var i=t.charAt(n),o=i.charCodeAt(0);if(e[o]!==255)throw new TypeError(i+" is ambiguous");e[o]=n}var s=t.length,a=t.charAt(0),c=Math.log(s)/Math.log(256),u=Math.log(256)/Math.log(s);function f(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 d=0,p=0,m=0,g=y.length;m!==g&&y[m]===0;)m++,d++;for(var b=(g-m)*u+1>>>0,x=new Uint8Array(b);m!==g;){for(var S=y[m],v=0,E=b-1;(S!==0||v<p)&&E!==-1;E--,v++)S+=256*x[E]>>>0,x[E]=S%s>>>0,S=S/s>>>0;if(S!==0)throw new Error("Non-zero carry");p=v,m++}for(var B=b-p;B!==b&&x[B]===0;)B++;for(var D=a.repeat(d);B<b;++B)D+=t.charAt(x[B]);return D}function l(y){if(typeof y!="string")throw new TypeError("Expected String");if(y.length===0)return new Uint8Array;var d=0;if(y[d]!==" "){for(var p=0,m=0;y[d]===a;)p++,d++;for(var g=(y.length-d)*c+1>>>0,b=new Uint8Array(g);y[d];){var x=e[y.charCodeAt(d)];if(x===255)return;for(var S=0,v=g-1;(x!==0||S<m)&&v!==-1;v--,S++)x+=s*b[v]>>>0,b[v]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");m=S,d++}if(y[d]!==" "){for(var E=g-m;E!==g&&b[E]===0;)E++;for(var B=new Uint8Array(p+(g-E)),D=p;E!==g;)B[D++]=b[E++];return B}}}function h(y){var d=l(y);if(d)return d;throw new Error("Non-base"+s+" character")}return{encode:f,decodeUnsafe:l,decode:h}}Pp.exports=Yv});var Hs=te((hk,Op)=>{"use strict";var Xv=new TextDecoder,Zv=t=>Xv.decode(t),Qv=new TextEncoder,jv=t=>Qv.encode(t);function Jv(t,e){let r=new Uint8Array(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return r}Op.exports={decodeText:Zv,encodeText:jv,concat:Jv}});var Kp=te((dk,Fp)=>{"use strict";var{encodeText:eE}=Hs(),q0=class{constructor(e,r,n,i){this.name=e,this.code=r,this.codeBuf=eE(this.code),this.alphabet=i,this.codec=n(i)}encode(e){return this.codec.encode(e)}decode(e){for(let r of e)if(this.alphabet&&this.alphabet.indexOf(r)<0)throw new Error(`invalid character '${r}' in '${e}'`);return this.codec.decode(e)}};Fp.exports=q0});var Vp=te((pk,Mp)=>{"use strict";var tE=(t,e,r)=>{let n={};for(let u=0;u<e.length;++u)n[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;let o=new Uint8Array(i*r/8|0),s=0,a=0,c=0;for(let u=0;u<i;++u){let f=n[t[u]];if(f===void 0)throw new SyntaxError("Invalid character "+t[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},rE=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},nE=t=>e=>({encode(r){return rE(r,e,t)},decode(r){return tE(r,e,t)}});Mp.exports={rfc4648:nE}});var Gp=te((mk,zp)=>{"use strict";var Zi=Up(),iE=Kp(),{rfc4648:Je}=Vp(),{decodeText:oE,encodeText:sE}=Hs(),aE=()=>({encode:oE,decode:sE}),Hp=[["identity","\0",aE,""],["base2","0",Je(1),"01"],["base8","7",Je(3),"01234567"],["base10","9",Zi,"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",Zi,"0123456789abcdefghijklmnopqrstuvwxyz"],["base36upper","K",Zi,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["base58btc","z",Zi,"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"],["base58flickr","Z",Zi,"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"],["base64","m",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"],["base64pad","M",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],["base64url","u",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"],["base64urlpad","U",Je(6),"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_="]],qp=Hp.reduce((t,e)=>(t[e[0]]=new iE(e[0],e[1],e[2],e[3]),t),{}),cE=Hp.reduce((t,e)=>(t[e[1]]=qp[e[0]],t),{});zp.exports={names:qp,codes:cE}});var Yp=te((yr,$p)=>{"use strict";var jn=Gp(),{encodeText:uE,decodeText:qs,concat:Wp}=Hs();function fE(t,e){if(!e)throw new Error("requires an encoded Uint8Array");let{name:r,codeBuf:n}=pn(t);return pE(r,e),Wp([n,e],n.length+e.length)}function lE(t,e){let r=pn(t),n=uE(r.encode(e));return Wp([r.codeBuf,n],r.codeBuf.length+n.length)}function hE(t){t instanceof Uint8Array&&(t=qs(t));let e=t[0];return["f","F","v","V","t","T","b","B","c","C","h","k","K"].includes(e)&&(t=t.toLowerCase()),pn(t[0]).decode(t.substring(1))}function dE(t){if(t instanceof Uint8Array&&(t=qs(t)),Object.prototype.toString.call(t)!=="[object String]")return!1;try{return pn(t[0]).name}catch{return!1}}function pE(t,e){pn(t).decode(qs(e))}function pn(t){if(Object.prototype.hasOwnProperty.call(jn.names,t))return jn.names[t];if(Object.prototype.hasOwnProperty.call(jn.codes,t))return jn.codes[t];throw new Error(`Unsupported encoding: ${t}`)}function mE(t){return t instanceof Uint8Array&&(t=qs(t)),pn(t[0])}yr=$p.exports=fE;yr.encode=lE;yr.decode=hE;yr.isEncoded=dE;yr.encoding=pn;yr.encodingFromData=mE;var yE=Object.freeze(jn.names),gE=Object.freeze(jn.codes);yr.names=yE;yr.codes=gE});var jp=te((yk,Qp)=>{Qp.exports=Zp;var Xp=128,xE=127,bE=~xE,wE=Math.pow(2,31);function Zp(t,e,r){e=e||[],r=r||0;for(var n=r;t>=wE;)e[r++]=t&255|Xp,t/=128;for(;t&bE;)e[r++]=t&255|Xp,t>>>=7;return e[r]=t|0,Zp.bytes=r-n+1,e}});var t1=te((gk,e1)=>{e1.exports=z0;var vE=128,Jp=127;function z0(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw z0.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Jp)<<i:(s&Jp)*Math.pow(2,i),i+=7}while(s>=vE);return z0.bytes=o-n,r}});var n1=te((xk,r1)=>{var EE=Math.pow(2,7),SE=Math.pow(2,14),CE=Math.pow(2,21),AE=Math.pow(2,28),DE=Math.pow(2,35),BE=Math.pow(2,42),IE=Math.pow(2,49),TE=Math.pow(2,56),_E=Math.pow(2,63);r1.exports=function(t){return t<EE?1:t<SE?2:t<CE?3:t<AE?4:t<DE?5:t<BE?6:t<IE?7:t<TE?8:t<_E?9:10}});var o1=te((bk,i1)=>{i1.exports={encode:jp(),decode:t1(),encodingLength:n1()}});var a1=te((wk,s1)=>{"use strict";var kE=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});s1.exports={names:kE}});function RE(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),u=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,m=0,g=0,b=d.length;g!==b&&d[g]===0;)g++,p++;for(var x=(b-g)*f+1>>>0,S=new Uint8Array(x);g!==b;){for(var v=d[g],E=0,B=x-1;(v!==0||E<m)&&B!==-1;B--,E++)v+=256*S[B]>>>0,S[B]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");m=E,g++}for(var D=x-m;D!==x&&S[D]===0;)D++;for(var U=c.repeat(p);D<x;++D)U+=t.charAt(S[D]);return U}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var m=0,g=0;d[p]===c;)m++,p++;for(var b=(d.length-p)*u+1>>>0,x=new Uint8Array(b);d[p];){var S=r[d.charCodeAt(p)];if(S===255)return;for(var v=0,E=b-1;(S!==0||v<g)&&E!==-1;E--,v++)S+=a*x[E]>>>0,x[E]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");g=v,p++}if(d[p]!==" "){for(var B=b-g;B!==b&&x[B]===0;)B++;for(var D=new Uint8Array(m+(b-B)),U=m;B!==b;)D[U++]=x[B++];return D}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var LE,NE,c1,u1=me(()=>{LE=RE,NE=LE,c1=NE});var Ek,f1,gr,l1,h1,Or=me(()=>{Ek=new Uint8Array(0),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},gr=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")},l1=t=>new TextEncoder().encode(t),h1=t=>new TextDecoder().decode(t)});var G0,W0,$0,p1,Y0,Jn,Fr,PE,UE,Pe,Kt=me(()=>{u1();Or();G0=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")}},W0=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 p1(this,e)}},$0=class{constructor(e){this.decoders=e}or(e){return p1(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`)}},p1=(t,e)=>new $0({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Y0=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new G0(e,r,n),this.decoder=new W0(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Jn=({name:t,prefix:e,encode:r,decode:n})=>new Y0(t,e,r,n),Fr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=c1(r,e);return Jn({prefix:t,name:e,encode:n,decode:o=>gr(i(o))})},PE=(t,e,r,n)=>{let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=t.length;for(;t[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[t[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},UE=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Pe=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>Jn({prefix:e,name:t,encode(i){return UE(i,n,r)},decode(i){return PE(i,n,r,t)}})});var X0={};fe(X0,{identity:()=>OE});var OE,m1=me(()=>{Kt();Or();OE=Jn({prefix:"\0",name:"identity",encode:t=>h1(t),decode:t=>l1(t)})});var Z0={};fe(Z0,{base2:()=>FE});var FE,y1=me(()=>{Kt();FE=Pe({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})});var Q0={};fe(Q0,{base8:()=>KE});var KE,g1=me(()=>{Kt();KE=Pe({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})});var j0={};fe(j0,{base10:()=>ME});var ME,x1=me(()=>{Kt();ME=Fr({prefix:"9",name:"base10",alphabet:"0123456789"})});var J0={};fe(J0,{base16:()=>VE,base16upper:()=>HE});var VE,HE,b1=me(()=>{Kt();VE=Pe({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),HE=Pe({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})});var eu={};fe(eu,{base32:()=>ei,base32hex:()=>WE,base32hexpad:()=>YE,base32hexpadupper:()=>XE,base32hexupper:()=>$E,base32pad:()=>zE,base32padupper:()=>GE,base32upper:()=>qE,base32z:()=>ZE});var ei,qE,zE,GE,WE,$E,YE,XE,ZE,tu=me(()=>{Kt();ei=Pe({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),qE=Pe({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),zE=Pe({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),GE=Pe({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),WE=Pe({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),$E=Pe({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),YE=Pe({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),XE=Pe({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ZE=Pe({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})});var ru={};fe(ru,{base36:()=>QE,base36upper:()=>jE});var QE,jE,w1=me(()=>{Kt();QE=Fr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),jE=Fr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})});var nu={};fe(nu,{base58btc:()=>Qt,base58flickr:()=>JE});var Qt,JE,iu=me(()=>{Kt();Qt=Fr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),JE=Fr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})});var ou={};fe(ou,{base64:()=>e3,base64pad:()=>t3,base64url:()=>r3,base64urlpad:()=>n3});var e3,t3,r3,n3,v1=me(()=>{Kt();e3=Pe({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),t3=Pe({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),r3=Pe({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),n3=Pe({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});var su={};fe(su,{base256emoji:()=>c3});function s3(t){return t.reduce((e,r)=>(e+=i3[r],e),"")}function a3(t){let e=[];for(let r of t){let n=o3[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var E1,i3,o3,c3,S1=me(()=>{Kt();E1=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}"),i3=E1.reduce((t,e,r)=>(t[r]=e,t),[]),o3=E1.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);c3=Jn({prefix:"\u{1F680}",name:"base256emoji",encode:s3,decode:a3})});function D1(t,e,r){e=e||[],r=r||0;for(var n=r;t>=h3;)e[r++]=t&255|C1,t/=128;for(;t&l3;)e[r++]=t&255|C1,t>>>=7;return e[r]=t|0,D1.bytes=r-n+1,e}function au(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw au.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&A1)<<i:(s&A1)*Math.pow(2,i),i+=7}while(s>=p3);return au.bytes=o-n,r}var u3,C1,f3,l3,h3,d3,p3,A1,m3,y3,g3,x3,b3,w3,v3,E3,S3,C3,A3,D3,Qi,B1=me(()=>{u3=D1,C1=128,f3=127,l3=~f3,h3=Math.pow(2,31);d3=au,p3=128,A1=127;m3=Math.pow(2,7),y3=Math.pow(2,14),g3=Math.pow(2,21),x3=Math.pow(2,28),b3=Math.pow(2,35),w3=Math.pow(2,42),v3=Math.pow(2,49),E3=Math.pow(2,56),S3=Math.pow(2,63),C3=function(t){return t<m3?1:t<y3?2:t<g3?3:t<x3?4:t<b3?5:t<w3?6:t<v3?7:t<E3?8:t<S3?9:10},A3={encode:u3,decode:d3,encodingLength:C3},D3=A3,Qi=D3});var ji,ti,ri,Gs=me(()=>{B1();ji=(t,e=0)=>[Qi.decode(t,e),Qi.decode.bytes],ti=(t,e,r=0)=>(Qi.encode(t,e,r),e),ri=t=>Qi.encodingLength(t)});var mn,I1,T1,ni,eo=me(()=>{Or();Gs();mn=(t,e)=>{let r=e.byteLength,n=ri(t),i=n+ri(r),o=new Uint8Array(i+r);return ti(t,o,0),ti(r,o,n),o.set(e,i),new ni(t,r,e,o)},I1=t=>{let e=gr(t),[r,n]=ji(e),[i,o]=ji(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ni(r,i,s,e)},T1=(t,e)=>t===e?!0:t.code===e.code&&t.size===e.size&&f1(t.bytes,e.bytes),ni=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}}});var uu,cu,fu=me(()=>{eo();uu=({name:t,code:e,encode:r})=>new cu(t,e,r),cu=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?mn(this.code,r):r.then(n=>mn(this.code,n))}else throw Error("Unknown type, must be binary type")}}});var lu={};fe(lu,{sha256:()=>B3,sha512:()=>I3});var k1,B3,I3,R1=me(()=>{fu();k1=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),B3=uu({name:"sha2-256",code:18,encode:k1("SHA-256")}),I3=uu({name:"sha2-512",code:19,encode:k1("SHA-512")})});var hu={};fe(hu,{identity:()=>k3});var L1,T3,N1,_3,k3,P1=me(()=>{Or();eo();L1=0,T3="identity",N1=gr,_3=t=>mn(L1,N1(t)),k3={code:L1,name:T3,encode:N1,digest:_3}});var U1=me(()=>{Or()});var qk,zk,O1=me(()=>{qk=new TextEncoder,zk=new TextDecoder});var Ys,N3,P3,U3,to,O3,F1,K1,Ws,$s,F3,K3,M3,M1=me(()=>{Gs();eo();iu();tu();Or();Ys=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this.byteOffset=i.byteOffset,this.byteLength=i.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:$s,byteLength:$s,code:Ws,version:Ws,multihash:Ws,bytes:Ws,_baseCache:$s,asCID:$s})}toV0(){switch(this.version){case 0:return this;default:{let{code:e,multihash:r}=this;if(e!==to)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==O3)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=mn(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(e){return e&&this.code===e.code&&this.version===e.version&&T1(this.multihash,e.multihash)}toString(e){let{bytes:r,version:n,_baseCache:i}=this;switch(n){case 0:return P3(r,i,e||Qt.encoder);default:return U3(r,i,e||ei.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 K3(/^0\.0/,M3),!!(e&&(e[K1]||e.asCID===e))}get toBaseEncodedString(){throw new Error("Deprecated, use .toString()")}get codec(){throw new Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw new Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw new Error('"multibaseName" property is deprecated')}get prefix(){throw new Error('"prefix" property is deprecated')}static asCID(e){if(e instanceof t)return e;if(e!=null&&e.asCID===e){let{version:r,code:n,multihash:i,bytes:o}=e;return new t(r,n,i,o||F1(r,n,i.bytes))}else if(e!=null&&e[K1]===!0){let{version:r,multihash:n,code:i}=e,o=I1(n);return t.create(r,i,o)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");switch(e){case 0:{if(r!==to)throw new Error(`Version 0 CID must use dag-pb (code: ${to}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=F1(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,to,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=gr(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new ni(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=ji(e.subarray(r));return r+=h,l},i=n(),o=to;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(e,r){let[n,i]=N3(e,r),o=t.decode(i);return o._baseCache.set(n,e),o}},N3=(t,e)=>{switch(t[0]){case"Q":{let r=e||Qt;return[Qt.prefix,r.decode(`${Qt.prefix}${t}`)]}case Qt.prefix:{let r=e||Qt;return[Qt.prefix,r.decode(t)]}case ei.prefix:{let r=e||ei;return[ei.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)]}}},P3=(t,e,r)=>{let{prefix:n}=r;if(n!==Qt.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},U3=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},to=112,O3=18,F1=(t,e,r)=>{let n=ri(t),i=n+ri(e),o=new Uint8Array(i+r.byteLength);return ti(t,o,0),ti(e,o,n),o.set(r,i),o},K1=Symbol.for("@ipld/js-cid/CID"),Ws={writable:!1,configurable:!1,enumerable:!0},$s={writable:!1,enumerable:!1,configurable:!1},F3="0.0.0-dev",K3=(t,e)=>{if(t.test(F3))console.warn(e);else throw new Error(e)},M3=`CID.isCID(v) is deprecated and will be removed in the next major release.
16
16
  Following code pattern:
17
17
 
18
18
  if (CID.isCID(value)) {
@@ -26,7 +26,7 @@ if (cid) {
26
26
  // Make sure to use cid instead of value
27
27
  doSomethingWithCID(cid)
28
28
  }
29
- `});var T1=pe(()=>{I1();Ks();Nr();iu();Xi()});var au,W_,_1=pe(()=>{n1();i1();o1();s1();a1();X0();c1();j0();u1();l1();w1();S1();C1();A1();T1();au={...q0,...z0,...G0,...W0,...$0,...Y0,...Z0,...Q0,...J0,...eu},W_={...ou,...su}});function ni(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}var qs=pe(()=>{});function zs(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?ni(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var cu=pe(()=>{qs()});function R1(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var k1,uu,D3,Gs,fu=pe(()=>{_1();cu();k1=R1("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),uu=R1("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=zs(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),D3={utf8:k1,"utf-8":k1,hex:au.base16,latin1:uu,ascii:uu,binary:uu,...au},Gs=D3});var L1={};fe(L1,{toString:()=>B3});function B3(t,e="utf8"){let r=Gs[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 N1=pe(()=>{fu()});var P1={};fe(P1,{fromString:()=>I3});function I3(t,e="utf8"){let r=Gs[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ni(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var U1=pe(()=>{fu();qs()});var O1={};fe(O1,{concat:()=>T3});function T3(t,e){e||(e=t.reduce((i,o)=>i+o.length,0));let r=zs(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ni(r)}var F1=pe(()=>{cu();qs()});var hu=re((ok,z1)=>{"use strict";var K1=Up(),ii=$p(),{names:Qi}=Xp(),{toString:Ws}=(N1(),Ji(L1)),{fromString:_3}=(U1(),Ji(P1)),{concat:k3}=(F1(),Ji(O1)),oi={};for(let t in Qi){let e=t;oi[Qi[e]]=e}Object.freeze(oi);function R3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Ws(t,"base16")}function L3(t){return _3(t,"base16")}function N3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return Ws(K1.encode("base58btc",t)).slice(1)}function P3(t){let e=t instanceof Uint8Array?Ws(t):t;return K1.decode("z"+e)}function M1(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=ii.decode(t);if(!H1(e))throw new Error(`multihash unknown function code: 0x${e.toString(16)}`);t=t.slice(ii.decode.bytes);let r=ii.decode(t);if(r<0)throw new Error(`multihash invalid length: ${r}`);if(t=t.slice(ii.decode.bytes),t.length!==r)throw new Error(`multihash length inconsistent: 0x${Ws(t,"base16")}`);return{code:e,name:oi[e],length:r,digest:t}}function U3(t,e,r){if(!t||e===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=V1(e);if(!(t instanceof Uint8Array))throw new Error("digest should be a Uint8Array");if(r==null&&(r=t.length),r&&t.length!==r)throw new Error("digest length should be equal to specified length.");let i=ii.encode(n),o=ii.encode(r);return k3([i,o,t],i.length+o.length+t.length)}function V1(t){let e=t;if(typeof t=="string"){if(Qi[t]===void 0)throw new Error(`Unrecognized hash function named: ${t}`);e=Qi[t]}if(typeof e!="number")throw new Error(`Hash function code should be a number. Got: ${e}`);if(oi[e]===void 0&&!lu(e))throw new Error(`Unrecognized function code: ${e}`);return e}function lu(t){return t>0&&t<16}function H1(t){return!!(lu(t)||oi[t])}function q1(t){M1(t)}function O3(t){return q1(t),t.subarray(0,2)}z1.exports={names:Qi,codes:oi,toHexString:R3,fromHexString:L3,toB58String:N3,fromB58String:P3,decode:M1,encode:U3,coerceCode:V1,isAppCode:lu,validate:q1,prefix:O3,isValidCode:H1}});var $3={};fe($3,{webRTC:()=>W3,webRTCDirect:()=>G3});var W=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},ai=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},Or=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var eo=Symbol.for("@libp2p/transport");var Au;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Au||(Au={}));var Du=Symbol.for("@libp2p/peer-id");var ea={};fe(ea,{base58btc:()=>_e,base58flickr:()=>m2});function h2(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),u=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,y=0,m=0,b=d.length;m!==b&&d[m]===0;)m++,p++;for(var x=(b-m)*f+1>>>0,S=new Uint8Array(x);m!==b;){for(var v=d[m],E=0,B=x-1;(v!==0||E<y)&&B!==-1;B--,E++)v+=256*S[B]>>>0,S[B]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");y=E,m++}for(var D=x-y;D!==x&&S[D]===0;)D++;for(var U=c.repeat(p);D<x;++D)U+=t.charAt(S[D]);return U}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var y=0,m=0;d[p]===c;)y++,p++;for(var b=(d.length-p)*u+1>>>0,x=new Uint8Array(b);d[p];){var S=r[d.charCodeAt(p)];if(S===255)return;for(var v=0,E=b-1;(S!==0||v<m)&&E!==-1;E--,v++)S+=a*x[E]>>>0,x[E]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");m=v,p++}if(d[p]!==" "){for(var B=b-m;B!==b&&x[B]===0;)B++;for(var D=new Uint8Array(y+(b-B)),U=y;B!==b;)D[U++]=x[B++];return D}}}function g(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:g}}var d2=h2,p2=d2,Bu=p2;var J3=new Uint8Array(0);var Iu=(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},Zt=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 Tu=t=>new TextEncoder().encode(t),_u=t=>new TextDecoder().decode(t);var Zs=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")}},Qs=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 Ru(this,e)}},js=class{constructor(e){this.decoders=e}or(e){return Ru(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`)}},Ru=(t,e)=>new js({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),Js=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new Zs(e,r,n),this.decoder=new Qs(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},yn=({name:t,prefix:e,encode:r,decode:n})=>new Js(t,e,r,n),yr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=Bu(r,e);return yn({prefix:t,name:e,encode:n,decode:o=>Zt(i(o))})},y2=(t,e,r,n)=>{let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=t.length;for(;t[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[t[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},g2=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Re=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>yn({prefix:e,name:t,encode(i){return g2(i,n,r)},decode(i){return y2(i,n,r,t)}});var _e=yr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),m2=yr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ta={};fe(ta,{base10:()=>x2});var x2=yr({prefix:"9",name:"base10",alphabet:"0123456789"});var ra={};fe(ra,{base16:()=>b2,base16upper:()=>w2});var b2=Re({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),w2=Re({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var na={};fe(na,{base2:()=>v2});var v2=Re({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ia={};fe(ia,{base256emoji:()=>D2});var Lu=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=Lu.reduce((t,e,r)=>(t[r]=e,t),[]),S2=Lu.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function C2(t){return t.reduce((e,r)=>(e+=E2[r],e),"")}function A2(t){let e=[];for(let r of t){let n=S2[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var D2=yn({prefix:"\u{1F680}",name:"base256emoji",encode:C2,decode:A2});var oa={};fe(oa,{base32:()=>Et,base32hex:()=>_2,base32hexpad:()=>R2,base32hexpadupper:()=>L2,base32hexupper:()=>k2,base32pad:()=>I2,base32padupper:()=>T2,base32upper:()=>B2,base32z:()=>N2});var Et=Re({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),B2=Re({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),I2=Re({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),T2=Re({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),_2=Re({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),k2=Re({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),R2=Re({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),L2=Re({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),N2=Re({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var sa={};fe(sa,{base36:()=>P2,base36upper:()=>U2});var P2=yr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),U2=yr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ca={};fe(ca,{base64:()=>gn,base64pad:()=>O2,base64url:()=>aa,base64urlpad:()=>F2});var gn=Re({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),O2=Re({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),aa=Re({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),F2=Re({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ua={};fe(ua,{base8:()=>K2});var K2=Re({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var fa={};fe(fa,{identity:()=>M2});var M2=yn({prefix:"\0",name:"identity",encode:t=>_u(t),decode:t=>Tu(t)});var pE=new TextEncoder,yE=new TextDecoder;var ha={};fe(ha,{identity:()=>gr});var q2=Uu,Nu=128,z2=127,G2=~z2,W2=Math.pow(2,31);function Uu(t,e,r){e=e||[],r=r||0;for(var n=r;t>=W2;)e[r++]=t&255|Nu,t/=128;for(;t&G2;)e[r++]=t&255|Nu,t>>>=7;return e[r]=t|0,Uu.bytes=r-n+1,e}var $2=la,Y2=128,Pu=127;function la(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw la.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Pu)<<i:(s&Pu)*Math.pow(2,i),i+=7}while(s>=Y2);return la.bytes=o-n,r}var X2=Math.pow(2,7),Z2=Math.pow(2,14),Q2=Math.pow(2,21),j2=Math.pow(2,28),J2=Math.pow(2,35),ey=Math.pow(2,42),ty=Math.pow(2,49),ry=Math.pow(2,56),ny=Math.pow(2,63),iy=function(t){return t<X2?1:t<Z2?2:t<Q2?3:t<j2?4:t<J2?5:t<ey?6:t<ty?7:t<ry?8:t<ny?9:10},oy={encode:q2,decode:$2,encodingLength:iy},sy=oy,ci=sy;var ui=(t,e=0)=>[ci.decode(t,e),ci.decode.bytes],mn=(t,e,r=0)=>(ci.encode(t,e,r),e),xn=t=>ci.encodingLength(t);var Ut=(t,e)=>{let r=e.byteLength,n=xn(t),i=n+xn(r),o=new Uint8Array(i+r);return mn(t,o,0),mn(r,o,n),o.set(e,i),new bn(t,r,e,o)},Fr=t=>{let e=Zt(t),[r,n]=ui(e),[i,o]=ui(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new bn(r,i,s,e)},Ou=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Iu(t.bytes,r.bytes)}},bn=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Fu=0,ay="identity",Ku=Zt,cy=t=>Ut(Fu,Ku(t)),gr={code:Fu,name:ay,encode:Ku,digest:cy};var ya={};fe(ya,{sha256:()=>Ze,sha512:()=>uy});var pa=({name:t,code:e,encode:r})=>new da(t,e,r),da=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?Ut(this.code,r):r.then(n=>Ut(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Vu=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Ze=pa({name:"sha2-256",code:18,encode:Vu("SHA-256")}),uy=pa({name:"sha2-512",code:19,encode:Vu("SHA-512")});var Hu=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return ly(r,ga(t),e||_e.encoder);default:return hy(r,ga(t),e||Et.encoder)}};var qu=new WeakMap,ga=t=>{let e=qu.get(t);if(e==null){let r=new Map;return qu.set(t,r),r}return e},St=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==fi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==dy)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return t.createV0(r)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:r}=this.multihash,n=Ut(e,r);return t.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return t.equals(this,e)}static equals(e,r){let n=r;return n&&e.code===n.code&&e.version===n.version&&Ou(e.multihash,n.multihash)}toString(e){return Hu(this,e)}toJSON(){return{"/":Hu(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s||zu(n,i,o.bytes))}else if(r[py]===!0){let{version:n,multihash:i,code:o}=r,s=Fr(i);return t.create(n,o,s)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==fi)throw new Error(`Version 0 CID must use dag-pb (code: ${fi}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=zu(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,fi,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=Zt(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new bn(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=ui(e.subarray(r));return r+=h,l},i=n(),o=fi;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(e,r){let[n,i]=fy(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return ga(o).set(n,e),o}},fy=(t,e)=>{switch(t[0]){case"Q":{let r=e||_e;return[_e.prefix,r.decode(`${_e.prefix}${t}`)]}case _e.prefix:{let r=e||_e;return[_e.prefix,r.decode(t)]}case Et.prefix:{let r=e||Et;return[Et.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)]}}},ly=(t,e,r)=>{let{prefix:n}=r;if(n!==_e.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},hy=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},fi=112,dy=18,zu=(t,e,r)=>{let n=xn(t),i=n+xn(e),o=new Uint8Array(i+r.byteLength);return mn(t,o,0),mn(e,o,n),o.set(r,i),o},py=Symbol.for("@ipld/js-cid/CID");var Ot={...fa,...na,...ua,...ta,...ra,...oa,...sa,...ea,...ca,...ia},kE={...ya,...ha};function Oe(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 yy=Symbol.for("nodejs.util.inspect.custom"),Gu=Object.values(Ot).map(t=>t.decoder).reduce((t,e)=>t.or(e),Ot.identity.decoder),Wu=114,ma=36,xa=37,li=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()})`}[Du]=!0;toString(){return this.string==null&&(this.string=_e.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return St.createV1(Wu,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Oe(this.multihash.bytes,e);if(typeof e=="string")return Mr(e).equals(this);if(e?.multihash?.bytes!=null)return Oe(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[yy](){return`PeerId(${this.toString()})`}},wn=class extends li{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},vn=class extends li{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},En=class extends li{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Mr(t,e){if(e=e??Gu,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=Fr(_e.decode(`z${t}`));return t.startsWith("12D")?new vn({multihash:r}):t.startsWith("16U")?new En({multihash:r}):new wn({multihash:r})}return gy(Gu.decode(t))}function gy(t){try{let e=Fr(t);if(e.code===gr.code){if(e.digest.length===ma)return new vn({multihash:e});if(e.digest.length===xa)return new En({multihash:e})}if(e.code===Ze.code)return new wn({multihash:e})}catch{return my(St.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function my(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Wu)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Ze.code)return new wn({multihash:t.multihash});if(e.code===gr.code){if(e.digest.length===ma)return new vn({multihash:t.multihash});if(e.digest.length===xa)return new En({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function ba(t,e){return t.length===ma?new vn({multihash:Ut(gr.code,t),privateKey:e}):t.length===xa?new En({multihash:Ut(gr.code,t),privateKey:e}):new wn({multihash:await Ze.digest(t),publicKey:t,privateKey:e})}function Qt(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function se(t=0){return globalThis.Buffer?.alloc!=null?Qt(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function Me(t=0){return globalThis.Buffer?.allocUnsafe!=null?Qt(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function Yu(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var $u=Yu("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),wa=Yu("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=Me(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),by={utf8:$u,"utf-8":$u,hex:Ot.base16,latin1:wa,ascii:wa,binary:wa,...Ot},ro=by;function ae(t,e="utf8"){let r=ro[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 wy=Math.pow(2,7),vy=Math.pow(2,14),Ey=Math.pow(2,21),va=Math.pow(2,28),Ea=Math.pow(2,35),Sa=Math.pow(2,42),Ca=Math.pow(2,49),ye=128,et=127;function tt(t){if(t<wy)return 1;if(t<vy)return 2;if(t<Ey)return 3;if(t<va)return 4;if(t<Ea)return 5;if(t<Sa)return 6;if(t<Ca)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Sy(t,e,r=0){switch(tt(t)){case 8:e[r++]=t&255|ye,t/=128;case 7:e[r++]=t&255|ye,t/=128;case 6:e[r++]=t&255|ye,t/=128;case 5:e[r++]=t&255|ye,t/=128;case 4:e[r++]=t&255|ye,t>>>=7;case 3:e[r++]=t&255|ye,t>>>=7;case 2:e[r++]=t&255|ye,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Cy(t,e,r=0){switch(tt(t)){case 8:e.set(r++,t&255|ye),t/=128;case 7:e.set(r++,t&255|ye),t/=128;case 6:e.set(r++,t&255|ye),t/=128;case 5:e.set(r++,t&255|ye),t/=128;case 4:e.set(r++,t&255|ye),t>>>=7;case 3:e.set(r++,t&255|ye),t>>>=7;case 2:e.set(r++,t&255|ye),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function Ay(t,e){let r=t[e],n=0;if(n+=r&et,r<ye||(r=t[e+1],n+=(r&et)<<7,r<ye)||(r=t[e+2],n+=(r&et)<<14,r<ye)||(r=t[e+3],n+=(r&et)<<21,r<ye)||(r=t[e+4],n+=(r&et)*va,r<ye)||(r=t[e+5],n+=(r&et)*Ea,r<ye)||(r=t[e+6],n+=(r&et)*Sa,r<ye)||(r=t[e+7],n+=(r&et)*Ca,r<ye))return n;throw new RangeError("Could not decode varint")}function Dy(t,e){let r=t.get(e),n=0;if(n+=r&et,r<ye||(r=t.get(e+1),n+=(r&et)<<7,r<ye)||(r=t.get(e+2),n+=(r&et)<<14,r<ye)||(r=t.get(e+3),n+=(r&et)<<21,r<ye)||(r=t.get(e+4),n+=(r&et)*va,r<ye)||(r=t.get(e+5),n+=(r&et)*Ea,r<ye)||(r=t.get(e+6),n+=(r&et)*Sa,r<ye)||(r=t.get(e+7),n+=(r&et)*Ca,r<ye))return n;throw new RangeError("Could not decode varint")}function mr(t,e,r=0){return e==null&&(e=Me(tt(t))),e instanceof Uint8Array?Sy(t,e,r):Cy(t,e,r)}function Ct(t,e=0){return t instanceof Uint8Array?Ay(t,e):Dy(t,e)}function he(t,e){if(globalThis.Buffer!=null)return Qt(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=Me(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return Qt(r)}var no=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",u=2**(8*i)-1;for(;;){let f=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(f===void 0)break;if(o*=e,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 e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var Xu=45,By=15,Sn=new no;function Aa(t){if(!(t.length>By))return Sn.new(t).parseWith(()=>Sn.readIPv4Addr())}function Da(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Xu))return Sn.new(t).parseWith(()=>Sn.readIPv6Addr())}function io(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>Xu))return Sn.new(t).parseWith(()=>Sn.readIPAddr())}var u4=parseInt("0xFFFF",16),f4=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function ve(t,e="utf8"){let r=ro[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Qt(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function oo(t){return!!Aa(t)}function so(t){return!!Da(t)}function ao(t){return!!io(t)}var ju=oo,Ry=so,Ba=function(t){let e=0;if(t=t.toString().trim(),ju(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(Ry(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=ju(r[n]),s;o&&(s=Ba(r[n]),r[n]=ae(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,ae(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},Ju=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Cn={},Ia={},Ny=[[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"]];Ny.forEach(t=>{let e=Py(...t);Ia[e.code]=e,Cn[e.name]=e});function Py(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function ge(t){if(typeof t=="number"){if(Ia[t]!=null)return Ia[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(Cn[t]!=null)return Cn[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var Z4=ge("ip4"),Q4=ge("ip6"),j4=ge("ipcidr");function _a(t,e){switch(ge(t).code){case 4:case 41:return Oy(e);case 42:return rf(e);case 6:case 273:case 33:case 132:return of(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return rf(e);case 421:return Vy(e);case 444:return nf(e);case 445:return nf(e);case 466:return My(e);default:return ae(e,"base16")}}function ka(t,e){switch(ge(t).code){case 4:return ef(e);case 41:return ef(e);case 42:return tf(e);case 6:case 273:case 33:case 132:return Ra(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return tf(e);case 421:return Fy(e);case 444:return Hy(e);case 445:return qy(e);case 466:return Ky(e);default:return ve(e,"base16")}}var Ta=Object.values(Ot).map(t=>t.decoder),Uy=function(){let t=Ta[0].or(Ta[1]);return Ta.slice(2).forEach(e=>t=t.or(e)),t}();function ef(t){if(!ao(t))throw new Error("invalid ip address");return Ba(t)}function Oy(t){let e=Ju(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!ao(e))throw new Error("invalid ip address");return e}function Ra(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function of(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function tf(t){let e=ve(t),r=Uint8Array.from(mr(e.length));return he([r,e],r.length+e.length)}function rf(t){let e=Ct(t);if(t=t.slice(tt(e)),t.length!==e)throw new Error("inconsistent lengths");return ae(t)}function Fy(t){let e;t[0]==="Q"||t[0]==="1"?e=Fr(_e.decode(`z${t}`)).bytes:e=St.parse(t).multihash.bytes;let r=Uint8Array.from(mr(e.length));return he([r,e],r.length+e.length)}function Ky(t){let e=Uy.decode(t),r=Uint8Array.from(mr(e.length));return he([r,e],r.length+e.length)}function My(t){let e=Ct(t),r=t.slice(tt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+ae(r,"base64url")}function Vy(t){let e=Ct(t),r=t.slice(tt(e));if(r.length!==e)throw new Error("inconsistent lengths");return ae(r,"base58btc")}function Hy(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=Et.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ra(n);return he([r,i],r.length+i.length)}function qy(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=Et.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ra(n);return he([r,i],r.length+i.length)}function nf(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=ae(e,"base32"),i=of(r);return`${n}:${i}`}function sf(t){t=La(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ge(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw cf("invalid address: "+t);if(a.path===!0){n=La(i.slice(o).join("/")),e.push([a.code,ka(a.code,n)]),r.push([a.code,n]);break}let c=ka(a.code,i[o]);e.push([a.code,c]),r.push([a.code,_a(a.code,c)])}return{string:af(r),bytes:Pa(e),tuples:e,stringTuples:r,path:n}}function Na(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=Ct(t,i),s=tt(o),a=ge(o),c=zy(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let u=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw cf("Invalid address Uint8Array: "+ae(t,"base16"));e.push([o,u]);let f=_a(o,u);if(r.push([o,f]),a.path===!0){n=f;break}}return{bytes:Uint8Array.from(t),string:af(r),tuples:e,stringTuples:r,path:n}}function af(t){let e=[];return t.map(r=>{let n=ge(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),La(e.join("/"))}function Pa(t){return he(t.map(e=>{let r=ge(e[0]),n=Uint8Array.from(mr(r.code));return e.length>1&&e[1]!=null&&(n=he([n,e[1]])),n}))}function zy(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 La(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function cf(t){return new Error("Error parsing address: "+t)}var Gy=Symbol.for("nodejs.util.inspect.custom"),Ua=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Wy=[ge("dns").code,ge("dns4").code,ge("dns6").code,ge("dnsaddr").code],co=class t{bytes;#e;#t;#r;#n;[Ua]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Na(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=sf(e)}else if(ff(e))r=Na(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=ge("tcp"),a=ge("udp"),c=ge("ip4"),u=ge("ip6"),f=ge("dns6"),l=ge("ip6zone");for(let[g,d]of this.stringTuples())g===l.code&&(o=`%${d??""}`),Wy.includes(g)&&(r=s.name,i=443,n=`${d??""}${o}`,e=g===f.code?6:4),(g===s.code||g===a.code)&&(r=ge(g).name,i=parseInt(d??"")),(g===c.code||g===u.code)&&(r=ge(g).name,n=`${d??""}${o}`,e=g===u.code?6:4);if(e==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:r,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},ge(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>ge(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(Pa(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Cn.p2p.code&&e.push([n,i]),n===Cn["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?ae(_e.decode(`z${n}`),"base58btc"):ae(St.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Oe(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=uf.get(r.name);if(n==null)throw new W(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[Gy](){return`Multiaddr(${this.#e})`}};var uf=new Map;function ff(t){return!!t?.[Ua]}function jt(t){return new co(t)}var $y=t=>t.toString().split("/").slice(1),di=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),Ne=t=>({match:e=>di(r=>r===t).match(e),pattern:t}),lo=()=>({match:t=>di(e=>typeof e=="string").match(t),pattern:"{string}"}),lf=()=>({match:t=>di(e=>!isNaN(parseInt(e))).match(t),pattern:"{number}"}),gt=()=>({match:t=>{if(t.length<2||t[0]!=="p2p"&&t[0]!=="ipfs")return!1;if(t[1].startsWith("Q")||t[1].startsWith("1"))try{_e.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),uo=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{aa.decode(t[1])}catch{return!1}return t.slice(2)},pattern:"/certhash/{certhash}"}),Ft=t=>({match:e=>{let r=t.match(e);return r===!1?e:r},pattern:`optional(${t.pattern})`}),Kt=(...t)=>({match:e=>{let r;for(let n of t){let i=n.match(e);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),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(i){let o=$y(i);for(let s of t){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return e(i)!==!1}function n(i){let o=e(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Fa=Pe(Ne("dns4"),lo()),Ka=Pe(Ne("dns6"),lo()),Ma=Pe(Ne("dnsaddr"),lo()),hf=Pe(Ne("dns"),lo()),BS=Ve(Fa),IS=Ve(Ka),TS=Ve(Ma),_S=Ve(Kt(hf,Ma,Fa,Ka)),df=Pe(Ne("ip4"),di(oo)),pf=Pe(Ne("ip6"),di(so)),yf=Kt(df,pf),pi=Kt(yf,hf,Fa,Ka,Ma),kS=Ve(pi),RS=Ve(df),LS=Ve(pf),NS=Ve(yf),ho=Pe(pi,Ne("tcp"),lf()),yi=Pe(pi,Ne("udp"),lf()),Yy=Kt(ho,yi),PS=Ve(ho),US=Ve(yi),Va=Pe(yi,Ne("quic")),po=Pe(yi,Ne("quic-v1")),Xy=Kt(Va,po),OS=Ve(Va),FS=Ve(po),Oa=Kt(pi,ho,yi,Va,po),gf=Kt(Pe(Oa,Ne("ws"),Ft(gt()))),KS=Ve(gf),mf=Kt(Pe(Oa,Ne("wss"),Ft(gt())),Pe(Oa,Ne("tls"),Ne("ws"),Ft(gt()))),MS=Ve(mf),xf=Pe(Yy,Ne("webrtc-direct"),uo(),Ft(uo()),Ft(gt())),bf=Ve(xf),wf=Pe(po,Ne("webtransport"),uo(),uo(),Ft(gt())),VS=Ve(wf),fo=Kt(gf,mf,Pe(ho,Ft(gt())),Pe(Xy,Ft(gt())),Pe(pi,Ft(gt())),xf,wf,gt()),HS=Ve(fo),Zy=Pe(fo,Ne("p2p-circuit"),gt()),qS=Ve(Zy),Qy=Kt(Pe(fo,Ne("p2p-circuit"),Ne("webrtc"),gt()),Pe(fo,Ne("webrtc"),Ft(gt())),Ne("webrtc")),vf=Ve(Qy);var lt;(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"})(lt||(lt={}));var xr=class extends W{constructor(e,r){super(`WebRTC transport error: ${e}`,r??""),this.name="WebRTCTransportError"}};var Ha=class extends xr{constructor(e,r){super(`[stream: ${e}] data channel error: ${r}`,lt.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function Ya(t,e){return new Ha(t,e)}var qa=class extends xr{constructor(e){super(`There was a problem with the Multiaddr which was passed in: ${e}`,lt.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function yo(t){return new qa(t)}var za=class extends xr{constructor(e){super(`There was a problem with a provided argument: ${e}`,lt.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function gi(t){return new za(t)}var Ga=class extends xr{constructor(e,r){super(`Invalid fingerprint "${e}" within ${r}`,lt.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function Xa(t,e){return new Ga(t,e)}var Wa=class extends xr{constructor(e){super(`A method (${e}) was called though it has been intentionally left unimplemented.`,lt.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function Ef(t){return new Wa(t)}var $a=class extends xr{constructor(e){super(`unsupported hash algorithm: ${e}`,lt.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function Sf(t){return new $a(t)}var Cf=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,o;n<i;n++)(o||!(n in e))&&(o||(o=Array.prototype.slice.call(e,0,n)),o[n]=e[n]);return t.concat(o||Array.prototype.slice.call(e))},jy=function(){function t(e,r,n){this.name=e,this.version=r,this.os=n,this.type="browser"}return t}();var Jy=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}();var eg=function(){function t(e,r,n,i){this.name=e,this.version=r,this.os=n,this.bot=i,this.type="bot-device"}return t}();var tg=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}();var rg=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}();var ng=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,ig=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Af=3,og=[["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",ng]],Df=[["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 If(t){return t?Bf(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new rg:typeof navigator<"u"?Bf(navigator.userAgent):cg()}function sg(t){return t!==""&&og.reduce(function(e,r){var n=r[0],i=r[1];if(e)return e;var o=i.exec(t);return!!o&&[n,o]},!1)}function Bf(t){var e=sg(t);if(!e)return null;var r=e[0],n=e[1];if(r==="searchbot")return new tg;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Af&&(i=Cf(Cf([],i,!0),ug(Af-i.length),!0)):i=[];var o=i.join("."),s=ag(t),a=ig.exec(t);return a&&a[1]?new eg(r,o,s,a[1]):new jy(r,o,s)}function ag(t){for(var e=0,r=Df.length;e<r;e++){var n=Df[e],i=n[0],o=n[1],s=o.exec(t);if(s)return i}return null}function cg(){var t=typeof process<"u"&&process.version;return t?new Jy(process.version.slice(1)):null}function ug(t){for(var e=[],r=0;r<t;r++)e.push("0");return e}function ke(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var An=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Za=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Tf=t=>globalThis.DOMException===void 0?new Za(t):new DOMException(t),_f=t=>{let e=t.reason===void 0?Tf("This operation was aborted."):t.reason;return e instanceof Error?e:Tf(e)};function Vr(t,e){let{milliseconds:r,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,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(e.signal){let{signal:h}=e;h.aborted&&f(_f(h)),h.addEventListener("abort",()=>{f(_f(h))})}if(r===Number.POSITIVE_INFINITY){t.then(u,f);return}let l=new An;s=o.setTimeout.call(void 0,()=>{if(n){try{u(n())}catch(h){f(h)}return}typeof t.cancel=="function"&&t.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 t)}catch(h){f(h)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}var kf=If(),mi=kf!=null&&kf.name==="firefox",go=async function*(){},mo=async t=>{},fg=30*1e3;function Rf(t,e,r=fg,n){t.readyState==="open"&&Promise.resolve().then(async()=>{if(t.bufferedAmount>0){n.log("%s drain channel with %d buffered bytes",e,t.bufferedAmount);let i=ke(),o=!1;t.bufferedAmountLowThreshold=0;let s=()=>{o||(n.log("%s drain channel closed before drain",e),i.resolve())};t.addEventListener("close",s,{once:!0}),t.addEventListener("bufferedamountlow",()=>{o=!0,t.removeEventListener("close",s),i.resolve()}),await Vr(i.promise,{milliseconds:r})}}).then(async()=>{t.readyState==="open"&&t.close()}).catch(i=>{n.log.error("error closing outbound stream",i)})}var Hr=class{log;peerConnection;remoteAddr;timeline;metrics;source=go();sink=mo;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 xo=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}},Dn=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new xo(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 xo(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 Qa=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function br(t={}){return lg(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 lg(t,e){e=e??{};let r=e.onEnd,n=new Dn,i,o,s,a=ke(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,m)=>{o=b=>{o=null,n.push(b);try{y(t(n))}catch(x){m(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=ke()})}},u=y=>o!=null?o(y):(n.push(y),i),f=y=>(n=new Dn,o!=null?o({error:y}):(n.push({error:y}),i)),l=y=>{if(s)return i;if(e?.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})},h=y=>s?i:(s=!0,y!=null?f(y):u({done:!0})),g=()=>(n=new Dn,h(),{done:!0}),d=y=>(h(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:g,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async y=>{let m=y?.signal;if(m?.throwIfAborted(),n.isEmpty())return;let b,x;m!=null&&(b=new Promise((S,v)=>{x=()=>{v(new Qa)},m.addEventListener("abort",x)}));try{await Promise.race([a.promise,b])}finally{x!=null&&m!=null&&m?.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 bo=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 wr(t,e,r){if(e==null)return t;if(e.aborted)return Promise.reject(new bo(r?.errorMessage,r?.errorCode));let n,i=new bo(r?.errorMessage,r?.errorCode);try{return await Promise.race([t,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var Nf=Symbol.for("@achingbrain/uint8arraylist");function Lf(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function wo(t){return!!t?.[Nf]}var rt=class t{bufs;length;[Nf]=!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(wo(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(wo(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=Lf(this.bufs,e);return r.buf[r.index]}set(e,r){let n=Lf(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(wo(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return he(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:he(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=[...n],o}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let u=e>=a&&e<c,f=r>a&&r<=c;if(u&&f){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(u){if(e===0){n.push(s);continue}n.push(s.subarray(e-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-e}}indexOf(e,r=0){if(!wo(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,u=n.byteLength-1,f;for(let l=r;l<=c;l+=f){f=0;for(let h=u;h>=0;h--){let g=this.get(l+h);if(n[h]!==g){f=Math.max(1,h-a[g]);break}}if(f===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=Me(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=se(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=se(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=se(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=Me(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=se(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=se(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=se(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=se(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=se(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Oe(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function Pf(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 Uf(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function vo(t,e){let r=Pf(t).return?.();Uf(r)&&r.catch(n=>{e.error("could not cause iterator to return",n)})}var hg="ERR_STREAM_RESET",dg="ERR_SINK_INVALID_STATE",pg=5e3;function ja(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}var Eo=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=ke(),this.closed=ke(),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??pg,this.onEnd=e.onEnd,this.onCloseRead=e?.onCloseRead,this.onCloseWrite=e?.onCloseWrite,this.onReset=e?.onReset,this.onAbort=e?.onAbort,this.source=this.streamSource=br({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"`,dg);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let i=this.sendNewStream(r);ja(i)&&await i}let n=()=>{vo(e,this.log)};try{this.sinkController.signal.addEventListener("abort",n),this.log.trace("sink reading from source");for await(let i of e){i=i instanceof Uint8Array?new rt(i):i;let o=this.sendData(i,r);ja(o)&&await o}}finally{this.sinkController.signal.removeEventListener("abort",n)}this.log.trace('sink finished reading from source, write status is "%s"',this.writeStatus),this.writeStatus==="writing"&&(this.writeStatus="closing",this.log.trace("send close write to remote"),await this.sendCloseWrite({signal:AbortSignal.timeout(this.sendCloseWriteTimeout)}),this.writeStatus="closed"),this.onSinkEnd()}catch(r){throw this.log.trace("sink ended with error, calling abort with error",r),this.abort(r),r}finally{this.log.trace("resolve sink end"),this.sinkEnd.resolve()}}onSourceEnd(e){this.timeline.closeRead==null&&(this.timeline.closeRead=Date.now(),this.readStatus="closed",e!=null&&this.endErr==null&&(this.endErr=e),this.onCloseRead?.(),this.timeline.closeWrite!=null?(this.log.trace("source and sink ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr),this.closed.resolve()):this.log.trace("source ended, waiting for sink to end"))}onSinkEnd(e){this.timeline.closeWrite==null&&(this.timeline.closeWrite=Date.now(),this.writeStatus="closed",e!=null&&this.endErr==null&&(this.endErr=e),this.onCloseWrite?.(),this.timeline.closeRead!=null?(this.log.trace("sink and source ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr),this.closed.resolve()):this.log.trace("sink ended, waiting for source to end"))}async close(e){this.log.trace("closing gracefully"),this.status="closing",await Promise.all([this.closeRead(e),this.closeWrite(e)]),await wr(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 wr(this.sink([]),e.signal)),this.writeStatus==="writing"&&await new Promise((r,n)=>{queueMicrotask(()=>{this.log.trace("aborting source passed to .sink"),this.sinkController.abort(),wr(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();ja(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",hg);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 So(t){return t[Symbol.asyncIterator]!=null}var Co=t=>{let e=tt(t),r=Me(e);return mr(t,r),Co.bytes=e,r};Co.bytes=0;function vr(t,e){e=e??{};let r=e.lengthEncoder??Co;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return So(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}vr.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??Co;return new rt(r(t.byteLength),t)};var Bn=Xe(Kf(),1);var gg=8,mg=1024*1024*4,qr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(qr||(qr={}));var Ja=t=>{let e=Ct(t);return Ja.bytes=tt(e),e};Ja.bytes=0;function zr(t,e){let r=new rt,n=qr.LENGTH,i=-1,o=e?.lengthDecoder??Ja,s=e?.maxLengthLength??gg,a=e?.maxDataLength??mg;function*c(){for(;r.byteLength>0;){if(n===qr.LENGTH)try{if(i=o(r),i<0)throw(0,Bn.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,Bn.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let u=o.bytes;r.consume(u),e?.onLength!=null&&e.onLength(i),n=qr.DATA}catch(u){if(u instanceof RangeError){if(r.byteLength>s)throw(0,Bn.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw u}if(n===qr.DATA){if(r.byteLength<i)break;let u=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(u),yield u,n=qr.LENGTH}}}return So(t)?async function*(){for await(let u of t)r.append(u),yield*c();if(r.byteLength>0)throw(0,Bn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let u of t)r.append(u),yield*c();if(r.byteLength>0)throw(0,Bn.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}zr.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return zr(n,{...e??{},onLength:o=>{r=o}})};var xg=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 bg(t,e,r){let n,i=new Promise((o,s)=>{if(r={rejectionEvents:["error"],multiArgs:!1,resolveImmediately:!1,...r},!(r.count>=0&&(r.count===Number.POSITIVE_INFINITY||Number.isInteger(r.count))))throw new TypeError("The `count` option should be at least 0 or more");r.signal?.throwIfAborted();let a=[e].flat(),c=[],{addListener:u,removeListener:f}=xg(t),l=(...g)=>{let d=r.multiArgs?g:g[0];r.filter&&!r.filter(d)||(c.push(d),r.count===c.length&&(n(),o(c)))},h=g=>{n(),s(g)};n=()=>{for(let g of a)f(g,l);for(let g of r.rejectionEvents)f(g,h)};for(let g of a)u(g,l);for(let g of r.rejectionEvents)u(g,h);r.signal&&r.signal.addEventListener("abort",()=>{h(r.signal.reason)},{once:!0}),r.resolveImmediately&&o(c)});if(i.cancel=n,typeof r.timeout=="number"){let o=Vr(i,{milliseconds:r.timeout});return o.cancel=n,o}return i}function ec(t,e,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=bg(t,e,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var tc=new Float32Array([-0]),Er=new Uint8Array(tc.buffer);function Vf(t,e,r){tc[0]=t,e[r]=Er[0],e[r+1]=Er[1],e[r+2]=Er[2],e[r+3]=Er[3]}function Hf(t,e){return Er[0]=t[e],Er[1]=t[e+1],Er[2]=t[e+2],Er[3]=t[e+3],tc[0]}var rc=new Float64Array([-0]),nt=new Uint8Array(rc.buffer);function qf(t,e,r){rc[0]=t,e[r]=nt[0],e[r+1]=nt[1],e[r+2]=nt[2],e[r+3]=nt[3],e[r+4]=nt[4],e[r+5]=nt[5],e[r+6]=nt[6],e[r+7]=nt[7]}function zf(t,e){return nt[0]=t[e],nt[1]=t[e+1],nt[2]=t[e+2],nt[3]=t[e+3],nt[4]=t[e+4],nt[5]=t[e+5],nt[6]=t[e+6],nt[7]=t[e+7],rc[0]}var wg=BigInt(Number.MAX_SAFE_INTEGER),vg=BigInt(Number.MIN_SAFE_INTEGER),st=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 Gr;if(e<wg&&e>vg)return this.fromNumber(Number(e));let r=e<0n;r&&(e=-e);let n=e>>32n,i=e-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>Gf&&(i=0n,++n>Gf&&(n=0n))),new t(Number(i),Number(n))}static fromNumber(e){if(e===0)return Gr;let r=e<0;r&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new t(n,i)}static from(e){return typeof e=="number"?t.fromNumber(e):typeof e=="bigint"?t.fromBigInt(e):typeof e=="string"?t.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new t(e.low>>>0,e.high>>>0):Gr}},Gr=new st(0,0);Gr.toBigInt=function(){return 0n};Gr.zzEncode=Gr.zzDecode=function(){return this};Gr.length=function(){return 1};var Gf=4294967296n;function Wf(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 $f(t,e,r){if(r-e<1)return"";let i,o=[],s=0,a;for(;e<r;)a=t[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|t[e++]&63:a>239&&a<365?(a=((a&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function nc(t,e,r){let n=r,i,o;for(let s=0;s<t.length;++s)i=t.charCodeAt(s),i<128?e[r++]=i:i<2048?(e[r++]=i>>6|192,e[r++]=i&63|128):(i&64512)===55296&&((o=t.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[r++]=i>>18|240,e[r++]=i>>12&63|128,e[r++]=i>>6&63|128,e[r++]=i&63|128):(e[r++]=i>>12|224,e[r++]=i>>6&63|128,e[r++]=i&63|128);return r-n}function At(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function Ao(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var ic=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,At(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 At(this,4);return Ao(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw At(this,4);return Ao(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw At(this,4);let e=Hf(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw At(this,4);let e=zf(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 At(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return $f(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw At(this,e);this.pos+=e}else do if(this.pos>=this.len)throw At(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 st(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 At(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 At(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 At(this,8);let e=Ao(this.buf,this.pos+=4),r=Ao(this.buf,this.pos+=4);return new st(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 oc(t){return new ic(t instanceof Uint8Array?t:t.subarray())}function Dt(t,e){let r=oc(t);return e.decode(r)}function sc(t){let e=t??8192,r=e>>>1,n,i=e;return function(s){if(s<1||s>r)return Me(s);i+s>e&&(n=Me(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Wr=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function ac(){}var uc=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Eg=sc();function Sg(t){return globalThis.Buffer!=null?Me(t):Eg(t)}var wi=class{len;head;tail;states;constructor(){this.len=0,this.head=new Wr(ac,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new Wr(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new fc((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(xi,10,st.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let r=st.fromBigInt(e);return this._push(xi,r.length(),r)}uint64Number(e){let r=st.fromNumber(e);return this._push(xi,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=st.fromBigInt(e).zzEncode();return this._push(xi,r.length(),r)}sint64Number(e){let r=st.fromNumber(e).zzEncode();return this._push(xi,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(cc,1,e?1:0)}fixed32(e){return this._push(bi,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=st.fromBigInt(e);return this._push(bi,4,r.lo)._push(bi,4,r.hi)}fixed64Number(e){let r=st.fromNumber(e);return this._push(bi,4,r.lo)._push(bi,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(Vf,4,e)}double(e){return this._push(qf,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(cc,1,0):this.uint32(r)._push(Ag,r,e)}string(e){let r=Wf(e);return r!==0?this.uint32(r)._push(nc,r,e):this._push(cc,1,0)}fork(){return this.states=new uc(this),this.head=this.tail=new Wr(ac,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Wr(ac,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=Sg(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function cc(t,e,r){e[r]=t&255}function Cg(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var fc=class extends Wr{next;constructor(e,r){super(Cg,e,r),this.next=void 0}};function xi(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 bi(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 Ag(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(wi.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(Dg,e,t),this},wi.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(Bg,e,t),this});function Dg(t,e,r){e.set(t,r)}function Bg(t,e,r){t.length<40?nc(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(ve(t),r)}function lc(){return new wi}function Bt(t,e){let r=lc();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var In;(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"})(In||(In={}));function Do(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function $r(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Do("enum",In.VARINT,r,n)}function It(t,e){return Do("message",In.LENGTH_DELIMITED,t,e)}var at;(function(t){let e;(function(i){i.FIN="FIN",i.STOP_SENDING="STOP_SENDING",i.RESET="RESET",i.FIN_ACK="FIN_ACK"})(e=t.Flag||(t.Flag={}));let r;(function(i){i[i.FIN=0]="FIN",i[i.STOP_SENDING=1]="STOP_SENDING",i[i.RESET=2]="RESET",i[i.FIN_ACK=3]="FIN_ACK"})(r||(r={})),function(i){i.codec=()=>$r(r)}(e=t.Flag||(t.Flag={}));let n;t.codec=()=>(n==null&&(n=It((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.flag!=null&&(o.uint32(8),t.Flag.codec().encode(i.flag,o)),i.message!=null&&(o.uint32(18),o.bytes(i.message)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.flag=t.Flag.codec().decode(i);break;case 2:s.message=i.bytes();break;default:i.skipType(c&7);break}}return s})),n),t.encode=i=>Bt(i,t.codec()),t.decode=i=>Dt(i,t.codec())})(at||(at={}));var Ig=16*1024*1024,Tg=30*1e3,_g=5,kg=2,Rg=16*1024,Lg=5e3,Ng=5e3,hc=class extends Eo{channel;incomingData;maxBufferedAmount;bufferedAmountLowEventTimeout;maxMessageSize;receiveFinAck;finAckTimeout;openTimeout;constructor(e){let r=e.onEnd;switch(e.onEnd=i=>{this.log.trace("readable and writeable ends closed",this.status),Promise.resolve(async()=>{if(!(this.timeline.abort!=null||this.timeline.reset!==null))try{await Vr(this.receiveFinAck.promise,{milliseconds:this.finAckTimeout})}catch(o){this.log.error("error receiving FIN_ACK",o)}}).then(()=>{this.incomingData.end(),r?.(i)}).catch(o=>{this.log.error("error ending stream",o)})},super(e),this.channel=e.channel,this.channel.binaryType="arraybuffer",this.incomingData=br(),this.bufferedAmountLowEventTimeout=e.bufferedAmountLowEventTimeout??Tg,this.maxBufferedAmount=e.maxBufferedAmount??Ig,this.maxMessageSize=(e.maxMessageSize??Rg)-_g-kg,this.receiveFinAck=ke(),this.finAckTimeout=e.closeTimeout??Lg,this.openTimeout=e.openTimeout??Ng,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 zr(this.incomingData)){let o=n.processIncomingProtobuf(i);o!=null&&n.sourcePush(new rt(o))}}).catch(i=>{this.log.error("error processing incoming data channel messages",i)})}sendNewStream(){}async _sendMessage(e,r=!0){if(r&&this.channel.bufferedAmount>this.maxBufferedAmount)try{this.log('channel buffer is %d, wait for "bufferedamountlow" event',this.channel.bufferedAmount),await ec(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof An?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 ec(this.channel,"open",{timeout:this.openTimeout}),this.log('channel state is now "%s", sending data',this.channel.readyState)),this.channel.send(e.subarray())}async sendData(e){for(e=e.sublist();e.byteLength>0;){let r=Math.min(e.byteLength,this.maxMessageSize),n=e.subarray(0,r),i=at.encode({message:n}),o=vr.single(i);await this._sendMessage(o),e.consume(r)}}async sendReset(){await this._sendFlag(at.Flag.RESET)}async sendCloseWrite(e){if(await this._sendFlag(at.Flag.FIN)){this.log.trace("awaiting FIN_ACK");try{await wr(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(at.Flag.STOP_SENDING)}processIncomingProtobuf(e){let r=at.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===at.Flag.FIN&&(this.remoteCloseWrite(),this.log.trace("sending FIN_ACK"),this._sendFlag(at.Flag.FIN_ACK).catch(n=>{this.log.error("error sending FIN_ACK immediately",n)})),r.flag===at.Flag.RESET&&this.reset(),r.flag===at.Flag.STOP_SENDING&&this.remoteCloseRead(),r.flag===at.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=at.encode({flag:e}),n=vr.single(r);try{return await this._sendMessage(n,!1),!0}catch(i){this.log.error("could not send flag %s",e.toString(),i)}return!1}};function Tn(t){let{channel:e,direction:r}=t;return new hc({id:r==="inbound"?`i${e.id}`:`r${e.id}`,log:t.logger.forComponent(`libp2p:webrtc:stream:${r}:${e.id}`),...t})}var Xf="/webrtc",Yr=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??Xf,this.dataChannelOptions=r.dataChannelOptions??{},this.log=e.logger.forComponent("libp2p:webrtc:datachannelmuxerfactory"),this.peerConnection.ondatachannel=({channel:n})=>{if(this.log.trace('incoming early datachannel with channel id %d and label "%s"',n.id),n.label==="init"){this.log.trace("closing early init channel"),n.close();return}let i={},o=Tn({channel:n,direction:"inbound",onEnd:s=>{i.onEnd(s)},logger:e.logger,...this.dataChannelOptions});i.stream=o,i.channel=n,i.onEnd=()=>{this.bufferedStreams=this.bufferedStreams.filter(s=>s.stream.id!==o.id)},this.bufferedStreams.push(i)}}createStreamMuxer(e){return new dc(this.components,{...e,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.bufferedStreams,protocol:this.protocol})}},dc=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??Xf,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=Tn({channel:n,direction:"inbound",onEnd:()=>{this.log("incoming channel %s ended with state %s",n.id,n.readyState),this.#e(i,n)},logger:this.logger,...this.dataChannelOptions});this.streams.push(i),this.metrics?.increment({incoming_stream:!0}),r?.onIncomingStream?.(i)},this.init.streams.length>0&&queueMicrotask(()=>{this.init.streams.forEach(n=>{n.onEnd=()=>{this.log("incoming early channel %s ended with state %s",n.channel.id,n.channel.readyState),this.#e(n.stream,n.channel)},this.metrics?.increment({incoming_stream:!0}),this.init?.onIncomingStream?.(n.stream)})})}#e(e,r){this.log.trace("stream %s %s %s onEnd",e.direction,e.id,e.protocol),Rf(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=go();sink=mo;newStream(){let e=this.peerConnection.createDataChannel("");this.log.trace("opened outgoing datachannel with channel id %s",e.id);let r=Tn({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 _n=globalThis.RTCPeerConnection,Bo=globalThis.RTCSessionDescription,Zf=globalThis.RTCIceCandidate;var pc=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=ke(),this.needNext.resolve(),this.haveNext=ke()}[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=ke(),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=ke(),await wr(this.needNext.promise,r?.signal,r)}};function Qf(){return new pc}var Io=class extends Error{code;constructor(e,r){super(e),this.code=r}},yc=class extends Io{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function jf(t,e){let r=Qf();t.sink(r).catch(async s=>{await r.end(s)}),t.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=t.source;t.source[Symbol.iterator]!=null?n=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(n=t.source[Symbol.asyncIterator]());let i=new rt;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,u=new Promise((f,l)=>{c=()=>{l(new yc("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:h}=await Promise.race([n.next(),u]);return l===!0?new rt:h}for(;i.byteLength<s;){let{value:l,done:h}=await Promise.race([n.next(),u]);if(h===!0)throw new Io("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=t.source;t.source=async function*(){e?.yieldBytes===!1?yield i:yield*i,yield*s}()}return t}}}var To=class extends Error{code;constructor(e,r){super(e),this.code=r}},Jf=t=>Ct(t);Jf.bytes=0;function vi(t,e={}){let r=jf(t,e);return e.maxDataLength!=null&&e.maxLengthLength==null&&(e.maxLengthLength=tt(e.maxDataLength)),{read:async i=>{let o=-1,s=new rt,a=e?.lengthDecoder??Jf;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new To("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new To("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(vr.single(i,e),o)},writeV:async(i,o)=>{let s=new rt(...i.map(a=>vr.single(a,e)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function _o(t,e){let r=vi(t,e),n={read:async(i,o)=>{let s=await r.read(o);return i.decode(s)},write:async(i,o,s)=>{await r.write(o.encode(i),s)},writeV:async(i,o,s)=>{await r.writeV(i.map(a=>o.encode(a)),s)},pb:i=>({read:async o=>n.read(i,o),write:async(o,s)=>n.write(o,i,s),writeV:async(o,s)=>n.writeV(o,i,s),unwrap:()=>n}),unwrap:()=>r.unwrap()};return n}var ct;(function(t){let e;(function(i){i.SDP_OFFER="SDP_OFFER",i.SDP_ANSWER="SDP_ANSWER",i.ICE_CANDIDATE="ICE_CANDIDATE"})(e=t.Type||(t.Type={}));let r;(function(i){i[i.SDP_OFFER=0]="SDP_OFFER",i[i.SDP_ANSWER=1]="SDP_ANSWER",i[i.ICE_CANDIDATE=2]="ICE_CANDIDATE"})(r||(r={})),function(i){i.codec=()=>$r(r)}(e=t.Type||(t.Type={}));let n;t.codec=()=>(n==null&&(n=It((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),t.Type.codec().encode(i.type,o)),i.data!=null&&(o.uint32(18),o.string(i.data)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.type=t.Type.codec().decode(i);break;case 2:s.data=i.string();break;default:i.skipType(c&7);break}}return s})),n),t.encode=i=>Bt(i,t.codec()),t.decode=i=>Dt(i,t.codec())})(ct||(ct={}));function el(t){let e=new globalThis.AbortController;function r(){e.abort();for(let o of t)o?.removeEventListener!=null&&o.removeEventListener("abort",r)}for(let o of t){if(o?.aborted===!0){r();break}o?.addEventListener!=null&&o.addEventListener("abort",r)}function n(){for(let o of t)o?.removeEventListener!=null&&o.removeEventListener("abort",r)}let i=e.signal;return i.clear=n,i}var ko=async(t,e,r,n)=>{let i=new AbortController;t.promise.then(()=>{i.abort()},()=>{i.abort()});let o=el([i.signal,n.signal]),s=()=>{vo(r.unwrap().unwrap().source,n.log)};o.addEventListener("abort",s);try{for(;;){let a=await Promise.race([t.promise,r.read()]);if(a==null)break;if(a.type!==ct.Type.ICE_CANDIDATE)throw new W("ICE candidate message expected","ERR_NOT_ICE_CANDIDATE");let c=JSON.parse(a.data??"null");if(c===""||c===null){n.log.trace("end-of-candidates received");continue}let u=new Zf(c);n.log.trace("%s received new ICE candidate",n.direction,u);try{await e.addIceCandidate(u)}catch(f){n.log.error("%s bad candidate received",n.direction,c,f)}}}catch(a){n.log.error("%s error parsing ICE candidate",n.direction,a)}finally{o.removeEventListener("abort",s),o.clear()}};function Ro(t,e){t[mi?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(mi?t.iceConnectionState:t.connectionState){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 tl({peerConnection:t,signal:e,metrics:r,multiaddr:n,connectionManager:i,transportManager:o,log:s}){let{baseAddr:a}=rl(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(Mr(c)),f,l=!1;u.length===0?(f=await o.dial(a,{signal:e}),l=!0):f=u[0];try{let h=await f.newStream(Lo,{signal:e,runOnTransientConnection:!0}),g=_o(h).pb(ct),d=ke(),p=()=>{d.reject(new W("SDP handshake aborted","ERR_SDP_HANDSHAKE_ABORTED"))};try{Ro(t,d),e?.addEventListener("abort",p);let y=t.createDataChannel("init");t.onicecandidate=({candidate:S})=>{let v=JSON.stringify(S?.toJSON()??null);s.trace("initiator sending ICE candidate %s",v),g.write({type:ct.Type.ICE_CANDIDATE,data:v},{signal:e}).catch(E=>{s.error("error sending ICE candidate",E)})},t.onicecandidateerror=S=>{s("initiator ICE candidate error",S)};let m=await t.createOffer();s.trace("initiator send SDP offer %s",m.sdp),await g.write({type:ct.Type.SDP_OFFER,data:m.sdp},{signal:e}),await t.setLocalDescription(m).catch(S=>{throw s.error("could not execute setLocalDescription",S),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")});let b=await g.read({signal:e});if(b.type!==ct.Type.SDP_ANSWER)throw new W("remote should send an SDP answer","ERR_SDP_HANDSHAKE_FAILED");s.trace("initiator receive SDP answer %s",b.data);let x=new Bo({type:"answer",sdp:b.data});return await t.setRemoteDescription(x).catch(S=>{throw s.error("could not execute setRemoteDescription",S),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")}),s.trace("initiator read candidates until connected"),await ko(d,t,g,{direction:"initiator",signal:e,log:s}),s.trace("initiator connected, closing init channel"),y.close(),s.trace("initiator closing signalling stream"),await g.unwrap().unwrap().close({signal:e}),s.trace("initiator connected to remote address %s",n),{remoteAddress:n}}catch(y){throw t.close(),h.abort(y),y}finally{e?.removeEventListener("abort",p),t.onicecandidate=null,t.onicecandidateerror=null}}finally{if(l)try{await f.close({signal:e})}catch(h){f.abort(h)}}}var No=class extends EventTarget{#e=new Map;listenerCount(e){let r=this.#e.get(e);return r==null?0:r.length}addEventListener(e,r,n){super.addEventListener(e,r,n);let i=this.#e.get(e);i==null&&(i=[],this.#e.set(e,i)),i.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,r,n){super.removeEventListener(e.toString(),r??null,n);let i=this.#e.get(e);i!=null&&(i=i.filter(({callback:o})=>o!==r),this.#e.set(e,i))}dispatchEvent(e){let r=super.dispatchEvent(e),n=this.#e.get(e.type);return n==null||(n=n.filter(({once:i})=>!i),this.#e.set(e.type,n)),r}safeDispatchEvent(e,r){return this.dispatchEvent(new Pg(e,r))}},gc=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},Pg=globalThis.CustomEvent??gc;var Ug=q("dns4"),Og=q("dns6"),Fg=q("dnsaddr"),Xr=Ue(q("dns"),Fg,Ug,Og),Oo=Ue(q("ip4"),q("ip6")),kn=Ue(X(Oo,q("tcp")),X(Xr,q("tcp"))),Fo=X(Oo,q("udp")),Kg=X(Fo,q("utp")),Mg=X(Fo,q("quic")),Vg=X(Fo,q("quic-v1")),mc=Ue(X(kn,q("ws")),X(Xr,q("ws"))),Po=Ue(X(mc,q("p2p")),mc),xc=Ue(X(kn,q("wss")),X(Xr,q("wss")),X(kn,q("tls"),q("ws")),X(Xr,q("tls"),q("ws"))),Uo=Ue(X(xc,q("p2p")),xc),bc=Ue(X(kn,q("http")),X(Oo,q("http")),X(Xr,q("http"))),wc=Ue(X(kn,q("https")),X(Oo,q("https")),X(Xr,q("https"))),nl=X(Fo,q("webrtc-direct"),q("certhash")),sl=Ue(X(nl,q("p2p")),nl),il=X(Vg,q("webtransport"),q("certhash"),q("certhash")),al=Ue(X(il,q("p2p")),il),cl=Ue(X(Po,q("p2p-webrtc-star"),q("p2p")),X(Uo,q("p2p-webrtc-star"),q("p2p")),X(Po,q("p2p-webrtc-star")),X(Uo,q("p2p-webrtc-star"))),fC=Ue(X(Po,q("p2p-websocket-star"),q("p2p")),X(Uo,q("p2p-websocket-star"),q("p2p")),X(Po,q("p2p-websocket-star")),X(Uo,q("p2p-websocket-star"))),ul=Ue(X(bc,q("p2p-webrtc-direct"),q("p2p")),X(wc,q("p2p-webrtc-direct"),q("p2p")),X(bc,q("p2p-webrtc-direct")),X(wc,q("p2p-webrtc-direct"))),Zr=Ue(mc,xc,bc,wc,cl,ul,kn,Kg,Mg,Xr,sl,al),lC=Ue(X(Zr,q("p2p-stardust"),q("p2p")),X(Zr,q("p2p-stardust"))),Sr=Ue(X(Zr,q("p2p")),cl,ul,sl,al,q("p2p")),ol=Ue(X(Sr,q("p2p-circuit"),Sr),X(Sr,q("p2p-circuit")),X(q("p2p-circuit"),Sr),X(Zr,q("p2p-circuit")),X(q("p2p-circuit"),Zr),q("p2p-circuit")),fl=()=>Ue(X(ol,fl),ol),Jt=fl(),hC=Ue(X(Jt,Sr,Jt),X(Sr,Jt),X(Jt,Sr),Jt,Sr);var dC=Ue(X(Jt,q("webrtc"),q("p2p")),X(Jt,q("webrtc")),X(Zr,q("webrtc"),q("p2p")),X(Zr,q("webrtc")),q("webrtc"));function ll(t){function e(r){let n;try{n=jt(r)}catch{return!1}let i=t(n.protoNames());return i===null?!1:i===!0||i===!1?i:i.length===0}return e}function X(...t){function e(r){if(r.length<t.length)return null;let n=r;return t.some(i=>(n=typeof i=="function"?i().partialMatch(r):i.partialMatch(r),Array.isArray(n)&&(r=n),n===null)),n}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:ll(e),partialMatch:e}}function Ue(...t){function e(n){let i=null;return t.some(o=>{let s=typeof o=="function"?o().partialMatch(n):o.partialMatch(n);return s!=null?(i=s,!0):!1}),i}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:ll(e),partialMatch:e}}function q(t){let e=t;function r(i){let o;try{o=jt(i)}catch{return!1}let s=o.protoNames();return s.length===1&&s[0]===e}function n(i){return i.length===0?null:i[0]===e?i.slice(1):null}return{toString:function(){return e},matches:r,partialMatch:n}}var Ko=class extends No{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=>Jt.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};async function hl({peerConnection:t,stream:e,signal:r,connection:n,log:i}){i.trace("new inbound signaling stream");let o=_o(e).pb(ct);try{let a=ke(),c=ke();r.onabort=()=>{a.reject(new W("Timed out while trying to connect","ERR_TIMEOUT"))},t.onicecandidate=({candidate:h})=>{c.promise.then(async()=>{let g=JSON.stringify(h?.toJSON()??null);i.trace("recipient sending ICE candidate %s",g),await o.write({type:ct.Type.ICE_CANDIDATE,data:g},{signal:r})},g=>{i.error("cannot set candidate since sending answer failed",g),a.reject(g)})},Ro(t,a);let u=await o.read({signal:r});if(u.type!==ct.Type.SDP_OFFER)throw new W(`expected message type SDP_OFFER, received: ${u.type??"undefined"} `,"ERR_SDP_HANDSHAKE_FAILED");i.trace("recipient receive SDP offer %s",u.data);let f=new Bo({type:"offer",sdp:u.data});await t.setRemoteDescription(f).catch(h=>{throw i.error("could not execute setRemoteDescription",h),new W("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")});let l=await t.createAnswer().catch(h=>{throw i.error("could not execute createAnswer",h),c.reject(h),new W("Failed to create answer","ERR_SDP_HANDSHAKE_FAILED")});i.trace("recipient send SDP answer %s",l.sdp),await o.write({type:ct.Type.SDP_ANSWER,data:l.sdp},{signal:r}),await t.setLocalDescription(l).catch(h=>{throw i.error("could not execute setLocalDescription",h),c.reject(h),new W("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")}),c.resolve(),i.trace("recipient read candidates until connected"),await ko(a,t,o,{direction:"recipient",signal:r,log:i}),i.trace("recipient connected, closing signaling stream"),await o.unwrap().unwrap().close({signal:r})}catch(a){if(t.connectionState!=="connected")throw i.error("error while handling signaling stream from peer %a",n.remoteAddr,a),t.close(),a;i("error while handling signaling stream from peer %a, ignoring as the RTCPeerConnection is already connected",n.remoteAddr,a)}let s=jt(`/webrtc/p2p/${n.remoteAddr.getPeerId()}`);return i.trace("recipient connected to remote address %s",s),{remoteAddress:s}}var Hg="/webrtc",qg="/p2p-circuit",Lo="/webrtc-signaling/0.0.1",zg=30*1e3,Mo=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,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(Lo,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(Lo),this._started=!1}createListener(e){return new Ko(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[eo]=!0;filter(e){return e.filter(vf.exactMatch)}async dial(e,r){this.log.trace("dialing address: %a",e);let n=new _n(this.init.rtcConfiguration),i=new Yr(this.components,{peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:o}=await tl({peerConnection:n,multiaddr:e,dataChannelOptions:this.init.dataChannel,signal:r.signal,connectionManager:this.components.connectionManager,transportManager:this.components.transportManager,log:this.log}),s=new Hr(this.components,{peerConnection:n,timeline:{open:Date.now()},remoteAddr:o,metrics:this.metrics?.dialerEvents}),a=await r.upgrader.upgradeOutbound(s,{skipProtection:!0,skipEncryption:!0,muxerFactory:i});return this._closeOnShutdown(n,s),a}async _onProtocol({connection:e,stream:r}){let n=AbortSignal.timeout(this.init.inboundConnectionTimeout??zg),i=new _n(this.init.rtcConfiguration),o=new Yr(this.components,{peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await hl({peerConnection:i,connection:e,stream:r,signal:n,log:this.log}),a=new Hr(this.components,{peerConnection:i,timeline:{open:new Date().getTime()},remoteAddr:s,metrics:this.metrics?.listenerEvents});this._closeOnShutdown(i,a),await this.components.upgrader.upgradeInbound(a,{skipEncryption:!0,skipProtection:!0,muxerFactory:o}),await r.close({signal:n})}catch(s){throw r.abort(s),s}}_closeOnShutdown(e,r){let n=()=>{r.close().catch(i=>{this.log.error("could not close WebRTCMultiaddrConnection",i)})};this.shutdownController.signal.addEventListener("abort",n),e.addEventListener("close",()=>{this.shutdownController.signal.removeEventListener("abort",n)})}};function rl(t){let e=t.toString().split(Hg+"/");if(e.length!==2)throw new W("webrtc protocol was not present in multiaddr",lt.ERR_INVALID_MULTIADDR);if(!e[0].includes(qg))throw new W("p2p-circuit protocol was not present in multiaddr",lt.ERR_INVALID_MULTIADDR);let r=jt(e[0]),i=jt("/"+e[1]).getPeerId();if(i==null)throw new W("destination peer id was missing",lt.ERR_INVALID_MULTIADDR);let o=r.protos().pop();if(o===void 0)throw new W("invalid multiaddr",lt.ERR_INVALID_MULTIADDR);return o.name!=="p2p"&&(r=r.encapsulate(`/p2p/${i}`)),{baseAddr:r,peerId:Mr(i)}}function vc(){let t=ke(),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 dl(){let t=vc(),e=vc();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function Gg(t){return t[Symbol.asyncIterator]!=null}function Wg(...t){let e=[];for(let r of t)Gg(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=br({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var pl=Wg;function yl(t,...e){if(t==null)throw new Error("Empty pipeline");if(Ec(t)){let n=t;t=()=>n.source}else if(ml(t)||gl(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Ec(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++)Ec(r[n])&&(r[n]=Yg(r[n]));return $g(...r)}var $g=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},gl=t=>t?.[Symbol.asyncIterator]!=null,ml=t=>t?.[Symbol.iterator]!=null,Ec=t=>t==null?!1:t.sink!=null&&t.source!=null,Yg=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=br({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(gl(o))i=async function*(){yield*o,n.end()};else if(ml(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return pl(n,i())}return t.source};var xl=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var Xg=t=>t instanceof Uint8Array;var er=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),bl=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Zg=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Zg)throw new Error("Non little-endian hardware is not supported");function Vo(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Ho(t){if(typeof t=="string")t=Vo(t);else if(Xg(t))t=t.slice();else throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var Qg=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function wl(t,e){if(e!==void 0&&(typeof e!="object"||!Qg(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function Qr(t,e){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function vl(t,e){if(t.length!==e.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<t.length;n++)r&&(r=t[n]===e[n]);return r}var Sc=(t,e)=>(Object.assign(e,t),e);function Cc(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,u=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+u,a,n)}function qo(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Ac(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function Rn(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Dc(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 El(t,e){Rn(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Qe=(t,e)=>t[e++]&255|(t[e++]&255)<<8,Bc=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=Ho(e),Qr(e,32);let r=Qe(e,0),n=Qe(e,2),i=Qe(e,4),o=Qe(e,6),s=Qe(e,8),a=Qe(e,10),c=Qe(e,12),u=Qe(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|u<<8)&8191,this.r[9]=u>>>5&127;for(let f=0;f<8;f++)this.pad[f]=Qe(e,16+2*f)}process(e,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],h=s[5],g=s[6],d=s[7],p=s[8],y=s[9],m=Qe(e,r+0),b=Qe(e,r+2),x=Qe(e,r+4),S=Qe(e,r+6),v=Qe(e,r+8),E=Qe(e,r+10),B=Qe(e,r+12),D=Qe(e,r+14),U=o[0]+(m&8191),F=o[1]+((m>>>13|b<<3)&8191),O=o[2]+((b>>>10|x<<6)&8191),M=o[3]+((x>>>7|S<<9)&8191),G=o[4]+((S>>>4|v<<12)&8191),Q=o[5]+(v>>>1&8191),I=o[6]+((v>>>14|E<<2)&8191),R=o[7]+((E>>>11|B<<5)&8191),_=o[8]+((B>>>8|D<<8)&8191),k=o[9]+(D>>>5|i),C=0,P=C+U*a+F*(5*y)+O*(5*p)+M*(5*d)+G*(5*g);C=P>>>13,P&=8191,P+=Q*(5*h)+I*(5*l)+R*(5*f)+_*(5*u)+k*(5*c),C+=P>>>13,P&=8191;let K=C+U*c+F*a+O*(5*y)+M*(5*p)+G*(5*d);C=K>>>13,K&=8191,K+=Q*(5*g)+I*(5*h)+R*(5*l)+_*(5*f)+k*(5*u),C+=K>>>13,K&=8191;let H=C+U*u+F*c+O*a+M*(5*y)+G*(5*p);C=H>>>13,H&=8191,H+=Q*(5*d)+I*(5*g)+R*(5*h)+_*(5*l)+k*(5*f),C+=H>>>13,H&=8191;let Z=C+U*f+F*u+O*c+M*a+G*(5*y);C=Z>>>13,Z&=8191,Z+=Q*(5*p)+I*(5*d)+R*(5*g)+_*(5*h)+k*(5*l),C+=Z>>>13,Z&=8191;let j=C+U*l+F*f+O*u+M*c+G*a;C=j>>>13,j&=8191,j+=Q*(5*y)+I*(5*p)+R*(5*d)+_*(5*g)+k*(5*h),C+=j>>>13,j&=8191;let oe=C+U*h+F*l+O*f+M*u+G*c;C=oe>>>13,oe&=8191,oe+=Q*a+I*(5*y)+R*(5*p)+_*(5*d)+k*(5*g),C+=oe>>>13,oe&=8191;let J=C+U*g+F*h+O*l+M*f+G*u;C=J>>>13,J&=8191,J+=Q*c+I*a+R*(5*y)+_*(5*p)+k*(5*d),C+=J>>>13,J&=8191;let te=C+U*d+F*g+O*h+M*l+G*f;C=te>>>13,te&=8191,te+=Q*u+I*c+R*a+_*(5*y)+k*(5*p),C+=te>>>13,te&=8191;let we=C+U*p+F*d+O*g+M*h+G*l;C=we>>>13,we&=8191,we+=Q*f+I*u+R*c+_*a+k*(5*y),C+=we>>>13,we&=8191;let xe=C+U*y+F*p+O*d+M*g+G*h;C=xe>>>13,xe&=8191,xe+=Q*l+I*f+R*u+_*c+k*a,C+=xe>>>13,xe&=8191,C=(C<<2)+C|0,C=C+P|0,P=C&8191,C=C>>>13,K+=C,o[0]=P,o[1]=K,o[2]=H,o[3]=Z,o[4]=j,o[5]=oe,o[6]=J,o[7]=te,o[8]=we,o[9]=xe}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=i,i=e[a]>>>13,e[a]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,n[0]=e[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)e[a]=e[a]&o|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+r[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+r[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){Dc(this);let{buffer:r,blockLen:n}=this;e=Ho(e);let i=e.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(e,o);continue}r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){Dc(this),El(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)e[o++]=n[s]>>>0,e[o++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}};function jg(t){let e=(n,i)=>t(i).update(Ho(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var Sl=jg(t=>new Bc(t));var Jg=Vo("expand 16-byte k"),em=Vo("expand 32-byte k"),tm=er(Jg),rm=er(em);function $(t,e){return t<<e|t>>>32-e}function Ic(t){return t.byteOffset%4===0}var zo=64,nm=16,Al=2**32-1,Cl=new Uint32Array;function im(t,e,r,n,i,o,s,a){let c=i.length,u=new Uint8Array(zo),f=er(u),l=Ic(i)&&Ic(o),h=l?er(i):Cl,g=l?er(o):Cl;for(let d=0;d<c;s++){if(t(e,r,n,f,s,a),s>=Al)throw new Error("arx: counter overflow");let p=Math.min(zo,c-d);if(l&&p===zo){let y=d/4;if(d%4!==0)throw new Error("arx: invalid block position");for(let m=0,b;m<nm;m++)b=y+m,g[b]=h[b]^f[m];d+=zo;continue}for(let y=0,m;y<p;y++)m=d+y,o[m]=i[m]^u[y];d+=p}}function Tc(t,e){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=wl({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return qo(i),qo(s),Ac(o),Ac(r),(a,c,u,f,l=0)=>{Rn(a),Rn(c),Rn(u);let h=u.length;if(f||(f=new Uint8Array(h)),Rn(f),qo(l),l<0||l>=Al)throw new Error("arx: counter overflow");if(f.length<h)throw new Error(`arx: output (${f.length}) is shorter than data (${h})`);let g=[],d=a.length,p,y;if(d===32)p=a.slice(),g.push(p),y=rm;else if(d===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),y=tm,g.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${d}`);Ic(c)||(c=c.slice(),g.push(c));let m=er(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(y,m,er(c.subarray(0,16)),m),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,g.push(c)}let x=er(c);for(im(t,y,m,x,u,f,l,s);g.length>0;)g.pop().fill(0);return f}}function Il(t,e,r,n,i,o=20){let s=t[0],a=t[1],c=t[2],u=t[3],f=e[0],l=e[1],h=e[2],g=e[3],d=e[4],p=e[5],y=e[6],m=e[7],b=i,x=r[0],S=r[1],v=r[2],E=s,B=a,D=c,U=u,F=f,O=l,M=h,G=g,Q=d,I=p,R=y,_=m,k=b,C=x,P=S,K=v;for(let Z=0;Z<o;Z+=2)E=E+F|0,k=$(k^E,16),Q=Q+k|0,F=$(F^Q,12),E=E+F|0,k=$(k^E,8),Q=Q+k|0,F=$(F^Q,7),B=B+O|0,C=$(C^B,16),I=I+C|0,O=$(O^I,12),B=B+O|0,C=$(C^B,8),I=I+C|0,O=$(O^I,7),D=D+M|0,P=$(P^D,16),R=R+P|0,M=$(M^R,12),D=D+M|0,P=$(P^D,8),R=R+P|0,M=$(M^R,7),U=U+G|0,K=$(K^U,16),_=_+K|0,G=$(G^_,12),U=U+G|0,K=$(K^U,8),_=_+K|0,G=$(G^_,7),E=E+O|0,K=$(K^E,16),R=R+K|0,O=$(O^R,12),E=E+O|0,K=$(K^E,8),R=R+K|0,O=$(O^R,7),B=B+M|0,k=$(k^B,16),_=_+k|0,M=$(M^_,12),B=B+M|0,k=$(k^B,8),_=_+k|0,M=$(M^_,7),D=D+G|0,C=$(C^D,16),Q=Q+C|0,G=$(G^Q,12),D=D+G|0,C=$(C^D,8),Q=Q+C|0,G=$(G^Q,7),U=U+F|0,P=$(P^U,16),I=I+P|0,F=$(F^I,12),U=U+F|0,P=$(P^U,8),I=I+P|0,F=$(F^I,7);let H=0;n[H++]=s+E|0,n[H++]=a+B|0,n[H++]=c+D|0,n[H++]=u+U|0,n[H++]=f+F|0,n[H++]=l+O|0,n[H++]=h+M|0,n[H++]=g+G|0,n[H++]=d+Q|0,n[H++]=p+I|0,n[H++]=y+R|0,n[H++]=m+_|0,n[H++]=b+k|0,n[H++]=x+C|0,n[H++]=S+P|0,n[H++]=v+K|0}function om(t,e,r,n){let i=t[0],o=t[1],s=t[2],a=t[3],c=e[0],u=e[1],f=e[2],l=e[3],h=e[4],g=e[5],d=e[6],p=e[7],y=r[0],m=r[1],b=r[2],x=r[3];for(let v=0;v<20;v+=2)i=i+c|0,y=$(y^i,16),h=h+y|0,c=$(c^h,12),i=i+c|0,y=$(y^i,8),h=h+y|0,c=$(c^h,7),o=o+u|0,m=$(m^o,16),g=g+m|0,u=$(u^g,12),o=o+u|0,m=$(m^o,8),g=g+m|0,u=$(u^g,7),s=s+f|0,b=$(b^s,16),d=d+b|0,f=$(f^d,12),s=s+f|0,b=$(b^s,8),d=d+b|0,f=$(f^d,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),d=d+x|0,u=$(u^d,12),i=i+u|0,x=$(x^i,8),d=d+x|0,u=$(u^d,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,m=$(m^s,16),h=h+m|0,l=$(l^h,12),s=s+l|0,m=$(m^s,8),h=h+m|0,l=$(l^h,7),a=a+c|0,b=$(b^a,16),g=g+b|0,c=$(c^g,12),a=a+c|0,b=$(b^a,8),g=g+b|0,c=$(c^g,7);let S=0;n[S++]=i,n[S++]=o,n[S++]=s,n[S++]=a,n[S++]=y,n[S++]=m,n[S++]=b,n[S++]=x}var sm=Tc(Il,{counterRight:!1,counterLength:4,allowShortKeys:!1}),am=Tc(Il,{counterRight:!1,counterLength:8,extendNonceFn:om,allowShortKeys:!1});var cm=new Uint8Array(16),Dl=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(cm.subarray(r))},um=new Uint8Array(32);function Bl(t,e,r,n,i){let o=t(e,r,um),s=Sl.create(o);i&&Dl(s,i),Dl(s,n);let a=new Uint8Array(16),c=bl(a);Cc(c,0,BigInt(i?i.length:0),!0),Cc(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return o.fill(0),u}var Tl=t=>(e,r,n)=>(Qr(e,32),Qr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?Qr(s,c):s=new Uint8Array(c),t(e,r,o,s,1);let u=Bl(t,e,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?Qr(s,c):s=new Uint8Array(c);let u=o.subarray(0,-16),f=o.subarray(-16),l=Bl(t,e,r,u,n);if(!vl(f,l))throw new Error("invalid tag");return t(e,r,u,s,1),s}}),_c=Sc({blockSize:64,nonceLength:12,tagLength:16},Tl(sm)),aA=Sc({blockSize:64,nonceLength:24,tagLength:16},Tl(am));function Go(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function kc(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Ei(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Go(t.outputLen),Go(t.blockLen)}function Ln(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 _l(t,e){kc(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var Wo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var kl=t=>t instanceof Uint8Array;var $o=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Tt=(t,e)=>t<<32-e|t>>>e,fm=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!fm)throw new Error("Non little-endian hardware is not supported");function Rc(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Cr(t){if(typeof t=="string"&&(t=Rc(t)),!kl(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function Yo(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!kl(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Nn=class{clone(){return this._cloneInto()}},hA={}.toString;function Xo(t){let e=n=>t().update(Cr(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function jr(t=32){if(Wo&&typeof Wo.getRandomValues=="function")return Wo.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function lm(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,u=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+u,a,n)}var Pn=class extends Nn{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=$o(this.buffer)}update(e){Ln(this);let{view:r,buffer:n,blockLen:i}=this;e=Cr(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=$o(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ln(this),_l(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;lm(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=$o(e),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:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var Zo=BigInt(4294967295),Lc=BigInt(32);function Rl(t,e=!1){return e?{h:Number(t&Zo),l:Number(t>>Lc&Zo)}:{h:Number(t>>Lc&Zo)|0,l:Number(t&Zo)|0}}function hm(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=Rl(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var dm=(t,e)=>BigInt(t>>>0)<<Lc|BigInt(e>>>0),pm=(t,e,r)=>t>>>r,ym=(t,e,r)=>t<<32-r|e>>>r,gm=(t,e,r)=>t>>>r|e<<32-r,mm=(t,e,r)=>t<<32-r|e>>>r,xm=(t,e,r)=>t<<64-r|e>>>r-32,bm=(t,e,r)=>t>>>r-32|e<<64-r,wm=(t,e)=>e,vm=(t,e)=>t,Em=(t,e,r)=>t<<r|e>>>32-r,Sm=(t,e,r)=>e<<r|t>>>32-r,Cm=(t,e,r)=>e<<r-32|t>>>64-r,Am=(t,e,r)=>t<<r-32|e>>>64-r;function Dm(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var Bm=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),Im=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,Tm=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),_m=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,km=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),Rm=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var Lm={fromBig:Rl,split:hm,toBig:dm,shrSH:pm,shrSL:ym,rotrSH:gm,rotrSL:mm,rotrBH:xm,rotrBL:bm,rotr32H:wm,rotr32L:vm,rotlSH:Em,rotlSL:Sm,rotlBH:Cm,rotlBL:Am,add:Dm,add3L:Bm,add3H:Im,add4L:Tm,add4H:_m,add5H:Rm,add5L:km},ne=Lm;var[Nm,Pm]=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))),Ar=new Uint32Array(80),Dr=new Uint32Array(80),Nc=class extends Pn{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:u,El:f,Fh:l,Fl:h,Gh:g,Gl:d,Hh:p,Hl:y}=this;return[e,r,n,i,o,s,a,c,u,f,l,h,g,d,p,y]}set(e,r,n,i,o,s,a,c,u,f,l,h,g,d,p,y){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=u|0,this.El=f|0,this.Fh=l|0,this.Fl=h|0,this.Gh=g|0,this.Gl=d|0,this.Hh=p|0,this.Hl=y|0}process(e,r){for(let x=0;x<16;x++,r+=4)Ar[x]=e.getUint32(r),Dr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let S=Ar[x-15]|0,v=Dr[x-15]|0,E=ne.rotrSH(S,v,1)^ne.rotrSH(S,v,8)^ne.shrSH(S,v,7),B=ne.rotrSL(S,v,1)^ne.rotrSL(S,v,8)^ne.shrSL(S,v,7),D=Ar[x-2]|0,U=Dr[x-2]|0,F=ne.rotrSH(D,U,19)^ne.rotrBH(D,U,61)^ne.shrSH(D,U,6),O=ne.rotrSL(D,U,19)^ne.rotrBL(D,U,61)^ne.shrSL(D,U,6),M=ne.add4L(B,O,Dr[x-7],Dr[x-16]),G=ne.add4H(M,E,F,Ar[x-7],Ar[x-16]);Ar[x]=G|0,Dr[x]=M|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:u,Dl:f,Eh:l,El:h,Fh:g,Fl:d,Gh:p,Gl:y,Hh:m,Hl:b}=this;for(let x=0;x<80;x++){let S=ne.rotrSH(l,h,14)^ne.rotrSH(l,h,18)^ne.rotrBH(l,h,41),v=ne.rotrSL(l,h,14)^ne.rotrSL(l,h,18)^ne.rotrBL(l,h,41),E=l&g^~l&p,B=h&d^~h&y,D=ne.add5L(b,v,B,Pm[x],Dr[x]),U=ne.add5H(D,m,S,E,Nm[x],Ar[x]),F=D|0,O=ne.rotrSH(n,i,28)^ne.rotrBH(n,i,34)^ne.rotrBH(n,i,39),M=ne.rotrSL(n,i,28)^ne.rotrBL(n,i,34)^ne.rotrBL(n,i,39),G=n&o^n&a^o&a,Q=i&s^i&c^s&c;m=p|0,b=y|0,p=g|0,y=d|0,g=l|0,d=h|0,{h:l,l:h}=ne.add(u|0,f|0,U|0,F|0),u=a|0,f=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let I=ne.add3L(F,M,Q);n=ne.add3H(I,U,O,G),i=I|0}({h:n,l:i}=ne.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=ne.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=ne.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:u,l:f}=ne.add(this.Dh|0,this.Dl|0,u|0,f|0),{h:l,l:h}=ne.add(this.Eh|0,this.El|0,l|0,h|0),{h:g,l:d}=ne.add(this.Fh|0,this.Fl|0,g|0,d|0),{h:p,l:y}=ne.add(this.Gh|0,this.Gl|0,p|0,y|0),{h:m,l:b}=ne.add(this.Hh|0,this.Hl|0,m|0,b|0),this.set(n,i,o,s,a,c,u,f,l,h,g,d,p,y,m,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 Pc=Xo(()=>new Nc);var Jo={};fe(Jo,{bitGet:()=>Hm,bitLen:()=>Vm,bitMask:()=>Si,bitSet:()=>qm,bytesToHex:()=>tr,bytesToNumberBE:()=>rr,bytesToNumberLE:()=>_t,concatBytes:()=>ir,createHmacDrbg:()=>Fc,ensureBytes:()=>Se,equalBytes:()=>Km,hexToBytes:()=>Jr,hexToNumber:()=>Oc,numberToBytesBE:()=>Br,numberToBytesLE:()=>nr,numberToHexUnpadded:()=>Pl,numberToVarBytesBE:()=>Fm,utf8ToBytes:()=>Mm,validateObject:()=>mt});var Nl=BigInt(0),Qo=BigInt(1),Um=BigInt(2),jo=t=>t instanceof Uint8Array,Om=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function tr(t){if(!jo(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Om[t[r]];return e}function Pl(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Oc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function Jr(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let r=new Uint8Array(e/2);for(let n=0;n<r.length;n++){let i=n*2,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function rr(t){return Oc(tr(t))}function _t(t){if(!jo(t))throw new Error("Uint8Array expected");return Oc(tr(Uint8Array.from(t).reverse()))}function Br(t,e){return Jr(t.toString(16).padStart(e*2,"0"))}function nr(t,e){return Br(t,e).reverse()}function Fm(t){return Jr(Pl(t))}function Se(t,e,r){let n;if(typeof e=="string")try{n=Jr(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(jo(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function ir(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!jo(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Km(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function Mm(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Vm(t){let e;for(e=0;t>Nl;t>>=Qo,e+=1);return e}function Hm(t,e){return t>>BigInt(e)&Qo}var qm=(t,e,r)=>t|(r?Qo:Nl)<<BigInt(e),Si=t=>(Um<<BigInt(t-1))-Qo,Uc=t=>new Uint8Array(t),Ll=t=>Uint8Array.from(t);function Fc(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=Uc(t),i=Uc(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Uc())=>{i=a(Ll([0]),l),n=a(),l.length!==0&&(i=a(Ll([1]),l),n=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let g=n.slice();h.push(g),l+=n.length}return ir(...h)};return(l,h)=>{s(),c(l);let g;for(;!(g=h(u()));)c();return s(),g}}var zm={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function mt(t,e,r={}){let n=(i,o,s)=>{let a=zm[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var He=BigInt(0),Be=BigInt(1),en=BigInt(2),Gm=BigInt(3),Kc=BigInt(4),Ul=BigInt(5),Ol=BigInt(8),Wm=BigInt(9),$m=BigInt(16);function de(t,e){let r=t%e;return r>=He?r:e+r}function Mc(t,e,r){if(r<=He||e<He)throw new Error("Expected power/modulo > 0");if(r===Be)return He;let n=Be;for(;e>He;)e&Be&&(n=n*t%r),t=t*t%r,e>>=Be;return n}function Ce(t,e,r){let n=t;for(;e-- >He;)n*=n,n%=r;return n}function es(t,e){if(t===He||e<=He)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=de(t,e),n=e,i=He,o=Be,s=Be,a=He;for(;r!==He;){let u=n/r,f=n%r,l=i-s*u,h=o-a*u;n=r,r=f,i=s,o=a,s=l,a=h}if(n!==Be)throw new Error("invert: does not exist");return de(i,e)}function Ym(t){let e=(t-Be)/en,r,n,i;for(r=t-Be,n=0;r%en===He;r/=en,n++);for(i=en;i<t&&Mc(i,e,t)!==t-Be;i++);if(n===1){let s=(t+Be)/Kc;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+Be)/en;return function(a,c){if(a.pow(c,e)===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),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let g=1;for(let p=a.sqr(h);g<u&&!a.eql(p,a.ONE);g++)p=a.sqr(p);let d=a.pow(f,Be<<BigInt(u-g-1));f=a.sqr(d),l=a.mul(l,d),h=a.mul(h,f),u=g}return l}}function Xm(t){if(t%Kc===Gm){let e=(t+Be)/Kc;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%Ol===Ul){let e=(t-Ul)/Ol;return function(n,i){let o=n.mul(i,en),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,en),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 t%$m,Ym(t)}var Fl=(t,e)=>(de(t,e)&Be)===Be,Zm=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Vc(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=Zm.reduce((n,i)=>(n[i]="function",n),e);return mt(t,r)}function Qm(t,e,r){if(r<He)throw new Error("Expected power > 0");if(r===He)return t.ONE;if(r===Be)return e;let n=t.ONE,i=e;for(;r>He;)r&Be&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Be;return n}function jm(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function Hc(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function ts(t,e,r=!1,n={}){if(t<=He)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Hc(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=Xm(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Si(i),ZERO:He,ONE:Be,create:c=>de(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return He<=c&&c<t},is0:c=>c===He,isOdd:c=>(c&Be)===Be,neg:c=>de(-c,t),eql:(c,u)=>c===u,sqr:c=>de(c*c,t),add:(c,u)=>de(c+u,t),sub:(c,u)=>de(c-u,t),mul:(c,u)=>de(c*u,t),pow:(c,u)=>Qm(a,c,u),div:(c,u)=>de(c*es(u,t),t),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>es(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>jm(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>r?nr(c,o):Br(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?_t(c):rr(c)}});return Object.freeze(a)}function Kl(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 Ml(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 qc(t){let e=Ml(t);return e+Math.ceil(e/2)}function Vl(t,e,r=!1){let n=t.length,i=Ml(e),o=qc(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?rr(t):_t(t),a=de(s,e-Be)+Be;return r?nr(a,i):Br(a,i)}var ex=BigInt(0),zc=BigInt(1);function rs(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>ex;)o&zc&&(s=s.add(a)),a=a.double(),o>>=zc;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 h=1;h<a;h++)f=f.add(u),c.push(f);u=f.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),u=t.ZERO,f=t.BASE,l=BigInt(2**i-1),h=2**i,g=BigInt(i);for(let d=0;d<a;d++){let p=d*c,y=Number(s&l);s>>=g,y>c&&(y-=h,s+=zc);let m=p,b=p+Math.abs(y)-1,x=d%2!==0,S=y<0;y===0?f=f.add(r(x,o[m])):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 Ci(t){return Vc(t.Fp),mt(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Hc(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var kt=BigInt(0),ht=BigInt(1),ns=BigInt(2),tx=BigInt(8),rx={zip215:!0};function nx(t){let e=Ci(t);return mt(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function is(t){let e=nx(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,u=ns<<BigInt(a*8)-ht,f=r.create,l=e.uvRatio||((k,C)=>{try{return{isValid:!0,value:r.sqrt(k*r.inv(C))}}catch{return{isValid:!1,value:kt}}}),h=e.adjustScalarBytes||(k=>k),g=e.domain||((k,C,P)=>{if(C.length||P)throw new Error("Contexts/pre-hash are not supported");return k}),d=k=>typeof k=="bigint"&&kt<k,p=(k,C)=>d(k)&&d(C)&&k<C,y=k=>k===kt||p(k,u);function m(k,C){if(p(k,C))return k;throw new Error(`Expected valid scalar < ${C}, got ${typeof k} ${k}`)}function b(k){return k===kt?k:m(k,n)}let x=new Map;function S(k){if(!(k instanceof v))throw new Error("ExtendedPoint expected")}class v{constructor(C,P,K,H){if(this.ex=C,this.ey=P,this.ez=K,this.et=H,!y(C))throw new Error("x required");if(!y(P))throw new Error("y required");if(!y(K))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(C){if(C instanceof v)throw new Error("extended point not allowed");let{x:P,y:K}=C||{};if(!y(P)||!y(K))throw new Error("invalid affine point");return new v(P,K,ht,f(P*K))}static normalizeZ(C){let P=r.invertBatch(C.map(K=>K.ez));return C.map((K,H)=>K.toAffine(P[H])).map(v.fromAffine)}_setWindowSize(C){this._WINDOW_SIZE=C,x.delete(this)}assertValidity(){let{a:C,d:P}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:H,ez:Z,et:j}=this,oe=f(K*K),J=f(H*H),te=f(Z*Z),we=f(te*te),xe=f(oe*C),$e=f(te*f(xe+J)),Ye=f(we+f(P*f(oe*J)));if($e!==Ye)throw new Error("bad point: equation left != right (1)");let Ke=f(K*H),Je=f(Z*j);if(Ke!==Je)throw new Error("bad point: equation left != right (2)")}equals(C){S(C);let{ex:P,ey:K,ez:H}=this,{ex:Z,ey:j,ez:oe}=C,J=f(P*oe),te=f(Z*H),we=f(K*oe),xe=f(j*H);return J===te&&we===xe}is0(){return this.equals(v.ZERO)}negate(){return new v(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:C}=e,{ex:P,ey:K,ez:H}=this,Z=f(P*P),j=f(K*K),oe=f(ns*f(H*H)),J=f(C*Z),te=P+K,we=f(f(te*te)-Z-j),xe=J+j,$e=xe-oe,Ye=J-j,Ke=f(we*$e),Je=f(xe*Ye),Xt=f(we*Ye),Ur=f($e*xe);return new v(Ke,Je,Ur,Xt)}add(C){S(C);let{a:P,d:K}=e,{ex:H,ey:Z,ez:j,et:oe}=this,{ex:J,ey:te,ez:we,et:xe}=C;if(P===BigInt(-1)){let mu=f((Z-H)*(te+J)),xu=f((Z+H)*(te-J)),Xs=f(xu-mu);if(Xs===kt)return this.double();let bu=f(j*ns*xe),wu=f(oe*ns*we),vu=wu+bu,Eu=xu+mu,Su=wu-bu,n2=f(vu*Xs),i2=f(Eu*Su),o2=f(vu*Su),s2=f(Xs*Eu);return new v(n2,i2,s2,o2)}let $e=f(H*J),Ye=f(Z*te),Ke=f(oe*K*xe),Je=f(j*we),Xt=f((H+Z)*(J+te)-$e-Ye),Ur=Je-Ke,si=Je+Ke,gu=f(Ye-P*$e),J1=f(Xt*Ur),e2=f(si*gu),t2=f(Xt*gu),r2=f(Ur*si);return new v(J1,e2,r2,t2)}subtract(C){return this.add(C.negate())}wNAF(C){return D.wNAFCached(this,x,C,v.normalizeZ)}multiply(C){let{p:P,f:K}=this.wNAF(m(C,n));return v.normalizeZ([P,K])[0]}multiplyUnsafe(C){let P=b(C);return P===kt?B:this.equals(B)||P===ht?this:this.equals(E)?this.wNAF(P).p:D.unsafeLadder(this,P)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return D.unsafeLadder(this,n).is0()}toAffine(C){let{ex:P,ey:K,ez:H}=this,Z=this.is0();C==null&&(C=Z?tx:r.inv(H));let j=f(P*C),oe=f(K*C),J=f(H*C);if(Z)return{x:kt,y:ht};if(J!==ht)throw new Error("invZ was invalid");return{x:j,y:oe}}clearCofactor(){let{h:C}=e;return C===ht?this:this.multiplyUnsafe(C)}static fromHex(C,P=!1){let{d:K,a:H}=e,Z=r.BYTES;C=Se("pointHex",C,Z);let j=C.slice(),oe=C[Z-1];j[Z-1]=oe&-129;let J=_t(j);J===kt||(P?m(J,u):m(J,r.ORDER));let te=f(J*J),we=f(te-ht),xe=f(K*te-H),{isValid:$e,value:Ye}=l(we,xe);if(!$e)throw new Error("Point.fromHex: invalid y coordinate");let Ke=(Ye&ht)===ht,Je=(oe&128)!==0;if(!P&&Ye===kt&&Je)throw new Error("Point.fromHex: x=0 and x_0=1");return Je!==Ke&&(Ye=f(-Ye)),v.fromAffine({x:Ye,y:J})}static fromPrivateKey(C){return O(C).point}toRawBytes(){let{x:C,y:P}=this.toAffine(),K=nr(P,r.BYTES);return K[K.length-1]|=C&ht?128:0,K}toHex(){return tr(this.toRawBytes())}}v.BASE=new v(e.Gx,e.Gy,ht,f(e.Gx*e.Gy)),v.ZERO=new v(kt,ht,ht,kt);let{BASE:E,ZERO:B}=v,D=rs(v,a*8);function U(k){return de(k,n)}function F(k){return U(_t(k))}function O(k){let C=a;k=Se("private key",k,C);let P=Se("hashed private key",o(k),2*C),K=h(P.slice(0,C)),H=P.slice(C,2*C),Z=F(K),j=E.multiply(Z),oe=j.toRawBytes();return{head:K,prefix:H,scalar:Z,point:j,pointBytes:oe}}function M(k){return O(k).pointBytes}function G(k=new Uint8Array,...C){let P=ir(...C);return F(o(g(P,Se("context",k),!!i)))}function Q(k,C,P={}){k=Se("message",k),i&&(k=i(k));let{prefix:K,scalar:H,pointBytes:Z}=O(C),j=G(P.context,K,k),oe=E.multiply(j).toRawBytes(),J=G(P.context,oe,Z,k),te=U(j+J*H);b(te);let we=ir(oe,nr(te,r.BYTES));return Se("result",we,a*2)}let I=rx;function R(k,C,P,K=I){let{context:H,zip215:Z}=K,j=r.BYTES;k=Se("signature",k,2*j),C=Se("message",C),i&&(C=i(C));let oe=_t(k.slice(j,2*j)),J,te,we;try{J=v.fromHex(P,Z),te=v.fromHex(k.slice(0,j),Z),we=E.multiplyUnsafe(oe)}catch{return!1}if(!Z&&J.isSmallOrder())return!1;let xe=G(H,te.toRawBytes(),J.toRawBytes(),C);return te.add(J.multiplyUnsafe(xe)).subtract(we).clearCofactor().equals(v.ZERO)}return E._setWindowSize(8),{CURVE:e,getPublicKey:M,sign:Q,verify:R,ExtendedPoint:v,utils:{getExtendedPublicKey:O,randomPrivateKey:()=>s(r.BYTES),precompute(k=8,C=v.BASE){return C._setWindowSize(k),C.multiply(BigInt(3)),C}}}}var Ai=BigInt(0),Gc=BigInt(1);function ix(t){return mt(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function Hl(t){let e=ix(t),{P:r}=e,n=x=>de(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>Mc(x,r-BigInt(2),r));function u(x,S,v){let E=n(x*(S-v));return S=n(S-E),v=n(v+E),[S,v]}function f(x){if(typeof x=="bigint"&&Ai<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function h(x,S){let v=f(x),E=f(S),B=v,D=Gc,U=Ai,F=v,O=Gc,M=Ai,G;for(let I=BigInt(i-1);I>=Ai;I--){let R=E>>I&Gc;M^=R,G=u(M,D,F),D=G[0],F=G[1],G=u(M,U,O),U=G[0],O=G[1],M=R;let _=D+U,k=n(_*_),C=D-U,P=n(C*C),K=k-P,H=F+O,Z=F-O,j=n(Z*_),oe=n(H*C),J=j+oe,te=j-oe;F=n(J*J),O=n(B*n(te*te)),D=n(k*P),U=n(K*(k+n(l*K)))}G=u(M,D,F),D=G[0],F=G[1],G=u(M,U,O),U=G[0],O=G[1];let Q=c(U);return n(D*Q)}function g(x){return nr(n(x),o)}function d(x){let S=Se("u coordinate",x,o);return s===o&&(S[s-1]&=127),_t(S)}function p(x){let S=Se("scalar",x);if(S.length!==o&&S.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${S.length}`);return _t(a(S))}function y(x,S){let v=d(S),E=p(x),B=h(v,E);if(B===Ai)throw new Error("Invalid private or public key received");return g(B)}let m=g(e.Gu);function b(x){return y(x,m)}return{scalarMult:y,scalarMultBase:b,getSharedSecret:(x,S)=>y(x,S),getPublicKey:x=>b(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:m}}var Di=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),ql=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),FA=BigInt(0),ox=BigInt(1),Wc=BigInt(2),sx=BigInt(5),zl=BigInt(10),ax=BigInt(20),cx=BigInt(40),Gl=BigInt(80);function Wl(t){let e=Di,n=t*t%e*t%e,i=Ce(n,Wc,e)*n%e,o=Ce(i,ox,e)*t%e,s=Ce(o,sx,e)*o%e,a=Ce(s,zl,e)*s%e,c=Ce(a,ax,e)*a%e,u=Ce(c,cx,e)*c%e,f=Ce(u,Gl,e)*u%e,l=Ce(f,Gl,e)*u%e,h=Ce(l,zl,e)*s%e;return{pow_p_5_8:Ce(h,Wc,e)*t%e,b2:n}}function $l(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function ux(t,e){let r=Di,n=de(e*e*e,r),i=de(n*n*e,r),o=Wl(t*i).pow_p_5_8,s=de(t*n*o,r),a=de(e*s*s,r),c=s,u=de(s*ql,r),f=a===t,l=a===de(-t,r),h=a===de(-t*ql,r);return f&&(s=c),(l||h)&&(s=u),Fl(s,r)&&(s=de(-s,r)),{isValid:f||l,value:s}}var or=ts(Di,void 0,!0),$c={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:or,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Pc,randomBytes:jr,adjustScalarBytes:$l,uvRatio:ux},Un=is($c);function Yl(t,e,r){if(e.length>255)throw new Error("Context is too big");return Yo(Rc("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var KA=is({...$c,domain:Yl}),MA=is({...$c,domain:Yl,prehash:Pc}),Bi=Hl({P:Di,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Di,{pow_p_5_8:r,b2:n}=Wl(t);return de(Ce(r,BigInt(3),e)*n,e)},adjustScalarBytes:$l,randomBytes:jr});var fx=(or.ORDER+BigInt(3))/BigInt(8),VA=or.pow(Wc,fx),HA=or.sqrt(or.neg(or.ONE)),qA=(or.ORDER-BigInt(5))/BigInt(8),zA=BigInt(486662);var GA=Kl(or,or.neg(BigInt(486664)));var WA=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),$A=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),YA=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),XA=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var ZA=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var os=class extends Nn{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ei(e);let n=Cr(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return Ln(this),this.iHash.update(e),this}digestInto(e){Ln(this),kc(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},On=(t,e,r)=>new os(t,e).update(r).digest();On.create=(t,e)=>new os(t,e);function Zl(t,e,r){return Ei(t),r===void 0&&(r=new Uint8Array(t.outputLen)),On(t,Cr(r),Cr(e))}var Yc=new Uint8Array([0]),Xl=new Uint8Array;function Ql(t,e,r,n=32){if(Ei(t),Go(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=Xl);let o=new Uint8Array(i*t.outputLen),s=On.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let u=0;u<i;u++)Yc[0]=u+1,a.update(u===0?Xl:c).update(r).update(Yc).digestInto(c),o.set(c,t.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),Yc.fill(0),o.slice(0,n)}var lx=(t,e,r)=>t&e^~t&r,hx=(t,e,r)=>t&e^t&r^e&r,dx=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]),Ir=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Tr=new Uint32Array(64),Xc=class extends Pn{constructor(){super(64,32,8,!1),this.A=Ir[0]|0,this.B=Ir[1]|0,this.C=Ir[2]|0,this.D=Ir[3]|0,this.E=Ir[4]|0,this.F=Ir[5]|0,this.G=Ir[6]|0,this.H=Ir[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)Tr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=Tr[l-15],g=Tr[l-2],d=Tt(h,7)^Tt(h,18)^h>>>3,p=Tt(g,17)^Tt(g,19)^g>>>10;Tr[l]=p+Tr[l-7]+d+Tr[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 h=Tt(a,6)^Tt(a,11)^Tt(a,25),g=f+h+lx(a,c,u)+dx[l]+Tr[l]|0,p=(Tt(n,2)^Tt(n,13)^Tt(n,22))+hx(n,i,o)|0;f=u,u=c,c=a,a=s+g|0,s=o,o=i,i=n,n=g+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(){Tr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Fn=Xo(()=>new Xc);var Zc={hashSHA256(t){return Fn(t)},getHKDF(t,e){let r=Zl(Fn,e,t),i=Ql(Fn,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let t=Bi.utils.randomPrivateKey();return{publicKey:Bi.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:Bi.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return Bi.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return _c(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){return _c(n,e,r).decrypt(t,i)}};var jl=Zc;var Kn=t=>{let e=Me(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};Kn.bytes=2;var Ii=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)};Ii.bytes=2;function Jl(t){return he([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function eh(t){return he([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function th(t){return he([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function rh(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:se(0)}}function nh(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 ih(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:se(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var sh=16;function ah(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=t.encrypt(n.subarray(i,o),t.session);e?.encryptedPackets.increment(),yield he([Kn(s.byteLength),s],2+s.byteLength)}}}function ch(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-sh<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-sh),{plaintext:c,valid:u}=t.decrypt(s,t.session,a);if(!u)throw e?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");e?.decryptedPackets.increment(),yield c}}}var WI=Xe(Li(),1),$I=Xe(Cd(),1);var pv=Xe(be(),1);var E0={};fe(E0,{Ed25519PrivateKey:()=>an,Ed25519PublicKey:()=>Ui,generateKeyPair:()=>Vw,generateKeyPairFromSeed:()=>kd,unmarshalEd25519PrivateKey:()=>Kw,unmarshalEd25519PublicKey:()=>Mw});var zn=32,ur=64,Cs=32;function Ad(){let t=Un.utils.randomPrivateKey(),e=Un.getPublicKey(t);return{privateKey:Td(t,e),publicKey:e}}function Dd(t){if(t.length!==Cs)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=Un.getPublicKey(e);return{privateKey:Td(e,r),publicKey:r}}function Bd(t,e){let r=t.subarray(0,Cs);return Un.sign(e instanceof Uint8Array?e:e.subarray(),r)}function Id(t,e,r){return Un.verify(e,r instanceof Uint8Array?r:r.subarray(),t)}function Td(t,e){let r=new Uint8Array(ur);for(let n=0;n<Cs;n++)r[n]=t[n],r[Cs+n]=e[n];return r}var ft={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 b0={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function w0(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=ft.get();r*=8;async function c(l,h){let g=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=ve(h));let y;if(h.length===0){y=await a.subtle.importKey("jwk",b0,{name:"AES-GCM"},!0,["encrypt"]);try{let b={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(b,x,{name:e,length:r},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",b0,{name:"AES-GCM"},!0,["encrypt"])}}else{let b={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(b,x,{name:e,length:r},!0,["encrypt"])}let m=await a.subtle.encrypt(p,y,l);return he([g,p.iv,new Uint8Array(m)])}async function u(l,h){let g=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),y={name:e,iv:d};typeof h=="string"&&(h=ve(h));let m;if(h.length===0)try{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},S=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,S,{name:e,length:r},!0,["decrypt"])}catch{m=await a.subtle.importKey("jwk",b0,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:g,iterations:s,hash:{name:i}},S=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(x,S,{name:e,length:r},!0,["decrypt"])}let b=await a.subtle.decrypt(y,m,p);return new Uint8Array(b)}return{encrypt:c,decrypt:u}}async function Gn(t,e){let n=await w0().encrypt(t,e);return gn.encode(n)}var Te;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(Te||(Te={}));var v0;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(v0||(v0={}));(function(t){t.codec=()=>$r(v0)})(Te||(Te={}));var Wt;(function(t){let e;t.codec=()=>(e==null&&(e=It((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Te.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=Te.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Bt(r,t.codec()),t.decode=r=>Dt(r,t.codec())})(Wt||(Wt={}));var $t;(function(t){let e;t.codec=()=>(e==null&&(e=It((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),Te.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=Te.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>Bt(r,t.codec()),t.decode=r=>Dt(r,t.codec())})($t||($t={}));var Ui=class{_key;constructor(e){this._key=Wn(e,zn)}async verify(e,r){return Id(this._key,r,e)}marshal(){return this._key}get bytes(){return Wt.encode({Type:Te.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Oe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ze.digest(this.bytes);return e}},an=class{_key;_publicKey;constructor(e,r){this._key=Wn(e,ur),this._publicKey=Wn(r,zn)}async sign(e){return Bd(this._key,e)}get public(){return new Ui(this._publicKey)}marshal(){return this._key}get bytes(){return $t.encode({Type:Te.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Oe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ze.digest(this.bytes);return e}async id(){let e=gr.digest(this.public.bytes);return _e.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Gn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Kw(t){if(t.length>ur){t=Wn(t,ur+zn);let n=t.subarray(0,ur),i=t.subarray(ur,t.length);return new an(n,i)}t=Wn(t,ur);let e=t.subarray(0,ur),r=t.subarray(zn);return new an(e,r)}function Mw(t){return t=Wn(t,zn),new Ui(t)}async function Vw(){let{privateKey:t,publicKey:e}=Ad();return new an(t,e)}async function kd(t){let{privateKey:e,publicKey:r}=Dd(t);return new an(e,r)}function Wn(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 wB=Xe(Fe(),1),vB=Xe(ws(),1),Rd=Xe(be(),1);function Nt(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=he([new Uint8Array(e-r.length),r])}return ae(r,"base64url")}function dt(t){let e=Ld(t);return new Rd.default.jsbn.BigInteger(ae(e,"base16"),16)}function Ld(t,e){let r=ve(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=he([new Uint8Array(e-r.length),r])}return r}var Hw={"P-256":256,"P-384":384,"P-521":521},qw=Object.keys(Hw),RB=qw.join(" / ");var B0={};fe(B0,{MAX_KEY_SIZE:()=>Mi,RsaPrivateKey:()=>$n,RsaPublicKey:()=>Ki,fromJwk:()=>ev,generateKeyPair:()=>tv,unmarshalRsaPrivateKey:()=>jw,unmarshalRsaPublicKey:()=>Jw});var Fi=Xe(be(),1);var gI=Xe(Fd(),1);function Ds(t){if(isNaN(t)||t<=0)throw new W("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return jr(t)}var jB=Xe(Ss(),1),A0=Xe(be(),1);function Kd(t,e){return e.map(r=>dt(t[r]))}function Md(t){return A0.default.pki.setRsaPrivateKey(...Kd(t,["n","e","d","p","q","dp","dq","qi"]))}function Vd(t){return A0.default.pki.setRsaPublicKey(...Kd(t,["n","e"]))}var un={};fe(un,{jwkToPkcs1:()=>$w,jwkToPkix:()=>Xw,pkcs1ToJwk:()=>Ww,pkixToJwk:()=>Yw});var tI=Xe(Li(),1),rI=Xe(Ss(),1);var fr=Xe(be(),1);function Ww(t){let e=fr.default.asn1.fromDer(ae(t,"ascii")),r=fr.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Nt(r.n),e:Nt(r.e),d:Nt(r.d),p:Nt(r.p),q:Nt(r.q),dp:Nt(r.dP),dq:Nt(r.dQ),qi:Nt(r.qInv),alg:"RS256"}}function $w(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=fr.default.pki.privateKeyToAsn1({n:dt(t.n),e:dt(t.e),d:dt(t.d),p:dt(t.p),q:dt(t.q),dP:dt(t.dp),dQ:dt(t.dq),qInv:dt(t.qi)});return ve(fr.default.asn1.toDer(e).getBytes(),"ascii")}function Yw(t){let e=fr.default.asn1.fromDer(ae(t,"ascii")),r=fr.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Nt(r.n),e:Nt(r.e)}}function Xw(t){if(t.n==null||t.e==null)throw new W("JWK was missing components","ERR_INVALID_PARAMETERS");let e=fr.default.pki.publicKeyToAsn1({n:dt(t.n),e:dt(t.e)});return ve(fr.default.asn1.toDer(e).getBytes(),"ascii")}async function Hd(t){let e=await ft.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 Gd(e);return{privateKey:r[0],publicKey:r[1]}}async function D0(t){let r=[await ft.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await Zw(t)],n=await Gd({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function qd(t,e){let r=await ft.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ft.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function zd(t,e,r){let n=await ft.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ft.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r instanceof Uint8Array?r:r.subarray())}async function Gd(t){if(t.privateKey==null||t.publicKey==null)throw new W("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ft.get().subtle.exportKey("jwk",t.privateKey),ft.get().subtle.exportKey("jwk",t.publicKey)])}async function Zw(t){return ft.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 Wd(t,e,r,n){let i=e?Vd(t):Md(t),o=ae(r instanceof Uint8Array?r:r.subarray(),"ascii"),s=n(o,i);return ve(s,"ascii")}function $d(t,e){return Wd(t,!0,e,(r,n)=>n.encrypt(r))}function Yd(t,e){return Wd(t,!1,e,(r,n)=>n.decrypt(r))}function Bs(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 ve(t.n,"base64url").length*8}var Mi=8192,Ki=class{_key;constructor(e){this._key=e}async verify(e,r){return zd(this._key,r,e)}marshal(){return un.jwkToPkix(this._key)}get bytes(){return Wt.encode({Type:Te.RSA,Data:this.marshal()}).subarray()}encrypt(e){return $d(this._key,e)}equals(e){return Oe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ze.digest(this.bytes);return e}},$n=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return Ds(16)}async sign(e){return qd(this._key,e)}get public(){if(this._publicKey==null)throw new W("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Ki(this._publicKey)}decrypt(e){return Yd(this._key,e)}marshal(){return un.jwkToPkcs1(this._key)}get bytes(){return $t.encode({Type:Te.RSA,Data:this.marshal()}).subarray()}equals(e){return Oe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ze.digest(this.bytes);return e}async id(){let e=await this.public.hash();return ae(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new Fi.default.util.ByteBuffer(this.marshal()),i=Fi.default.asn1.fromDer(n),o=Fi.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Fi.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return Gn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function jw(t){let e=un.pkcs1ToJwk(t);if(Bs(e)>Mi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await D0(e);return new $n(r.privateKey,r.publicKey)}function Jw(t){let e=un.pkixToJwk(t);if(Bs(e)>Mi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Ki(e)}async function ev(t){if(Bs(t)>Mi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await D0(t);return new $n(e.privateKey,e.publicKey)}async function tv(t){if(t>Mi)throw new W("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Hd(t);return new $n(e.privateKey,e.publicKey)}var k0={};fe(k0,{Secp256k1PrivateKey:()=>Hi,Secp256k1PublicKey:()=>Vi,generateKeyPair:()=>dv,unmarshalSecp256k1PrivateKey:()=>lv,unmarshalSecp256k1PublicKey:()=>hv});function rv(t){let e=Ci(t);mt(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:r,Fp:n,a:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:nv,hexToBytes:iv}=Jo,fn={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=fn;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:nv(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=fn,r=typeof t=="string"?iv(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=fn._parseInt(r.subarray(2)),{d:s,l:a}=fn._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=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=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},lr=BigInt(0),wt=BigInt(1),EI=BigInt(2),Xd=BigInt(3),SI=BigInt(4);function ov(t){let e=rv(t),{Fp:r}=e,n=e.toBytes||((d,p,y)=>{let m=p.toAffine();return ir(Uint8Array.from([4]),r.toBytes(m.x),r.toBytes(m.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),y=r.fromBytes(p.subarray(0,r.BYTES)),m=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:y,y:m}});function o(d){let{a:p,b:y}=e,m=r.sqr(d),b=r.mul(m,d);return r.add(r.add(b,r.mul(d,p)),y)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&lr<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:y,wrapPrivateKey:m,n:b}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=tr(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(y*2,"0")}let x;try{x=typeof d=="bigint"?d:rr(Se("private key",d,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof d}`)}return m&&(x=de(x,b)),a(x),x}let u=new Map;function f(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,y,m){if(this.px=p,this.py=y,this.pz=m,p==null||!r.isValid(p))throw new Error("x required");if(y==null||!r.isValid(y))throw new Error("y required");if(m==null||!r.isValid(m))throw new Error("z required")}static fromAffine(p){let{x:y,y:m}=p||{};if(!p||!r.isValid(y)||!r.isValid(m))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(m)?l.ZERO:new l(y,m,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let y=r.invertBatch(p.map(m=>m.pz));return p.map((m,b)=>m.toAffine(y[b])).map(l.fromAffine)}static fromHex(p){let y=l.fromAffine(i(Se("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(e.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 m=r.sqr(y),b=o(p);if(!r.eql(m,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:m,pz:b}=this,{px:x,py:S,pz:v}=p,E=r.eql(r.mul(y,v),r.mul(x,b)),B=r.eql(r.mul(m,v),r.mul(S,b));return E&&B}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:y}=e,m=r.mul(y,Xd),{px:b,py:x,pz:S}=this,v=r.ZERO,E=r.ZERO,B=r.ZERO,D=r.mul(b,b),U=r.mul(x,x),F=r.mul(S,S),O=r.mul(b,x);return O=r.add(O,O),B=r.mul(b,S),B=r.add(B,B),v=r.mul(p,B),E=r.mul(m,F),E=r.add(v,E),v=r.sub(U,E),E=r.add(U,E),E=r.mul(v,E),v=r.mul(O,v),B=r.mul(m,B),F=r.mul(p,F),O=r.sub(D,F),O=r.mul(p,O),O=r.add(O,B),B=r.add(D,D),D=r.add(B,D),D=r.add(D,F),D=r.mul(D,O),E=r.add(E,D),F=r.mul(x,S),F=r.add(F,F),D=r.mul(F,O),v=r.sub(v,D),B=r.mul(F,U),B=r.add(B,B),B=r.add(B,B),new l(v,E,B)}add(p){f(p);let{px:y,py:m,pz:b}=this,{px:x,py:S,pz:v}=p,E=r.ZERO,B=r.ZERO,D=r.ZERO,U=e.a,F=r.mul(e.b,Xd),O=r.mul(y,x),M=r.mul(m,S),G=r.mul(b,v),Q=r.add(y,m),I=r.add(x,S);Q=r.mul(Q,I),I=r.add(O,M),Q=r.sub(Q,I),I=r.add(y,b);let R=r.add(x,v);return I=r.mul(I,R),R=r.add(O,G),I=r.sub(I,R),R=r.add(m,b),E=r.add(S,v),R=r.mul(R,E),E=r.add(M,G),R=r.sub(R,E),D=r.mul(U,I),E=r.mul(F,G),D=r.add(E,D),E=r.sub(M,D),D=r.add(M,D),B=r.mul(E,D),M=r.add(O,O),M=r.add(M,O),G=r.mul(U,G),I=r.mul(F,I),M=r.add(M,G),G=r.sub(O,G),G=r.mul(U,G),I=r.add(I,G),O=r.mul(M,I),B=r.add(B,O),O=r.mul(R,I),E=r.mul(Q,E),E=r.sub(E,O),O=r.mul(Q,M),D=r.mul(R,D),D=r.add(D,O),new l(E,B,D)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return g.wNAFCached(this,u,p,y=>{let m=r.invertBatch(y.map(b=>b.pz));return y.map((b,x)=>b.toAffine(m[x])).map(l.fromAffine)})}multiplyUnsafe(p){let y=l.ZERO;if(p===lr)return y;if(a(p),p===wt)return this;let{endo:m}=e;if(!m)return g.unsafeLadder(this,p);let{k1neg:b,k1:x,k2neg:S,k2:v}=m.splitScalar(p),E=y,B=y,D=this;for(;x>lr||v>lr;)x&wt&&(E=E.add(D)),v&wt&&(B=B.add(D)),D=D.double(),x>>=wt,v>>=wt;return b&&(E=E.negate()),S&&(B=B.negate()),B=new l(r.mul(B.px,m.beta),B.py,B.pz),E.add(B)}multiply(p){a(p);let y=p,m,b,{endo:x}=e;if(x){let{k1neg:S,k1:v,k2neg:E,k2:B}=x.splitScalar(y),{p:D,f:U}=this.wNAF(v),{p:F,f:O}=this.wNAF(B);D=g.constTimeNegate(S,D),F=g.constTimeNegate(E,F),F=new l(r.mul(F.px,x.beta),F.py,F.pz),m=D.add(F),b=U.add(O)}else{let{p:S,f:v}=this.wNAF(y);m=S,b=v}return l.normalizeZ([m,b])[0]}multiplyAndAddUnsafe(p,y,m){let b=l.BASE,x=(v,E)=>E===lr||E===wt||!v.equals(b)?v.multiplyUnsafe(E):v.multiply(E),S=x(this,y).add(x(p,m));return S.is0()?void 0:S}toAffine(p){let{px:y,py:m,pz:b}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(b));let S=r.mul(y,p),v=r.mul(m,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:v}}isTorsionFree(){let{h:p,isTorsionFree:y}=e;if(p===wt)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}=e;return p===wt?this:y?y(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return tr(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,g=rs(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function sv(t){let e=Ci(t);return mt(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function Zd(t){let e=sv(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(I){return lr<I&&I<r.ORDER}function a(I){return de(I,n)}function c(I){return es(I,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:h}=ov({...e,toBytes(I,R,_){let k=R.toAffine(),C=r.toBytes(k.x),P=ir;return _?P(Uint8Array.from([R.hasEvenY()?2:3]),C):P(Uint8Array.from([4]),C,r.toBytes(k.y))},fromBytes(I){let R=I.length,_=I[0],k=I.subarray(1);if(R===i&&(_===2||_===3)){let C=rr(k);if(!s(C))throw new Error("Point is not on curve");let P=l(C),K=r.sqrt(P),H=(K&wt)===wt;return(_&1)===1!==H&&(K=r.neg(K)),{x:C,y:K}}else if(R===o&&_===4){let C=r.fromBytes(k.subarray(0,r.BYTES)),P=r.fromBytes(k.subarray(r.BYTES,2*r.BYTES));return{x:C,y:P}}else throw new Error(`Point of length ${R} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),g=I=>tr(Br(I,e.nByteLength));function d(I){let R=n>>wt;return I>R}function p(I){return d(I)?a(-I):I}let y=(I,R,_)=>rr(I.slice(R,_));class m{constructor(R,_,k){this.r=R,this.s=_,this.recovery=k,this.assertValidity()}static fromCompact(R){let _=e.nByteLength;return R=Se("compactSignature",R,_*2),new m(y(R,0,_),y(R,_,2*_))}static fromDER(R){let{r:_,s:k}=fn.toSig(Se("DER",R));return new m(_,k)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(R){return new m(this.r,this.s,R)}recoverPublicKey(R){let{r:_,s:k,recovery:C}=this,P=B(Se("msgHash",R));if(C==null||![0,1,2,3].includes(C))throw new Error("recovery id invalid");let K=C===2||C===3?_+e.n:_;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let H=C&1?"03":"02",Z=u.fromHex(H+g(K)),j=c(K),oe=a(-P*j),J=a(k*j),te=u.BASE.multiplyAndAddUnsafe(Z,oe,J);if(!te)throw new Error("point at infinify");return te.assertValidity(),te}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Jr(this.toDERHex())}toDERHex(){return fn.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Jr(this.toCompactHex())}toCompactHex(){return g(this.r)+g(this.s)}}let b={isValidPrivateKey(I){try{return f(I),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let I=qc(e.n);return Vl(e.randomBytes(I),e.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=I instanceof Uint8Array,_=typeof I=="string",k=(R||_)&&I.length;return R?k===i||k===o:_?k===2*i||k===2*o:I instanceof u}function v(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=e.bits2int||function(I){let R=rr(I),_=I.length*8-e.nBitLength;return _>0?R>>BigInt(_):R},B=e.bits2int_modN||function(I){return a(E(I))},D=Si(e.nBitLength);function U(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(lr<=I&&I<D))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Br(I,e.nByteLength)}function F(I,R,_=O){if(["recovered","canonical"].some(xe=>xe in _))throw new Error("sign() legacy options not supported");let{hash:k,randomBytes:C}=e,{lowS:P,prehash:K,extraEntropy:H}=_;P==null&&(P=!0),I=Se("msgHash",I),K&&(I=Se("prehashed msgHash",k(I)));let Z=B(I),j=f(R),oe=[U(j),U(Z)];if(H!=null){let xe=H===!0?C(r.BYTES):H;oe.push(Se("extraEntropy",xe))}let J=ir(...oe),te=Z;function we(xe){let $e=E(xe);if(!h($e))return;let Ye=c($e),Ke=u.BASE.multiply($e).toAffine(),Je=a(Ke.x);if(Je===lr)return;let Xt=a(Ye*a(te+Je*j));if(Xt===lr)return;let Ur=(Ke.x===Je?0:2)|Number(Ke.y&wt),si=Xt;return P&&d(Xt)&&(si=p(Xt),Ur^=1),new m(Je,si,Ur)}return{seed:J,k2sig:we}}let O={lowS:e.lowS,prehash:!1},M={lowS:e.lowS,prehash:!1};function G(I,R,_=O){let{seed:k,k2sig:C}=F(I,R,_),P=e;return Fc(P.hash.outputLen,P.nByteLength,P.hmac)(k,C)}u.BASE._setWindowSize(8);function Q(I,R,_,k=M){let C=I;if(R=Se("msgHash",R),_=Se("publicKey",_),"strict"in k)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:K}=k,H,Z;try{if(typeof C=="string"||C instanceof Uint8Array)try{H=m.fromDER(C)}catch(Ke){if(!(Ke instanceof fn.Err))throw Ke;H=m.fromCompact(C)}else if(typeof C=="object"&&typeof C.r=="bigint"&&typeof C.s=="bigint"){let{r:Ke,s:Je}=C;H=new m(Ke,Je)}else throw new Error("PARSE");Z=u.fromHex(_)}catch(Ke){if(Ke.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(P&&H.hasHighS())return!1;K&&(R=e.hash(R));let{r:j,s:oe}=H,J=B(R),te=c(oe),we=a(J*te),xe=a(j*te),$e=u.BASE.multiplyAndAddUnsafe(Z,we,xe)?.toAffine();return $e?a($e.x)===j:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:v,sign:G,verify:Q,ProjectivePoint:u,Signature:m,utils:b}}function av(t){return{hash:t,hmac:(e,...r)=>On(t,e,Yo(...r)),randomBytes:jr}}function Qd(t,e){let r=n=>Zd({...t,...av(n)});return Object.freeze({...r(e),create:r})}var ep=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),jd=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),cv=BigInt(1),I0=BigInt(2),Jd=(t,e)=>(t+e/I0)/e;function uv(t){let e=ep,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=t*t*t%e,f=u*u*t%e,l=Ce(f,r,e)*f%e,h=Ce(l,r,e)*f%e,g=Ce(h,I0,e)*u%e,d=Ce(g,i,e)*g%e,p=Ce(d,o,e)*d%e,y=Ce(p,a,e)*p%e,m=Ce(y,c,e)*y%e,b=Ce(m,a,e)*p%e,x=Ce(b,r,e)*f%e,S=Ce(x,s,e)*d%e,v=Ce(S,n,e)*u%e,E=Ce(v,I0,e);if(!T0.eql(T0.sqr(E),t))throw new Error("Cannot find square root");return E}var T0=ts(ep,void 0,void 0,{sqrt:uv}),hr=Qd({a:BigInt(0),b:BigInt(7),Fp:T0,n:jd,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=jd,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-cv*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=Jd(o*t,e),c=Jd(-n*t,e),u=de(t-a*r-c*i,e),f=de(-a*n-c*o,e),l=u>s,h=f>s;if(l&&(u=e-u),h&&(f=e-f),u>s||f>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:u,k2neg:h,k2:f}}}},Fn),RI=BigInt(0);var LI=hr.ProjectivePoint;function tp(){return hr.utils.randomPrivateKey()}async function rp(t,e){let{digest:r}=await Ze.digest(e instanceof Uint8Array?e:e.subarray());try{return hr.sign(r,t).toDERRawBytes()}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}async function np(t,e,r){try{let{digest:n}=await Ze.digest(r instanceof Uint8Array?r:r.subarray());return hr.verify(e,n,t)}catch(n){throw new W(String(n),"ERR_INVALID_INPUT")}}function ip(t){return hr.ProjectivePoint.fromHex(t).toRawBytes(!0)}function op(t){try{hr.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}function _0(t){try{hr.ProjectivePoint.fromHex(t)}catch(e){throw new W(String(e),"ERR_INVALID_PUBLIC_KEY")}}function sp(t){try{return hr.getPublicKey(t,!0)}catch(e){throw new W(String(e),"ERR_INVALID_PRIVATE_KEY")}}var Vi=class{_key;constructor(e){_0(e),this._key=e}async verify(e,r){return np(this._key,r,e)}marshal(){return ip(this._key)}get bytes(){return Wt.encode({Type:Te.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Oe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ze.digest(this.bytes);return e}},Hi=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??sp(e),op(this._key),_0(this._publicKey)}async sign(e){return rp(this._key,e)}get public(){return new Vi(this._publicKey)}marshal(){return this._key}get bytes(){return $t.encode({Type:Te.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Oe(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ze.digest(this.bytes);return e}async id(){let e=await this.public.hash();return ae(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return Gn(this.bytes,e);throw new W(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function lv(t){return new Hi(t)}function hv(t){return new Vi(t)}async function dv(){let t=tp();return new Hi(t)}var ln={rsa:B0,ed25519:E0,secp256k1:k0};function ap(t){let e=Object.keys(ln).join(" / ");return new W(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function cp(t){let e=Wt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Te.RSA:return ln.rsa.unmarshalRsaPublicKey(r);case Te.Ed25519:return ln.ed25519.unmarshalEd25519PublicKey(r);case Te.Secp256k1:return ln.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw ap(e.Type??"unknown")}}async function up(t){let e=$t.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case Te.RSA:return ln.rsa.unmarshalRsaPrivateKey(r);case Te.Ed25519:return ln.ed25519.unmarshalEd25519PrivateKey(r);case Te.Secp256k1:return ln.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw ap(e.Type??"RSA")}}var Is;(function(t){let e;t.codec=()=>(e==null&&(e=It((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return i})),e),t.encode=r=>Bt(r,t.codec()),t.decode=r=>Dt(r,t.codec())})(Is||(Is={}));var qi;(function(t){let e;t.codec=()=>(e==null&&(e=It((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),Is.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:se(0),identitySig:se(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=Is.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),e),t.encode=r=>Bt(r,t.codec()),t.decode=r=>Dt(r,t.codec())})(qi||(qi={}));async function fp(t,e,r){let n=await gv(t,lp(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return yv(t.publicKey,n,r)}function yv(t,e,r){return qi.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function gv(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await up(t.privateKey)).sign(e)}async function R0(t){return ba(t.identityKey)}function L0(t){return qi.decode(t)}function lp(t){let e=ve("noise-libp2p-static-key:");return he([e,t],e.length+t.length)}async function N0(t,e,r){let n=await ba(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=lp(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 cp(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function zi(t){return!(!(t instanceof Uint8Array)||t.length!==32)}var yt=Xe(gp(),1);yt.default.formatters.b=t=>t==null?"undefined":_e.baseEncode(t);yt.default.formatters.t=t=>t==null?"undefined":Et.baseEncode(t);yt.default.formatters.m=t=>t==null?"undefined":gn.baseEncode(t);yt.default.formatters.p=t=>t==null?"undefined":t.toString();yt.default.formatters.c=t=>t==null?"undefined":t.toString();yt.default.formatters.k=t=>t==null?"undefined":t.toString();yt.default.formatters.a=t=>t==null?"undefined":t.toString();function Tv(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function mp(t){let e=Tv(`${t}:trace`);return yt.default.enabled(`${t}:trace`)&&yt.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,yt.default)(`${t}:trace`)),Object.assign((0,yt.default)(t),{error:(0,yt.default)(`${t}:error`),trace:e})}var We=mp("libp2p:noise");var vt;xl?vt=We:vt=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function xp(t){vt(`LOCAL_STATIC_PUBLIC_KEY ${ae(t.publicKey,"hex")}`),vt(`LOCAL_STATIC_PRIVATE_KEY ${ae(t.privateKey,"hex")}`)}function P0(t){t?(vt(`LOCAL_PUBLIC_EPHEMERAL_KEY ${ae(t.publicKey,"hex")}`),vt(`LOCAL_PRIVATE_EPHEMERAL_KEY ${ae(t.privateKey,"hex")}`)):vt("Missing local ephemeral keys.")}function bp(t){vt(`REMOTE_STATIC_PUBLIC_KEY ${ae(t,"hex")}`)}function U0(t){vt(`REMOTE_EPHEMERAL_PUBLIC_KEY ${ae(t,"hex")}`)}function wp(t){t.cs1&&t.cs2?(vt(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${ae(t.cs1.k,"hex")}`),vt(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${ae(t.cs2.k,"hex")}`)):vt("Missing cipher state.")}var _v=0,kv=4294967295,Rv="Cipherstate has reached maximum n, a new handshake must be performed",ks=class{n;bytes;view;constructor(e=_v){this.n=e,this.bytes=se(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>kv)throw new Error(Rv)}};var Rs=class{crypto;constructor(e){this.crypto=e}encryptWithAd(e,r,n){let i=this.encrypt(e.k,e.n,r,n);return e.n.increment(),i}decryptWithAd(e,r,n,i){let{plaintext:o,valid:s}=this.decrypt(e.k,e.n,r,n,i);return s&&e.n.increment(),{plaintext:o,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return se(32)}isEmptyKey(e){let r=this.createEmptyKey();return Oe(r,e)}encrypt(e,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,e)}encryptAndHash(e,r){let n;return this.hasKey(e.cs)?n=this.encryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,n),n}decrypt(e,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,e,o);return s?{plaintext:s,valid:!0}:{plaintext:se(0),valid:!1}}decryptAndHash(e,r){let n,i=!0;return this.hasKey(e.cs)?{plaintext:n,valid:i}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:i}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return We.error(i),se(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(he([e,r],e.length+r.length))}mixKey(e,r){let[n,i]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(i),e.ck=n}initializeKey(e){return{k:e,n:new ks}}initializeSymmetric(e){let r=ve(e,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(e){if(e.length<=32){let r=se(32);return r.set(e),r}else return this.getHash(e,se(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,se(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,se(0),r),i=this.createEmptyKey(),o=se(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,se(0),r.ciphertext)}};var Ls=class extends Rs{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=se(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=se(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=se(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let o=e.e.publicKey;this.mixHash(e.ss,o);let s=this.encryptAndHash(e.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(e,r){e.e=this.crypto.generateX25519KeyPair();let n=e.e.publicKey;this.mixHash(e.ss,n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let i=e.s.publicKey,o=this.encryptAndHash(e.ss,i);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,i=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let o=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:u}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:u}}readMessageA(e,r){return zi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(zi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&zi(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&zi(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=se(32),s;return e?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let i;if(e.mc===0)i=this.writeMessageA(e.hs,r,n);else if(e.mc===1)i=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);i=s,e.h=o,e.cs1=a,e.cs2=c}else if(e.mc>2)if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,i}recvMessage(e,r){let n=se(0),i=!1;if(e.mc===0)({plaintext:n,valid:i}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:i}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:u}=this.readMessageC(e.hs,r);n=s,i=a,e.h=o,e.cs1=c,e.cs2=u}return e.mc++,{plaintext:n,valid:i}}};var Ns=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(e,r,n,i,o,s,a,c){this.isInitiator=e,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new Ls(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(xp(this.session.hs.s),this.isInitiator){We.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,se(0));await this.connection.write(Jl(e)),We.trace("Stage 0 - Initiator finished sending first message."),P0(this.session.hs.e)}else{We.trace("Stage 0 - Responder waiting to receive first message...");let e=rh((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Or("xx handshake stage 0 validation fail");We.trace("Stage 0 - Responder received first message."),U0(this.session.hs.re)}}async exchange(){if(this.isInitiator){We.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=nh((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Or("xx handshake stage 1 validation fail");We.trace("Stage 1 - Initiator received the message."),U0(this.session.hs.re),bp(this.session.hs.rs),We.trace("Initiator going to check remote's signature...");try{let i=L0(r);this.remotePeer=this.remotePeer||await R0(i),await N0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new ai(`Error occurred while verifying signed payload: ${o.message}`)}We.trace("All good with the signature!")}else{We.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(eh(e)),We.trace("Stage 1 - Responder sent the second handshake message with signed payload."),P0(this.session.hs.e)}}async finish(){if(this.isInitiator){We.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(th(e)),We.trace("Stage 2 - Initiator sent message with signed payload.")}else{We.trace("Stage 2 - Responder waiting for third handshake message...");let e=ih((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new Or("xx handshake stage 2 validation fail");We.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=L0(r);this.remotePeer=this.remotePeer||await R0(i),await N0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new ai(`Error occurred while verifying signed payload: ${o.message}`)}}wp(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,se(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,se(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new Or("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 vp(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 Ps=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(e={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=e;this.crypto=i??jl,this.extensions=n,this.metrics=s?vp(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??se(0)}async secureOutbound(e,r,n){let i=vi(r,{lengthEncoder:Kn,lengthDecoder:Ii,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(e,r,n){let i=vi(r,{lengthEncoder:Kn,lengthDecoder:Ii,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(e){let r=await fp(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:i,connection:o}=e,s=new Ns(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(e,r){let[n,i]=dl(),o=e.unwrap();return await yl(n,ah(r,this.metrics),o,s=>zr(s,{lengthDecoder:Ii}),ch(r,this.metrics),n),i}};function Ep(t={}){return()=>new Ps(t)}var j1=Xe(hu(),1);var G1=Xe(hu(),1);var du=Object.values(Ot).map(t=>t.decoder).reduce((t,e)=>t.or(e));function W1(t,e){let r=t.getConfiguration().certificates?.at(0);if(r==null||r.getFingerprints==null){e.log.trace("fetching fingerprint from local SDP");let i=t.localDescription;return i==null?void 0:K3(i.sdp)}if(e.log.trace("fetching fingerprint from local certificate"),r.getFingerprints().length===0)return;let n=r.getFingerprints()[0].value;if(n==null)throw Xa("","no fingerprint on local certificate");return n}var F3=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function K3(t){return t.match(F3)?.groups?.fingerprint}function M3(t){for(let e of t.protoNames())if(e.startsWith("ip"))return e.toUpperCase();return"IP6"}function $s(t){let r=t.stringTuples().filter(n=>n[0]===X1).map(n=>n[1])[0];if(r===void 0||r==="")throw yo(`Couldn't find a certhash component of multiaddr: ${t.toString()}`);return r}function pu(t){let e=du.decode(t);return G1.decode(e)}function V3(t){let e=pu($s(t)),r=yu(e.name),n=e.digest.reduce((o,s)=>o+s.toString(16).padStart(2,"0"),""),i=n.match(/.{1,2}/g);if(i==null)throw Xa(n,t.toString());return[`${r.toUpperCase()} ${i.join(":").toUpperCase()}`,n]}function yu(t){switch(t){case"sha1":return"sha-1";case"sha2-256":return"sha-256";case"sha2-512":return"sha-512";default:throw Sf(t)}}function H3(t,e){let{host:r,port:n}=t.toOptions(),i=M3(t),[o]=V3(t);return`v=0
29
+ `});var V1=me(()=>{M1();Gs();Or();fu();eo()});var du,jk,H1=me(()=>{m1();y1();g1();x1();b1();tu();w1();iu();v1();S1();R1();P1();U1();O1();V1();du={...X0,...Z0,...Q0,...j0,...J0,...eu,...ru,...nu,...ou,...su},jk={...lu,...hu}});function ii(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}var Xs=me(()=>{});function Zs(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?ii(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}var pu=me(()=>{Xs()});function z1(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var q1,mu,V3,Qs,yu=me(()=>{H1();pu();q1=z1("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),mu=z1("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=Zs(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),V3={utf8:q1,"utf-8":q1,hex:du.base16,latin1:mu,ascii:mu,binary:mu,...du},Qs=V3});var G1={};fe(G1,{toString:()=>H3});function H3(t,e="utf8"){let r=Qs[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 W1=me(()=>{yu()});var $1={};fe($1,{fromString:()=>q3});function q3(t,e="utf8"){let r=Qs[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ii(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}var Y1=me(()=>{yu();Xs()});var X1={};fe(X1,{concat:()=>z3});function z3(t,e){e||(e=t.reduce((i,o)=>i+o.length,0));let r=Zs(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return ii(r)}var Z1=me(()=>{pu();Xs()});var xu=te((lR,rm)=>{"use strict";var Q1=Yp(),oi=o1(),{names:ro}=a1(),{toString:js}=(W1(),io(G1)),{fromString:G3}=(Y1(),io($1)),{concat:W3}=(Z1(),io(X1)),si={};for(let t in ro){let e=t;si[ro[e]]=e}Object.freeze(si);function $3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return js(t,"base16")}function Y3(t){return G3(t,"base16")}function X3(t){if(!(t instanceof Uint8Array))throw new Error("must be passed a Uint8Array");return js(Q1.encode("base58btc",t)).slice(1)}function Z3(t){let e=t instanceof Uint8Array?js(t):t;return Q1.decode("z"+e)}function j1(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=oi.decode(t);if(!em(e))throw new Error(`multihash unknown function code: 0x${e.toString(16)}`);t=t.slice(oi.decode.bytes);let r=oi.decode(t);if(r<0)throw new Error(`multihash invalid length: ${r}`);if(t=t.slice(oi.decode.bytes),t.length!==r)throw new Error(`multihash length inconsistent: 0x${js(t,"base16")}`);return{code:e,name:si[e],length:r,digest:t}}function Q3(t,e,r){if(!t||e===void 0)throw new Error("multihash encode requires at least two args: digest, code");let n=J1(e);if(!(t instanceof Uint8Array))throw new Error("digest should be a Uint8Array");if(r==null&&(r=t.length),r&&t.length!==r)throw new Error("digest length should be equal to specified length.");let i=oi.encode(n),o=oi.encode(r);return W3([i,o,t],i.length+o.length+t.length)}function J1(t){let e=t;if(typeof t=="string"){if(ro[t]===void 0)throw new Error(`Unrecognized hash function named: ${t}`);e=ro[t]}if(typeof e!="number")throw new Error(`Hash function code should be a number. Got: ${e}`);if(si[e]===void 0&&!gu(e))throw new Error(`Unrecognized function code: ${e}`);return e}function gu(t){return t>0&&t<16}function em(t){return!!(gu(t)||si[t])}function tm(t){j1(t)}function j3(t){return tm(t),t.subarray(0,2)}rm.exports={names:ro,codes:si,toHexString:$3,fromHexString:Y3,toB58String:X3,fromB58String:Z3,decode:j1,encode:Q3,coerceCode:J1,isAppCode:gu,validate:tm,prefix:j3,isValidCode:em}});var c8={};fe(c8,{webRTC:()=>a8,webRTCDirect:()=>s8});var f8=Symbol.for("@libp2p/connection");var h8=Symbol.for("@libp2p/content-routing");var m8=Symbol.for("@libp2p/peer-discovery");var ku=Symbol.for("@libp2p/peer-id");var x8=Symbol.for("@libp2p/peer-routing");var Ru;(function(t){t.Accept="accept",t.Ignore="ignore",t.Reject="reject"})(Ru||(Ru={}));var oo=Symbol.for("@libp2p/transport");var Lu;(function(t){t[t.FATAL_ALL=0]="FATAL_ALL",t[t.NO_FATAL=1]="NO_FATAL"})(Lu||(Lu={}));var he=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};var so=class extends EventTarget{#e=new Map;listenerCount(e){let r=this.#e.get(e);return r==null?0:r.length}addEventListener(e,r,n){super.addEventListener(e,r,n);let i=this.#e.get(e);i==null&&(i=[],this.#e.set(e,i)),i.push({callback:r,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,r,n){super.removeEventListener(e.toString(),r??null,n);let i=this.#e.get(e);i!=null&&(i=i.filter(({callback:o})=>o!==r),this.#e.set(e,i))}dispatchEvent(e){let r=super.dispatchEvent(e),n=this.#e.get(e.type);return n==null||(n=n.filter(({once:i})=>!i),this.#e.set(e.type,n)),r}safeDispatchEvent(e,r){return this.dispatchEvent(new Cm(e,r))}},ra=class extends Event{detail;constructor(e,r){super(e,r),this.detail=r?.detail}},Cm=globalThis.CustomEvent??ra;var aa={};fe(aa,{base58btc:()=>Ee,base58flickr:()=>_m});function Am(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<t.length;i++){var o=t.charAt(i),s=o.charCodeAt(0);if(r[s]!==255)throw new TypeError(o+" is ambiguous");r[s]=i}var a=t.length,c=t.charAt(0),u=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var p=0,m=0,g=0,b=d.length;g!==b&&d[g]===0;)g++,p++;for(var x=(b-g)*f+1>>>0,S=new Uint8Array(x);g!==b;){for(var v=d[g],E=0,B=x-1;(v!==0||E<m)&&B!==-1;B--,E++)v+=256*S[B]>>>0,S[B]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");m=E,g++}for(var D=x-m;D!==x&&S[D]===0;)D++;for(var U=c.repeat(p);D<x;++D)U+=t.charAt(S[D]);return U}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var p=0;if(d[p]!==" "){for(var m=0,g=0;d[p]===c;)m++,p++;for(var b=(d.length-p)*u+1>>>0,x=new Uint8Array(b);d[p];){var S=r[d.charCodeAt(p)];if(S===255)return;for(var v=0,E=b-1;(S!==0||v<g)&&E!==-1;E--,v++)S+=a*x[E]>>>0,x[E]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");g=v,p++}if(d[p]!==" "){for(var B=b-g;B!==b&&x[B]===0;)B++;for(var D=new Uint8Array(m+(b-B)),U=m;B!==b;)D[U++]=x[B++];return D}}}function y(d){var p=h(d);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:h,decode:y}}var Dm=Am,Bm=Dm,Nu=Bm;var j8=new Uint8Array(0);var Pu=(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},Jt=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 Uu=t=>new TextEncoder().encode(t),Ou=t=>new TextDecoder().decode(t);var na=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")}},ia=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 Ku(this,e)}},oa=class{constructor(e){this.decoders=e}or(e){return Ku(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`)}},Ku=(t,e)=>new oa({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}}),sa=class{constructor(e,r,n,i){this.name=e,this.prefix=r,this.baseEncode=n,this.baseDecode=i,this.encoder=new na(e,r,n),this.decoder=new ia(e,r,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},yn=({name:t,prefix:e,encode:r,decode:n})=>new sa(t,e,r,n),xr=({prefix:t,name:e,alphabet:r})=>{let{encode:n,decode:i}=Nu(r,e);return yn({prefix:t,name:e,encode:n,decode:o=>Jt(i(o))})},Im=(t,e,r,n)=>{let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=t.length;for(;t[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[t[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},Tm=(t,e,r)=>{let n=e[e.length-1]==="=",i=(1<<r)-1,o="",s=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],s+=8;s>r;)s-=r,o+=e[i&a>>s];if(s&&(o+=e[i&a<<r-s]),n)for(;o.length*r&7;)o+="=";return o},Ne=({name:t,prefix:e,bitsPerChar:r,alphabet:n})=>yn({prefix:e,name:t,encode(i){return Tm(i,n,r)},decode(i){return Im(i,n,r,t)}});var Ee=xr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),_m=xr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ca={};fe(ca,{base10:()=>km});var km=xr({prefix:"9",name:"base10",alphabet:"0123456789"});var ua={};fe(ua,{base16:()=>Rm,base16upper:()=>Lm});var Rm=Ne({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Lm=Ne({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var fa={};fe(fa,{base2:()=>Nm});var Nm=Ne({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var la={};fe(la,{base256emoji:()=>Km});var Mu=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}"),Pm=Mu.reduce((t,e,r)=>(t[r]=e,t),[]),Um=Mu.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Om(t){return t.reduce((e,r)=>(e+=Pm[r],e),"")}function Fm(t){let e=[];for(let r of t){let n=Um[r.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(n)}return new Uint8Array(e)}var Km=yn({prefix:"\u{1F680}",name:"base256emoji",encode:Om,decode:Fm});var ha={};fe(ha,{base32:()=>At,base32hex:()=>qm,base32hexpad:()=>Gm,base32hexpadupper:()=>Wm,base32hexupper:()=>zm,base32pad:()=>Vm,base32padupper:()=>Hm,base32upper:()=>Mm,base32z:()=>$m});var At=Ne({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Mm=Ne({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Vm=Ne({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Hm=Ne({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),qm=Ne({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),zm=Ne({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Gm=Ne({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Wm=Ne({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),$m=Ne({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var da={};fe(da,{base36:()=>Ym,base36upper:()=>Xm});var Ym=xr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Xm=xr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ma={};fe(ma,{base64:()=>gn,base64pad:()=>Zm,base64url:()=>pa,base64urlpad:()=>Qm});var gn=Ne({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Zm=Ne({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),pa=Ne({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Qm=Ne({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ya={};fe(ya,{base8:()=>jm});var jm=Ne({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ga={};fe(ga,{identity:()=>Jm});var Jm=yn({prefix:"\0",name:"identity",encode:t=>Ou(t),decode:t=>Uu(t)});var d4=new TextEncoder,p4=new TextDecoder;var ba={};fe(ba,{identity:()=>Bt});var ry=qu,Vu=128,ny=127,iy=~ny,oy=Math.pow(2,31);function qu(t,e,r){e=e||[],r=r||0;for(var n=r;t>=oy;)e[r++]=t&255|Vu,t/=128;for(;t&iy;)e[r++]=t&255|Vu,t>>>=7;return e[r]=t|0,qu.bytes=r-n+1,e}var sy=xa,ay=128,Hu=127;function xa(t,n){var r=0,n=n||0,i=0,o=n,s,a=t.length;do{if(o>=a)throw xa.bytes=0,new RangeError("Could not decode varint");s=t[o++],r+=i<28?(s&Hu)<<i:(s&Hu)*Math.pow(2,i),i+=7}while(s>=ay);return xa.bytes=o-n,r}var cy=Math.pow(2,7),uy=Math.pow(2,14),fy=Math.pow(2,21),ly=Math.pow(2,28),hy=Math.pow(2,35),dy=Math.pow(2,42),py=Math.pow(2,49),my=Math.pow(2,56),yy=Math.pow(2,63),gy=function(t){return t<cy?1:t<uy?2:t<fy?3:t<ly?4:t<hy?5:t<dy?6:t<py?7:t<my?8:t<yy?9:10},xy={encode:ry,decode:sy,encodingLength:gy},by=xy,ci=by;var ui=(t,e=0)=>[ci.decode(t,e),ci.decode.bytes],xn=(t,e,r=0)=>(ci.encode(t,e,r),e),bn=t=>ci.encodingLength(t);var Dt=(t,e)=>{let r=e.byteLength,n=bn(t),i=n+bn(r),o=new Uint8Array(i+r);return xn(t,o,0),xn(r,o,n),o.set(e,i),new wn(t,r,e,o)},Mt=t=>{let e=Jt(t),[r,n]=ui(e),[i,o]=ui(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new wn(r,i,s,e)},zu=(t,e)=>{if(t===e)return!0;{let r=e;return t.code===r.code&&t.size===r.size&&r.bytes instanceof Uint8Array&&Pu(t.bytes,r.bytes)}},wn=class{constructor(e,r,n,i){this.code=e,this.size=r,this.digest=n,this.bytes=i}};var Gu=0,wy="identity",Wu=Jt,vy=t=>Dt(Gu,Wu(t)),Bt={code:Gu,name:wy,encode:Wu,digest:vy};var Ea={};fe(Ea,{sha256:()=>Ke,sha512:()=>Ey});var va=({name:t,code:e,encode:r})=>new wa(t,e,r),wa=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?Dt(this.code,r):r.then(n=>Dt(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Yu=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Ke=va({name:"sha2-256",code:18,encode:Yu("SHA-256")}),Ey=va({name:"sha2-512",code:19,encode:Yu("SHA-512")});var Xu=(t,e)=>{let{bytes:r,version:n}=t;switch(n){case 0:return Cy(r,Sa(t),e||Ee.encoder);default:return Ay(r,Sa(t),e||At.encoder)}};var Zu=new WeakMap,Sa=t=>{let e=Zu.get(t);if(e==null){let r=new Map;return Zu.set(t,r),r}return e},at=class t{constructor(e,r,n,i){this.code=r,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:r}=this;if(e!==fi)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(r.code!==Dy)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=Dt(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&&zu(e.multihash,n.multihash)}toString(e){return Xu(this,e)}toJSON(){return{"/":Xu(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let r=e;if(r instanceof t)return r;if(r["/"]!=null&&r["/"]===r.bytes||r.asCID===r){let{version:n,code:i,multihash:o,bytes:s}=r;return new t(n,i,o,s||Qu(n,i,o.bytes))}else if(r[By]===!0){let{version:n,multihash:i,code:o}=r,s=Mt(i);return t.create(n,o,s)}else return null}static create(e,r,n){if(typeof r!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(r!==fi)throw new Error(`Version 0 CID must use dag-pb (code: ${fi}) block encoding`);return new t(e,r,n,n.bytes)}case 1:{let i=Qu(e,r,n.bytes);return new t(e,r,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return t.create(0,fi,e)}static createV1(e,r){return t.create(1,e,r)}static decode(e){let[r,n]=t.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return r}static decodeFirst(e){let r=t.inspectBytes(e),n=r.size-r.multihashSize,i=Jt(e.subarray(n,n+r.multihashSize));if(i.byteLength!==r.multihashSize)throw new Error("Incorrect length");let o=i.subarray(r.multihashSize-r.digestSize),s=new wn(r.multihashCode,r.digestSize,o,i);return[r.version===0?t.createV0(s):t.createV1(r.codec,s),e.subarray(r.size)]}static inspectBytes(e){let r=0,n=()=>{let[l,h]=ui(e.subarray(r));return r+=h,l},i=n(),o=fi;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(e,r){let[n,i]=Sy(e,r),o=t.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Sa(o).set(n,e),o}},Sy=(t,e)=>{switch(t[0]){case"Q":{let r=e||Ee;return[Ee.prefix,r.decode(`${Ee.prefix}${t}`)]}case Ee.prefix:{let r=e||Ee;return[Ee.prefix,r.decode(t)]}case At.prefix:{let r=e||At;return[At.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)]}}},Cy=(t,e,r)=>{let{prefix:n}=r;if(n!==Ee.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let i=e.get(n);if(i==null){let o=r.encode(t).slice(1);return e.set(n,o),o}else return i},Ay=(t,e,r)=>{let{prefix:n}=r,i=e.get(n);if(i==null){let o=r.encode(t);return e.set(n,o),o}else return i},fi=112,Dy=18,Qu=(t,e,r)=>{let n=bn(t),i=n+bn(e),o=new Uint8Array(i+r.byteLength);return xn(t,o,0),xn(e,o,n),o.set(r,i),o},By=Symbol.for("@ipld/js-cid/CID");var dt={...ga,...fa,...ya,...ca,...ua,...ha,...da,...aa,...ma,...la},_4={...Ea,...ba};function Re(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 Iy=Symbol.for("nodejs.util.inspect.custom"),ju=Object.values(dt).map(t=>t.decoder).reduce((t,e)=>t.or(e),dt.identity.decoder),Ju=114,ef=36,tf=37,li=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()})`}[ku]=!0;toString(){return this.string==null&&(this.string=Ee.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return at.createV1(Ju,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Re(this.multihash.bytes,e);if(typeof e=="string")return Mr(e).equals(this);if(e?.multihash?.bytes!=null)return Re(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Iy](){return`PeerId(${this.toString()})`}},hi=class extends li{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},di=class extends li{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},pi=class extends li{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Mr(t,e){if(e=e??ju,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=Mt(Ee.decode(`z${t}`));return t.startsWith("12D")?new di({multihash:r}):t.startsWith("16U")?new pi({multihash:r}):new hi({multihash:r})}return Ty(ju.decode(t))}function Ty(t){try{let e=Mt(t);if(e.code===Bt.code){if(e.digest.length===ef)return new di({multihash:e});if(e.digest.length===tf)return new pi({multihash:e})}if(e.code===Ke.code)return new hi({multihash:e})}catch{return _y(at.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function _y(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==Ju)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Ke.code)return new hi({multihash:t.multihash});if(e.code===Bt.code){if(e.digest.length===ef)return new di({multihash:t.multihash});if(e.digest.length===tf)return new pi({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}var co=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}};function er(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function oe(t=0){return globalThis.Buffer?.alloc!=null?er(globalThis.Buffer.alloc(t)):new Uint8Array(t)}function He(t=0){return globalThis.Buffer?.allocUnsafe!=null?er(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function nf(t,e,r,n){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:n}}}var rf=nf("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Ca=nf("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=He(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),ky={utf8:rf,"utf-8":rf,hex:dt.base16,latin1:Ca,ascii:Ca,binary:Ca,...dt},uo=ky;function se(t,e="utf8"){let r=uo[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 Ry=Math.pow(2,7),Ly=Math.pow(2,14),Ny=Math.pow(2,21),Aa=Math.pow(2,28),Da=Math.pow(2,35),Ba=Math.pow(2,42),Ia=Math.pow(2,49),ye=128,tt=127;function rt(t){if(t<Ry)return 1;if(t<Ly)return 2;if(t<Ny)return 3;if(t<Aa)return 4;if(t<Da)return 5;if(t<Ba)return 6;if(t<Ia)return 7;if(Number.MAX_SAFE_INTEGER!=null&&t>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Py(t,e,r=0){switch(rt(t)){case 8:e[r++]=t&255|ye,t/=128;case 7:e[r++]=t&255|ye,t/=128;case 6:e[r++]=t&255|ye,t/=128;case 5:e[r++]=t&255|ye,t/=128;case 4:e[r++]=t&255|ye,t>>>=7;case 3:e[r++]=t&255|ye,t>>>=7;case 2:e[r++]=t&255|ye,t>>>=7;case 1:{e[r++]=t&255,t>>>=7;break}default:throw new Error("unreachable")}return e}function Uy(t,e,r=0){switch(rt(t)){case 8:e.set(r++,t&255|ye),t/=128;case 7:e.set(r++,t&255|ye),t/=128;case 6:e.set(r++,t&255|ye),t/=128;case 5:e.set(r++,t&255|ye),t/=128;case 4:e.set(r++,t&255|ye),t>>>=7;case 3:e.set(r++,t&255|ye),t>>>=7;case 2:e.set(r++,t&255|ye),t>>>=7;case 1:{e.set(r++,t&255),t>>>=7;break}default:throw new Error("unreachable")}return e}function Oy(t,e){let r=t[e],n=0;if(n+=r&tt,r<ye||(r=t[e+1],n+=(r&tt)<<7,r<ye)||(r=t[e+2],n+=(r&tt)<<14,r<ye)||(r=t[e+3],n+=(r&tt)<<21,r<ye)||(r=t[e+4],n+=(r&tt)*Aa,r<ye)||(r=t[e+5],n+=(r&tt)*Da,r<ye)||(r=t[e+6],n+=(r&tt)*Ba,r<ye)||(r=t[e+7],n+=(r&tt)*Ia,r<ye))return n;throw new RangeError("Could not decode varint")}function Fy(t,e){let r=t.get(e),n=0;if(n+=r&tt,r<ye||(r=t.get(e+1),n+=(r&tt)<<7,r<ye)||(r=t.get(e+2),n+=(r&tt)<<14,r<ye)||(r=t.get(e+3),n+=(r&tt)<<21,r<ye)||(r=t.get(e+4),n+=(r&tt)*Aa,r<ye)||(r=t.get(e+5),n+=(r&tt)*Da,r<ye)||(r=t.get(e+6),n+=(r&tt)*Ba,r<ye)||(r=t.get(e+7),n+=(r&tt)*Ia,r<ye))return n;throw new RangeError("Could not decode varint")}function wr(t,e,r=0){return e==null&&(e=He(rt(t))),e instanceof Uint8Array?Py(t,e,r):Uy(t,e,r)}function It(t,e=0){return t instanceof Uint8Array?Oy(t,e):Fy(t,e)}function de(t,e){if(globalThis.Buffer!=null)return er(globalThis.Buffer.concat(t,e));e==null&&(e=t.reduce((i,o)=>i+o.length,0));let r=He(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return er(r)}var fo=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let r=this.index,n=e();return n===void 0&&(this.index=r),n}parseWith(e){let r=e();if(this.index===this.input.length)return r}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let r=this.readChar();if(r===e)return r})}readSeparator(e,r,n){return this.readAtomically(()=>{if(!(r>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,r,n,i){return this.readAtomically(()=>{let o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",u=2**(8*i)-1;for(;;){let f=this.readAtomically(()=>{let l=this.readChar();if(l===void 0)return;let h=Number.parseInt(l,e);if(!Number.isNaN(h))return h});if(f===void 0)break;if(o*=e,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 e=new Uint8Array(4);for(let r=0;r<e.length;r++){let n=this.readSeparator(".",r,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[r]=n}return e})}readIPv6Addr(){let e=r=>{for(let n=0;n<r.length/2;n++){let i=n*2;if(n<r.length-3){let s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return r[i]=s[0],r[i+1]=s[1],r[i+2]=s[2],r[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];r[i]=o>>8,r[i+1]=o&255}return[r.length,!1]};return this.readAtomically(()=>{let r=new Uint8Array(16),[n,i]=e(r);if(n===16)return r;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return r.set(o.subarray(0,a),16-a),r})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var of=45,Ky=15,vn=new fo;function Ta(t){if(!(t.length>Ky))return vn.new(t).parseWith(()=>vn.readIPv4Addr())}function _a(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>of))return vn.new(t).parseWith(()=>vn.readIPv6Addr())}function lo(t){if(t.includes("%")&&(t=t.split("%")[0]),!(t.length>of))return vn.new(t).parseWith(()=>vn.readIPAddr())}var uS=parseInt("0xFFFF",16),fS=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function Se(t,e="utf8"){let r=uo[e];if(r==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?er(globalThis.Buffer.from(t,"utf-8")):r.decoder.decode(`${r.prefix}${t}`)}function ho(t){return!!Ta(t)}function po(t){return!!_a(t)}function mo(t){return!!lo(t)}var cf=ho,zy=po,ka=function(t){let e=0;if(t=t.toString().trim(),cf(t)){let r=new Uint8Array(e+4);return t.split(/\./g).forEach(n=>{r[e++]=parseInt(n,10)&255}),r}if(zy(t)){let r=t.split(":",8),n;for(n=0;n<r.length;n++){let o=cf(r[n]),s;o&&(s=ka(r[n]),r[n]=se(s.slice(0,2),"base16")),s!=null&&++n<8&&r.splice(n,0,se(s.slice(2,4),"base16"))}if(r[0]==="")for(;r.length<8;)r.unshift("0");else if(r[r.length-1]==="")for(;r.length<8;)r.push("0");else if(r.length<8){for(n=0;n<r.length&&r[n]!=="";n++);let o=[n,1];for(n=9-r.length;n>0;n--)o.push("0");r.splice.apply(r,o)}let i=new Uint8Array(e+16);for(n=0;n<r.length;n++){let o=parseInt(r[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},uf=function(t,e=0,r){e=~~e,r=r??t.length-e;let n=new DataView(t.buffer);if(r===4){let i=[];for(let o=0;o<r;o++)i.push(t[e+o]);return i.join(".")}if(r===16){let i=[];for(let o=0;o<r;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var En={},Ra={},Wy=[[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"]];Wy.forEach(t=>{let e=$y(...t);Ra[e.code]=e,En[e.name]=e});function $y(t,e,r,n,i){return{code:t,size:e,name:r,resolvable:!!n,path:!!i}}function ge(t){if(typeof t=="number"){if(Ra[t]!=null)return Ra[t];throw new Error(`no protocol with code: ${t}`)}else if(typeof t=="string"){if(En[t]!=null)return En[t];throw new Error(`no protocol with name: ${t}`)}throw new Error(`invalid protocol id type: ${typeof t}`)}var ZS=ge("ip4"),QS=ge("ip6"),jS=ge("ipcidr");function Na(t,e){switch(ge(t).code){case 4:case 41:return Xy(e);case 42:return hf(e);case 6:case 273:case 33:case 132:return pf(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return hf(e);case 421:return Jy(e);case 444:return df(e);case 445:return df(e);case 466:return jy(e);default:return se(e,"base16")}}function Pa(t,e){switch(ge(t).code){case 4:return ff(e);case 41:return ff(e);case 42:return lf(e);case 6:case 273:case 33:case 132:return Ua(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return lf(e);case 421:return Zy(e);case 444:return eg(e);case 445:return tg(e);case 466:return Qy(e);default:return Se(e,"base16")}}var La=Object.values(dt).map(t=>t.decoder),Yy=function(){let t=La[0].or(La[1]);return La.slice(2).forEach(e=>t=t.or(e)),t}();function ff(t){if(!mo(t))throw new Error("invalid ip address");return ka(t)}function Xy(t){let e=uf(t,0,t.length);if(e==null)throw new Error("ipBuff is required");if(!mo(e))throw new Error("invalid ip address");return e}function Ua(t){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,t),new Uint8Array(e)}function pf(t){return new DataView(t.buffer).getUint16(t.byteOffset)}function lf(t){let e=Se(t),r=Uint8Array.from(wr(e.length));return de([r,e],r.length+e.length)}function hf(t){let e=It(t);if(t=t.slice(rt(e)),t.length!==e)throw new Error("inconsistent lengths");return se(t)}function Zy(t){let e;t[0]==="Q"||t[0]==="1"?e=Mt(Ee.decode(`z${t}`)).bytes:e=at.parse(t).multihash.bytes;let r=Uint8Array.from(wr(e.length));return de([r,e],r.length+e.length)}function Qy(t){let e=Yy.decode(t),r=Uint8Array.from(wr(e.length));return de([r,e],r.length+e.length)}function jy(t){let e=It(t),r=t.slice(rt(e));if(r.length!==e)throw new Error("inconsistent lengths");return"u"+se(r,"base64url")}function Jy(t){let e=It(t),r=t.slice(rt(e));if(r.length!==e)throw new Error("inconsistent lengths");return se(r,"base58btc")}function eg(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=At.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ua(n);return de([r,i],r.length+i.length)}function tg(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=At.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Ua(n);return de([r,i],r.length+i.length)}function df(t){let e=t.slice(0,t.length-2),r=t.slice(t.length-2),n=se(e,"base32"),i=pf(r);return`${n}:${i}`}function mf(t){t=Oa(t);let e=[],r=[],n=null,i=t.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ge(s);if(a.size===0){e.push([a.code]),r.push([a.code]);continue}if(o++,o>=i.length)throw gf("invalid address: "+t);if(a.path===!0){n=Oa(i.slice(o).join("/")),e.push([a.code,Pa(a.code,n)]),r.push([a.code,n]);break}let c=Pa(a.code,i[o]);e.push([a.code,c]),r.push([a.code,Na(a.code,c)])}return{string:yf(r),bytes:Ka(e),tuples:e,stringTuples:r,path:n}}function Fa(t){let e=[],r=[],n=null,i=0;for(;i<t.length;){let o=It(t,i),s=rt(o),a=ge(o),c=rg(a,t.slice(i+s));if(c===0){e.push([o]),r.push([o]),i+=s;continue}let u=t.slice(i+s,i+s+c);if(i+=c+s,i>t.length)throw gf("Invalid address Uint8Array: "+se(t,"base16"));e.push([o,u]);let f=Na(o,u);if(r.push([o,f]),a.path===!0){n=f;break}}return{bytes:Uint8Array.from(t),string:yf(r),tuples:e,stringTuples:r,path:n}}function yf(t){let e=[];return t.map(r=>{let n=ge(r[0]);return e.push(n.name),r.length>1&&r[1]!=null&&e.push(r[1]),null}),Oa(e.join("/"))}function Ka(t){return de(t.map(e=>{let r=ge(e[0]),n=Uint8Array.from(wr(r.code));return e.length>1&&e[1]!=null&&(n=de([n,e[1]])),n}))}function rg(t,e){if(t.size>0)return t.size/8;if(t.size===0)return 0;{let r=It(e instanceof Uint8Array?e:Uint8Array.from(e));return r+rt(r)}}function Oa(t){return"/"+t.trim().split("/").filter(e=>e).join("/")}function gf(t){return new Error("Error parsing address: "+t)}var ng=Symbol.for("nodejs.util.inspect.custom"),Ma=Symbol.for("@multiformats/js-multiaddr/multiaddr"),ig=[ge("dns").code,ge("dns4").code,ge("dns6").code,ge("dnsaddr").code],yo=class t{bytes;#e;#t;#r;#n;[Ma]=!0;constructor(e){e==null&&(e="");let r;if(e instanceof Uint8Array)r=Fa(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);r=mf(e)}else if(bf(e))r=Fa(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=r.bytes,this.#e=r.string,this.#t=r.tuples,this.#r=r.stringTuples,this.#n=r.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,r,n,i,o="",s=ge("tcp"),a=ge("udp"),c=ge("ip4"),u=ge("ip6"),f=ge("dns6"),l=ge("ip6zone");for(let[y,d]of this.stringTuples())y===l.code&&(o=`%${d??""}`),ig.includes(y)&&(r=s.name,i=443,n=`${d??""}${o}`,e=y===f.code?6:4),(y===s.code||y===a.code)&&(r=ge(y).name,i=parseInt(d??"")),(y===c.code||y===u.code)&&(r=ge(y).name,n=`${d??""}${o}`,e=y===u.code?6:4);if(e==null||r==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:r,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},ge(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>ge(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new t(e),new t(this.toString()+e.toString())}decapsulate(e){let r=e.toString(),n=this.toString(),i=n.lastIndexOf(r);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new t(n.slice(0,i))}decapsulateCode(e){let r=this.tuples();for(let n=r.length-1;n>=0;n--)if(r[n][0]===e)return new t(Ka(r.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===En.p2p.code&&e.push([n,i]),n===En["p2p-circuit"].code&&(e=[])});let r=e.pop();if(r?.[1]!=null){let n=r[1];return n[0]==="Q"||n[0]==="1"?se(Ee.decode(`z${n}`),"base58btc"):se(at.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return Re(this.bytes,e.bytes)}async resolve(e){let r=this.protos().find(o=>o.resolvable);if(r==null)return[this];let n=xf.get(r.name);if(n==null)throw new co(`no available resolver for ${r.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new t(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let r=(e??this).protos();return!(r.length!==2||r[0].code!==4&&r[0].code!==41||r[1].code!==6&&r[1].code!==273)}[ng](){return`Multiaddr(${this.#e})`}};var xf=new Map;function bf(t){return!!t?.[Ma]}function tr(t){return new yo(t)}var og=t=>t.toString().split("/").slice(1),yi=t=>({match:e=>e.length<1?!1:t(e[0])?e.slice(1):!1,pattern:"fn"}),Ue=t=>({match:e=>yi(r=>r===t).match(e),pattern:t}),bo=()=>({match:t=>yi(e=>typeof e=="string").match(t),pattern:"{string}"}),wf=()=>({match:t=>yi(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{Ee.decode(`z${t[1]}`)}catch{return!1}else return!1;return t.slice(2)},pattern:"/p2p/{peerid}"}),go=()=>({match:t=>{if(t.length<2||t[0]!=="certhash")return!1;try{pa.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})`}),Ht=(...t)=>({match:e=>{let r;for(let n of t){let i=n.match(e);i!==!1&&(r==null||i.length<r.length)&&(r=i)}return r??!1},pattern:`or(${t.map(e=>e.pattern).join(", ")})`}),Oe=(...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 qe(...t){function e(i){let o=og(i);for(let s of t){let a=s.match(o);if(a===!1)return!1;o=a}return o}function r(i){return e(i)!==!1}function n(i){let o=e(i);return o===!1?!1:o.length===0}return{matches:r,exactMatch:n}}var Ha=Oe(Ue("dns4"),bo()),qa=Oe(Ue("dns6"),bo()),za=Oe(Ue("dnsaddr"),bo()),vf=Oe(Ue("dns"),bo()),B5=qe(Ha),I5=qe(qa),T5=qe(za),_5=qe(Ht(vf,za,Ha,qa)),Ef=Oe(Ue("ip4"),yi(ho)),Sf=Oe(Ue("ip6"),yi(po)),Cf=Ht(Ef,Sf),gi=Ht(Cf,vf,Ha,qa,za),k5=qe(gi),R5=qe(Ef),L5=qe(Sf),N5=qe(Cf),wo=Oe(gi,Ue("tcp"),wf()),xi=Oe(gi,Ue("udp"),wf()),sg=Ht(wo,xi),P5=qe(wo),U5=qe(xi),Ga=Oe(xi,Ue("quic")),vo=Oe(xi,Ue("quic-v1")),ag=Ht(Ga,vo),O5=qe(Ga),F5=qe(vo),Va=Ht(gi,wo,xi,Ga,vo),Af=Ht(Oe(Va,Ue("ws"),Vt(bt()))),K5=qe(Af),Df=Ht(Oe(Va,Ue("wss"),Vt(bt())),Oe(Va,Ue("tls"),Ue("ws"),Vt(bt()))),M5=qe(Df),Bf=Oe(sg,Ue("webrtc-direct"),go(),Vt(go()),Vt(bt())),If=qe(Bf),Tf=Oe(vo,Ue("webtransport"),go(),go(),Vt(bt())),V5=qe(Tf),xo=Ht(Af,Df,Oe(wo,Vt(bt())),Oe(ag,Vt(bt())),Oe(gi,Vt(bt())),Bf,Tf,bt()),H5=qe(xo),cg=Oe(xo,Ue("p2p-circuit"),bt()),q5=qe(cg),ug=Ht(Oe(xo,Ue("p2p-circuit"),Ue("webrtc"),bt()),Oe(xo,Ue("webrtc"),Vt(bt())),Ue("webrtc")),_f=qe(ug);var pt;(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"})(pt||(pt={}));var vr=class extends he{constructor(e,r){super(`WebRTC transport error: ${e}`,r??""),this.name="WebRTCTransportError"}};var Wa=class extends vr{constructor(e,r){super(`[stream: ${e}] data channel error: ${r}`,pt.ERR_DATA_CHANNEL),this.name="WebRTC/DataChannelError"}};function ja(t,e){return new Wa(t,e)}var $a=class extends vr{constructor(e){super(`There was a problem with the Multiaddr which was passed in: ${e}`,pt.ERR_INVALID_MULTIADDR),this.name="WebRTC/InappropriateMultiaddrError"}};function Eo(t){return new $a(t)}var Ya=class extends vr{constructor(e){super(`There was a problem with a provided argument: ${e}`,pt.ERR_INVALID_PARAMETERS),this.name="WebRTC/InvalidArgumentError"}};function bi(t){return new Ya(t)}var Xa=class extends vr{constructor(e,r){super(`Invalid fingerprint "${e}" within ${r}`,pt.ERR_INVALID_FINGERPRINT),this.name="WebRTC/InvalidFingerprintError"}};function Ja(t,e){return new Xa(t,e)}var Za=class extends vr{constructor(e){super(`A method (${e}) was called though it has been intentionally left unimplemented.`,pt.ERR_NOT_IMPLEMENTED),this.name="WebRTC/UnimplementedError"}};function kf(t){return new Za(t)}var Qa=class extends vr{constructor(e){super(`unsupported hash algorithm: ${e}`,pt.ERR_HASH_NOT_SUPPORTED),this.name="WebRTC/UnsupportedHashAlgorithmError"}};function Rf(t){return new Qa(t)}var Lf=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,o;n<i;n++)(o||!(n in e))&&(o||(o=Array.prototype.slice.call(e,0,n)),o[n]=e[n]);return t.concat(o||Array.prototype.slice.call(e))},fg=function(){function t(e,r,n){this.name=e,this.version=r,this.os=n,this.type="browser"}return t}();var lg=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}();var hg=function(){function t(e,r,n,i){this.name=e,this.version=r,this.os=n,this.bot=i,this.type="bot-device"}return t}();var dg=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}();var pg=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}();var mg=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,yg=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Nf=3,gg=[["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",mg]],Pf=[["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 Of(t){return t?Uf(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new pg:typeof navigator<"u"?Uf(navigator.userAgent):wg()}function xg(t){return t!==""&&gg.reduce(function(e,r){var n=r[0],i=r[1];if(e)return e;var o=i.exec(t);return!!o&&[n,o]},!1)}function Uf(t){var e=xg(t);if(!e)return null;var r=e[0],n=e[1];if(r==="searchbot")return new dg;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Nf&&(i=Lf(Lf([],i,!0),vg(Nf-i.length),!0)):i=[];var o=i.join("."),s=bg(t),a=yg.exec(t);return a&&a[1]?new hg(r,o,s,a[1]):new fg(r,o,s)}function bg(t){for(var e=0,r=Pf.length;e<r;e++){var n=Pf[e],i=n[0],o=n[1],s=o.exec(t);if(s)return i}return null}function wg(){var t=typeof process<"u"&&process.version;return t?new lg(process.version.slice(1)):null}function vg(t){for(var e=[],r=0;r<t;r++)e.push("0");return e}function Le(){let t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}var Sn=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},ec=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ff=t=>globalThis.DOMException===void 0?new ec(t):new DOMException(t),Kf=t=>{let e=t.reason===void 0?Ff("This operation was aborted."):t.reason;return e instanceof Error?e:Ff(e)};function Vr(t,e){let{milliseconds:r,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,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(e.signal){let{signal:h}=e;h.aborted&&f(Kf(h)),h.addEventListener("abort",()=>{f(Kf(h))})}if(r===Number.POSITIVE_INFINITY){t.then(u,f);return}let l=new Sn;s=o.setTimeout.call(void 0,()=>{if(n){try{u(n())}catch(h){f(h)}return}typeof t.cancel=="function"&&t.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 t)}catch(h){f(h)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}var Mf=Of(),wi=Mf!=null&&Mf.name==="firefox",So=async function*(){},Co=async t=>{},Eg=30*1e3;function Vf(t,e,r=Eg,n){t.readyState==="open"&&Promise.resolve().then(async()=>{if(t.bufferedAmount>0){n.log("%s drain channel with %d buffered bytes",e,t.bufferedAmount);let i=Le(),o=!1;t.bufferedAmountLowThreshold=0;let s=()=>{o||(n.log("%s drain channel closed before drain",e),i.resolve())};t.addEventListener("close",s,{once:!0}),t.addEventListener("bufferedamountlow",()=>{o=!0,t.removeEventListener("close",s),i.resolve()}),await Vr(i.promise,{milliseconds:r})}}).then(async()=>{t.readyState==="open"&&t.close()}).catch(i=>{n.log.error("error closing outbound stream",i)})}var Hr=class{log;peerConnection;remoteAddr;timeline;metrics;source=So();sink=Co;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 Ao=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}},Cn=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Ao(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 Ao(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 tc=class extends Error{type;code;constructor(e,r){super(e??"The operation was aborted"),this.type="aborted",this.code=r??"ABORT_ERR"}};function Er(t={}){return Sg(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 Sg(t,e){e=e??{};let r=e.onEnd,n=new Cn,i,o,s,a=Le(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((m,g)=>{o=b=>{o=null,n.push(b);try{m(t(n))}catch(x){g(x)}return i}}):t(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Le()})}},u=m=>o!=null?o(m):(n.push(m),i),f=m=>(n=new Cn,o!=null?o({error:m}):(n.push({error:m}),i)),l=m=>{if(s)return i;if(e?.objectMode!==!0&&m?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return u({done:!1,value:m})},h=m=>s?i:(s=!0,m!=null?f(m):u({done:!0})),y=()=>(n=new Cn,h(),{done:!0}),d=m=>(h(m),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:y,throw:d,push:l,end:h,get readableLength(){return n.size},onEmpty:async m=>{let g=m?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let b,x;g!=null&&(b=new Promise((S,v)=>{x=()=>{v(new tc)},g.addEventListener("abort",x)}));try{await Promise.race([a.promise,b])}finally{x!=null&&g!=null&&g?.removeEventListener("abort",x)}}},r==null)return i;let p=i;return i={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(m){return p.throw(m),r!=null&&(r(m),r=void 0),{done:!0}},return(){return p.return(),r!=null&&(r(),r=void 0),{done:!0}},push:l,end(m){return p.end(m),r!=null&&(r(m),r=void 0),i},get readableLength(){return p.readableLength},onEmpty:m=>p.onEmpty(m)},i}var Do=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 Sr(t,e,r){if(e==null)return t;if(e.aborted)return Promise.reject(new Do(r?.errorMessage,r?.errorCode));let n,i=new Do(r?.errorMessage,r?.errorCode);try{return await Promise.race([t,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var qf=Symbol.for("@achingbrain/uint8arraylist");function Hf(t,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let r=0;for(let n of t){let i=r+n.byteLength;if(e<i)return{buf:n,index:e-r};r=i}throw new RangeError("index is out of bounds")}function Bo(t){return!!t?.[qf]}var nt=class t{bufs;length;[qf]=!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(Bo(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(Bo(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=Hf(this.bufs,e);return r.buf[r.index]}set(e,r){let n=Hf(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(Bo(e))for(let n=0;n<e.length;n++)this.set(r+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,r){let{bufs:n,length:i}=this._subList(e,r);return de(n,i)}subarray(e,r){let{bufs:n,length:i}=this._subList(e,r);return n.length===1?n[0]:de(n,i)}sublist(e,r){let{bufs:n,length:i}=this._subList(e,r),o=new t;return o.length=i,o.bufs=[...n],o}_subList(e,r){if(e=e??0,r=r??this.length,e<0&&(e=this.length+e),r<0&&(r=this.length+r),e<0||r>this.length)throw new RangeError("index is out of bounds");if(e===r)return{bufs:[],length:0};if(e===0&&r===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let u=e>=a&&e<c,f=r>a&&r<=c;if(u&&f){if(e===a&&r===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(r-e)));break}if(u){if(e===0){n.push(s);continue}n.push(s.subarray(e-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-e}}indexOf(e,r=0){if(!Bo(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(r=Number(r??0),isNaN(r)&&(r=0),r<0&&(r=this.length+r),r<0&&(r=0),e.length===0)return r>this.length?this.length:r;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,u=n.byteLength-1,f;for(let l=r;l<=c;l+=f){f=0;for(let h=u;h>=0;h--){let y=this.get(l+h);if(n[h]!==y){f=Math.max(1,h-a[y]);break}}if(f===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=He(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,r),this.write(n,e)}getInt16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,r)}setInt16(e,r,n){let i=oe(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,r,n),this.write(i,e)}getInt32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,r)}setInt32(e,r,n){let i=oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,r,n),this.write(i,e)}getBigInt64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,r)}setBigInt64(e,r,n){let i=oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,r,n),this.write(i,e)}getUint8(e){let r=this.subarray(e,e+1);return new DataView(r.buffer,r.byteOffset,r.byteLength).getUint8(0)}setUint8(e,r){let n=He(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,r),this.write(n,e)}getUint16(e,r){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,r)}setUint16(e,r,n){let i=oe(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,r,n),this.write(i,e)}getUint32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,r)}setUint32(e,r,n){let i=oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,r,n),this.write(i,e)}getBigUint64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,r)}setBigUint64(e,r,n){let i=oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,r,n),this.write(i,e)}getFloat32(e,r){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,r)}setFloat32(e,r,n){let i=oe(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,r,n),this.write(i,e)}getFloat64(e,r){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,r)}setFloat64(e,r,n){let i=oe(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,r,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof t)||e.bufs.length!==this.bufs.length)return!1;for(let r=0;r<this.bufs.length;r++)if(!Re(this.bufs[r],e.bufs[r]))return!1;return!0}static fromUint8Arrays(e,r){let n=new t;return n.bufs=e,r==null&&(r=e.reduce((i,o)=>i+o.byteLength,0)),n.length=r,n}};function zf(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 Gf(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}function Io(t,e){let r=zf(t).return?.();Gf(r)&&r.catch(n=>{e.error("could not cause iterator to return",n)})}var Cg="ERR_STREAM_RESET",Ag="ERR_SINK_INVALID_STATE",Dg=5e3;function rc(t){return t==null?!1:typeof t.then=="function"&&typeof t.catch=="function"&&typeof t.finally=="function"}var To=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=Le(),this.closed=Le(),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??Dg,this.onEnd=e.onEnd,this.onCloseRead=e?.onCloseRead,this.onCloseWrite=e?.onCloseWrite,this.onReset=e?.onReset,this.onAbort=e?.onAbort,this.source=this.streamSource=Er({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 he(`writable end state is "${this.writeStatus}" not "ready"`,Ag);try{this.writeStatus="writing";let r={signal:this.sinkController.signal};if(this.direction==="outbound"){let i=this.sendNewStream(r);rc(i)&&await i}let n=()=>{Io(e,this.log)};try{this.sinkController.signal.addEventListener("abort",n),this.log.trace("sink reading from source");for await(let i of e){i=i instanceof Uint8Array?new nt(i):i;let o=this.sendData(i,r);rc(o)&&await o}}finally{this.sinkController.signal.removeEventListener("abort",n)}this.log.trace('sink finished reading from source, write status is "%s"',this.writeStatus),this.writeStatus==="writing"&&(this.writeStatus="closing",this.log.trace("send close write to remote"),await this.sendCloseWrite({signal:AbortSignal.timeout(this.sendCloseWriteTimeout)}),this.writeStatus="closed"),this.onSinkEnd()}catch(r){throw this.log.trace("sink ended with error, calling abort with error",r),this.abort(r),r}finally{this.log.trace("resolve sink end"),this.sinkEnd.resolve()}}onSourceEnd(e){this.timeline.closeRead==null&&(this.timeline.closeRead=Date.now(),this.readStatus="closed",e!=null&&this.endErr==null&&(this.endErr=e),this.onCloseRead?.(),this.timeline.closeWrite!=null?(this.log.trace("source and sink ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr),this.closed.resolve()):this.log.trace("source ended, waiting for sink to end"))}onSinkEnd(e){this.timeline.closeWrite==null&&(this.timeline.closeWrite=Date.now(),this.writeStatus="closed",e!=null&&this.endErr==null&&(this.endErr=e),this.onCloseWrite?.(),this.timeline.closeRead!=null?(this.log.trace("sink and source ended"),this.timeline.close=Date.now(),this.status!=="aborted"&&this.status!=="reset"&&(this.status="closed"),this.onEnd!=null&&this.onEnd(this.endErr),this.closed.resolve()):this.log.trace("sink ended, waiting for source to end"))}async close(e){this.log.trace("closing gracefully"),this.status="closing",await Promise.all([this.closeRead(e),this.closeWrite(e)]),await Sr(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 Sr(this.sink([]),e.signal)),this.writeStatus==="writing"&&await new Promise((r,n)=>{queueMicrotask(()=>{this.log.trace("aborting source passed to .sink"),this.sinkController.abort(),Sr(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();rc(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 he("stream reset",Cg);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 _o(t){return t[Symbol.asyncIterator]!=null}var ko=t=>{let e=rt(t),r=He(e);return wr(t,r),ko.bytes=e,r};ko.bytes=0;function Cr(t,e){e=e??{};let r=e.lengthEncoder??ko;function*n(i){let o=r(i.byteLength);o instanceof Uint8Array?yield o:yield*o,i instanceof Uint8Array?yield i:yield*i}return _o(t)?async function*(){for await(let i of t)yield*n(i)}():function*(){for(let i of t)yield*n(i)}()}Cr.single=(t,e)=>{e=e??{};let r=e.lengthEncoder??ko;return new nt(r(t.byteLength),t)};var An=Qe(Yf(),1);var Ig=8,Tg=1024*1024*4,qr;(function(t){t[t.LENGTH=0]="LENGTH",t[t.DATA=1]="DATA"})(qr||(qr={}));var nc=t=>{let e=It(t);return nc.bytes=rt(e),e};nc.bytes=0;function zr(t,e){let r=new nt,n=qr.LENGTH,i=-1,o=e?.lengthDecoder??nc,s=e?.maxLengthLength??Ig,a=e?.maxDataLength??Tg;function*c(){for(;r.byteLength>0;){if(n===qr.LENGTH)try{if(i=o(r),i<0)throw(0,An.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(i>a)throw(0,An.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let u=o.bytes;r.consume(u),e?.onLength!=null&&e.onLength(i),n=qr.DATA}catch(u){if(u instanceof RangeError){if(r.byteLength>s)throw(0,An.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw u}if(n===qr.DATA){if(r.byteLength<i)break;let u=r.sublist(0,i);r.consume(i),e?.onData!=null&&e.onData(u),yield u,n=qr.LENGTH}}}return _o(t)?async function*(){for await(let u of t)r.append(u),yield*c();if(r.byteLength>0)throw(0,An.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let u of t)r.append(u),yield*c();if(r.byteLength>0)throw(0,An.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}zr.fromReader=(t,e)=>{let r=1,n=async function*(){for(;;)try{let{done:o,value:s}=await t.next(r);if(o===!0)return;s!=null&&(yield s)}catch(o){if(o.code==="ERR_UNDER_READ")return{done:!0,value:null};throw o}finally{r=1}}();return zr(n,{...e??{},onLength:o=>{r=o}})};var _g=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 kg(t,e,r){let n,i=new Promise((o,s)=>{if(r={rejectionEvents:["error"],multiArgs:!1,resolveImmediately:!1,...r},!(r.count>=0&&(r.count===Number.POSITIVE_INFINITY||Number.isInteger(r.count))))throw new TypeError("The `count` option should be at least 0 or more");r.signal?.throwIfAborted();let a=[e].flat(),c=[],{addListener:u,removeListener:f}=_g(t),l=(...y)=>{let d=r.multiArgs?y:y[0];r.filter&&!r.filter(d)||(c.push(d),r.count===c.length&&(n(),o(c)))},h=y=>{n(),s(y)};n=()=>{for(let y of a)f(y,l);for(let y of r.rejectionEvents)f(y,h)};for(let y of a)u(y,l);for(let y of r.rejectionEvents)u(y,h);r.signal&&r.signal.addEventListener("abort",()=>{h(r.signal.reason)},{once:!0}),r.resolveImmediately&&o(c)});if(i.cancel=n,typeof r.timeout=="number"){let o=Vr(i,{milliseconds:r.timeout});return o.cancel=n,o}return i}function ic(t,e,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=kg(t,e,r),i=n.then(o=>o[0]);return i.cancel=n.cancel,i}var oc=new Float32Array([-0]),Ar=new Uint8Array(oc.buffer);function Zf(t,e,r){oc[0]=t,e[r]=Ar[0],e[r+1]=Ar[1],e[r+2]=Ar[2],e[r+3]=Ar[3]}function Qf(t,e){return Ar[0]=t[e],Ar[1]=t[e+1],Ar[2]=t[e+2],Ar[3]=t[e+3],oc[0]}var sc=new Float64Array([-0]),it=new Uint8Array(sc.buffer);function jf(t,e,r){sc[0]=t,e[r]=it[0],e[r+1]=it[1],e[r+2]=it[2],e[r+3]=it[3],e[r+4]=it[4],e[r+5]=it[5],e[r+6]=it[6],e[r+7]=it[7]}function Jf(t,e){return it[0]=t[e],it[1]=t[e+1],it[2]=t[e+2],it[3]=t[e+3],it[4]=t[e+4],it[5]=t[e+5],it[6]=t[e+6],it[7]=t[e+7],sc[0]}var Rg=BigInt(Number.MAX_SAFE_INTEGER),Lg=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 Gr;if(e<Rg&&e>Lg)return this.fromNumber(Number(e));let r=e<0n;r&&(e=-e);let n=e>>32n,i=e-(n<<32n);return r&&(n=~n|0n,i=~i|0n,++i>el&&(i=0n,++n>el&&(n=0n))),new t(Number(i),Number(n))}static fromNumber(e){if(e===0)return Gr;let r=e<0;r&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return r&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new t(n,i)}static from(e){return typeof e=="number"?t.fromNumber(e):typeof e=="bigint"?t.fromBigInt(e):typeof e=="string"?t.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new t(e.low>>>0,e.high>>>0):Gr}},Gr=new ct(0,0);Gr.toBigInt=function(){return 0n};Gr.zzEncode=Gr.zzDecode=function(){return this};Gr.length=function(){return 1};var el=4294967296n;function tl(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 rl(t,e,r){if(r-e<1)return"";let i,o=[],s=0,a;for(;e<r;)a=t[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|t[e++]&63:a>239&&a<365?(a=((a&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function ac(t,e,r){let n=r,i,o;for(let s=0;s<t.length;++s)i=t.charCodeAt(s),i<128?e[r++]=i:i<2048?(e[r++]=i>>6|192,e[r++]=i&63|128):(i&64512)===55296&&((o=t.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[r++]=i>>18|240,e[r++]=i>>12&63|128,e[r++]=i>>6&63|128,e[r++]=i&63|128):(e[r++]=i>>12|224,e[r++]=i>>6&63|128,e[r++]=i&63|128);return r-n}function Tt(t,e){return RangeError(`index out of range: ${t.pos} + ${e??1} > ${t.len}`)}function Ro(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}var cc=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,Tt(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 Tt(this,4);return Ro(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Tt(this,4);return Ro(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Tt(this,4);let e=Qf(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw Tt(this,4);let e=Jf(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 Tt(this,e);return this.pos+=e,r===n?new Uint8Array(0):this.buf.subarray(r,n)}string(){let e=this.bytes();return rl(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Tt(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Tt(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 Tt(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 Tt(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 Tt(this,8);let e=Ro(this.buf,this.pos+=4),r=Ro(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 uc(t){return new cc(t instanceof Uint8Array?t:t.subarray())}function _t(t,e){let r=uc(t);return e.decode(r)}function fc(t){let e=t??8192,r=e>>>1,n,i=e;return function(s){if(s<1||s>r)return He(s);i+s>e&&(n=He(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Wr=class{fn;len;next;val;constructor(e,r,n){this.fn=e,this.len=r,this.next=void 0,this.val=n}};function lc(){}var dc=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Ng=fc();function Pg(t){return globalThis.Buffer!=null?He(t):Ng(t)}var Si=class{len;head;tail;states;constructor(){this.len=0,this.head=new Wr(lc,0,0),this.tail=this.head,this.states=null}_push(e,r,n){return this.tail=this.tail.next=new Wr(e,r,n),this.len+=r,this}uint32(e){return this.len+=(this.tail=this.tail.next=new pc((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(vi,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(vi,r.length(),r)}uint64Number(e){let r=ct.fromNumber(e);return this._push(vi,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(vi,r.length(),r)}sint64Number(e){let r=ct.fromNumber(e).zzEncode();return this._push(vi,r.length(),r)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(hc,1,e?1:0)}fixed32(e){return this._push(Ei,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let r=ct.fromBigInt(e);return this._push(Ei,4,r.lo)._push(Ei,4,r.hi)}fixed64Number(e){let r=ct.fromNumber(e);return this._push(Ei,4,r.lo)._push(Ei,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(Zf,4,e)}double(e){return this._push(jf,8,e)}bytes(e){let r=e.length>>>0;return r===0?this._push(hc,1,0):this.uint32(r)._push(Og,r,e)}string(e){let r=tl(e);return r!==0?this.uint32(r)._push(ac,r,e):this._push(hc,1,0)}fork(){return this.states=new dc(this),this.head=this.tail=new Wr(lc,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Wr(lc,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=Pg(this.len),n=0;for(;e!=null;)e.fn(e.val,r,n),n+=e.len,e=e.next;return r}};function hc(t,e,r){e[r]=t&255}function Ug(t,e,r){for(;t>127;)e[r++]=t&127|128,t>>>=7;e[r]=t}var pc=class extends Wr{next;constructor(e,r){super(Ug,e,r),this.next=void 0}};function vi(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 Ei(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 Og(t,e,r){e.set(t,r)}globalThis.Buffer!=null&&(Si.prototype.bytes=function(t){let e=t.length>>>0;return this.uint32(e),e>0&&this._push(Fg,e,t),this},Si.prototype.string=function(t){let e=globalThis.Buffer.byteLength(t);return this.uint32(e),e>0&&this._push(Kg,e,t),this});function Fg(t,e,r){e.set(t,r)}function Kg(t,e,r){t.length<40?ac(t,e,r):e.utf8Write!=null?e.utf8Write(t,r):e.set(Se(t),r)}function mc(){return new Si}function kt(t,e){let r=mc();return e.encode(t,r,{lengthDelimited:!1}),r.finish()}var Dn;(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"})(Dn||(Dn={}));function Lo(t,e,r,n){return{name:t,type:e,encode:r,decode:n}}function $r(t){function e(i){if(t[i.toString()]==null)throw new Error("Invalid enum value");return t[i]}let r=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Lo("enum",Dn.VARINT,r,n)}function Rt(t,e){return Lo("message",Dn.LENGTH_DELIMITED,t,e)}var ut;(function(t){let e;(function(i){i.FIN="FIN",i.STOP_SENDING="STOP_SENDING",i.RESET="RESET",i.FIN_ACK="FIN_ACK"})(e=t.Flag||(t.Flag={}));let r;(function(i){i[i.FIN=0]="FIN",i[i.STOP_SENDING=1]="STOP_SENDING",i[i.RESET=2]="RESET",i[i.FIN_ACK=3]="FIN_ACK"})(r||(r={})),function(i){i.codec=()=>$r(r)}(e=t.Flag||(t.Flag={}));let n;t.codec=()=>(n==null&&(n=Rt((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.flag!=null&&(o.uint32(8),t.Flag.codec().encode(i.flag,o)),i.message!=null&&(o.uint32(18),o.bytes(i.message)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.flag=t.Flag.codec().decode(i);break;case 2:s.message=i.bytes();break;default:i.skipType(c&7);break}}return s})),n),t.encode=i=>kt(i,t.codec()),t.decode=i=>_t(i,t.codec())})(ut||(ut={}));var Mg=16*1024*1024,Vg=30*1e3,Hg=5,qg=2,zg=16*1024,Gg=5e3,Wg=5e3,yc=class extends To{channel;incomingData;maxBufferedAmount;bufferedAmountLowEventTimeout;maxMessageSize;receiveFinAck;finAckTimeout;openTimeout;constructor(e){let r=e.onEnd;switch(e.onEnd=i=>{this.log.trace("readable and writeable ends closed",this.status),Promise.resolve(async()=>{if(!(this.timeline.abort!=null||this.timeline.reset!==null))try{await Vr(this.receiveFinAck.promise,{milliseconds:this.finAckTimeout})}catch(o){this.log.error("error receiving FIN_ACK",o)}}).then(()=>{this.incomingData.end(),r?.(i)}).catch(o=>{this.log.error("error ending stream",o)})},super(e),this.channel=e.channel,this.channel.binaryType="arraybuffer",this.incomingData=Er(),this.bufferedAmountLowEventTimeout=e.bufferedAmountLowEventTimeout??Vg,this.maxBufferedAmount=e.maxBufferedAmount??Mg,this.maxMessageSize=(e.maxMessageSize??zg)-Hg-qg,this.receiveFinAck=Le(),this.finAckTimeout=e.closeTimeout??Gg,this.openTimeout=e.openTimeout??Wg,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 he("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 zr(this.incomingData)){let o=n.processIncomingProtobuf(i);o!=null&&n.sourcePush(new nt(o))}}).catch(i=>{this.log.error("error processing incoming data channel messages",i)})}sendNewStream(){}async _sendMessage(e,r=!0){if(r&&this.channel.bufferedAmount>this.maxBufferedAmount)try{this.log('channel buffer is %d, wait for "bufferedamountlow" event',this.channel.bufferedAmount),await ic(this.channel,"bufferedamountlow",{timeout:this.bufferedAmountLowEventTimeout})}catch(n){throw n instanceof Sn?new he(`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 he(`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 ic(this.channel,"open",{timeout:this.openTimeout}),this.log('channel state is now "%s", sending data',this.channel.readyState)),this.channel.send(e.subarray())}async sendData(e){for(e=e.sublist();e.byteLength>0;){let r=Math.min(e.byteLength,this.maxMessageSize),n=e.subarray(0,r),i=ut.encode({message:n}),o=Cr.single(i);await this._sendMessage(o),e.consume(r)}}async sendReset(){await this._sendFlag(ut.Flag.RESET)}async sendCloseWrite(e){if(await this._sendFlag(ut.Flag.FIN)){this.log.trace("awaiting FIN_ACK");try{await Sr(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(ut.Flag.STOP_SENDING)}processIncomingProtobuf(e){let r=ut.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===ut.Flag.FIN&&(this.remoteCloseWrite(),this.log.trace("sending FIN_ACK"),this._sendFlag(ut.Flag.FIN_ACK).catch(n=>{this.log.error("error sending FIN_ACK immediately",n)})),r.flag===ut.Flag.RESET&&this.reset(),r.flag===ut.Flag.STOP_SENDING&&this.remoteCloseRead(),r.flag===ut.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=ut.encode({flag:e}),n=Cr.single(r);try{return await this._sendMessage(n,!1),!0}catch(i){this.log.error("could not send flag %s",e.toString(),i)}return!1}};function Bn(t){let{channel:e,direction:r}=t;return new yc({id:r==="inbound"?`i${e.id}`:`r${e.id}`,log:t.logger.forComponent(`libp2p:webrtc:stream:${r}:${e.id}`),...t})}var il="/webrtc",Yr=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??il,this.dataChannelOptions=r.dataChannelOptions??{},this.log=e.logger.forComponent("libp2p:webrtc:datachannelmuxerfactory"),this.peerConnection.ondatachannel=({channel:n})=>{if(this.log.trace('incoming early datachannel with channel id %d and label "%s"',n.id),n.label==="init"){this.log.trace("closing early init channel"),n.close();return}let i={},o=Bn({channel:n,direction:"inbound",onEnd:s=>{i.onEnd(s)},logger:e.logger,...this.dataChannelOptions});i.stream=o,i.channel=n,i.onEnd=()=>{this.bufferedStreams=this.bufferedStreams.filter(s=>s.stream.id!==o.id)},this.bufferedStreams.push(i)}}createStreamMuxer(e){return new gc(this.components,{...e,peerConnection:this.peerConnection,dataChannelOptions:this.dataChannelOptions,metrics:this.metrics,streams:this.bufferedStreams,protocol:this.protocol})}},gc=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??il,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.#e(i,n)},logger:this.logger,...this.dataChannelOptions});this.streams.push(i),this.metrics?.increment({incoming_stream:!0}),r?.onIncomingStream?.(i)},this.init.streams.length>0&&queueMicrotask(()=>{this.init.streams.forEach(n=>{n.onEnd=()=>{this.log("incoming early channel %s ended with state %s",n.channel.id,n.channel.readyState),this.#e(n.stream,n.channel)},this.metrics?.increment({incoming_stream:!0}),this.init?.onIncomingStream?.(n.stream)})})}#e(e,r){this.log.trace("stream %s %s %s onEnd",e.direction,e.id,e.protocol),Vf(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=So();sink=Co;newStream(){let e=this.peerConnection.createDataChannel("");this.log.trace("opened outgoing datachannel with channel id %s",e.id);let r=Bn({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 In=globalThis.RTCPeerConnection,No=globalThis.RTCSessionDescription,ol=globalThis.RTCIceCandidate;var xc=class{needNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.needNext=Le(),this.needNext.resolve(),this.haveNext=Le()}[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=Le(),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=Le(),await Sr(this.needNext.promise,r?.signal,r)}};function sl(){return new xc}var Po=class extends Error{code;constructor(e,r){super(e),this.code=r}},bc=class extends Po{type;constructor(e){super(e,"ABORT_ERR"),this.type="aborted"}};function al(t,e){let r=sl();t.sink(r).catch(async s=>{await r.end(s)}),t.sink=async s=>{for await(let a of s)await r.push(a);await r.end()};let n=t.source;t.source[Symbol.iterator]!=null?n=t.source[Symbol.iterator]():t.source[Symbol.asyncIterator]!=null&&(n=t.source[Symbol.asyncIterator]());let i=new nt;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,u=new Promise((f,l)=>{c=()=>{l(new bc("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:l,value:h}=await Promise.race([n.next(),u]);return l===!0?new nt:h}for(;i.byteLength<s;){let{value:l,done:h}=await Promise.race([n.next(),u]);if(h===!0)throw new Po("unexpected end of input","ERR_UNEXPECTED_EOF");i.append(l)}let f=i.sublist(0,s);return i.consume(s),f}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await r.push(s,a):await r.push(s.subarray(),a)},unwrap:()=>{if(i.byteLength>0){let s=t.source;t.source=async function*(){e?.yieldBytes===!1?yield i:yield*i,yield*s}()}return t}}}var Uo=class extends Error{code;constructor(e,r){super(e),this.code=r}},cl=t=>It(t);cl.bytes=0;function Ci(t,e={}){let r=al(t,e);return e.maxDataLength!=null&&e.maxLengthLength==null&&(e.maxLengthLength=rt(e.maxDataLength)),{read:async i=>{let o=-1,s=new nt,a=e?.lengthDecoder??cl;for(;;){s.append(await r.read(1,i));try{o=a(s)}catch(c){if(c instanceof RangeError)continue;throw c}if(e?.maxLengthLength!=null&&s.byteLength>e.maxLengthLength)throw new Uo("message length length too long","ERR_MSG_LENGTH_TOO_LONG");if(o>-1)break}if(e?.maxDataLength!=null&&o>e.maxDataLength)throw new Uo("message length too long","ERR_MSG_DATA_TOO_LONG");return r.read(o,i)},write:async(i,o)=>{await r.write(Cr.single(i,e),o)},writeV:async(i,o)=>{let s=new nt(...i.map(a=>Cr.single(a,e)));await r.write(s,o)},unwrap:()=>r.unwrap()}}function Oo(t,e){let r=Ci(t,e),n={read:async(i,o)=>{let s=await r.read(o);return i.decode(s)},write:async(i,o,s)=>{await r.write(o.encode(i),s)},writeV:async(i,o,s)=>{await r.writeV(i.map(a=>o.encode(a)),s)},pb:i=>({read:async o=>n.read(i,o),write:async(o,s)=>n.write(o,i,s),writeV:async(o,s)=>n.writeV(o,i,s),unwrap:()=>n}),unwrap:()=>r.unwrap()};return n}var ft;(function(t){let e;(function(i){i.SDP_OFFER="SDP_OFFER",i.SDP_ANSWER="SDP_ANSWER",i.ICE_CANDIDATE="ICE_CANDIDATE"})(e=t.Type||(t.Type={}));let r;(function(i){i[i.SDP_OFFER=0]="SDP_OFFER",i[i.SDP_ANSWER=1]="SDP_ANSWER",i[i.ICE_CANDIDATE=2]="ICE_CANDIDATE"})(r||(r={})),function(i){i.codec=()=>$r(r)}(e=t.Type||(t.Type={}));let n;t.codec=()=>(n==null&&(n=Rt((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.type!=null&&(o.uint32(8),t.Type.codec().encode(i.type,o)),i.data!=null&&(o.uint32(18),o.string(i.data)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.type=t.Type.codec().decode(i);break;case 2:s.data=i.string();break;default:i.skipType(c&7);break}}return s})),n),t.encode=i=>kt(i,t.codec()),t.decode=i=>_t(i,t.codec())})(ft||(ft={}));function ul(t){let e=new globalThis.AbortController;function r(){e.abort();for(let o of t)o?.removeEventListener!=null&&o.removeEventListener("abort",r)}for(let o of t){if(o?.aborted===!0){r();break}o?.addEventListener!=null&&o.addEventListener("abort",r)}function n(){for(let o of t)o?.removeEventListener!=null&&o.removeEventListener("abort",r)}let i=e.signal;return i.clear=n,i}var Fo=async(t,e,r,n)=>{let i=new AbortController;t.promise.then(()=>{i.abort()},()=>{i.abort()});let o=ul([i.signal,n.signal]),s=()=>{Io(r.unwrap().unwrap().source,n.log)};o.addEventListener("abort",s);try{for(;;){let a=await Promise.race([t.promise,r.read()]);if(a==null)break;if(a.type!==ft.Type.ICE_CANDIDATE)throw new he("ICE candidate message expected","ERR_NOT_ICE_CANDIDATE");let c=JSON.parse(a.data??"null");if(c===""||c===null){n.log.trace("end-of-candidates received");continue}let u=new ol(c);n.log.trace("%s received new ICE candidate",n.direction,u);try{await e.addIceCandidate(u)}catch(f){n.log.error("%s bad candidate received",n.direction,c,f)}}}catch(a){n.log.error("%s error parsing ICE candidate",n.direction,a)}finally{o.removeEventListener("abort",s),o.clear()}};function Ko(t,e){t[wi?"oniceconnectionstatechange":"onconnectionstatechange"]=r=>{switch(wi?t.iceConnectionState:t.connectionState){case"connected":e.resolve();break;case"failed":case"disconnected":case"closed":e.reject(new he("RTCPeerConnection was closed","ERR_CONNECTION_CLOSED_BEFORE_CONNECTED"));break;default:break}}}async function fl({peerConnection:t,signal:e,metrics:r,multiaddr:n,connectionManager:i,transportManager:o,log:s}){let{baseAddr:a}=ll(n);r?.dialerEvents.increment({open:!0}),s.trace("dialing base address: %a",a);let c=a.getPeerId();if(c==null)throw new he("Relay peer was missing","ERR_INVALID_ADDRESS");let u=i.getConnections(Mr(c)),f,l=!1;u.length===0?(f=await o.dial(a,{signal:e}),l=!0):f=u[0];try{let h=await f.newStream(Mo,{signal:e,runOnTransientConnection:!0}),y=Oo(h).pb(ft),d=Le(),p=()=>{d.reject(new he("SDP handshake aborted","ERR_SDP_HANDSHAKE_ABORTED"))};try{Ko(t,d),e?.addEventListener("abort",p);let m=t.createDataChannel("init");t.onicecandidate=({candidate:S})=>{let v=JSON.stringify(S?.toJSON()??null);s.trace("initiator sending ICE candidate %s",v),y.write({type:ft.Type.ICE_CANDIDATE,data:v},{signal:e}).catch(E=>{s.error("error sending ICE candidate",E)})},t.onicecandidateerror=S=>{s("initiator ICE candidate error",S)};let g=await t.createOffer();s.trace("initiator send SDP offer %s",g.sdp),await y.write({type:ft.Type.SDP_OFFER,data:g.sdp},{signal:e}),await t.setLocalDescription(g).catch(S=>{throw s.error("could not execute setLocalDescription",S),new he("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")});let b=await y.read({signal:e});if(b.type!==ft.Type.SDP_ANSWER)throw new he("remote should send an SDP answer","ERR_SDP_HANDSHAKE_FAILED");s.trace("initiator receive SDP answer %s",b.data);let x=new No({type:"answer",sdp:b.data});return await t.setRemoteDescription(x).catch(S=>{throw s.error("could not execute setRemoteDescription",S),new he("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")}),s.trace("initiator read candidates until connected"),await Fo(d,t,y,{direction:"initiator",signal:e,log:s}),s.trace("initiator connected, closing init channel"),m.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(m){throw t.close(),h.abort(m),m}finally{e?.removeEventListener("abort",p),t.onicecandidate=null,t.onicecandidateerror=null}}finally{if(l)try{await f.close({signal:e})}catch(h){f.abort(h)}}}var $g=q("dns4"),Yg=q("dns6"),Xg=q("dnsaddr"),Xr=Fe(q("dns"),Xg,$g,Yg),qo=Fe(q("ip4"),q("ip6")),Tn=Fe(Y(qo,q("tcp")),Y(Xr,q("tcp"))),zo=Y(qo,q("udp")),Zg=Y(zo,q("utp")),Qg=Y(zo,q("quic")),jg=Y(zo,q("quic-v1")),wc=Fe(Y(Tn,q("ws")),Y(Xr,q("ws"))),Vo=Fe(Y(wc,q("p2p")),wc),vc=Fe(Y(Tn,q("wss")),Y(Xr,q("wss")),Y(Tn,q("tls"),q("ws")),Y(Xr,q("tls"),q("ws"))),Ho=Fe(Y(vc,q("p2p")),vc),Ec=Fe(Y(Tn,q("http")),Y(qo,q("http")),Y(Xr,q("http"))),Sc=Fe(Y(Tn,q("https")),Y(qo,q("https")),Y(Xr,q("https"))),hl=Y(zo,q("webrtc-direct"),q("certhash")),ml=Fe(Y(hl,q("p2p")),hl),dl=Y(jg,q("webtransport"),q("certhash"),q("certhash")),yl=Fe(Y(dl,q("p2p")),dl),gl=Fe(Y(Vo,q("p2p-webrtc-star"),q("p2p")),Y(Ho,q("p2p-webrtc-star"),q("p2p")),Y(Vo,q("p2p-webrtc-star")),Y(Ho,q("p2p-webrtc-star"))),sA=Fe(Y(Vo,q("p2p-websocket-star"),q("p2p")),Y(Ho,q("p2p-websocket-star"),q("p2p")),Y(Vo,q("p2p-websocket-star")),Y(Ho,q("p2p-websocket-star"))),xl=Fe(Y(Ec,q("p2p-webrtc-direct"),q("p2p")),Y(Sc,q("p2p-webrtc-direct"),q("p2p")),Y(Ec,q("p2p-webrtc-direct")),Y(Sc,q("p2p-webrtc-direct"))),Zr=Fe(wc,vc,Ec,Sc,gl,xl,Tn,Zg,Qg,Xr,ml,yl),aA=Fe(Y(Zr,q("p2p-stardust"),q("p2p")),Y(Zr,q("p2p-stardust"))),Dr=Fe(Y(Zr,q("p2p")),gl,xl,ml,yl,q("p2p")),pl=Fe(Y(Dr,q("p2p-circuit"),Dr),Y(Dr,q("p2p-circuit")),Y(q("p2p-circuit"),Dr),Y(Zr,q("p2p-circuit")),Y(q("p2p-circuit"),Zr),q("p2p-circuit")),bl=()=>Fe(Y(pl,bl),pl),rr=bl(),cA=Fe(Y(rr,Dr,rr),Y(Dr,rr),Y(rr,Dr),rr,Dr);var uA=Fe(Y(rr,q("webrtc"),q("p2p")),Y(rr,q("webrtc")),Y(Zr,q("webrtc"),q("p2p")),Y(Zr,q("webrtc")),q("webrtc"));function wl(t){function e(r){let n;try{n=tr(r)}catch{return!1}let i=t(n.protoNames());return i===null?!1:i===!0||i===!1?i:i.length===0}return e}function Y(...t){function e(r){if(r.length<t.length)return null;let n=r;return t.some(i=>(n=typeof i=="function"?i().partialMatch(r):i.partialMatch(r),Array.isArray(n)&&(r=n),n===null)),n}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:wl(e),partialMatch:e}}function Fe(...t){function e(n){let i=null;return t.some(o=>{let s=typeof o=="function"?o().partialMatch(n):o.partialMatch(n);return s!=null?(i=s,!0):!1}),i}return{toString:function(){return"{ "+t.join(" ")+" }"},input:t,matches:wl(e),partialMatch:e}}function q(t){let e=t;function r(i){let o;try{o=tr(i)}catch{return!1}let s=o.protoNames();return s.length===1&&s[0]===e}function n(i){return i.length===0?null:i[0]===e?i.slice(1):null}return{toString:function(){return e},matches:r,partialMatch:n}}var Go=class extends so{peerId;transportManager;shutdownController;constructor(e,r){super(),this.peerId=e.peerId,this.transportManager=e.transportManager,this.shutdownController=r.shutdownController}async listen(){this.safeDispatchEvent("listening",{})}getAddrs(){return this.transportManager.getListeners().filter(e=>e!==this).map(e=>e.getAddrs().filter(r=>rr.matches(r)).map(r=>r.encapsulate(`/webrtc/p2p/${this.peerId}`))).flat()}async close(){this.shutdownController.abort(),this.safeDispatchEvent("close",{})}};async function vl({peerConnection:t,stream:e,signal:r,connection:n,log:i}){i.trace("new inbound signaling stream");let o=Oo(e).pb(ft);try{let a=Le(),c=Le();r.onabort=()=>{a.reject(new he("Timed out while trying to connect","ERR_TIMEOUT"))},t.onicecandidate=({candidate:h})=>{c.promise.then(async()=>{let y=JSON.stringify(h?.toJSON()??null);i.trace("recipient sending ICE candidate %s",y),await o.write({type:ft.Type.ICE_CANDIDATE,data:y},{signal:r})},y=>{i.error("cannot set candidate since sending answer failed",y),a.reject(y)})},Ko(t,a);let u=await o.read({signal:r});if(u.type!==ft.Type.SDP_OFFER)throw new he(`expected message type SDP_OFFER, received: ${u.type??"undefined"} `,"ERR_SDP_HANDSHAKE_FAILED");i.trace("recipient receive SDP offer %s",u.data);let f=new No({type:"offer",sdp:u.data});await t.setRemoteDescription(f).catch(h=>{throw i.error("could not execute setRemoteDescription",h),new he("Failed to set remoteDescription","ERR_SDP_HANDSHAKE_FAILED")});let l=await t.createAnswer().catch(h=>{throw i.error("could not execute createAnswer",h),c.reject(h),new he("Failed to create answer","ERR_SDP_HANDSHAKE_FAILED")});i.trace("recipient send SDP answer %s",l.sdp),await o.write({type:ft.Type.SDP_ANSWER,data:l.sdp},{signal:r}),await t.setLocalDescription(l).catch(h=>{throw i.error("could not execute setLocalDescription",h),c.reject(h),new he("Failed to set localDescription","ERR_SDP_HANDSHAKE_FAILED")}),c.resolve(),i.trace("recipient read candidates until connected"),await Fo(a,t,o,{direction:"recipient",signal:r,log:i}),i.trace("recipient connected, closing signaling stream"),await o.unwrap().unwrap().close({signal:r})}catch(a){if(t.connectionState!=="connected")throw i.error("error while handling signaling stream from peer %a",n.remoteAddr,a),t.close(),a;i("error while handling signaling stream from peer %a, ignoring as the RTCPeerConnection is already connected",n.remoteAddr,a)}let s=tr(`/webrtc/p2p/${n.remoteAddr.getPeerId()}`);return i.trace("recipient connected to remote address %s",s),{remoteAddress:s}}var Jg="/webrtc",e2="/p2p-circuit",Mo="/webrtc-signaling/0.0.1",t2=30*1e3,Wo=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,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(Mo,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(Mo),this._started=!1}createListener(e){return new Go(this.components,{shutdownController:this.shutdownController})}[Symbol.toStringTag]="@libp2p/webrtc";[oo]=!0;filter(e){return e.filter(_f.exactMatch)}async dial(e,r){this.log.trace("dialing address: %a",e);let n=new In(this.init.rtcConfiguration),i=new Yr(this.components,{peerConnection:n,dataChannelOptions:this.init.dataChannel}),{remoteAddress:o}=await fl({peerConnection:n,multiaddr:e,dataChannelOptions:this.init.dataChannel,signal:r.signal,connectionManager:this.components.connectionManager,transportManager:this.components.transportManager,log:this.log}),s=new Hr(this.components,{peerConnection:n,timeline:{open:Date.now()},remoteAddr:o,metrics:this.metrics?.dialerEvents}),a=await r.upgrader.upgradeOutbound(s,{skipProtection:!0,skipEncryption:!0,muxerFactory:i});return this._closeOnShutdown(n,s),a}async _onProtocol({connection:e,stream:r}){let n=AbortSignal.timeout(this.init.inboundConnectionTimeout??t2),i=new In(this.init.rtcConfiguration),o=new Yr(this.components,{peerConnection:i,dataChannelOptions:this.init.dataChannel});try{let{remoteAddress:s}=await vl({peerConnection:i,connection:e,stream:r,signal:n,log:this.log}),a=new Hr(this.components,{peerConnection:i,timeline:{open:new Date().getTime()},remoteAddr:s,metrics:this.metrics?.listenerEvents});this._closeOnShutdown(i,a),await this.components.upgrader.upgradeInbound(a,{skipEncryption:!0,skipProtection:!0,muxerFactory:o}),await r.close({signal:n})}catch(s){throw r.abort(s),s}}_closeOnShutdown(e,r){let n=()=>{r.close().catch(i=>{this.log.error("could not close WebRTCMultiaddrConnection",i)})};this.shutdownController.signal.addEventListener("abort",n),e.addEventListener("close",()=>{this.shutdownController.signal.removeEventListener("abort",n)})}};function ll(t){let e=t.toString().split(Jg+"/");if(e.length!==2)throw new he("webrtc protocol was not present in multiaddr",pt.ERR_INVALID_MULTIADDR);if(!e[0].includes(e2))throw new he("p2p-circuit protocol was not present in multiaddr",pt.ERR_INVALID_MULTIADDR);let r=tr(e[0]),i=tr("/"+e[1]).getPeerId();if(i==null)throw new he("destination peer id was missing",pt.ERR_INVALID_MULTIADDR);let o=r.protos().pop();if(o===void 0)throw new he("invalid multiaddr",pt.ERR_INVALID_MULTIADDR);return o.name!=="p2p"&&(r=r.encapsulate(`/p2p/${i}`)),{baseAddr:r,peerId:Mr(i)}}function Cc(){let t=Le(),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 El(){let t=Cc(),e=Cc();return[{source:t.source,sink:e.sink},{source:e.source,sink:t.sink}]}function r2(t){return t[Symbol.asyncIterator]!=null}function n2(...t){let e=[];for(let r of t)r2(r)||e.push(r);return e.length===t.length?function*(){for(let r of e)yield*r}():async function*(){let r=Er({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(t.map(async n=>{for await(let i of n)r.push(i)})),r.end()}catch(n){r.end(n)}}),yield*r}()}var Sl=n2;function Cl(t,...e){if(t==null)throw new Error("Empty pipeline");if(Ac(t)){let n=t;t=()=>n.source}else if(Dl(t)||Al(t)){let n=t;t=()=>n}let r=[t,...e];if(r.length>1&&Ac(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++)Ac(r[n])&&(r[n]=o2(r[n]));return i2(...r)}var i2=(...t)=>{let e;for(;t.length>0;)e=t.shift()(e);return e},Al=t=>t?.[Symbol.asyncIterator]!=null,Dl=t=>t?.[Symbol.iterator]!=null,Ac=t=>t==null?!1:t.sink!=null&&t.source!=null,o2=t=>e=>{let r=t.sink(e);if(r?.then!=null){let n=Er({objectMode:!0});r.then(()=>{n.end()},s=>{n.end(s)});let i,o=t.source;if(Al(o))i=async function*(){yield*o,n.end()};else if(Dl(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Sl(n,i())}return t.source};var Bl=!!globalThis.process?.env?.DUMP_SESSION_KEYS;var s2=t=>t instanceof Uint8Array;var nr=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),Il=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),a2=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!a2)throw new Error("Non little-endian hardware is not supported");function $o(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Yo(t){if(typeof t=="string")t=$o(t);else if(s2(t))t=t.slice();else throw new Error(`expected Uint8Array, got ${typeof t}`);return t}var c2=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function Tl(t,e){if(e!==void 0&&(typeof e!="object"||!c2(e)))throw new Error("options must be object or undefined");return Object.assign(t,e)}function Qr(t,e){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");if(typeof e=="number"&&t.length!==e)throw new Error(`Uint8Array length ${e} expected`)}function _l(t,e){if(t.length!==e.length)throw new Error("equalBytes: Different size of Uint8Arrays");let r=!0;for(let n=0;n<t.length;n++)r&&(r=t[n]===e[n]);return r}var Dc=(t,e)=>(Object.assign(e,t),e);function Bc(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,u=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+u,a,n)}function Xo(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Ic(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}function _n(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Tc(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 kl(t,e){_n(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var je=(t,e)=>t[e++]&255|(t[e++]&255)<<8,_c=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=Yo(e),Qr(e,32);let r=je(e,0),n=je(e,2),i=je(e,4),o=je(e,6),s=je(e,8),a=je(e,10),c=je(e,12),u=je(e,14);this.r[0]=r&8191,this.r[1]=(r>>>13|n<<3)&8191,this.r[2]=(n>>>10|i<<6)&7939,this.r[3]=(i>>>7|o<<9)&8191,this.r[4]=(o>>>4|s<<12)&255,this.r[5]=s>>>1&8190,this.r[6]=(s>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|u<<8)&8191,this.r[9]=u>>>5&127;for(let f=0;f<8;f++)this.pad[f]=je(e,16+2*f)}process(e,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],h=s[5],y=s[6],d=s[7],p=s[8],m=s[9],g=je(e,r+0),b=je(e,r+2),x=je(e,r+4),S=je(e,r+6),v=je(e,r+8),E=je(e,r+10),B=je(e,r+12),D=je(e,r+14),U=o[0]+(g&8191),F=o[1]+((g>>>13|b<<3)&8191),O=o[2]+((b>>>10|x<<6)&8191),M=o[3]+((x>>>7|S<<9)&8191),G=o[4]+((S>>>4|v<<12)&8191),Z=o[5]+(v>>>1&8191),I=o[6]+((v>>>14|E<<2)&8191),R=o[7]+((E>>>11|B<<5)&8191),_=o[8]+((B>>>8|D<<8)&8191),k=o[9]+(D>>>5|i),C=0,P=C+U*a+F*(5*m)+O*(5*p)+M*(5*d)+G*(5*y);C=P>>>13,P&=8191,P+=Z*(5*h)+I*(5*l)+R*(5*f)+_*(5*u)+k*(5*c),C+=P>>>13,P&=8191;let K=C+U*c+F*a+O*(5*m)+M*(5*p)+G*(5*d);C=K>>>13,K&=8191,K+=Z*(5*y)+I*(5*h)+R*(5*l)+_*(5*f)+k*(5*u),C+=K>>>13,K&=8191;let H=C+U*u+F*c+O*a+M*(5*m)+G*(5*p);C=H>>>13,H&=8191,H+=Z*(5*d)+I*(5*y)+R*(5*h)+_*(5*l)+k*(5*f),C+=H>>>13,H&=8191;let X=C+U*f+F*u+O*c+M*a+G*(5*m);C=X>>>13,X&=8191,X+=Z*(5*p)+I*(5*d)+R*(5*y)+_*(5*h)+k*(5*l),C+=X>>>13,X&=8191;let Q=C+U*l+F*f+O*u+M*c+G*a;C=Q>>>13,Q&=8191,Q+=Z*(5*m)+I*(5*p)+R*(5*d)+_*(5*y)+k*(5*h),C+=Q>>>13,Q&=8191;let ie=C+U*h+F*l+O*f+M*u+G*c;C=ie>>>13,ie&=8191,ie+=Z*a+I*(5*m)+R*(5*p)+_*(5*d)+k*(5*y),C+=ie>>>13,ie&=8191;let j=C+U*y+F*h+O*l+M*f+G*u;C=j>>>13,j&=8191,j+=Z*c+I*a+R*(5*m)+_*(5*p)+k*(5*d),C+=j>>>13,j&=8191;let ee=C+U*d+F*y+O*h+M*l+G*f;C=ee>>>13,ee&=8191,ee+=Z*u+I*c+R*a+_*(5*m)+k*(5*p),C+=ee>>>13,ee&=8191;let ve=C+U*p+F*d+O*y+M*h+G*l;C=ve>>>13,ve&=8191,ve+=Z*f+I*u+R*c+_*a+k*(5*m),C+=ve>>>13,ve&=8191;let be=C+U*m+F*p+O*d+M*y+G*h;C=be>>>13,be&=8191,be+=Z*l+I*f+R*u+_*c+k*a,C+=be>>>13,be&=8191,C=(C<<2)+C|0,C=C+P|0,P=C&8191,C=C>>>13,K+=C,o[0]=P,o[1]=K,o[2]=H,o[3]=X,o[4]=Q,o[5]=ie,o[6]=j,o[7]=ee,o[8]=ve,o[9]=be}finalize(){let{h:e,pad:r}=this,n=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=i,i=e[a]>>>13,e[a]&=8191;e[0]+=i*5,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,n[0]=e[0]+5,i=n[0]>>>13,n[0]&=8191;for(let a=1;a<10;a++)n[a]=e[a]+i,i=n[a]>>>13,n[a]&=8191;n[9]-=8192;let o=(i^1)-1;for(let a=0;a<10;a++)n[a]&=o;o=~o;for(let a=0;a<10;a++)e[a]=e[a]&o|n[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let s=e[0]+r[0];e[0]=s&65535;for(let a=1;a<8;a++)s=(e[a]+r[a]|0)+(s>>>16)|0,e[a]=s&65535}update(e){Tc(this);let{buffer:r,blockLen:n}=this;e=Yo(e);let i=e.length;for(let o=0;o<i;){let s=Math.min(n-this.pos,i-o);if(s===n){for(;n<=i-o;o+=n)this.process(e,o);continue}r.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===n&&(this.process(r,0,!1),this.pos=0)}return this}destroy(){this.h.fill(0),this.r.fill(0),this.buffer.fill(0),this.pad.fill(0)}digestInto(e){Tc(this),kl(e,this),this.finished=!0;let{buffer:r,h:n}=this,{pos:i}=this;if(i){for(r[i++]=1;i<16;i++)r[i]=0;this.process(r,0,!0)}this.finalize();let o=0;for(let s=0;s<8;s++)e[o++]=n[s]>>>0,e[o++]=n[s]>>>8;return e}digest(){let{buffer:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}};function u2(t){let e=(n,i)=>t(i).update(Yo(n)).digest(),r=t(new Uint8Array(32));return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=n=>t(n),e}var Rl=u2(t=>new _c(t));var f2=$o("expand 16-byte k"),l2=$o("expand 32-byte k"),h2=nr(f2),d2=nr(l2);function W(t,e){return t<<e|t>>>32-e}function kc(t){return t.byteOffset%4===0}var Zo=64,p2=16,Nl=2**32-1,Ll=new Uint32Array;function m2(t,e,r,n,i,o,s,a){let c=i.length,u=new Uint8Array(Zo),f=nr(u),l=kc(i)&&kc(o),h=l?nr(i):Ll,y=l?nr(o):Ll;for(let d=0;d<c;s++){if(t(e,r,n,f,s,a),s>=Nl)throw new Error("arx: counter overflow");let p=Math.min(Zo,c-d);if(l&&p===Zo){let m=d/4;if(d%4!==0)throw new Error("arx: invalid block position");for(let g=0,b;g<p2;g++)b=m+g,y[b]=h[b]^f[g];d+=Zo;continue}for(let m=0,g;m<p;m++)g=d+m,o[g]=i[g]^u[m];d+=p}}function Rc(t,e){let{allowShortKeys:r,extendNonceFn:n,counterLength:i,counterRight:o,rounds:s}=Tl({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return Xo(i),Xo(s),Ic(o),Ic(r),(a,c,u,f,l=0)=>{_n(a),_n(c),_n(u);let h=u.length;if(f||(f=new Uint8Array(h)),_n(f),Xo(l),l<0||l>=Nl)throw new Error("arx: counter overflow");if(f.length<h)throw new Error(`arx: output (${f.length}) is shorter than data (${h})`);let y=[],d=a.length,p,m;if(d===32)p=a.slice(),y.push(p),m=d2;else if(d===16&&r)p=new Uint8Array(32),p.set(a),p.set(a,16),m=h2,y.push(p);else throw new Error(`arx: invalid 32-byte key, got length=${d}`);kc(c)||(c=c.slice(),y.push(c));let g=nr(p);if(n){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");n(m,g,nr(c.subarray(0,16)),g),c=c.subarray(16)}let b=16-i;if(b!==c.length)throw new Error(`arx: nonce must be ${b} or 16 bytes`);if(b!==12){let S=new Uint8Array(12);S.set(c,o?0:12-c.length),c=S,y.push(c)}let x=nr(c);for(m2(t,m,g,x,u,f,l,s);y.length>0;)y.pop().fill(0);return f}}function Ol(t,e,r,n,i,o=20){let s=t[0],a=t[1],c=t[2],u=t[3],f=e[0],l=e[1],h=e[2],y=e[3],d=e[4],p=e[5],m=e[6],g=e[7],b=i,x=r[0],S=r[1],v=r[2],E=s,B=a,D=c,U=u,F=f,O=l,M=h,G=y,Z=d,I=p,R=m,_=g,k=b,C=x,P=S,K=v;for(let X=0;X<o;X+=2)E=E+F|0,k=W(k^E,16),Z=Z+k|0,F=W(F^Z,12),E=E+F|0,k=W(k^E,8),Z=Z+k|0,F=W(F^Z,7),B=B+O|0,C=W(C^B,16),I=I+C|0,O=W(O^I,12),B=B+O|0,C=W(C^B,8),I=I+C|0,O=W(O^I,7),D=D+M|0,P=W(P^D,16),R=R+P|0,M=W(M^R,12),D=D+M|0,P=W(P^D,8),R=R+P|0,M=W(M^R,7),U=U+G|0,K=W(K^U,16),_=_+K|0,G=W(G^_,12),U=U+G|0,K=W(K^U,8),_=_+K|0,G=W(G^_,7),E=E+O|0,K=W(K^E,16),R=R+K|0,O=W(O^R,12),E=E+O|0,K=W(K^E,8),R=R+K|0,O=W(O^R,7),B=B+M|0,k=W(k^B,16),_=_+k|0,M=W(M^_,12),B=B+M|0,k=W(k^B,8),_=_+k|0,M=W(M^_,7),D=D+G|0,C=W(C^D,16),Z=Z+C|0,G=W(G^Z,12),D=D+G|0,C=W(C^D,8),Z=Z+C|0,G=W(G^Z,7),U=U+F|0,P=W(P^U,16),I=I+P|0,F=W(F^I,12),U=U+F|0,P=W(P^U,8),I=I+P|0,F=W(F^I,7);let H=0;n[H++]=s+E|0,n[H++]=a+B|0,n[H++]=c+D|0,n[H++]=u+U|0,n[H++]=f+F|0,n[H++]=l+O|0,n[H++]=h+M|0,n[H++]=y+G|0,n[H++]=d+Z|0,n[H++]=p+I|0,n[H++]=m+R|0,n[H++]=g+_|0,n[H++]=b+k|0,n[H++]=x+C|0,n[H++]=S+P|0,n[H++]=v+K|0}function y2(t,e,r,n){let i=t[0],o=t[1],s=t[2],a=t[3],c=e[0],u=e[1],f=e[2],l=e[3],h=e[4],y=e[5],d=e[6],p=e[7],m=r[0],g=r[1],b=r[2],x=r[3];for(let v=0;v<20;v+=2)i=i+c|0,m=W(m^i,16),h=h+m|0,c=W(c^h,12),i=i+c|0,m=W(m^i,8),h=h+m|0,c=W(c^h,7),o=o+u|0,g=W(g^o,16),y=y+g|0,u=W(u^y,12),o=o+u|0,g=W(g^o,8),y=y+g|0,u=W(u^y,7),s=s+f|0,b=W(b^s,16),d=d+b|0,f=W(f^d,12),s=s+f|0,b=W(b^s,8),d=d+b|0,f=W(f^d,7),a=a+l|0,x=W(x^a,16),p=p+x|0,l=W(l^p,12),a=a+l|0,x=W(x^a,8),p=p+x|0,l=W(l^p,7),i=i+u|0,x=W(x^i,16),d=d+x|0,u=W(u^d,12),i=i+u|0,x=W(x^i,8),d=d+x|0,u=W(u^d,7),o=o+f|0,m=W(m^o,16),p=p+m|0,f=W(f^p,12),o=o+f|0,m=W(m^o,8),p=p+m|0,f=W(f^p,7),s=s+l|0,g=W(g^s,16),h=h+g|0,l=W(l^h,12),s=s+l|0,g=W(g^s,8),h=h+g|0,l=W(l^h,7),a=a+c|0,b=W(b^a,16),y=y+b|0,c=W(c^y,12),a=a+c|0,b=W(b^a,8),y=y+b|0,c=W(c^y,7);let S=0;n[S++]=i,n[S++]=o,n[S++]=s,n[S++]=a,n[S++]=m,n[S++]=g,n[S++]=b,n[S++]=x}var g2=Rc(Ol,{counterRight:!1,counterLength:4,allowShortKeys:!1}),x2=Rc(Ol,{counterRight:!1,counterLength:8,extendNonceFn:y2,allowShortKeys:!1});var b2=new Uint8Array(16),Pl=(t,e)=>{t.update(e);let r=e.length%16;r&&t.update(b2.subarray(r))},w2=new Uint8Array(32);function Ul(t,e,r,n,i){let o=t(e,r,w2),s=Rl.create(o);i&&Pl(s,i),Pl(s,n);let a=new Uint8Array(16),c=Il(a);Bc(c,0,BigInt(i?i.length:0),!0),Bc(c,8,BigInt(n.length),!0),s.update(a);let u=s.digest();return o.fill(0),u}var Fl=t=>(e,r,n)=>(Qr(e,32),Qr(r),{encrypt:(o,s)=>{let a=o.length,c=a+16;s?Qr(s,c):s=new Uint8Array(c),t(e,r,o,s,1);let u=Ul(t,e,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?Qr(s,c):s=new Uint8Array(c);let u=o.subarray(0,-16),f=o.subarray(-16),l=Ul(t,e,r,u,n);if(!_l(f,l))throw new Error("invalid tag");return t(e,r,u,s,1),s}}),Lc=Dc({blockSize:64,nonceLength:12,tagLength:16},Fl(g2)),rD=Dc({blockSize:64,nonceLength:24,tagLength:16},Fl(x2));function Qo(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}function Nc(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}function Ai(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Qo(t.outputLen),Qo(t.blockLen)}function kn(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 Kl(t,e){Nc(t);let r=e.outputLen;if(t.length<r)throw new Error(`digestInto() expects output buffer of length at least ${r}`)}var jo=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Ml=t=>t instanceof Uint8Array;var Jo=t=>new DataView(t.buffer,t.byteOffset,t.byteLength),Lt=(t,e)=>t<<32-e|t>>>e,v2=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!v2)throw new Error("Non little-endian hardware is not supported");function Pc(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function Br(t){if(typeof t=="string"&&(t=Pc(t)),!Ml(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}function es(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!Ml(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}var Rn=class{clone(){return this._cloneInto()}},aD={}.toString;function ts(t){let e=n=>t().update(Br(n)).digest(),r=t();return e.outputLen=r.outputLen,e.blockLen=r.blockLen,e.create=()=>t(),e}function jr(t=32){if(jo&&typeof jo.getRandomValues=="function")return jo.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function E2(t,e,r,n){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,r,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(r>>i&o),a=Number(r&o),c=n?4:0,u=n?0:4;t.setUint32(e+c,s,n),t.setUint32(e+u,a,n)}var Ln=class extends Rn{constructor(e,r,n,i){super(),this.blockLen=e,this.outputLen=r,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Jo(this.buffer)}update(e){kn(this);let{view:r,buffer:n,blockLen:i}=this;e=Br(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=Jo(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(r,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){kn(this),Kl(e,this),this.finished=!0;let{buffer:r,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;r[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let l=s;l<i;l++)r[l]=0;E2(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=Jo(e),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:e,outputLen:r}=this;this.digestInto(e);let n=e.slice(0,r);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:r,buffer:n,length:i,finished:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%r&&e.buffer.set(n),e}};var rs=BigInt(4294967295),Uc=BigInt(32);function Vl(t,e=!1){return e?{h:Number(t&rs),l:Number(t>>Uc&rs)}:{h:Number(t>>Uc&rs)|0,l:Number(t&rs)|0}}function S2(t,e=!1){let r=new Uint32Array(t.length),n=new Uint32Array(t.length);for(let i=0;i<t.length;i++){let{h:o,l:s}=Vl(t[i],e);[r[i],n[i]]=[o,s]}return[r,n]}var C2=(t,e)=>BigInt(t>>>0)<<Uc|BigInt(e>>>0),A2=(t,e,r)=>t>>>r,D2=(t,e,r)=>t<<32-r|e>>>r,B2=(t,e,r)=>t>>>r|e<<32-r,I2=(t,e,r)=>t<<32-r|e>>>r,T2=(t,e,r)=>t<<64-r|e>>>r-32,_2=(t,e,r)=>t>>>r-32|e<<64-r,k2=(t,e)=>e,R2=(t,e)=>t,L2=(t,e,r)=>t<<r|e>>>32-r,N2=(t,e,r)=>e<<r|t>>>32-r,P2=(t,e,r)=>e<<r-32|t>>>64-r,U2=(t,e,r)=>t<<r-32|e>>>64-r;function O2(t,e,r,n){let i=(e>>>0)+(n>>>0);return{h:t+r+(i/2**32|0)|0,l:i|0}}var F2=(t,e,r)=>(t>>>0)+(e>>>0)+(r>>>0),K2=(t,e,r,n)=>e+r+n+(t/2**32|0)|0,M2=(t,e,r,n)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0),V2=(t,e,r,n,i)=>e+r+n+i+(t/2**32|0)|0,H2=(t,e,r,n,i)=>(t>>>0)+(e>>>0)+(r>>>0)+(n>>>0)+(i>>>0),q2=(t,e,r,n,i,o)=>e+r+n+i+o+(t/2**32|0)|0;var z2={fromBig:Vl,split:S2,toBig:C2,shrSH:A2,shrSL:D2,rotrSH:B2,rotrSL:I2,rotrBH:T2,rotrBL:_2,rotr32H:k2,rotr32L:R2,rotlSH:L2,rotlSL:N2,rotlBH:P2,rotlBL:U2,add:O2,add3L:F2,add3H:K2,add4L:M2,add4H:V2,add5H:q2,add5L:H2},re=z2;var[G2,W2]=re.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))),Ir=new Uint32Array(80),Tr=new Uint32Array(80),Oc=class extends Ln{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:r,Bh:n,Bl:i,Ch:o,Cl:s,Dh:a,Dl:c,Eh:u,El:f,Fh:l,Fl:h,Gh:y,Gl:d,Hh:p,Hl:m}=this;return[e,r,n,i,o,s,a,c,u,f,l,h,y,d,p,m]}set(e,r,n,i,o,s,a,c,u,f,l,h,y,d,p,m){this.Ah=e|0,this.Al=r|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=u|0,this.El=f|0,this.Fh=l|0,this.Fl=h|0,this.Gh=y|0,this.Gl=d|0,this.Hh=p|0,this.Hl=m|0}process(e,r){for(let x=0;x<16;x++,r+=4)Ir[x]=e.getUint32(r),Tr[x]=e.getUint32(r+=4);for(let x=16;x<80;x++){let S=Ir[x-15]|0,v=Tr[x-15]|0,E=re.rotrSH(S,v,1)^re.rotrSH(S,v,8)^re.shrSH(S,v,7),B=re.rotrSL(S,v,1)^re.rotrSL(S,v,8)^re.shrSL(S,v,7),D=Ir[x-2]|0,U=Tr[x-2]|0,F=re.rotrSH(D,U,19)^re.rotrBH(D,U,61)^re.shrSH(D,U,6),O=re.rotrSL(D,U,19)^re.rotrBL(D,U,61)^re.shrSL(D,U,6),M=re.add4L(B,O,Tr[x-7],Tr[x-16]),G=re.add4H(M,E,F,Ir[x-7],Ir[x-16]);Ir[x]=G|0,Tr[x]=M|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:u,Dl:f,Eh:l,El:h,Fh:y,Fl:d,Gh:p,Gl:m,Hh:g,Hl:b}=this;for(let x=0;x<80;x++){let S=re.rotrSH(l,h,14)^re.rotrSH(l,h,18)^re.rotrBH(l,h,41),v=re.rotrSL(l,h,14)^re.rotrSL(l,h,18)^re.rotrBL(l,h,41),E=l&y^~l&p,B=h&d^~h&m,D=re.add5L(b,v,B,W2[x],Tr[x]),U=re.add5H(D,g,S,E,G2[x],Ir[x]),F=D|0,O=re.rotrSH(n,i,28)^re.rotrBH(n,i,34)^re.rotrBH(n,i,39),M=re.rotrSL(n,i,28)^re.rotrBL(n,i,34)^re.rotrBL(n,i,39),G=n&o^n&a^o&a,Z=i&s^i&c^s&c;g=p|0,b=m|0,p=y|0,m=d|0,y=l|0,d=h|0,{h:l,l:h}=re.add(u|0,f|0,U|0,F|0),u=a|0,f=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let I=re.add3L(F,M,Z);n=re.add3H(I,U,O,G),i=I|0}({h:n,l:i}=re.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=re.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=re.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:u,l:f}=re.add(this.Dh|0,this.Dl|0,u|0,f|0),{h:l,l:h}=re.add(this.Eh|0,this.El|0,l|0,h|0),{h:y,l:d}=re.add(this.Fh|0,this.Fl|0,y|0,d|0),{h:p,l:m}=re.add(this.Gh|0,this.Gl|0,p|0,m|0),{h:g,l:b}=re.add(this.Hh|0,this.Hl|0,g|0,b|0),this.set(n,i,o,s,a,c,u,f,l,h,y,d,p,m,g,b)}roundClean(){Ir.fill(0),Tr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Fc=ts(()=>new Oc);var os={};fe(os,{bitGet:()=>J2,bitLen:()=>j2,bitMask:()=>Di,bitSet:()=>ex,bytesToHex:()=>ir,bytesToNumberBE:()=>or,bytesToNumberLE:()=>Nt,concatBytes:()=>ar,createHmacDrbg:()=>Vc,ensureBytes:()=>Ae,equalBytes:()=>Z2,hexToBytes:()=>Jr,hexToNumber:()=>Mc,numberToBytesBE:()=>_r,numberToBytesLE:()=>sr,numberToHexUnpadded:()=>zl,numberToVarBytesBE:()=>X2,utf8ToBytes:()=>Q2,validateObject:()=>wt});var ql=BigInt(0),ns=BigInt(1),$2=BigInt(2),is=t=>t instanceof Uint8Array,Y2=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function ir(t){if(!is(t))throw new Error("Uint8Array expected");let e="";for(let r=0;r<t.length;r++)e+=Y2[t[r]];return e}function zl(t){let e=t.toString(16);return e.length&1?`0${e}`:e}function Mc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return BigInt(t===""?"0":`0x${t}`)}function Jr(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let r=new Uint8Array(e/2);for(let n=0;n<r.length;n++){let i=n*2,o=t.slice(i,i+2),s=Number.parseInt(o,16);if(Number.isNaN(s)||s<0)throw new Error("Invalid byte sequence");r[n]=s}return r}function or(t){return Mc(ir(t))}function Nt(t){if(!is(t))throw new Error("Uint8Array expected");return Mc(ir(Uint8Array.from(t).reverse()))}function _r(t,e){return Jr(t.toString(16).padStart(e*2,"0"))}function sr(t,e){return _r(t,e).reverse()}function X2(t){return Jr(zl(t))}function Ae(t,e,r){let n;if(typeof e=="string")try{n=Jr(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else if(is(e))n=Uint8Array.from(e);else throw new Error(`${t} must be hex string or Uint8Array`);let i=n.length;if(typeof r=="number"&&i!==r)throw new Error(`${t} expected ${r} bytes, got ${i}`);return n}function ar(...t){let e=new Uint8Array(t.reduce((n,i)=>n+i.length,0)),r=0;return t.forEach(n=>{if(!is(n))throw new Error("Uint8Array expected");e.set(n,r),r+=n.length}),e}function Z2(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function Q2(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function j2(t){let e;for(e=0;t>ql;t>>=ns,e+=1);return e}function J2(t,e){return t>>BigInt(e)&ns}var ex=(t,e,r)=>t|(r?ns:ql)<<BigInt(e),Di=t=>($2<<BigInt(t-1))-ns,Kc=t=>new Uint8Array(t),Hl=t=>Uint8Array.from(t);function Vc(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=Kc(t),i=Kc(t),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...l)=>r(i,n,...l),c=(l=Kc())=>{i=a(Hl([0]),l),n=a(),l.length!==0&&(i=a(Hl([1]),l),n=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let l=0,h=[];for(;l<e;){n=a();let y=n.slice();h.push(y),l+=n.length}return ar(...h)};return(l,h)=>{s(),c(l);let y;for(;!(y=h(u()));)c();return s(),y}}var tx={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||t instanceof Uint8Array,isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function wt(t,e,r={}){let n=(i,o,s)=>{let a=tx[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=t[i];if(!(s&&c===void 0)&&!a(c,t))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(r))n(i,o,!0);return t}var ze=BigInt(0),Te=BigInt(1),en=BigInt(2),rx=BigInt(3),Hc=BigInt(4),Gl=BigInt(5),Wl=BigInt(8),nx=BigInt(9),ix=BigInt(16);function pe(t,e){let r=t%e;return r>=ze?r:e+r}function qc(t,e,r){if(r<=ze||e<ze)throw new Error("Expected power/modulo > 0");if(r===Te)return ze;let n=Te;for(;e>ze;)e&Te&&(n=n*t%r),t=t*t%r,e>>=Te;return n}function De(t,e,r){let n=t;for(;e-- >ze;)n*=n,n%=r;return n}function ss(t,e){if(t===ze||e<=ze)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let r=pe(t,e),n=e,i=ze,o=Te,s=Te,a=ze;for(;r!==ze;){let u=n/r,f=n%r,l=i-s*u,h=o-a*u;n=r,r=f,i=s,o=a,s=l,a=h}if(n!==Te)throw new Error("invert: does not exist");return pe(i,e)}function ox(t){let e=(t-Te)/en,r,n,i;for(r=t-Te,n=0;r%en===ze;r/=en,n++);for(i=en;i<t&&qc(i,e,t)!==t-Te;i++);if(n===1){let s=(t+Te)/Hc;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+Te)/en;return function(a,c){if(a.pow(c,e)===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),h=a.pow(c,r);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let y=1;for(let p=a.sqr(h);y<u&&!a.eql(p,a.ONE);y++)p=a.sqr(p);let d=a.pow(f,Te<<BigInt(u-y-1));f=a.sqr(d),l=a.mul(l,d),h=a.mul(h,f),u=y}return l}}function sx(t){if(t%Hc===rx){let e=(t+Te)/Hc;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(t%Wl===Gl){let e=(t-Gl)/Wl;return function(n,i){let o=n.mul(i,en),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,en),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 t%ix,ox(t)}var $l=(t,e)=>(pe(t,e)&Te)===Te,ax=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function zc(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},r=ax.reduce((n,i)=>(n[i]="function",n),e);return wt(t,r)}function cx(t,e,r){if(r<ze)throw new Error("Expected power > 0");if(r===ze)return t.ONE;if(r===Te)return e;let n=t.ONE,i=e;for(;r>ze;)r&Te&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Te;return n}function ux(t,e){let r=new Array(e.length),n=e.reduce((o,s,a)=>t.is0(s)?o:(r[a]=o,t.mul(o,s)),t.ONE),i=t.inv(n);return e.reduceRight((o,s,a)=>t.is0(s)?o:(r[a]=t.mul(o,r[a]),t.mul(o,s)),i),r}function Gc(t,e){let r=e!==void 0?e:t.toString(2).length,n=Math.ceil(r/8);return{nBitLength:r,nByteLength:n}}function as(t,e,r=!1,n={}){if(t<=ze)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:i,nByteLength:o}=Gc(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=sx(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Di(i),ZERO:ze,ONE:Te,create:c=>pe(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&Te)===Te,neg:c=>pe(-c,t),eql:(c,u)=>c===u,sqr:c=>pe(c*c,t),add:(c,u)=>pe(c+u,t),sub:(c,u)=>pe(c-u,t),mul:(c,u)=>pe(c*u,t),pow:(c,u)=>cx(a,c,u),div:(c,u)=>pe(c*ss(u,t),t),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>ss(c,t),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>ux(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>r?sr(c,o):_r(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return r?Nt(c):or(c)}});return Object.freeze(a)}function Yl(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 Xl(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 Wc(t){let e=Xl(t);return e+Math.ceil(e/2)}function Zl(t,e,r=!1){let n=t.length,i=Xl(e),o=Wc(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=r?or(t):Nt(t),a=pe(s,e-Te)+Te;return r?sr(a,i):_r(a,i)}var lx=BigInt(0),$c=BigInt(1);function cs(t,e){let r=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:r,unsafeLadder(i,o){let s=t.ZERO,a=i;for(;o>lx;)o&$c&&(s=s.add(a)),a=a.double(),o>>=$c;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 h=1;h<a;h++)f=f.add(u),c.push(f);u=f.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),u=t.ZERO,f=t.BASE,l=BigInt(2**i-1),h=2**i,y=BigInt(i);for(let d=0;d<a;d++){let p=d*c,m=Number(s&l);s>>=y,m>c&&(m-=h,s+=$c);let g=p,b=p+Math.abs(m)-1,x=d%2!==0,S=m<0;m===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 Bi(t){return zc(t.Fp),wt(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Gc(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var Pt=BigInt(0),mt=BigInt(1),us=BigInt(2),hx=BigInt(8),dx={zip215:!0};function px(t){let e=Bi(t);return wt(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function fs(t){let e=px(t),{Fp:r,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,u=us<<BigInt(a*8)-mt,f=r.create,l=e.uvRatio||((k,C)=>{try{return{isValid:!0,value:r.sqrt(k*r.inv(C))}}catch{return{isValid:!1,value:Pt}}}),h=e.adjustScalarBytes||(k=>k),y=e.domain||((k,C,P)=>{if(C.length||P)throw new Error("Contexts/pre-hash are not supported");return k}),d=k=>typeof k=="bigint"&&Pt<k,p=(k,C)=>d(k)&&d(C)&&k<C,m=k=>k===Pt||p(k,u);function g(k,C){if(p(k,C))return k;throw new Error(`Expected valid scalar < ${C}, got ${typeof k} ${k}`)}function b(k){return k===Pt?k:g(k,n)}let x=new Map;function S(k){if(!(k instanceof v))throw new Error("ExtendedPoint expected")}class v{constructor(C,P,K,H){if(this.ex=C,this.ey=P,this.ez=K,this.et=H,!m(C))throw new Error("x required");if(!m(P))throw new Error("y required");if(!m(K))throw new Error("z required");if(!m(H))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(C){if(C instanceof v)throw new Error("extended point not allowed");let{x:P,y:K}=C||{};if(!m(P)||!m(K))throw new Error("invalid affine point");return new v(P,K,mt,f(P*K))}static normalizeZ(C){let P=r.invertBatch(C.map(K=>K.ez));return C.map((K,H)=>K.toAffine(P[H])).map(v.fromAffine)}_setWindowSize(C){this._WINDOW_SIZE=C,x.delete(this)}assertValidity(){let{a:C,d:P}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:K,ey:H,ez:X,et:Q}=this,ie=f(K*K),j=f(H*H),ee=f(X*X),ve=f(ee*ee),be=f(ie*C),Xe=f(ee*f(be+j)),Ze=f(ve+f(P*f(ie*j)));if(Xe!==Ze)throw new Error("bad point: equation left != right (1)");let Ve=f(K*H),et=f(X*Q);if(Ve!==et)throw new Error("bad point: equation left != right (2)")}equals(C){S(C);let{ex:P,ey:K,ez:H}=this,{ex:X,ey:Q,ez:ie}=C,j=f(P*ie),ee=f(X*H),ve=f(K*ie),be=f(Q*H);return j===ee&&ve===be}is0(){return this.equals(v.ZERO)}negate(){return new v(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:C}=e,{ex:P,ey:K,ez:H}=this,X=f(P*P),Q=f(K*K),ie=f(us*f(H*H)),j=f(C*X),ee=P+K,ve=f(f(ee*ee)-X-Q),be=j+Q,Xe=be-ie,Ze=j-Q,Ve=f(ve*Xe),et=f(be*Ze),jt=f(ve*Ze),Kr=f(Xe*be);return new v(Ve,et,Kr,jt)}add(C){S(C);let{a:P,d:K}=e,{ex:H,ey:X,ez:Q,et:ie}=this,{ex:j,ey:ee,ez:ve,et:be}=C;if(P===BigInt(-1)){let Su=f((X-H)*(ee+j)),Cu=f((X+H)*(ee-j)),ta=f(Cu-Su);if(ta===Pt)return this.double();let Au=f(Q*us*be),Du=f(ie*us*ve),Bu=Du+Au,Iu=Cu+Su,Tu=Du-Au,mm=f(Bu*ta),ym=f(Iu*Tu),gm=f(Bu*Tu),xm=f(ta*Iu);return new v(mm,ym,xm,gm)}let Xe=f(H*j),Ze=f(X*ee),Ve=f(ie*K*be),et=f(Q*ve),jt=f((H+X)*(j+ee)-Xe-Ze),Kr=et-Ve,ai=et+Ve,Eu=f(Ze-P*Xe),lm=f(jt*Kr),hm=f(ai*Eu),dm=f(jt*Eu),pm=f(Kr*ai);return new v(lm,hm,pm,dm)}subtract(C){return this.add(C.negate())}wNAF(C){return D.wNAFCached(this,x,C,v.normalizeZ)}multiply(C){let{p:P,f:K}=this.wNAF(g(C,n));return v.normalizeZ([P,K])[0]}multiplyUnsafe(C){let P=b(C);return P===Pt?B:this.equals(B)||P===mt?this:this.equals(E)?this.wNAF(P).p:D.unsafeLadder(this,P)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return D.unsafeLadder(this,n).is0()}toAffine(C){let{ex:P,ey:K,ez:H}=this,X=this.is0();C==null&&(C=X?hx:r.inv(H));let Q=f(P*C),ie=f(K*C),j=f(H*C);if(X)return{x:Pt,y:mt};if(j!==mt)throw new Error("invZ was invalid");return{x:Q,y:ie}}clearCofactor(){let{h:C}=e;return C===mt?this:this.multiplyUnsafe(C)}static fromHex(C,P=!1){let{d:K,a:H}=e,X=r.BYTES;C=Ae("pointHex",C,X);let Q=C.slice(),ie=C[X-1];Q[X-1]=ie&-129;let j=Nt(Q);j===Pt||(P?g(j,u):g(j,r.ORDER));let ee=f(j*j),ve=f(ee-mt),be=f(K*ee-H),{isValid:Xe,value:Ze}=l(ve,be);if(!Xe)throw new Error("Point.fromHex: invalid y coordinate");let Ve=(Ze&mt)===mt,et=(ie&128)!==0;if(!P&&Ze===Pt&&et)throw new Error("Point.fromHex: x=0 and x_0=1");return et!==Ve&&(Ze=f(-Ze)),v.fromAffine({x:Ze,y:j})}static fromPrivateKey(C){return O(C).point}toRawBytes(){let{x:C,y:P}=this.toAffine(),K=sr(P,r.BYTES);return K[K.length-1]|=C&mt?128:0,K}toHex(){return ir(this.toRawBytes())}}v.BASE=new v(e.Gx,e.Gy,mt,f(e.Gx*e.Gy)),v.ZERO=new v(Pt,mt,mt,Pt);let{BASE:E,ZERO:B}=v,D=cs(v,a*8);function U(k){return pe(k,n)}function F(k){return U(Nt(k))}function O(k){let C=a;k=Ae("private key",k,C);let P=Ae("hashed private key",o(k),2*C),K=h(P.slice(0,C)),H=P.slice(C,2*C),X=F(K),Q=E.multiply(X),ie=Q.toRawBytes();return{head:K,prefix:H,scalar:X,point:Q,pointBytes:ie}}function M(k){return O(k).pointBytes}function G(k=new Uint8Array,...C){let P=ar(...C);return F(o(y(P,Ae("context",k),!!i)))}function Z(k,C,P={}){k=Ae("message",k),i&&(k=i(k));let{prefix:K,scalar:H,pointBytes:X}=O(C),Q=G(P.context,K,k),ie=E.multiply(Q).toRawBytes(),j=G(P.context,ie,X,k),ee=U(Q+j*H);b(ee);let ve=ar(ie,sr(ee,r.BYTES));return Ae("result",ve,a*2)}let I=dx;function R(k,C,P,K=I){let{context:H,zip215:X}=K,Q=r.BYTES;k=Ae("signature",k,2*Q),C=Ae("message",C),i&&(C=i(C));let ie=Nt(k.slice(Q,2*Q)),j,ee,ve;try{j=v.fromHex(P,X),ee=v.fromHex(k.slice(0,Q),X),ve=E.multiplyUnsafe(ie)}catch{return!1}if(!X&&j.isSmallOrder())return!1;let be=G(H,ee.toRawBytes(),j.toRawBytes(),C);return ee.add(j.multiplyUnsafe(be)).subtract(ve).clearCofactor().equals(v.ZERO)}return E._setWindowSize(8),{CURVE:e,getPublicKey:M,sign:Z,verify:R,ExtendedPoint:v,utils:{getExtendedPublicKey:O,randomPrivateKey:()=>s(r.BYTES),precompute(k=8,C=v.BASE){return C._setWindowSize(k),C.multiply(BigInt(3)),C}}}}var Ii=BigInt(0),Yc=BigInt(1);function mx(t){return wt(t,{a:"bigint"},{montgomeryBits:"isSafeInteger",nByteLength:"isSafeInteger",adjustScalarBytes:"function",domain:"function",powPminus2:"function",Gu:"bigint"}),Object.freeze({...t})}function Ql(t){let e=mx(t),{P:r}=e,n=x=>pe(x,r),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,a=e.adjustScalarBytes||(x=>x),c=e.powPminus2||(x=>qc(x,r-BigInt(2),r));function u(x,S,v){let E=n(x*(S-v));return S=n(S-E),v=n(v+E),[S,v]}function f(x){if(typeof x=="bigint"&&Ii<=x&&x<r)return x;throw new Error("Expected valid scalar 0 < scalar < CURVE.P")}let l=(e.a-BigInt(2))/BigInt(4);function h(x,S){let v=f(x),E=f(S),B=v,D=Yc,U=Ii,F=v,O=Yc,M=Ii,G;for(let I=BigInt(i-1);I>=Ii;I--){let R=E>>I&Yc;M^=R,G=u(M,D,F),D=G[0],F=G[1],G=u(M,U,O),U=G[0],O=G[1],M=R;let _=D+U,k=n(_*_),C=D-U,P=n(C*C),K=k-P,H=F+O,X=F-O,Q=n(X*_),ie=n(H*C),j=Q+ie,ee=Q-ie;F=n(j*j),O=n(B*n(ee*ee)),D=n(k*P),U=n(K*(k+n(l*K)))}G=u(M,D,F),D=G[0],F=G[1],G=u(M,U,O),U=G[0],O=G[1];let Z=c(U);return n(D*Z)}function y(x){return sr(n(x),o)}function d(x){let S=Ae("u coordinate",x,o);return s===o&&(S[s-1]&=127),Nt(S)}function p(x){let S=Ae("scalar",x);if(S.length!==o&&S.length!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${S.length}`);return Nt(a(S))}function m(x,S){let v=d(S),E=p(x),B=h(v,E);if(B===Ii)throw new Error("Invalid private or public key received");return y(B)}let g=y(e.Gu);function b(x){return m(x,g)}return{scalarMult:m,scalarMultBase:b,getSharedSecret:(x,S)=>m(x,S),getPublicKey:x=>b(x),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:g}}var Ti=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),jl=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),LD=BigInt(0),yx=BigInt(1),Xc=BigInt(2),gx=BigInt(5),Jl=BigInt(10),xx=BigInt(20),bx=BigInt(40),eh=BigInt(80);function th(t){let e=Ti,n=t*t%e*t%e,i=De(n,Xc,e)*n%e,o=De(i,yx,e)*t%e,s=De(o,gx,e)*o%e,a=De(s,Jl,e)*s%e,c=De(a,xx,e)*a%e,u=De(c,bx,e)*c%e,f=De(u,eh,e)*u%e,l=De(f,eh,e)*u%e,h=De(l,Jl,e)*s%e;return{pow_p_5_8:De(h,Xc,e)*t%e,b2:n}}function rh(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function wx(t,e){let r=Ti,n=pe(e*e*e,r),i=pe(n*n*e,r),o=th(t*i).pow_p_5_8,s=pe(t*n*o,r),a=pe(e*s*s,r),c=s,u=pe(s*jl,r),f=a===t,l=a===pe(-t,r),h=a===pe(-t*jl,r);return f&&(s=c),(l||h)&&(s=u),$l(s,r)&&(s=pe(-s,r)),{isValid:f||l,value:s}}var cr=as(Ti,void 0,!0),Zc={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:cr,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Fc,randomBytes:jr,adjustScalarBytes:rh,uvRatio:wx},Nn=fs(Zc);function nh(t,e,r){if(e.length>255)throw new Error("Context is too big");return es(Pc("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,e.length]),e,t)}var ND=fs({...Zc,domain:nh}),PD=fs({...Zc,domain:nh,prehash:Fc}),_i=Ql({P:Ti,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Ti,{pow_p_5_8:r,b2:n}=th(t);return pe(De(r,BigInt(3),e)*n,e)},adjustScalarBytes:rh,randomBytes:jr});var vx=(cr.ORDER+BigInt(3))/BigInt(8),UD=cr.pow(Xc,vx),OD=cr.sqrt(cr.neg(cr.ONE)),FD=(cr.ORDER-BigInt(5))/BigInt(8),KD=BigInt(486662);var MD=Yl(cr,cr.neg(BigInt(486664)));var VD=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),HD=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),qD=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),zD=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var GD=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var ls=class extends Rn{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,Ai(e);let n=Br(r);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return kn(this),this.iHash.update(e),this}digestInto(e){kn(this),Nc(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:r,iHash:n,finished:i,destroyed:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,e.outputLen=a,e.oHash=r._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},Pn=(t,e,r)=>new ls(t,e).update(r).digest();Pn.create=(t,e)=>new ls(t,e);function oh(t,e,r){return Ai(t),r===void 0&&(r=new Uint8Array(t.outputLen)),Pn(t,Br(r),Br(e))}var Qc=new Uint8Array([0]),ih=new Uint8Array;function sh(t,e,r,n=32){if(Ai(t),Qo(n),n>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");let i=Math.ceil(n/t.outputLen);r===void 0&&(r=ih);let o=new Uint8Array(i*t.outputLen),s=Pn.create(t,e),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let u=0;u<i;u++)Qc[0]=u+1,a.update(u===0?ih:c).update(r).update(Qc).digestInto(c),o.set(c,t.outputLen*u),s._cloneInto(a);return s.destroy(),a.destroy(),c.fill(0),Qc.fill(0),o.slice(0,n)}var Ex=(t,e,r)=>t&e^~t&r,Sx=(t,e,r)=>t&e^t&r^e&r,Cx=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]),kr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Rr=new Uint32Array(64),jc=class extends Ln{constructor(){super(64,32,8,!1),this.A=kr[0]|0,this.B=kr[1]|0,this.C=kr[2]|0,this.D=kr[3]|0,this.E=kr[4]|0,this.F=kr[5]|0,this.G=kr[6]|0,this.H=kr[7]|0}get(){let{A:e,B:r,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,r,n,i,o,s,a,c]}set(e,r,n,i,o,s,a,c){this.A=e|0,this.B=r|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,r){for(let l=0;l<16;l++,r+=4)Rr[l]=e.getUint32(r,!1);for(let l=16;l<64;l++){let h=Rr[l-15],y=Rr[l-2],d=Lt(h,7)^Lt(h,18)^h>>>3,p=Lt(y,17)^Lt(y,19)^y>>>10;Rr[l]=p+Rr[l-7]+d+Rr[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 h=Lt(a,6)^Lt(a,11)^Lt(a,25),y=f+h+Ex(a,c,u)+Cx[l]+Rr[l]|0,p=(Lt(n,2)^Lt(n,13)^Lt(n,22))+Sx(n,i,o)|0;f=u,u=c,c=a,a=s+y|0,s=o,o=i,i=n,n=y+p|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,f=f+this.H|0,this.set(n,i,o,s,a,c,u,f)}roundClean(){Rr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var Un=ts(()=>new jc);var Jc={hashSHA256(t){return Un(t)},getHKDF(t,e){let r=oh(Un,e,t),i=sh(Un,r,void 0,96),o=i.subarray(0,32),s=i.subarray(32,64),a=i.subarray(64,96);return[o,s,a]},generateX25519KeyPair(){let t=_i.utils.randomPrivateKey();return{publicKey:_i.getPublicKey(t),privateKey:t}},generateX25519KeyPairFromSeed(t){return{publicKey:_i.getPublicKey(t),privateKey:t}},generateX25519SharedKey(t,e){return _i.getSharedSecret(t,e)},chaCha20Poly1305Encrypt(t,e,r,n){return Lc(n,e,r).encrypt(t)},chaCha20Poly1305Decrypt(t,e,r,n,i){return Lc(n,e,r).decrypt(t,i)}};var ah=Jc;var On=t=>{let e=He(2);return new DataView(e.buffer,e.byteOffset,e.byteLength).setUint16(0,t,!1),e};On.bytes=2;var ki=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)};ki.bytes=2;function ch(t){return de([t.ne,t.ciphertext],t.ne.length+t.ciphertext.length)}function uh(t){return de([t.ne,t.ns,t.ciphertext],t.ne.length+t.ns.length+t.ciphertext.length)}function fh(t){return de([t.ns,t.ciphertext],t.ns.length+t.ciphertext.length)}function lh(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:oe(0)}}function hh(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 dh(t){if(t.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:oe(0),ns:t.subarray(0,48),ciphertext:t.subarray(48,t.length)}}var mh=16;function yh(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65519){let o=i+65519;o>n.length&&(o=n.length);let s=t.encrypt(n.subarray(i,o),t.session);e?.encryptedPackets.increment(),yield de([On(s.byteLength),s],2+s.byteLength)}}}function gh(t,e){return async function*(r){for await(let n of r)for(let i=0;i<n.length;i+=65535){let o=i+65535;if(o>n.length&&(o=n.length),o-mh<i)throw new Error("Invalid chunk");let s=n.subarray(i,o),a=n.subarray(i,o-mh),{plaintext:c,valid:u}=t.decrypt(s,t.session,a);if(!u)throw e?.decryptErrors.increment(),new Error("Failed to validate decrypted chunk");e?.decryptedPackets.increment(),yield c}}}var ce=class extends Error{code;props;constructor(e,r,n){super(e),this.code=r,this.name=n?.name??"CodeError",this.props=n??{}}},Li=class t extends Error{code;constructor(e="Unexpected Peer"){super(e),this.code=t.code}static code="ERR_UNEXPECTED_PEER"},tn=class t extends Error{code;constructor(e="Invalid crypto exchange"){super(e),this.code=t.code}static code="ERR_INVALID_CRYPTO_EXCHANGE"};var HT=Qe(Oi(),1),qT=Qe(Ld(),1);var Av=Qe(we(),1);var A0={};fe(A0,{Ed25519PrivateKey:()=>cn,Ed25519PublicKey:()=>Mi,generateKeyPair:()=>jw,generateKeyPairFromSeed:()=>Md,unmarshalEd25519PrivateKey:()=>Zw,unmarshalEd25519PublicKey:()=>Qw});var Hn=32,hr=64,_s=32;async function Nd(){let t=Nn.utils.randomPrivateKey(),e=Nn.getPublicKey(t);return{privateKey:Fd(t,e),publicKey:e}}async function Pd(t){if(t.length!==_s)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=Nn.getPublicKey(e);return{privateKey:Fd(e,r),publicKey:r}}async function Ud(t,e){let r=t.subarray(0,_s);return Nn.sign(e,r)}async function Od(t,e,r){return Nn.verify(e,r,t)}function Fd(t,e){let r=new Uint8Array(hr);for(let n=0;n<_s;n++)r[n]=t[n],r[_s+n]=e[n];return r}var ht={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-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var E0={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function S0(t){let e=t?.algorithm??"AES-GCM",r=t?.keyLength??16,n=t?.nonceLength??12,i=t?.digest??"SHA-256",o=t?.saltLength??16,s=t?.iterations??32767,a=ht.get();r*=8;async function c(l,h){let y=a.getRandomValues(new Uint8Array(o)),d=a.getRandomValues(new Uint8Array(n)),p={name:e,iv:d};typeof h=="string"&&(h=Se(h));let m;if(h.length===0){m=await a.subtle.importKey("jwk",E0,{name:"AES-GCM"},!0,["encrypt"]);try{let b={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,x,{name:e,length:r},!0,["encrypt"])}catch{m=await a.subtle.importKey("jwk",E0,{name:"AES-GCM"},!0,["encrypt"])}}else{let b={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);m=await a.subtle.deriveKey(b,x,{name:e,length:r},!0,["encrypt"])}let g=await a.subtle.encrypt(p,m,l);return de([y,p.iv,new Uint8Array(g)])}async function u(l,h){let y=l.subarray(0,o),d=l.subarray(o,o+n),p=l.subarray(o+n),m={name:e,iv:d};typeof h=="string"&&(h=Se(h));let g;if(h.length===0)try{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},S=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,S,{name:e,length:r},!0,["decrypt"])}catch{g=await a.subtle.importKey("jwk",E0,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:y,iterations:s,hash:{name:i}},S=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,S,{name:e,length:r},!0,["decrypt"])}let b=await a.subtle.decrypt(m,g,p);return new Uint8Array(b)}return{encrypt:c,decrypt:u}}async function qn(t,e){let n=await S0().encrypt(t,e);return gn.encode(n)}var ke;(function(t){t.RSA="RSA",t.Ed25519="Ed25519",t.Secp256k1="Secp256k1"})(ke||(ke={}));var C0;(function(t){t[t.RSA=0]="RSA",t[t.Ed25519=1]="Ed25519",t[t.Secp256k1=2]="Secp256k1"})(C0||(C0={}));(function(t){t.codec=()=>$r(C0)})(ke||(ke={}));var Xt;(function(t){let e;t.codec=()=>(e==null&&(e=Rt((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),ke.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=ke.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>kt(r,t.codec()),t.decode=r=>_t(r,t.codec())})(Xt||(Xt={}));var Zt;(function(t){let e;t.codec=()=>(e==null&&(e=Rt((r,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),r.Type!=null&&(n.uint32(8),ke.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=ke.codec().decode(r);break;case 2:i.Data=r.bytes();break;default:r.skipType(s&7);break}}return i})),e),t.encode=r=>kt(r,t.codec()),t.decode=r=>_t(r,t.codec())})(Zt||(Zt={}));var Mi=class{_key;constructor(e){this._key=zn(e,Hn)}async verify(e,r){return Od(this._key,r,e)}marshal(){return this._key}get bytes(){return Xt.encode({Type:ke.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Re(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ke.digest(this.bytes);return e}},cn=class{_key;_publicKey;constructor(e,r){this._key=zn(e,hr),this._publicKey=zn(r,Hn)}async sign(e){return Ud(this._key,e)}get public(){return new Mi(this._publicKey)}marshal(){return this._key}get bytes(){return Zt.encode({Type:ke.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Re(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ke.digest(this.bytes);return e}async id(){let e=Bt.digest(this.public.bytes);return Ee.encode(e.bytes).substring(1)}async export(e,r="libp2p-key"){if(r==="libp2p-key")return qn(this.bytes,e);throw new ce(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Zw(t){if(t.length>hr){t=zn(t,hr+Hn);let n=t.subarray(0,hr),i=t.subarray(hr,t.length);return new cn(n,i)}t=zn(t,hr);let e=t.subarray(0,hr),r=t.subarray(Hn);return new cn(e,r)}function Qw(t){return t=zn(t,Hn),new Mi(t)}async function jw(){let{privateKey:t,publicKey:e}=await Nd();return new cn(t,e)}async function Md(t){let{privateKey:e,publicKey:r}=await Pd(t);return new cn(e,r)}function zn(t,e){if(t=Uint8Array.from(t??[]),t.length!==e)throw new ce(`Key must be a Uint8Array of length ${e}, got ${t.length}`,"ERR_INVALID_KEY_TYPE");return t}var yI=Qe(Me(),1),gI=Qe(Ds(),1),Vd=Qe(we(),1);function Ft(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=de([new Uint8Array(e-r.length),r])}return se(r,"base64url")}function yt(t){let e=Hd(t);return new Vd.default.jsbn.BigInteger(se(e,"base16"),16)}function Hd(t,e){let r=Se(t,"base64urlpad");if(e!=null){if(r.length>e)throw new Error("byte array longer than desired length");r=de([new Uint8Array(e-r.length),r])}return r}var Jw={"P-256":256,"P-384":384,"P-521":521},ev=Object.keys(Jw),II=ev.join(" / ");var _0={};fe(_0,{MAX_KEY_SIZE:()=>zi,RsaPrivateKey:()=>Gn,RsaPublicKey:()=>qi,fromJwk:()=>lv,generateKeyPair:()=>hv,unmarshalRsaPrivateKey:()=>uv,unmarshalRsaPublicKey:()=>fv});var Hi=Qe(we(),1);var hT=Qe($d(),1);function Rs(t){if(isNaN(t)||t<=0)throw new ce("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return jr(t)}var YI=Qe(Ts(),1),I0=Qe(we(),1);function Yd(t,e){return e.map(r=>yt(t[r]))}function Xd(t){return I0.default.pki.setRsaPrivateKey(...Yd(t,["n","e","d","p","q","dp","dq","qi"]))}function Zd(t){return I0.default.pki.setRsaPublicKey(...Yd(t,["n","e"]))}var fn={};fe(fn,{jwkToPkcs1:()=>iv,jwkToPkix:()=>sv,pkcs1ToJwk:()=>nv,pkixToJwk:()=>ov});var QI=Qe(Oi(),1),jI=Qe(Ts(),1);var dr=Qe(we(),1);function nv(t){let e=dr.default.asn1.fromDer(se(t,"ascii")),r=dr.default.pki.privateKeyFromAsn1(e);return{kty:"RSA",n:Ft(r.n),e:Ft(r.e),d:Ft(r.d),p:Ft(r.p),q:Ft(r.q),dp:Ft(r.dP),dq:Ft(r.dQ),qi:Ft(r.qInv),alg:"RS256"}}function iv(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 ce("JWK was missing components","ERR_INVALID_PARAMETERS");let e=dr.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 Se(dr.default.asn1.toDer(e).getBytes(),"ascii")}function ov(t){let e=dr.default.asn1.fromDer(se(t,"ascii")),r=dr.default.pki.publicKeyFromAsn1(e);return{kty:"RSA",n:Ft(r.n),e:Ft(r.e)}}function sv(t){if(t.n==null||t.e==null)throw new ce("JWK was missing components","ERR_INVALID_PARAMETERS");let e=dr.default.pki.publicKeyToAsn1({n:yt(t.n),e:yt(t.e)});return Se(dr.default.asn1.toDer(e).getBytes(),"ascii")}async function Qd(t){let e=await ht.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 ep(e);return{privateKey:r[0],publicKey:r[1]}}async function T0(t){let r=[await ht.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await av(t)],n=await ep({privateKey:r[0],publicKey:r[1]});return{privateKey:n[0],publicKey:n[1]}}async function jd(t,e){let r=await ht.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ht.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(e));return new Uint8Array(n,0,n.byteLength)}async function Jd(t,e,r){let n=await ht.get().subtle.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ht.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,r)}async function ep(t){if(t.privateKey==null||t.publicKey==null)throw new ce("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ht.get().subtle.exportKey("jwk",t.privateKey),ht.get().subtle.exportKey("jwk",t.publicKey)])}async function av(t){return ht.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 tp(t,e,r,n){let i=e?Zd(t):Xd(t),o=se(Uint8Array.from(r),"ascii"),s=n(o,i);return Se(s,"ascii")}function rp(t,e){return tp(t,!0,e,(r,n)=>n.encrypt(r))}function np(t,e){return tp(t,!1,e,(r,n)=>n.decrypt(r))}function Ls(t){if(t.kty!=="RSA")throw new ce("invalid key type","ERR_INVALID_KEY_TYPE");if(t.n==null)throw new ce("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Se(t.n,"base64url").length*8}var zi=8192,qi=class{_key;constructor(e){this._key=e}async verify(e,r){return Jd(this._key,r,e)}marshal(){return fn.jwkToPkix(this._key)}get bytes(){return Xt.encode({Type:ke.RSA,Data:this.marshal()}).subarray()}encrypt(e){return rp(this._key,e)}equals(e){return Re(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ke.digest(this.bytes);return e}},Gn=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r}genSecret(){return Rs(16)}async sign(e){return jd(this._key,e)}get public(){if(this._publicKey==null)throw new ce("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new qi(this._publicKey)}decrypt(e){return np(this._key,e)}marshal(){return fn.jwkToPkcs1(this._key)}get bytes(){return Zt.encode({Type:ke.RSA,Data:this.marshal()}).subarray()}equals(e){return Re(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ke.digest(this.bytes);return e}async id(){let e=await this.public.hash();return se(e,"base58btc")}async export(e,r="pkcs-8"){if(r==="pkcs-8"){let n=new Hi.default.util.ByteBuffer(this.marshal()),i=Hi.default.asn1.fromDer(n),o=Hi.default.pki.privateKeyFromAsn1(i),s={algorithm:"aes256",count:1e4,saltSize:128/8,prfAlgorithm:"sha512"};return Hi.default.pki.encryptRsaPrivateKey(o,e,s)}else{if(r==="libp2p-key")return qn(this.bytes,e);throw new ce(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}}};async function uv(t){let e=fn.pkcs1ToJwk(t);if(Ls(e)>zi)throw new ce("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let r=await T0(e);return new Gn(r.privateKey,r.publicKey)}function fv(t){let e=fn.pkixToJwk(t);if(Ls(e)>zi)throw new ce("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new qi(e)}async function lv(t){if(Ls(t)>zi)throw new ce("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await T0(t);return new Gn(e.privateKey,e.publicKey)}async function hv(t){if(t>zi)throw new ce("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Qd(t);return new Gn(e.privateKey,e.publicKey)}var N0={};fe(N0,{Secp256k1PrivateKey:()=>Wi,Secp256k1PublicKey:()=>Gi,generateKeyPair:()=>Cv,unmarshalSecp256k1PrivateKey:()=>Ev,unmarshalSecp256k1PublicKey:()=>Sv});function dv(t){let e=Bi(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:i}=e;if(r){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof r!="object"||typeof r.beta!="bigint"||typeof r.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:pv,hexToBytes:mv}=os,ln={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(t){let{Err:e}=ln;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:pv(n),l:t.subarray(r+2)}},toSig(t){let{Err:e}=ln,r=typeof t=="string"?mv(t):t;if(!(r instanceof Uint8Array))throw new Error("ui8a expected");let n=r.length;if(n<2||r[0]!=48)throw new e("Invalid signature tag");if(r[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=ln._parseInt(r.subarray(2)),{d:s,l:a}=ln._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(t){let e=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=e(r(t.s)),i=e(r(t.r)),o=n.length/2,s=i.length/2,a=r(o),c=r(s);return`30${r(s+o+4)}02${c}${i}02${a}${n}`}},pr=BigInt(0),St=BigInt(1),xT=BigInt(2),ip=BigInt(3),bT=BigInt(4);function yv(t){let e=dv(t),{Fp:r}=e,n=e.toBytes||((d,p,m)=>{let g=p.toAffine();return ar(Uint8Array.from([4]),r.toBytes(g.x),r.toBytes(g.y))}),i=e.fromBytes||(d=>{let p=d.subarray(1),m=r.fromBytes(p.subarray(0,r.BYTES)),g=r.fromBytes(p.subarray(r.BYTES,2*r.BYTES));return{x:m,y:g}});function o(d){let{a:p,b:m}=e,g=r.sqr(d),b=r.mul(g,d);return r.add(r.add(b,r.mul(d,p)),m)}if(!r.eql(r.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(d){return typeof d=="bigint"&&pr<d&&d<e.n}function a(d){if(!s(d))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(d){let{allowedPrivateKeyLengths:p,nByteLength:m,wrapPrivateKey:g,n:b}=e;if(p&&typeof d!="bigint"){if(d instanceof Uint8Array&&(d=ir(d)),typeof d!="string"||!p.includes(d.length))throw new Error("Invalid key");d=d.padStart(m*2,"0")}let x;try{x=typeof d=="bigint"?d:or(Ae("private key",d,m))}catch{throw new Error(`private key must be ${m} bytes, hex or bigint, not ${typeof d}`)}return g&&(x=pe(x,b)),a(x),x}let u=new Map;function f(d){if(!(d instanceof l))throw new Error("ProjectivePoint expected")}class l{constructor(p,m,g){if(this.px=p,this.py=m,this.pz=g,p==null||!r.isValid(p))throw new Error("x required");if(m==null||!r.isValid(m))throw new Error("y required");if(g==null||!r.isValid(g))throw new Error("z required")}static fromAffine(p){let{x:m,y:g}=p||{};if(!p||!r.isValid(m)||!r.isValid(g))throw new Error("invalid affine point");if(p instanceof l)throw new Error("projective point not allowed");let b=x=>r.eql(x,r.ZERO);return b(m)&&b(g)?l.ZERO:new l(m,g,r.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){let m=r.invertBatch(p.map(g=>g.pz));return p.map((g,b)=>g.toAffine(m[b])).map(l.fromAffine)}static fromHex(p){let m=l.fromAffine(i(Ae("pointHex",p)));return m.assertValidity(),m}static fromPrivateKey(p){return l.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!r.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:p,y:m}=this.toAffine();if(!r.isValid(p)||!r.isValid(m))throw new Error("bad point: x or y not FE");let g=r.sqr(m),b=o(p);if(!r.eql(g,b))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:p}=this.toAffine();if(r.isOdd)return!r.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){f(p);let{px:m,py:g,pz:b}=this,{px:x,py:S,pz:v}=p,E=r.eql(r.mul(m,v),r.mul(x,b)),B=r.eql(r.mul(g,v),r.mul(S,b));return E&&B}negate(){return new l(this.px,r.neg(this.py),this.pz)}double(){let{a:p,b:m}=e,g=r.mul(m,ip),{px:b,py:x,pz:S}=this,v=r.ZERO,E=r.ZERO,B=r.ZERO,D=r.mul(b,b),U=r.mul(x,x),F=r.mul(S,S),O=r.mul(b,x);return O=r.add(O,O),B=r.mul(b,S),B=r.add(B,B),v=r.mul(p,B),E=r.mul(g,F),E=r.add(v,E),v=r.sub(U,E),E=r.add(U,E),E=r.mul(v,E),v=r.mul(O,v),B=r.mul(g,B),F=r.mul(p,F),O=r.sub(D,F),O=r.mul(p,O),O=r.add(O,B),B=r.add(D,D),D=r.add(B,D),D=r.add(D,F),D=r.mul(D,O),E=r.add(E,D),F=r.mul(x,S),F=r.add(F,F),D=r.mul(F,O),v=r.sub(v,D),B=r.mul(F,U),B=r.add(B,B),B=r.add(B,B),new l(v,E,B)}add(p){f(p);let{px:m,py:g,pz:b}=this,{px:x,py:S,pz:v}=p,E=r.ZERO,B=r.ZERO,D=r.ZERO,U=e.a,F=r.mul(e.b,ip),O=r.mul(m,x),M=r.mul(g,S),G=r.mul(b,v),Z=r.add(m,g),I=r.add(x,S);Z=r.mul(Z,I),I=r.add(O,M),Z=r.sub(Z,I),I=r.add(m,b);let R=r.add(x,v);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,v),R=r.mul(R,E),E=r.add(M,G),R=r.sub(R,E),D=r.mul(U,I),E=r.mul(F,G),D=r.add(E,D),E=r.sub(M,D),D=r.add(M,D),B=r.mul(E,D),M=r.add(O,O),M=r.add(M,O),G=r.mul(U,G),I=r.mul(F,I),M=r.add(M,G),G=r.sub(O,G),G=r.mul(U,G),I=r.add(I,G),O=r.mul(M,I),B=r.add(B,O),O=r.mul(R,I),E=r.mul(Z,E),E=r.sub(E,O),O=r.mul(Z,M),D=r.mul(R,D),D=r.add(D,O),new l(E,B,D)}subtract(p){return this.add(p.negate())}is0(){return this.equals(l.ZERO)}wNAF(p){return y.wNAFCached(this,u,p,m=>{let g=r.invertBatch(m.map(b=>b.pz));return m.map((b,x)=>b.toAffine(g[x])).map(l.fromAffine)})}multiplyUnsafe(p){let m=l.ZERO;if(p===pr)return m;if(a(p),p===St)return this;let{endo:g}=e;if(!g)return y.unsafeLadder(this,p);let{k1neg:b,k1:x,k2neg:S,k2:v}=g.splitScalar(p),E=m,B=m,D=this;for(;x>pr||v>pr;)x&St&&(E=E.add(D)),v&St&&(B=B.add(D)),D=D.double(),x>>=St,v>>=St;return b&&(E=E.negate()),S&&(B=B.negate()),B=new l(r.mul(B.px,g.beta),B.py,B.pz),E.add(B)}multiply(p){a(p);let m=p,g,b,{endo:x}=e;if(x){let{k1neg:S,k1:v,k2neg:E,k2:B}=x.splitScalar(m),{p:D,f:U}=this.wNAF(v),{p:F,f:O}=this.wNAF(B);D=y.constTimeNegate(S,D),F=y.constTimeNegate(E,F),F=new l(r.mul(F.px,x.beta),F.py,F.pz),g=D.add(F),b=U.add(O)}else{let{p:S,f:v}=this.wNAF(m);g=S,b=v}return l.normalizeZ([g,b])[0]}multiplyAndAddUnsafe(p,m,g){let b=l.BASE,x=(v,E)=>E===pr||E===St||!v.equals(b)?v.multiplyUnsafe(E):v.multiply(E),S=x(this,m).add(x(p,g));return S.is0()?void 0:S}toAffine(p){let{px:m,py:g,pz:b}=this,x=this.is0();p==null&&(p=x?r.ONE:r.inv(b));let S=r.mul(m,p),v=r.mul(g,p),E=r.mul(b,p);if(x)return{x:r.ZERO,y:r.ZERO};if(!r.eql(E,r.ONE))throw new Error("invZ was invalid");return{x:S,y:v}}isTorsionFree(){let{h:p,isTorsionFree:m}=e;if(p===St)return!0;if(m)return m(l,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:p,clearCofactor:m}=e;return p===St?this:m?m(l,this):this.multiplyUnsafe(e.h)}toRawBytes(p=!0){return this.assertValidity(),n(l,this,p)}toHex(p=!0){return ir(this.toRawBytes(p))}}l.BASE=new l(e.Gx,e.Gy,r.ONE),l.ZERO=new l(r.ZERO,r.ONE,r.ZERO);let h=e.nBitLength,y=cs(l,e.endo?Math.ceil(h/2):h);return{CURVE:e,ProjectivePoint:l,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function gv(t){let e=Bi(t);return wt(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function op(t){let e=gv(t),{Fp:r,n}=e,i=r.BYTES+1,o=2*r.BYTES+1;function s(I){return pr<I&&I<r.ORDER}function a(I){return pe(I,n)}function c(I){return ss(I,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:f,weierstrassEquation:l,isWithinCurveOrder:h}=yv({...e,toBytes(I,R,_){let k=R.toAffine(),C=r.toBytes(k.x),P=ar;return _?P(Uint8Array.from([R.hasEvenY()?2:3]),C):P(Uint8Array.from([4]),C,r.toBytes(k.y))},fromBytes(I){let R=I.length,_=I[0],k=I.subarray(1);if(R===i&&(_===2||_===3)){let C=or(k);if(!s(C))throw new Error("Point is not on curve");let P=l(C),K=r.sqrt(P),H=(K&St)===St;return(_&1)===1!==H&&(K=r.neg(K)),{x:C,y:K}}else if(R===o&&_===4){let C=r.fromBytes(k.subarray(0,r.BYTES)),P=r.fromBytes(k.subarray(r.BYTES,2*r.BYTES));return{x:C,y:P}}else throw new Error(`Point of length ${R} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),y=I=>ir(_r(I,e.nByteLength));function d(I){let R=n>>St;return I>R}function p(I){return d(I)?a(-I):I}let m=(I,R,_)=>or(I.slice(R,_));class g{constructor(R,_,k){this.r=R,this.s=_,this.recovery=k,this.assertValidity()}static fromCompact(R){let _=e.nByteLength;return R=Ae("compactSignature",R,_*2),new g(m(R,0,_),m(R,_,2*_))}static fromDER(R){let{r:_,s:k}=ln.toSig(Ae("DER",R));return new g(_,k)}assertValidity(){if(!h(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!h(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(R){return new g(this.r,this.s,R)}recoverPublicKey(R){let{r:_,s:k,recovery:C}=this,P=B(Ae("msgHash",R));if(C==null||![0,1,2,3].includes(C))throw new Error("recovery id invalid");let K=C===2||C===3?_+e.n:_;if(K>=r.ORDER)throw new Error("recovery id 2 or 3 invalid");let H=C&1?"03":"02",X=u.fromHex(H+y(K)),Q=c(K),ie=a(-P*Q),j=a(k*Q),ee=u.BASE.multiplyAndAddUnsafe(X,ie,j);if(!ee)throw new Error("point at infinify");return ee.assertValidity(),ee}hasHighS(){return d(this.s)}normalizeS(){return this.hasHighS()?new g(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Jr(this.toDERHex())}toDERHex(){return ln.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Jr(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}let b={isValidPrivateKey(I){try{return f(I),!0}catch{return!1}},normPrivateKeyToScalar:f,randomPrivateKey:()=>{let I=Wc(e.n);return Zl(e.randomBytes(I),e.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=I instanceof Uint8Array,_=typeof I=="string",k=(R||_)&&I.length;return R?k===i||k===o:_?k===2*i||k===2*o:I instanceof u}function v(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=e.bits2int||function(I){let R=or(I),_=I.length*8-e.nBitLength;return _>0?R>>BigInt(_):R},B=e.bits2int_modN||function(I){return a(E(I))},D=Di(e.nBitLength);function U(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(pr<=I&&I<D))throw new Error(`bigint expected < 2^${e.nBitLength}`);return _r(I,e.nByteLength)}function F(I,R,_=O){if(["recovered","canonical"].some(be=>be in _))throw new Error("sign() legacy options not supported");let{hash:k,randomBytes:C}=e,{lowS:P,prehash:K,extraEntropy:H}=_;P==null&&(P=!0),I=Ae("msgHash",I),K&&(I=Ae("prehashed msgHash",k(I)));let X=B(I),Q=f(R),ie=[U(Q),U(X)];if(H!=null){let be=H===!0?C(r.BYTES):H;ie.push(Ae("extraEntropy",be))}let j=ar(...ie),ee=X;function ve(be){let Xe=E(be);if(!h(Xe))return;let Ze=c(Xe),Ve=u.BASE.multiply(Xe).toAffine(),et=a(Ve.x);if(et===pr)return;let jt=a(Ze*a(ee+et*Q));if(jt===pr)return;let Kr=(Ve.x===et?0:2)|Number(Ve.y&St),ai=jt;return P&&d(jt)&&(ai=p(jt),Kr^=1),new g(et,ai,Kr)}return{seed:j,k2sig:ve}}let O={lowS:e.lowS,prehash:!1},M={lowS:e.lowS,prehash:!1};function G(I,R,_=O){let{seed:k,k2sig:C}=F(I,R,_),P=e;return Vc(P.hash.outputLen,P.nByteLength,P.hmac)(k,C)}u.BASE._setWindowSize(8);function Z(I,R,_,k=M){let C=I;if(R=Ae("msgHash",R),_=Ae("publicKey",_),"strict"in k)throw new Error("options.strict was renamed to lowS");let{lowS:P,prehash:K}=k,H,X;try{if(typeof C=="string"||C instanceof Uint8Array)try{H=g.fromDER(C)}catch(Ve){if(!(Ve instanceof ln.Err))throw Ve;H=g.fromCompact(C)}else if(typeof C=="object"&&typeof C.r=="bigint"&&typeof C.s=="bigint"){let{r:Ve,s:et}=C;H=new g(Ve,et)}else throw new Error("PARSE");X=u.fromHex(_)}catch(Ve){if(Ve.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(P&&H.hasHighS())return!1;K&&(R=e.hash(R));let{r:Q,s:ie}=H,j=B(R),ee=c(ie),ve=a(j*ee),be=a(Q*ee),Xe=u.BASE.multiplyAndAddUnsafe(X,ve,be)?.toAffine();return Xe?a(Xe.x)===Q:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:v,sign:G,verify:Z,ProjectivePoint:u,Signature:g,utils:b}}function xv(t){return{hash:t,hmac:(e,...r)=>Pn(t,e,es(...r)),randomBytes:jr}}function sp(t,e){let r=n=>op({...t,...xv(n)});return Object.freeze({...r(e),create:r})}var up=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),ap=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),bv=BigInt(1),k0=BigInt(2),cp=(t,e)=>(t+e/k0)/e;function wv(t){let e=up,r=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=t*t*t%e,f=u*u*t%e,l=De(f,r,e)*f%e,h=De(l,r,e)*f%e,y=De(h,k0,e)*u%e,d=De(y,i,e)*y%e,p=De(d,o,e)*d%e,m=De(p,a,e)*p%e,g=De(m,c,e)*m%e,b=De(g,a,e)*p%e,x=De(b,r,e)*f%e,S=De(x,s,e)*d%e,v=De(S,n,e)*u%e,E=De(v,k0,e);if(!R0.eql(R0.sqr(E),t))throw new Error("Cannot find square root");return E}var R0=as(up,void 0,void 0,{sqrt:wv}),mr=sp({a:BigInt(0),b:BigInt(7),Fp:R0,n:ap,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{let e=ap,r=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-bv*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=r,s=BigInt("0x100000000000000000000000000000000"),a=cp(o*t,e),c=cp(-n*t,e),u=pe(t-a*r-c*i,e),f=pe(-a*n-c*o,e),l=u>s,h=f>s;if(l&&(u=e-u),h&&(f=e-f),u>s||f>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:l,k1:u,k2neg:h,k2:f}}}},Un),IT=BigInt(0);var TT=mr.ProjectivePoint;function fp(){return mr.utils.randomPrivateKey()}async function lp(t,e){let{digest:r}=await Ke.digest(e);try{return mr.sign(r,t).toDERRawBytes()}catch(n){throw new ce(String(n),"ERR_INVALID_INPUT")}}async function hp(t,e,r){try{let{digest:n}=await Ke.digest(r);return mr.verify(e,n,t)}catch(n){throw new ce(String(n),"ERR_INVALID_INPUT")}}function dp(t){return mr.ProjectivePoint.fromHex(t).toRawBytes(!0)}function pp(t){try{mr.getPublicKey(t,!0)}catch(e){throw new ce(String(e),"ERR_INVALID_PRIVATE_KEY")}}function L0(t){try{mr.ProjectivePoint.fromHex(t)}catch(e){throw new ce(String(e),"ERR_INVALID_PUBLIC_KEY")}}function mp(t){try{return mr.getPublicKey(t,!0)}catch(e){throw new ce(String(e),"ERR_INVALID_PRIVATE_KEY")}}var Gi=class{_key;constructor(e){L0(e),this._key=e}async verify(e,r){return hp(this._key,r,e)}marshal(){return dp(this._key)}get bytes(){return Xt.encode({Type:ke.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Re(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ke.digest(this.bytes);return e}},Wi=class{_key;_publicKey;constructor(e,r){this._key=e,this._publicKey=r??mp(e),pp(this._key),L0(this._publicKey)}async sign(e){return lp(this._key,e)}get public(){return new Gi(this._publicKey)}marshal(){return this._key}get bytes(){return Zt.encode({Type:ke.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return Re(this.bytes,e.bytes)}async hash(){let{bytes:e}=await Ke.digest(this.bytes);return e}async id(){let e=await this.public.hash();return se(e,"base58btc")}async export(e,r="libp2p-key"){if(r==="libp2p-key")return qn(this.bytes,e);throw new ce(`export format '${r}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function Ev(t){return new Wi(t)}function Sv(t){return new Gi(t)}async function Cv(){let t=fp();return new Wi(t)}var hn={rsa:_0,ed25519:A0,secp256k1:N0};function yp(t){let e=Object.keys(hn).join(" / ");return new ce(`invalid or unsupported key type ${t}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function gp(t){let e=Xt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case ke.RSA:return hn.rsa.unmarshalRsaPublicKey(r);case ke.Ed25519:return hn.ed25519.unmarshalEd25519PublicKey(r);case ke.Secp256k1:return hn.secp256k1.unmarshalSecp256k1PublicKey(r);default:throw yp(e.Type??"unknown")}}async function xp(t){let e=Zt.decode(t),r=e.Data??new Uint8Array;switch(e.Type){case ke.RSA:return hn.rsa.unmarshalRsaPrivateKey(r);case ke.Ed25519:return hn.ed25519.unmarshalEd25519PrivateKey(r);case ke.Secp256k1:return hn.secp256k1.unmarshalSecp256k1PrivateKey(r);default:throw yp(e.Type??"RSA")}}var bp=Symbol.for("@libp2p/peer-id");var Dv=Symbol.for("nodejs.util.inspect.custom"),wp=Object.values(dt).map(t=>t.decoder).reduce((t,e)=>t.or(e),dt.identity.decoder),vp=114,P0=36,U0=37,$i=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()})`}[bp]=!0;toString(){return this.string==null&&(this.string=Ee.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return at.createV1(vp,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e instanceof Uint8Array)return Re(this.multihash.bytes,e);if(typeof e=="string")return Bv(e).equals(this);if(e?.multihash?.bytes!=null)return Re(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Dv](){return`PeerId(${this.toString()})`}},Wn=class extends $i{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},$n=class extends $i{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Yn=class extends $i{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Bv(t,e){if(e=e??wp,t.charAt(0)==="1"||t.charAt(0)==="Q"){let r=Mt(Ee.decode(`z${t}`));return t.startsWith("12D")?new $n({multihash:r}):t.startsWith("16U")?new Yn({multihash:r}):new Wn({multihash:r})}return Iv(wp.decode(t))}function Iv(t){try{let e=Mt(t);if(e.code===Bt.code){if(e.digest.length===P0)return new $n({multihash:e});if(e.digest.length===U0)return new Yn({multihash:e})}if(e.code===Ke.code)return new Wn({multihash:e})}catch{return Tv(at.decode(t))}throw new Error("Supplied PeerID CID is invalid")}function Tv(t){if(t==null||t.multihash==null||t.version==null||t.version===1&&t.code!==vp)throw new Error("Supplied PeerID CID is invalid");let e=t.multihash;if(e.code===Ke.code)return new Wn({multihash:t.multihash});if(e.code===Bt.code){if(e.digest.length===P0)return new $n({multihash:t.multihash});if(e.digest.length===U0)return new Yn({multihash:t.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function O0(t,e){return t.length===P0?new $n({multihash:Dt(Bt.code,t),privateKey:e}):t.length===U0?new Yn({multihash:Dt(Bt.code,t),privateKey:e}):new Wn({multihash:await Ke.digest(t),publicKey:t,privateKey:e})}var Ns;(function(t){let e;t.codec=()=>(e==null&&(e=Rt((r,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),r.webtransportCerthashes!=null)for(let o of r.webtransportCerthashes)n.uint32(10),n.bytes(o);i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={webtransportCerthashes:[]},o=n==null?r.len:r.pos+n;for(;r.pos<o;){let s=r.uint32();switch(s>>>3){case 1:{i.webtransportCerthashes.push(r.bytes());break}default:{r.skipType(s&7);break}}}return i})),e),t.encode=r=>kt(r,t.codec()),t.decode=r=>_t(r,t.codec())})(Ns||(Ns={}));var Yi;(function(t){let e;t.codec=()=>(e==null&&(e=Rt((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),Ns.codec().encode(r.extensions,n)),i.lengthDelimited!==!1&&n.ldelim()},(r,n)=>{let i={identityKey:oe(0),identitySig:oe(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=Ns.codec().decode(r,r.uint32());break}default:{r.skipType(s&7);break}}}return i})),e),t.encode=r=>kt(r,t.codec()),t.decode=r=>_t(r,t.codec())})(Yi||(Yi={}));async function Ep(t,e,r){let n=await kv(t,Sp(e));if(t.publicKey==null)throw new Error("PublicKey was missing from local PeerId");return _v(t.publicKey,n,r)}function _v(t,e,r){return Yi.encode({identityKey:t,identitySig:e,extensions:r??{webtransportCerthashes:[]}}).subarray()}async function kv(t,e){if(t.privateKey==null)throw new Error("PrivateKey was missing from PeerId");return(await xp(t.privateKey)).sign(e)}async function F0(t){return O0(t.identityKey)}function K0(t){return Yi.decode(t)}function Sp(t){let e=Se("noise-libp2p-static-key:");return de([e,t],e.length+t.length)}async function M0(t,e,r){let n=await O0(e.identityKey);if(!n.equals(r))throw new Error(`Payload identity key ${n.toString()} does not match expected remote peer ${r.toString()}`);let i=Sp(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 gp(n.publicKey).verify(i,e.identitySig))throw new Error("Static key doesn't match to peer that signed payload!");return n}function Xi(t){return!(!(t instanceof Uint8Array)||t.length!==32)}var xt=Qe(Ip(),1);xt.default.formatters.b=t=>t==null?"undefined":Ee.baseEncode(t);xt.default.formatters.t=t=>t==null?"undefined":At.baseEncode(t);xt.default.formatters.m=t=>t==null?"undefined":gn.baseEncode(t);xt.default.formatters.p=t=>t==null?"undefined":t.toString();xt.default.formatters.c=t=>t==null?"undefined":t.toString();xt.default.formatters.k=t=>t==null?"undefined":t.toString();xt.default.formatters.a=t=>t==null?"undefined":t.toString();function zv(t){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=t,e.destroy=()=>!0,e.extend=()=>e,e}function Tp(t){let e=zv(`${t}:trace`);return xt.default.enabled(`${t}:trace`)&&xt.default.names.map(r=>r.toString()).find(r=>r.includes(":trace"))!=null&&(e=(0,xt.default)(`${t}:trace`)),Object.assign((0,xt.default)(t),{error:(0,xt.default)(`${t}:error`),trace:e})}var Ye=Tp("libp2p:noise");var Ct;Bl?Ct=Ye:Ct=Object.assign(()=>{},{enabled:!1,trace:()=>{},error:()=>{}});function _p(t){Ct(`LOCAL_STATIC_PUBLIC_KEY ${se(t.publicKey,"hex")}`),Ct(`LOCAL_STATIC_PRIVATE_KEY ${se(t.privateKey,"hex")}`)}function V0(t){t?(Ct(`LOCAL_PUBLIC_EPHEMERAL_KEY ${se(t.publicKey,"hex")}`),Ct(`LOCAL_PRIVATE_EPHEMERAL_KEY ${se(t.privateKey,"hex")}`)):Ct("Missing local ephemeral keys.")}function kp(t){Ct(`REMOTE_STATIC_PUBLIC_KEY ${se(t,"hex")}`)}function H0(t){Ct(`REMOTE_EPHEMERAL_PUBLIC_KEY ${se(t,"hex")}`)}function Rp(t){t.cs1&&t.cs2?(Ct(`CIPHER_STATE_1 ${t.cs1.n.getUint64()} ${se(t.cs1.k,"hex")}`),Ct(`CIPHER_STATE_2 ${t.cs2.n.getUint64()} ${se(t.cs2.k,"hex")}`)):Ct("Missing cipher state.")}var Gv=0,Wv=4294967295,$v="Cipherstate has reached maximum n, a new handshake must be performed",Os=class{n;bytes;view;constructor(e=Gv){this.n=e,this.bytes=oe(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>Wv)throw new Error($v)}};var Fs=class{crypto;constructor(e){this.crypto=e}encryptWithAd(e,r,n){let i=this.encrypt(e.k,e.n,r,n);return e.n.increment(),i}decryptWithAd(e,r,n,i){let{plaintext:o,valid:s}=this.decrypt(e.k,e.n,r,n,i);return s&&e.n.increment(),{plaintext:o,valid:s}}hasKey(e){return!this.isEmptyKey(e.k)}createEmptyKey(){return oe(32)}isEmptyKey(e){let r=this.createEmptyKey();return Re(r,e)}encrypt(e,r,n,i){return r.assertValue(),this.crypto.chaCha20Poly1305Encrypt(i,r.getBytes(),n,e)}encryptAndHash(e,r){let n;return this.hasKey(e.cs)?n=this.encryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,n),n}decrypt(e,r,n,i,o){r.assertValue();let s=this.crypto.chaCha20Poly1305Decrypt(i,r.getBytes(),n,e,o);return s?{plaintext:s,valid:!0}:{plaintext:oe(0),valid:!1}}decryptAndHash(e,r){let n,i=!0;return this.hasKey(e.cs)?{plaintext:n,valid:i}=this.decryptWithAd(e.cs,e.h,r):n=r,this.mixHash(e,r),{plaintext:n,valid:i}}dh(e,r){try{let n=this.crypto.generateX25519SharedKey(e,r);return n.length===32?n:n.subarray(0,32)}catch(n){let i=n;return Ye.error(i),oe(32)}}mixHash(e,r){e.h=this.getHash(e.h,r)}getHash(e,r){return this.crypto.hashSHA256(de([e,r],e.length+r.length))}mixKey(e,r){let[n,i]=this.crypto.getHKDF(e.ck,r);e.cs=this.initializeKey(i),e.ck=n}initializeKey(e){return{k:e,n:new Os}}initializeSymmetric(e){let r=Se(e,"utf-8"),n=this.hashProtocolName(r),i=n,o=this.createEmptyKey();return{cs:this.initializeKey(o),ck:i,h:n}}hashProtocolName(e){if(e.length<=32){let r=oe(32);return r.set(e),r}else return this.getHash(e,oe(0))}split(e){let[r,n]=this.crypto.getHKDF(e.ck,oe(0)),i=this.initializeKey(r),o=this.initializeKey(n);return{cs1:i,cs2:o}}writeMessageRegular(e,r){let n=this.encryptWithAd(e,oe(0),r),i=this.createEmptyKey(),o=oe(0);return{ne:i,ns:o,ciphertext:n}}readMessageRegular(e,r){return this.decryptWithAd(e,oe(0),r.ciphertext)}};var Ks=class extends Fs{initializeInitiator(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=oe(32);return{ss:s,s:r,rs:n,psk:i,re:a}}initializeResponder(e,r,n,i){let o="Noise_XX_25519_ChaChaPoly_SHA256",s=this.initializeSymmetric(o);this.mixHash(s,e);let a=oe(32);return{ss:s,s:r,rs:n,psk:i,re:a}}writeMessageA(e,r,n){let i=oe(0);n!==void 0?e.e=n:e.e=this.crypto.generateX25519KeyPair();let o=e.e.publicKey;this.mixHash(e.ss,o);let s=this.encryptAndHash(e.ss,r);return{ne:o,ns:i,ciphertext:s}}writeMessageB(e,r){e.e=this.crypto.generateX25519KeyPair();let n=e.e.publicKey;this.mixHash(e.ss,n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let i=e.s.publicKey,o=this.encryptAndHash(e.ss,i);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let s=this.encryptAndHash(e.ss,r);return{ne:n,ns:o,ciphertext:s}}writeMessageC(e,r){let n=e.s.publicKey,i=this.encryptAndHash(e.ss,n);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));let o=this.encryptAndHash(e.ss,r),a={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:c,cs2:u}=this.split(e.ss);return{h:e.ss.h,messageBuffer:a,cs1:c,cs2:u}}readMessageA(e,r){return Xi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,r.ciphertext)}readMessageB(e,r){if(Xi(r.ne)&&(e.re=r.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);i&&Xi(n)&&(e.rs=n),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext);return{plaintext:o,valid:i&&s}}readMessageC(e,r){let{plaintext:n,valid:i}=this.decryptAndHash(e.ss,r.ns);if(i&&Xi(n)&&(e.rs=n),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));let{plaintext:o,valid:s}=this.decryptAndHash(e.ss,r.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:i&&s,cs1:a,cs2:c}}initSession(e,r,n){let i=this.createEmptyKey(),o=oe(32),s;return e?s=this.initializeInitiator(r,n,o,i):s=this.initializeResponder(r,n,o,i),{hs:s,i:e,mc:0}}sendMessage(e,r,n){let i;if(e.mc===0)i=this.writeMessageA(e.hs,r,n);else if(e.mc===1)i=this.writeMessageB(e.hs,r);else if(e.mc===2){let{h:o,messageBuffer:s,cs1:a,cs2:c}=this.writeMessageC(e.hs,r);i=s,e.h=o,e.cs1=a,e.cs2=c}else if(e.mc>2)if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");i=this.writeMessageRegular(e.cs1,r)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");i=this.writeMessageRegular(e.cs2,r)}else throw new Error("Session invalid.");return e.mc++,i}recvMessage(e,r){let n=oe(0),i=!1;if(e.mc===0)({plaintext:n,valid:i}=this.readMessageA(e.hs,r));else if(e.mc===1)({plaintext:n,valid:i}=this.readMessageB(e.hs,r));else if(e.mc===2){let{h:o,plaintext:s,valid:a,cs1:c,cs2:u}=this.readMessageC(e.hs,r);n=s,i=a,e.h=o,e.cs1=c,e.cs2=u}return e.mc++,{plaintext:n,valid:i}}};var Ms=class{isInitiator;session;remotePeer;remoteExtensions={webtransportCerthashes:[]};payload;connection;xx;staticKeypair;prologue;constructor(e,r,n,i,o,s,a,c){this.isInitiator=e,this.payload=r,this.prologue=n,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=c??new Ks(i),this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair)}async propose(){if(_p(this.session.hs.s),this.isInitiator){Ye.trace("Stage 0 - Initiator starting to send first message.");let e=this.xx.sendMessage(this.session,oe(0));await this.connection.write(ch(e)),Ye.trace("Stage 0 - Initiator finished sending first message."),V0(this.session.hs.e)}else{Ye.trace("Stage 0 - Responder waiting to receive first message...");let e=lh((await this.connection.read()).subarray()),{valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new tn("xx handshake stage 0 validation fail");Ye.trace("Stage 0 - Responder received first message."),H0(this.session.hs.re)}}async exchange(){if(this.isInitiator){Ye.trace("Stage 1 - Initiator waiting to receive first message from responder...");let e=hh((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new tn("xx handshake stage 1 validation fail");Ye.trace("Stage 1 - Initiator received the message."),H0(this.session.hs.re),kp(this.session.hs.rs),Ye.trace("Initiator going to check remote's signature...");try{let i=K0(r);this.remotePeer=this.remotePeer||await F0(i),await M0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Li(`Error occurred while verifying signed payload: ${o.message}`)}Ye.trace("All good with the signature!")}else{Ye.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(uh(e)),Ye.trace("Stage 1 - Responder sent the second handshake message with signed payload."),V0(this.session.hs.e)}}async finish(){if(this.isInitiator){Ye.trace("Stage 2 - Initiator sending third handshake message.");let e=this.xx.sendMessage(this.session,this.payload);await this.connection.write(fh(e)),Ye.trace("Stage 2 - Initiator sent message with signed payload.")}else{Ye.trace("Stage 2 - Responder waiting for third handshake message...");let e=dh((await this.connection.read()).subarray()),{plaintext:r,valid:n}=this.xx.recvMessage(this.session,e);if(!n)throw new tn("xx handshake stage 2 validation fail");Ye.trace("Stage 2 - Responder received the message, finished handshake.");try{let i=K0(r);this.remotePeer=this.remotePeer||await F0(i),await M0(this.session.hs.rs,i,this.remotePeer),this.setRemoteNoiseExtension(i.extensions)}catch(i){let o=i;throw new Li(`Error occurred while verifying signed payload: ${o.message}`)}}Rp(this.session)}encrypt(e,r){let n=this.getCS(r);return this.xx.encryptWithAd(n,oe(0),e)}decrypt(e,r,n){let i=this.getCS(r,!1);return this.xx.decryptWithAd(i,oe(0),e,n)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,r=!0){if(!e.cs1||!e.cs2)throw new tn("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 Lp(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 Vs=class{protocol="/noise";crypto;prologue;staticKeys;extensions;metrics;constructor(e={}){let{staticNoiseKey:r,extensions:n,crypto:i,prologueBytes:o,metrics:s}=e;this.crypto=i??ah,this.extensions=n,this.metrics=s?Lp(s):void 0,r?this.staticKeys=this.crypto.generateX25519KeyPairFromSeed(r):this.staticKeys=this.crypto.generateX25519KeyPair(),this.prologue=o??oe(0)}async secureOutbound(e,r,n){let i=Ci(r,{lengthEncoder:On,lengthDecoder:ki,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!0,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remoteExtensions:o.remoteExtensions,remotePeer:o.remotePeer}}async secureInbound(e,r,n){let i=Ci(r,{lengthEncoder:On,lengthDecoder:ki,maxDataLength:65535}),o=await this.performHandshake({connection:i,isInitiator:!1,localPeer:e,remotePeer:n});return{conn:await this.createSecureConnection(i,o),remotePeer:o.remotePeer,remoteExtensions:o.remoteExtensions}}async performHandshake(e){let r=await Ep(e.localPeer,this.staticKeys.publicKey,this.extensions);return this.performXXHandshake(e,r)}async performXXHandshake(e,r){let{isInitiator:n,remotePeer:i,connection:o}=e,s=new Ms(n,r,this.prologue,this.crypto,this.staticKeys,o,i);try{await s.propose(),await s.exchange(),await s.finish(),this.metrics?.xxHandshakeSuccesses.increment()}catch(a){if(this.metrics?.xxHandshakeErrors.increment(),a instanceof Error)throw a.message=`Error occurred during XX handshake: ${a.message}`,a}return s}async createSecureConnection(e,r){let[n,i]=El(),o=e.unwrap();return await Cl(n,yh(r,this.metrics),o,s=>zr(s,{lengthDecoder:ki}),gh(r,this.metrics),n),i}};function Np(t={}){return()=>new Vs(t)}var fm=Qe(xu(),1);var nm=Qe(xu(),1);var bu=Object.values(dt).map(t=>t.decoder).reduce((t,e)=>t.or(e));function im(t,e){let r=t.getConfiguration().certificates?.at(0);if(r==null||r.getFingerprints==null){e.log.trace("fetching fingerprint from local SDP");let i=t.localDescription;return i==null?void 0:e8(i.sdp)}if(e.log.trace("fetching fingerprint from local certificate"),r.getFingerprints().length===0)return;let n=r.getFingerprints()[0].value;if(n==null)throw Ja("","no fingerprint on local certificate");return n}var J3=/^a=fingerprint:(?:\w+-[0-9]+)\s(?<fingerprint>(:?[0-9a-fA-F]{2})+)$/m;function e8(t){return t.match(J3)?.groups?.fingerprint}function t8(t){for(let e of t.protoNames())if(e.startsWith("ip"))return e.toUpperCase();return"IP6"}function Js(t){let r=t.stringTuples().filter(n=>n[0]===am).map(n=>n[1])[0];if(r===void 0||r==="")throw Eo(`Couldn't find a certhash component of multiaddr: ${t.toString()}`);return r}function wu(t){let e=bu.decode(t);return nm.decode(e)}function r8(t){let e=wu(Js(t)),r=vu(e.name),n=e.digest.reduce((o,s)=>o+s.toString(16).padStart(2,"0"),""),i=n.match(/.{1,2}/g);if(i==null)throw Ja(n,t.toString());return[`${r.toUpperCase()} ${i.join(":").toUpperCase()}`,n]}function vu(t){switch(t){case"sha1":return"sha-1";case"sha2-256":return"sha-256";case"sha2-512":return"sha-512";default:throw Rf(t)}}function n8(t,e){let{host:r,port:n}=t.toOptions(),i=t8(t),[o]=r8(t);return`v=0
30
30
  o=- 0 0 IN ${i} ${r}
31
31
  s=-
32
32
  c=IN ${i} ${r}
@@ -41,11 +41,11 @@ 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 $1(t,e){return{type:"answer",sdp:H3(t,e)}}function Y1(t,e){if(t.sdp===void 0)throw gi("Can't munge a missing SDP");return t.sdp=t.sdp.replace(/\na=ice-ufrag:[^\n]*\n/,`
44
+ `}function om(t,e){return{type:"answer",sdp:n8(t,e)}}function sm(t,e){if(t.sdp===void 0)throw bi("Can't munge a missing SDP");return t.sdp=t.sdp.replace(/\na=ice-ufrag:[^\n]*\n/,`
45
45
  a=ice-ufrag:`+e+`
46
46
  `).replace(/\na=ice-pwd:[^\n]*\n/,`
47
47
  a=ice-pwd:`+e+`
48
- `),t}var Z1=Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),Q1=t=>[...Array(t)].map(()=>Z1.at(Math.floor(Math.random()*Z1.length))).join("");var z3=1e4,Sk=ge("webrtc-direct").code,X1=ge("certhash").code,Ys=class{log;metrics;components;init;constructor(e,r={}){this.log=e.logger.forComponent("libp2p:webrtc-direct"),this.components=e,this.init=r,e.metrics!=null&&(this.metrics={dialerEvents:e.metrics.registerCounterGroup("libp2p_webrtc-direct_dialer_events_total",{label:"event",help:"Total count of WebRTC-direct dial events by type"})})}async dial(e,r){let n=await this._connect(e,r);return this.log("dialing address: %a",e),n}createListener(e){throw Ef("WebRTCTransport.createListener")}filter(e){return e.filter(bf.exactMatch)}[Symbol.toStringTag]="@libp2p/webrtc-direct";[eo]=!0;async _connect(e,r){let n=new AbortController,i=n.signal,o=e.getPeerId();if(o===null)throw yo("we need to have the remote's PeerId");let s=Mr(o),a=pu($s(e)),c=await _n.generateCertificate({name:"ECDSA",namedCurve:"P-256",hash:yu(a.name)}),u=new _n({certificates:[c]});try{let f=new Promise((D,U)=>{let F=u.createDataChannel("",{negotiated:!0,id:0}),O=setTimeout(()=>{let M=`Data channel was never opened: state: ${F.readyState}`;this.log.error(M),this.metrics?.dialerEvents.increment({open_error:!0}),U(Ya("data",M))},z3);F.onopen=M=>{clearTimeout(O),D(F)},F.onerror=M=>{clearTimeout(O);let Q=`Error opening a data channel for handshaking: ${M.target?.toString()??"not specified"}`;this.log.error(Q),this.metrics?.dialerEvents.increment({unknown_error:!0}),U(Ya("data",Q))}}),l="libp2p+webrtc+v1/"+Q1(32),h=await u.createOffer(),g=Y1(h,l);await u.setLocalDescription(g);let d=$1(e,l);await u.setRemoteDescription(d);let p=await f,y=this.components.peerId,m=this.generateNoisePrologue(u,a.code,e),b=Ep({prologueBytes:m})(),x=Tn({channel:p,direction:"inbound",logger:this.components.logger,...this.init.dataChannel??{}}),S={...x,sink:x.sink.bind(x),source:async function*(){for await(let D of x.source)for(let U of D)yield U}()},v=new Hr(this.components,{peerConnection:u,remoteAddr:e,timeline:{open:Date.now()},metrics:this.metrics?.dialerEvents}),E=mi?"iceconnectionstatechange":"connectionstatechange";u.addEventListener(E,()=>{switch(u.connectionState){case"failed":case"disconnected":case"closed":v.close().catch(D=>{this.log.error("error closing connection",D)}).finally(()=>{n.abort()});break;default:break}},{signal:i}),this.metrics?.dialerEvents.increment({peer_connection:!0});let B=new Yr(this.components,{peerConnection:u,metrics:this.metrics?.dialerEvents,dataChannelOptions:this.init.dataChannel});return await b.secureInbound(y,S,s),await r.upgrader.upgradeOutbound(v,{skipProtection:!0,skipEncryption:!0,muxerFactory:B})}catch(f){throw u.close(),f}}generateNoisePrologue(e,r,n){if(e.getConfiguration().certificates?.length===0)throw gi("no local certificate");let i=W1(e,{log:this.log});if(i==null)throw gi("no local fingerprint found");let o=i.trim().toLowerCase().replaceAll(":",""),s=ve(o,"hex"),a=j1.encode(s,r),c=du.decode($s(n)),u=ve("libp2p-webrtc-noise:");return he([u,a,c])}};function G3(t){return e=>new Ys(e,t)}function W3(t){return e=>new Mo(e,t)}return Ji($3);})();
48
+ `),t}var cm=Array.from("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),um=t=>[...Array(t)].map(()=>cm.at(Math.floor(Math.random()*cm.length))).join("");var o8=1e4,_R=ge("webrtc-direct").code,am=ge("certhash").code,ea=class{log;metrics;components;init;constructor(e,r={}){this.log=e.logger.forComponent("libp2p:webrtc-direct"),this.components=e,this.init=r,e.metrics!=null&&(this.metrics={dialerEvents:e.metrics.registerCounterGroup("libp2p_webrtc-direct_dialer_events_total",{label:"event",help:"Total count of WebRTC-direct dial events by type"})})}async dial(e,r){let n=await this._connect(e,r);return this.log("dialing address: %a",e),n}createListener(e){throw kf("WebRTCTransport.createListener")}filter(e){return e.filter(If.exactMatch)}[Symbol.toStringTag]="@libp2p/webrtc-direct";[oo]=!0;async _connect(e,r){let n=new AbortController,i=n.signal,o=e.getPeerId();if(o===null)throw Eo("we need to have the remote's PeerId");let s=Mr(o),a=wu(Js(e)),c=await In.generateCertificate({name:"ECDSA",namedCurve:"P-256",hash:vu(a.name)}),u=new In({certificates:[c]});try{let f=new Promise((D,U)=>{let F=u.createDataChannel("",{negotiated:!0,id:0}),O=setTimeout(()=>{let M=`Data channel was never opened: state: ${F.readyState}`;this.log.error(M),this.metrics?.dialerEvents.increment({open_error:!0}),U(ja("data",M))},o8);F.onopen=M=>{clearTimeout(O),D(F)},F.onerror=M=>{clearTimeout(O);let Z=`Error opening a data channel for handshaking: ${M.target?.toString()??"not specified"}`;this.log.error(Z),this.metrics?.dialerEvents.increment({unknown_error:!0}),U(ja("data",Z))}}),l="libp2p+webrtc+v1/"+um(32),h=await u.createOffer(),y=sm(h,l);await u.setLocalDescription(y);let d=om(e,l);await u.setRemoteDescription(d);let p=await f,m=this.components.peerId,g=this.generateNoisePrologue(u,a.code,e),b=Np({prologueBytes:g})(),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 D of x.source)for(let U of D)yield U}()},v=new Hr(this.components,{peerConnection:u,remoteAddr:e,timeline:{open:Date.now()},metrics:this.metrics?.dialerEvents}),E=wi?"iceconnectionstatechange":"connectionstatechange";u.addEventListener(E,()=>{switch(u.connectionState){case"failed":case"disconnected":case"closed":v.close().catch(D=>{this.log.error("error closing connection",D)}).finally(()=>{n.abort()});break;default:break}},{signal:i}),this.metrics?.dialerEvents.increment({peer_connection:!0});let B=new Yr(this.components,{peerConnection:u,metrics:this.metrics?.dialerEvents,dataChannelOptions:this.init.dataChannel});return await b.secureInbound(m,S,s),await r.upgrader.upgradeOutbound(v,{skipProtection:!0,skipEncryption:!0,muxerFactory:B})}catch(f){throw u.close(),f}}generateNoisePrologue(e,r,n){if(e.getConfiguration().certificates?.length===0)throw bi("no local certificate");let i=im(e,{log:this.log});if(i==null)throw bi("no local fingerprint found");let o=i.trim().toLowerCase().replaceAll(":",""),s=Se(o,"hex"),a=fm.encode(s,r),c=bu.decode(Js(n)),u=Se("libp2p-webrtc-noise:");return de([u,a,c])}};function s8(t){return e=>new ea(e,t)}function a8(t){return e=>new Wo(e,t)}return io(c8);})();
49
49
  /*! Bundled license information:
50
50
 
51
51
  @noble/ciphers/esm/utils.js: